mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-03-26 00:40:15 +00:00
rendering/game: make player model semi-transparent in ghost form
Add GhostStateCallback to GameHandler, fired when PLAYER_FLAGS_GHOST transitions on or off in UPDATE_OBJECT / login detection. Add setInstanceOpacity() to CharacterRenderer to directly set opacity without disturbing fade-in state. Application wires the callback to set opacity 0.5 on ghost entry and 1.0 on resurrect.
This commit is contained in:
parent
366321042f
commit
c8d9d6b792
5 changed files with 28 additions and 0 deletions
|
|
@ -624,6 +624,10 @@ public:
|
|||
using StandStateCallback = std::function<void(uint8_t standState)>;
|
||||
void setStandStateCallback(StandStateCallback cb) { standStateCallback_ = std::move(cb); }
|
||||
|
||||
// Ghost state callback — fired when player enters or leaves ghost (spirit) form
|
||||
using GhostStateCallback = std::function<void(bool isGhost)>;
|
||||
void setGhostStateCallback(GhostStateCallback cb) { ghostStateCallback_ = std::move(cb); }
|
||||
|
||||
// Melee swing callback (for driving animation/SFX)
|
||||
using MeleeSwingCallback = std::function<void()>;
|
||||
void setMeleeSwingCallback(MeleeSwingCallback cb) { meleeSwingCallback_ = std::move(cb); }
|
||||
|
|
@ -2256,6 +2260,7 @@ private:
|
|||
NpcAggroCallback npcAggroCallback_;
|
||||
NpcRespawnCallback npcRespawnCallback_;
|
||||
StandStateCallback standStateCallback_;
|
||||
GhostStateCallback ghostStateCallback_;
|
||||
MeleeSwingCallback meleeSwingCallback_;
|
||||
SpellCastAnimCallback spellCastAnimCallback_;
|
||||
NpcSwingCallback npcSwingCallback_;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue