diff --git a/src/game_interpreter_shared.h b/src/game_interpreter_shared.h index 0c6404da54..0b1c2cad9c 100644 --- a/src/game_interpreter_shared.h +++ b/src/game_interpreter_shared.h @@ -35,6 +35,12 @@ namespace Game_Interpreter_Shared { CommonEvent, BattleEvent }; + static constexpr auto kEventType = lcf::makeEnumTags( + "None", + "MapEvent", + "CommonEvent", + "BattleEvent" + ); enum class ExecutionType { /* @@ -59,6 +65,21 @@ namespace Game_Interpreter_Shared { Eval, DebugCall }; + static constexpr auto kExecutionType = lcf::makeEnumTags( + "Action", + "Touch", + "Collision", + "AutoStart", + "Parallel", + "Call", + "BattleStart", + "BattleParallel", + "---", + "---", + "DeathHandler", + "Eval", + "DebugCall" + ); /* * Indicates how the target of an interpreter operation (lvalue) should be evaluated. diff --git a/src/window_interpreter.cpp b/src/window_interpreter.cpp index 59af50b2ab..b631c60335 100644 --- a/src/window_interpreter.cpp +++ b/src/window_interpreter.cpp @@ -113,7 +113,11 @@ void Window_Interpreter::DrawDescriptionLines() { rect = GetItemRect(i++); contents->ClearRect(rect); - contents->TextDraw(rect.x, rect.y, Font::ColorDefault, "Stack Size: "); + auto str_ex_type = std::string(Game_Interpreter_Shared::kExecutionType.tag(static_cast(stack_display_items[0].type_ex))); + contents->TextDraw(rect.x, rect.y, Font::ColorDefault, "("); + contents->TextDraw(rect.x + 6, rect.y, Font::ColorHeal, str_ex_type); + contents->TextDraw(rect.x + 6 * (str_ex_type.length() + 1), rect.y, Font::ColorDefault, ")"); + contents->TextDraw(rect.x + rect.width / 2, rect.y, Font::ColorDefault, "Stack Size: "); contents->TextDraw(GetWidth() - 16, rect.y, Font::ColorCritical, std::to_string(state.stack.size()), Text::AlignRight); }