NLDClient-yudde/ProjectNLD/Assets/Editor/FightDebug/FightDebugWindowV3.cs

52 lines
1.5 KiB
C#

using System;
using System.Collections.Generic;
using FightDebug.Impl;
using Gameplay.Common;
using UnityEngine;
using UnityEditor;
namespace FightDebug
{
public class FightDebugWindowV3 : EditorWindow
{
[MenuItem("Tools/*战斗信息Debug/FightDebugWindowV3 _F10")]
public static void ShowWindow()
{
var window = GetWindow<FightDebugWindowV3>();
window._AddSubPanel(new Debug_ForceEnterLevel());
window._AddSubPanel(new Debug_AddEnemy());
window._AddSubPanel(new Debug_AddSelfCharacter());
window._AddSubPanel(new Debug_AddSelfVehicle());
window.titleContent = new GUIContent("战斗信息修改");
window.Show();
CodeDefine.Fight.DEBUG_MODE = true;
}
private List<ISubDebugPanel> _subDebugWindows = new List<ISubDebugPanel>();
private void _AddSubPanel(ISubDebugPanel subPanel)
{
_subDebugWindows.Add(subPanel);
}
private void OnDestroy()
{
CodeDefine.Fight.DEBUG_MODE = false;
}
private void OnGUI()
{
for (int i = 0; i < _subDebugWindows.Count; i++)
{
var subDebugWindow = _subDebugWindows[i];
subDebugWindow.isFold = EditorGUILayout.Foldout(subDebugWindow.isFold, subDebugWindow.title);
if (subDebugWindow.isFold)
{
subDebugWindow.DrawUI();
}
}
}
}
}