mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-04-14 08:23:52 +00:00
fix: forceClearTaxiAndMovementState cleared unrelated death/resurrect state
A function for taxi/movement cleanup was resetting 10 death-related fields (playerDead_, releasedSpirit_, resurrectPending_, etc.), which could cancel a pending resurrection or mark a dead player as alive when called during taxi dismount. Death state is owned by entity_controller and resurrect packet handlers, not movement cleanup.
This commit is contained in:
parent
2e1f0f15ea
commit
a1252a56c9
1 changed files with 5 additions and 10 deletions
|
|
@ -685,16 +685,11 @@ void MovementHandler::forceClearTaxiAndMovementState() {
|
|||
taxiMountDisplayId_ = 0;
|
||||
owner_.currentMountDisplayId_ = 0;
|
||||
owner_.vehicleId_ = 0;
|
||||
owner_.resurrectPending_ = false;
|
||||
owner_.resurrectRequestPending_ = false;
|
||||
owner_.selfResAvailable_ = false;
|
||||
owner_.playerDead_ = false;
|
||||
owner_.releasedSpirit_ = false;
|
||||
owner_.corpseGuid_ = 0;
|
||||
owner_.corpseReclaimAvailableMs_ = 0;
|
||||
owner_.repopPending_ = false;
|
||||
owner_.pendingSpiritHealerGuid_ = 0;
|
||||
owner_.resurrectCasterGuid_ = 0;
|
||||
// Death/resurrect state is intentionally NOT cleared here.
|
||||
// Previously this method reset 10 death-related fields despite being named
|
||||
// "forceClearTaxiAndMovementState", which could cancel pending resurrections
|
||||
// or clear death state on taxi dismount. Death state is managed by
|
||||
// entity_controller (markPlayerDead) and the resurrect packet handlers.
|
||||
|
||||
movementInfo.flags = 0;
|
||||
movementInfo.flags2 = 0;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue