main
Vinny 2026-05-25 18:16:32 +08:00
commit 2d80f2cf60
1 changed files with 39 additions and 0 deletions

View File

@ -1,3 +1,4 @@
using System;
using System.Collections.Generic;
using GamePlay.Fight.Record;
using Gameplay.Unit;
@ -11,6 +12,22 @@ namespace FightDebug
private GameUnit _targetUnit;
private Vector2 _scrollPos;
private List<bool> _expandedStates = new List<bool>();
private List<bool> _stackTraceExpandedStates = new List<bool>();
private void Update()
{
Repaint();
}
private void OnEnable()
{
UnitDamageRecord.OnDetailWindowOpen();
}
private void OnDisable()
{
UnitDamageRecord.OnDetailWindowClose();
}
public static void ShowWindow(GameUnit unit)
{
@ -39,6 +56,7 @@ namespace FightDebug
{
_targetUnit.damageRecord.DetailRecords.Clear();
_expandedStates.Clear();
_stackTraceExpandedStates.Clear();
}
GUILayout.EndHorizontal();
@ -61,6 +79,15 @@ namespace FightDebug
}
}
if (_stackTraceExpandedStates.Count != records.Count)
{
_stackTraceExpandedStates.Clear();
for (int i = 0; i < records.Count; i++)
{
_stackTraceExpandedStates.Add(false);
}
}
for (int i = 0; i < records.Count; i++)
{
var record = records[i];
@ -127,6 +154,18 @@ namespace FightDebug
GUILayout.Label($"护盾减少: {record.ShieldReduced}");
GUILayout.Label($"HP减少: {record.HpReduced}");
}
GUILayout.Label($"当前平A次数: {record.normalAttackCount}");
if (!string.IsNullOrEmpty(record.StackTrace))
{
GUILayout.Space(4);
_stackTraceExpandedStates[i] = EditorGUILayout.Foldout(_stackTraceExpandedStates[i], "堆栈信息", true);
if (_stackTraceExpandedStates[i])
{
EditorGUILayout.HelpBox(record.StackTrace, MessageType.None);
}
}
GUILayout.EndVertical();
GUILayout.EndHorizontal();