fix(Core/Entities): Improve interactions between taxis and players regarding PvP flag. (#23681)
This commit is contained in:
parent
6b9a8df5dc
commit
c552158e99
4 changed files with 10 additions and 15 deletions
|
|
@ -418,6 +418,7 @@ void FlightPathMovementGenerator::DoFinalize(Player* player)
|
|||
player->m_taxi.ClearTaxiDestinations();
|
||||
player->Dismount();
|
||||
player->RemoveUnitFlag(UNIT_FLAG_DISABLE_MOVE | UNIT_FLAG_TAXI_FLIGHT);
|
||||
player->UpdatePvPState(); // to account for cases such as flying into a PvP territory, as it does not flag on the way in
|
||||
|
||||
if (player->m_taxi.empty())
|
||||
{
|
||||
|
|
@ -447,6 +448,9 @@ void FlightPathMovementGenerator::DoReset(Player* player)
|
|||
return;
|
||||
}
|
||||
|
||||
if (player->pvpInfo.EndTimer)
|
||||
player->UpdatePvP(false, true); // PvP flag timer immediately ends when starting taxi
|
||||
|
||||
player->getHostileRefMgr().setOnlineOfflineState(false);
|
||||
player->AddUnitState(UNIT_STATE_IN_FLIGHT);
|
||||
player->SetUnitFlag(UNIT_FLAG_DISABLE_MOVE | UNIT_FLAG_TAXI_FLIGHT);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue