mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-03-27 01:00:13 +00:00
Fix spirit healer resurrection with correct opcodes
Corrected death/resurrection opcode values (SMSG_SPIRIT_HEALER_CONFIRM=0x222, CMSG_SPIRIT_HEALER_ACTIVATE=0x21C, SMSG_RESURRECT_REQUEST=0x15B, CMSG_RESURRECT_RESPONSE=0x15C) and added resurrect dialog UI.
This commit is contained in:
parent
7cd7ac43a9
commit
6d719f2c52
5 changed files with 150 additions and 62 deletions
|
|
@ -404,7 +404,12 @@ public:
|
|||
|
||||
// Player death state
|
||||
bool isPlayerDead() const { return playerDead_; }
|
||||
bool isPlayerGhost() const { return releasedSpirit_; }
|
||||
bool showDeathDialog() const { return playerDead_ && !releasedSpirit_; }
|
||||
bool showResurrectDialog() const { return resurrectRequestPending_; }
|
||||
void releaseSpirit();
|
||||
void acceptResurrect();
|
||||
void declineResurrect();
|
||||
|
||||
// ---- Phase 4: Group ----
|
||||
void inviteToGroup(const std::string& playerName);
|
||||
|
|
@ -912,8 +917,11 @@ private:
|
|||
float preMountRunSpeed_ = 0.0f;
|
||||
float serverRunSpeed_ = 7.0f;
|
||||
bool playerDead_ = false;
|
||||
bool releasedSpirit_ = false;
|
||||
uint64_t pendingSpiritHealerGuid_ = 0;
|
||||
bool resurrectPending_ = false;
|
||||
bool resurrectRequestPending_ = false;
|
||||
uint64_t resurrectCasterGuid_ = 0;
|
||||
bool repopPending_ = false;
|
||||
uint64_t lastRepopRequestMs_ = 0;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -241,10 +241,10 @@ enum class Opcode : uint16_t {
|
|||
|
||||
// ---- Death/Respawn ----
|
||||
CMSG_REPOP_REQUEST = 0x015A,
|
||||
CMSG_SPIRIT_HEALER_ACTIVATE = 0x0176,
|
||||
SMSG_RESURRECT_REQUEST = 0x0222,
|
||||
CMSG_RESURRECT_RESPONSE = 0x0223,
|
||||
SMSG_RESURRECT_RESULT = 0x029D,
|
||||
SMSG_RESURRECT_REQUEST = 0x015B,
|
||||
CMSG_RESURRECT_RESPONSE = 0x015C,
|
||||
CMSG_SPIRIT_HEALER_ACTIVATE = 0x021C,
|
||||
SMSG_SPIRIT_HEALER_CONFIRM = 0x0222,
|
||||
SMSG_RESURRECT_CANCEL = 0x0390,
|
||||
|
||||
// ---- Teleport / Transfer ----
|
||||
|
|
|
|||
|
|
@ -147,6 +147,7 @@ private:
|
|||
void renderVendorWindow(game::GameHandler& gameHandler);
|
||||
void renderTaxiWindow(game::GameHandler& gameHandler);
|
||||
void renderDeathScreen(game::GameHandler& gameHandler);
|
||||
void renderResurrectDialog(game::GameHandler& gameHandler);
|
||||
void renderEscapeMenu();
|
||||
void renderSettingsWindow();
|
||||
void renderQuestMarkers(game::GameHandler& gameHandler);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue