mirror of
https://github.com/mangosfour/server.git
synced 2025-12-24 10:37:02 +00:00
[12080] Use a single method to send SMSG_ACTIVATETAXIREPLY
Signed-off-by: stfx <stfx@hotmail.de>
This commit is contained in:
parent
c69759a38d
commit
bb91aa5933
6 changed files with 41 additions and 52 deletions
|
|
@ -18907,9 +18907,7 @@ bool Player::ActivateTaxiPathTo(std::vector<uint32> const& nodes, Creature* npc
|
|||
// not let cheating with start flight in time of logout process || if casting not finished || while in combat || if not use Spell's with EffectSendTaxi
|
||||
if (GetSession()->isLogingOut() || isInCombat())
|
||||
{
|
||||
WorldPacket data(SMSG_ACTIVATETAXIREPLY, 4);
|
||||
data << uint32(ERR_TAXIPLAYERBUSY);
|
||||
GetSession()->SendPacket(&data);
|
||||
GetSession()->SendActivateTaxiReply(ERR_TAXIPLAYERBUSY);
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
@ -18922,26 +18920,20 @@ bool Player::ActivateTaxiPathTo(std::vector<uint32> const& nodes, Creature* npc
|
|||
// not let cheating with start flight mounted
|
||||
if (IsMounted())
|
||||
{
|
||||
WorldPacket data(SMSG_ACTIVATETAXIREPLY, 4);
|
||||
data << uint32(ERR_TAXIPLAYERALREADYMOUNTED);
|
||||
GetSession()->SendPacket(&data);
|
||||
GetSession()->SendActivateTaxiReply(ERR_TAXIPLAYERALREADYMOUNTED);
|
||||
return false;
|
||||
}
|
||||
|
||||
if (IsInDisallowedMountForm())
|
||||
{
|
||||
WorldPacket data(SMSG_ACTIVATETAXIREPLY, 4);
|
||||
data << uint32(ERR_TAXIPLAYERSHAPESHIFTED);
|
||||
GetSession()->SendPacket(&data);
|
||||
GetSession()->SendActivateTaxiReply(ERR_TAXIPLAYERSHAPESHIFTED);
|
||||
return false;
|
||||
}
|
||||
|
||||
// not let cheating with start flight in time of logout process || if casting not finished || while in combat || if not use Spell's with EffectSendTaxi
|
||||
if (IsNonMeleeSpellCasted(false))
|
||||
{
|
||||
WorldPacket data(SMSG_ACTIVATETAXIREPLY, 4);
|
||||
data << uint32(ERR_TAXIPLAYERBUSY);
|
||||
GetSession()->SendPacket(&data);
|
||||
GetSession()->SendActivateTaxiReply(ERR_TAXIPLAYERBUSY);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
@ -18970,9 +18962,7 @@ bool Player::ActivateTaxiPathTo(std::vector<uint32> const& nodes, Creature* npc
|
|||
TaxiNodesEntry const* node = sTaxiNodesStore.LookupEntry(sourcenode);
|
||||
if (!node)
|
||||
{
|
||||
WorldPacket data(SMSG_ACTIVATETAXIREPLY, 4);
|
||||
data << uint32(ERR_TAXINOSUCHPATH);
|
||||
GetSession()->SendPacket(&data);
|
||||
GetSession()->SendActivateTaxiReply(ERR_TAXINOSUCHPATH);
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
@ -18985,18 +18975,14 @@ bool Player::ActivateTaxiPathTo(std::vector<uint32> const& nodes, Creature* npc
|
|||
(node->z - GetPositionZ()) * (node->z - GetPositionZ()) >
|
||||
(2 * INTERACTION_DISTANCE) * (2 * INTERACTION_DISTANCE) * (2 * INTERACTION_DISTANCE))
|
||||
{
|
||||
WorldPacket data(SMSG_ACTIVATETAXIREPLY, 4);
|
||||
data << uint32(ERR_TAXITOOFARAWAY);
|
||||
GetSession()->SendPacket(&data);
|
||||
GetSession()->SendActivateTaxiReply(ERR_TAXITOOFARAWAY);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
// node must have pos if taxi master case (npc != NULL)
|
||||
else if (npc)
|
||||
{
|
||||
WorldPacket data(SMSG_ACTIVATETAXIREPLY, 4);
|
||||
data << uint32(ERR_TAXIUNSPECIFIEDSERVERERROR);
|
||||
GetSession()->SendPacket(&data);
|
||||
GetSession()->SendActivateTaxiReply(ERR_TAXIUNSPECIFIEDSERVERERROR);
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
@ -19050,9 +19036,8 @@ bool Player::ActivateTaxiPathTo(std::vector<uint32> const& nodes, Creature* npc
|
|||
// in spell case allow 0 model
|
||||
if ((mount_display_id == 0 && spellid == 0) || sourcepath == 0)
|
||||
{
|
||||
WorldPacket data(SMSG_ACTIVATETAXIREPLY, 4);
|
||||
data << uint32(ERR_TAXIUNSPECIFIEDSERVERERROR);
|
||||
GetSession()->SendPacket(&data);
|
||||
GetSession()->SendActivateTaxiReply(ERR_TAXIUNSPECIFIEDSERVERERROR);
|
||||
|
||||
m_taxi.ClearTaxiDestinations();
|
||||
return false;
|
||||
}
|
||||
|
|
@ -19064,9 +19049,8 @@ bool Player::ActivateTaxiPathTo(std::vector<uint32> const& nodes, Creature* npc
|
|||
|
||||
if (money < totalcost)
|
||||
{
|
||||
WorldPacket data(SMSG_ACTIVATETAXIREPLY, 4);
|
||||
data << uint32(ERR_TAXINOTENOUGHMONEY);
|
||||
GetSession()->SendPacket(&data);
|
||||
GetSession()->SendActivateTaxiReply(ERR_TAXINOTENOUGHMONEY);
|
||||
|
||||
m_taxi.ClearTaxiDestinations();
|
||||
return false;
|
||||
}
|
||||
|
|
@ -19079,12 +19063,7 @@ bool Player::ActivateTaxiPathTo(std::vector<uint32> const& nodes, Creature* npc
|
|||
// prevent stealth flight
|
||||
RemoveSpellsCausingAura(SPELL_AURA_MOD_STEALTH);
|
||||
|
||||
WorldPacket data(SMSG_ACTIVATETAXIREPLY, 4);
|
||||
data << uint32(ERR_TAXIOK);
|
||||
GetSession()->SendPacket(&data);
|
||||
|
||||
DEBUG_LOG("WORLD: Sent SMSG_ACTIVATETAXIREPLY");
|
||||
|
||||
GetSession()->SendActivateTaxiReply(ERR_TAXIOK);
|
||||
GetSession()->SendDoFlight(mount_display_id, sourcepath);
|
||||
|
||||
return true;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue