From 7dcc33bcb42194029925c09e4faf6852ad2d6e09 Mon Sep 17 00:00:00 2001 From: fallenoak Date: Thu, 5 Feb 2026 22:22:33 -0600 Subject: [PATCH] feat(object): partially implement CGPlayer_C::PostInitActivePlayer --- src/object/client/CGPlayer_C.cpp | 20 +++++++++++++++++++- src/ui/game/ScriptEvents.cpp | 2 +- src/ui/game/Types.hpp | 2 ++ 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/src/object/client/CGPlayer_C.cpp b/src/object/client/CGPlayer_C.cpp index 8e39a18..26b5aa3 100644 --- a/src/object/client/CGPlayer_C.cpp +++ b/src/object/client/CGPlayer_C.cpp @@ -1,7 +1,9 @@ #include "object/client/CGPlayer_C.hpp" #include "db/Db.hpp" -#include "object/client/ObjMgr.hpp" #include "object/Types.hpp" +#include "object/client/ObjMgr.hpp" +#include "ui/FrameScript.hpp" +#include "ui/Game.hpp" #include CGPlayer_C::CGPlayer_C(uint32_t time, CClientObjCreate& objCreate) : CGUnit_C(time, objCreate) { @@ -46,6 +48,22 @@ void CGPlayer_C::PostInit(uint32_t time, const CClientObjCreate& init, bool a4) void CGPlayer_C::PostInitActivePlayer() { // TODO + + if (ClntObjMgrGetPlayerType() == PLAYER_NORMAL) { + // TODO + + FrameScript_SignalEvent(SCRIPT_ACTIONBAR_SLOT_CHANGED, "%d", 0); + } + + // TODO + + if (ClntObjMgrGetPlayerType() == PLAYER_NORMAL) { + // TODO + + CGGameUI::EnterWorld(); + } + + // TODO } void CGPlayer_C::SetStorage(uint32_t* storage, uint32_t* saved) { diff --git a/src/ui/game/ScriptEvents.cpp b/src/ui/game/ScriptEvents.cpp index b3aa7d4..c3846a3 100644 --- a/src/ui/game/ScriptEvents.cpp +++ b/src/ui/game/ScriptEvents.cpp @@ -1057,7 +1057,7 @@ void ScriptEventsInitialize() { g_scriptEvents[173] = "ACTIONBAR_SHOWGRID"; g_scriptEvents[174] = "ACTIONBAR_HIDEGRID"; g_scriptEvents[175] = "ACTIONBAR_PAGE_CHANGED"; - g_scriptEvents[176] = "ACTIONBAR_SLOT_CHANGED"; + g_scriptEvents[SCRIPT_ACTIONBAR_SLOT_CHANGED] = "ACTIONBAR_SLOT_CHANGED"; g_scriptEvents[177] = "ACTIONBAR_UPDATE_STATE"; g_scriptEvents[178] = "ACTIONBAR_UPDATE_USABLE"; g_scriptEvents[179] = "ACTIONBAR_UPDATE_COOLDOWN"; diff --git a/src/ui/game/Types.hpp b/src/ui/game/Types.hpp index 9609829..be7891f 100644 --- a/src/ui/game/Types.hpp +++ b/src/ui/game/Types.hpp @@ -2,6 +2,8 @@ #define UI_GAME_TYPES_HPP enum SCRIPTEVENT { + // TODO + SCRIPT_ACTIONBAR_SLOT_CHANGED = 176, // TODO SCRIPT_PLAYER_LOGIN = 253, SCRIPT_PLAYER_LOGOUT = 254,