Core/Movement: Use SetWalk(true/false) instead of AddUnit/RemoveUnit.
This commit is contained in:
@@ -480,7 +480,7 @@ public:
|
||||
if (temp->isAlive() && !temp->getVictim())
|
||||
{
|
||||
if (temp->HasUnitMovementFlag(MOVEMENTFLAG_WALKING))
|
||||
temp->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
temp->SetWalk(false);
|
||||
|
||||
if (temp->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE))
|
||||
temp->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
|
||||
@@ -71,7 +71,7 @@ class npc_xerestrasza : public CreatureScript
|
||||
_isIntro = false;
|
||||
|
||||
Talk(SAY_XERESTRASZA_EVENT);
|
||||
me->AddUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
me->SetWalk(true);
|
||||
me->GetMotionMaster()->MovePoint(0, xerestraszaMovePos);
|
||||
|
||||
_events.ScheduleEvent(EVENT_XERESTRASZA_EVENT_1, 16000);
|
||||
|
||||
+3
-3
@@ -255,7 +255,7 @@ class boss_lich_king_toc : public CreatureScript
|
||||
summoned->SetDisplayId(11686);
|
||||
}
|
||||
if (m_instance) m_instance->SetData(TYPE_LICH_KING, IN_PROGRESS);
|
||||
me->AddUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
me->SetWalk(true);
|
||||
}
|
||||
|
||||
void MovementInform(uint32 uiType, uint32 uiId)
|
||||
@@ -378,7 +378,7 @@ class npc_fizzlebang_toc : public CreatureScript
|
||||
|
||||
void Reset()
|
||||
{
|
||||
me->AddUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
me->SetWalk(true);
|
||||
m_uiPortalGUID = 0;
|
||||
me->GetMotionMaster()->MovePoint(1, ToCCommonLoc[10].GetPositionX(), ToCCommonLoc[10].GetPositionY()-60, ToCCommonLoc[10].GetPositionZ());
|
||||
}
|
||||
@@ -390,7 +390,7 @@ class npc_fizzlebang_toc : public CreatureScript
|
||||
switch (uiId)
|
||||
{
|
||||
case 1:
|
||||
me->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
me->SetWalk(false);
|
||||
if (m_instance)
|
||||
{
|
||||
m_instance->DoUseDoorOrButton(m_instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
|
||||
@@ -641,7 +641,7 @@ class npc_high_overlord_saurfang_icc : public CreatureScript
|
||||
switch (id)
|
||||
{
|
||||
case POINT_FIRST_STEP:
|
||||
me->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
me->SetWalk(false);
|
||||
Talk(SAY_INTRO_HORDE_3);
|
||||
_events.ScheduleEvent(EVENT_INTRO_HORDE_5, 15500, 0, PHASE_INTRO_H);
|
||||
_events.ScheduleEvent(EVENT_INTRO_HORDE_6, 29500, 0, PHASE_INTRO_H);
|
||||
@@ -687,7 +687,7 @@ class npc_high_overlord_saurfang_icc : public CreatureScript
|
||||
switch (eventId)
|
||||
{
|
||||
case EVENT_INTRO_HORDE_3:
|
||||
me->AddUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
me->SetWalk(true);
|
||||
me->GetMotionMaster()->MovePoint(POINT_FIRST_STEP, firstStepPos.GetPositionX(), firstStepPos.GetPositionY(), firstStepPos.GetPositionZ());
|
||||
break;
|
||||
case EVENT_INTRO_HORDE_5:
|
||||
@@ -718,7 +718,7 @@ class npc_high_overlord_saurfang_icc : public CreatureScript
|
||||
{
|
||||
float x, y, z;
|
||||
deathbringer->GetClosePoint(x, y, z, deathbringer->GetObjectSize());
|
||||
me->AddUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
me->SetWalk(true);
|
||||
me->GetMotionMaster()->MovePoint(POINT_CORPSE, x, y, z);
|
||||
}
|
||||
break;
|
||||
@@ -841,7 +841,7 @@ class npc_muradin_bronzebeard_icc : public CreatureScript
|
||||
{
|
||||
if (type == POINT_MOTION_TYPE && id == POINT_FIRST_STEP)
|
||||
{
|
||||
me->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
me->SetWalk(false);
|
||||
Talk(SAY_INTRO_ALLIANCE_4);
|
||||
_events.ScheduleEvent(EVENT_INTRO_ALLIANCE_5, 5000, 0, PHASE_INTRO_A);
|
||||
if (Creature* deathbringer = ObjectAccessor::GetCreature(*me, _instance->GetData64(DATA_DEATHBRINGER_SAURFANG)))
|
||||
@@ -865,7 +865,7 @@ class npc_muradin_bronzebeard_icc : public CreatureScript
|
||||
switch (eventId)
|
||||
{
|
||||
case EVENT_INTRO_ALLIANCE_4:
|
||||
me->AddUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
me->SetWalk(true);
|
||||
me->GetMotionMaster()->MovePoint(POINT_FIRST_STEP, firstStepPos.GetPositionX(), firstStepPos.GetPositionY(), firstStepPos.GetPositionZ());
|
||||
break;
|
||||
case EVENT_INTRO_ALLIANCE_5:
|
||||
|
||||
@@ -191,7 +191,7 @@ class boss_professor_putricide : public CreatureScript
|
||||
SetPhase(PHASE_COMBAT_1);
|
||||
_experimentState = EXPERIMENT_STATE_OOZE;
|
||||
me->SetReactState(REACT_DEFENSIVE);
|
||||
me->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
me->SetWalk(false);
|
||||
if (me->GetMotionMaster()->GetCurrentMovementGeneratorType() == POINT_MOTION_TYPE)
|
||||
me->GetMotionMaster()->MovementExpired();
|
||||
|
||||
@@ -230,7 +230,7 @@ class boss_professor_putricide : public CreatureScript
|
||||
void JustReachedHome()
|
||||
{
|
||||
_JustReachedHome();
|
||||
me->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
me->SetWalk(false);
|
||||
if (events.GetPhaseMask() & PHASE_MASK_COMBAT)
|
||||
instance->SetBossState(DATA_PROFESSOR_PUTRICIDE, FAIL);
|
||||
}
|
||||
|
||||
@@ -660,7 +660,7 @@ class boss_the_lich_king : public CreatureScript
|
||||
summons.DespawnAll();
|
||||
SendMusicToPlayers(MUSIC_FURY_OF_FROSTMOURNE);
|
||||
DoCastAOE(SPELL_FURY_OF_FROSTMOURNE);
|
||||
me->AddUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
me->SetWalk(true);
|
||||
events.ScheduleEvent(EVENT_OUTRO_TALK_1, 2600, 0, PHASE_OUTRO);
|
||||
events.ScheduleEvent(EVENT_OUTRO_EMOTE_TALK, 6600, 0, PHASE_OUTRO);
|
||||
events.ScheduleEvent(EVENT_OUTRO_EMOTE_TALK, 17600, 0, PHASE_OUTRO);
|
||||
@@ -864,7 +864,7 @@ class boss_the_lich_king : public CreatureScript
|
||||
case EVENT_INTRO_MOVE_1:
|
||||
me->SetSheath(SHEATH_STATE_MELEE);
|
||||
me->RemoveAurasDueToSpell(SPELL_EMOTE_SIT_NO_SHEATH);
|
||||
me->AddUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
me->SetWalk(true);
|
||||
me->GetMotionMaster()->MovePoint(POINT_LK_INTRO_1, LichKingIntro[0]);
|
||||
break;
|
||||
case EVENT_INTRO_MOVE_2:
|
||||
@@ -894,7 +894,7 @@ class boss_the_lich_king : public CreatureScript
|
||||
events.ScheduleEvent(EVENT_FINISH_INTRO, 1000, 0, PHASE_INTRO);
|
||||
break;
|
||||
case EVENT_FINISH_INTRO:
|
||||
me->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
me->SetWalk(false);
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_IMMUNE_TO_PC);
|
||||
me->SetReactState(REACT_AGGRESSIVE);
|
||||
events.SetPhase(PHASE_ONE);
|
||||
@@ -1226,7 +1226,7 @@ class npc_tirion_fordring_tft : public CreatureScript
|
||||
{
|
||||
_events.SetPhase(PHASE_INTRO);
|
||||
me->RemoveFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP);
|
||||
me->AddUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
me->SetWalk(true);
|
||||
me->GetMotionMaster()->MovePoint(POINT_TIRION_INTRO, TirionIntro);
|
||||
}
|
||||
}
|
||||
@@ -1264,7 +1264,7 @@ class npc_tirion_fordring_tft : public CreatureScript
|
||||
me->HandleEmoteCommand(EMOTE_ONESHOT_POINT_NO_SHEATHE);
|
||||
break;
|
||||
case EVENT_INTRO_CHARGE:
|
||||
me->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
me->SetWalk(false);
|
||||
me->GetMotionMaster()->MovePoint(POINT_TIRION_CHARGE, TirionCharge);
|
||||
break;
|
||||
case EVENT_OUTRO_TALK_1:
|
||||
|
||||
@@ -194,7 +194,7 @@ public:
|
||||
{
|
||||
movementStarted = true;
|
||||
me->SetReactState(REACT_PASSIVE);
|
||||
me->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
me->SetWalk(false);
|
||||
me->SetSpeed(MOVE_RUN, me->GetSpeedRate(MOVE_RUN), true);
|
||||
|
||||
switch (id)
|
||||
|
||||
@@ -169,7 +169,8 @@ class npc_azure_ring_captain : public CreatureScript
|
||||
{
|
||||
targetGUID = 0;
|
||||
|
||||
me->AddUnitMovementFlag(MOVEMENTFLAG_WALKING | MOVEMENTFLAG_FLYING);
|
||||
me->SetWalk(true);
|
||||
me->AddUnitMovementFlag(MOVEMENTFLAG_FLYING);
|
||||
me->SetReactState(REACT_AGGRESSIVE);
|
||||
}
|
||||
|
||||
@@ -214,7 +215,7 @@ class npc_azure_ring_captain : public CreatureScript
|
||||
if (Unit* victim = varos->AI()->SelectTarget(SELECT_TARGET_RANDOM, 0))
|
||||
{
|
||||
me->SetReactState(REACT_PASSIVE);
|
||||
me->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
me->SetWalk(false);
|
||||
me->GetMotionMaster()->MovePoint(ACTION_CALL_DRAGON_EVENT, victim->GetPositionX(), victim->GetPositionY(), victim->GetPositionZ() + 20.0f);
|
||||
targetGUID = victim->GetGUID();
|
||||
}
|
||||
|
||||
@@ -647,7 +647,7 @@ class npc_expedition_commander : public CreatureScript
|
||||
for (uint8 n = 0; n < RAID_MODE(2, 4); n++)
|
||||
{
|
||||
Engineer[n] = me->SummonCreature(NPC_ENGINEER, PosEngSpawn, TEMPSUMMON_CORPSE_TIMED_DESPAWN, 3000);
|
||||
Engineer[n]->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
Engineer[n]->SetWalk(false);
|
||||
Engineer[n]->SetSpeed(MOVE_RUN, 0.5f);
|
||||
Engineer[n]->SetHomePosition(PosEngRepair[n]);
|
||||
Engineer[n]->GetMotionMaster()->MoveTargetedHome();
|
||||
@@ -660,7 +660,7 @@ class npc_expedition_commander : public CreatureScript
|
||||
for (uint8 n = 0; n < 4; n++)
|
||||
{
|
||||
Defender[n] = me->SummonCreature(NPC_DEFENDER, PosDefSpawn[n], TEMPSUMMON_CORPSE_TIMED_DESPAWN, 3000);
|
||||
Defender[n]->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
Defender[n]->SetWalk(false);
|
||||
Defender[n]->SetHomePosition(PosDefCombat[n]);
|
||||
Defender[n]->GetMotionMaster()->MoveTargetedHome();
|
||||
}
|
||||
|
||||
@@ -240,7 +240,7 @@ public:
|
||||
m_instance->SetData(DATA_SKADI_THE_RUTHLESS_EVENT, IN_PROGRESS);
|
||||
m_instance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMED_START_EVENT);
|
||||
me->GetMotionMaster()->MoveJump(Location[0].GetPositionX(), Location[0].GetPositionY(), Location[0].GetPositionZ(), 5.0f, 10.0f);
|
||||
me->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
me->SetWalk(false);
|
||||
m_uiMountTimer = 1000;
|
||||
Summons.DespawnEntry(CREATURE_GRAUF);
|
||||
}
|
||||
|
||||
@@ -340,7 +340,7 @@ public:
|
||||
if ((*itr)->isAlive())
|
||||
{
|
||||
(*itr)->SetStandState(UNIT_STAND_STATE_STAND);
|
||||
(*itr)->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
(*itr)->SetWalk(false);
|
||||
(*itr)->GetMotionMaster()->MovePoint(1, spectatorWP[0][0], spectatorWP[0][1], spectatorWP[0][2]);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -363,7 +363,7 @@ public:
|
||||
{
|
||||
if (Creature* pGuard = *itr)
|
||||
{
|
||||
pGuard->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
pGuard->SetWalk(false);
|
||||
pGuard->GetMotionMaster()->MovePoint(0, MovePosition);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1030,16 +1030,16 @@ public:
|
||||
uiArthas = pArthas->GetGUID();
|
||||
pArthas->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
pArthas->SetReactState(REACT_PASSIVE);
|
||||
pArthas->AddUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
pArthas->SetWalk(true);
|
||||
pArthas->GetMotionMaster()->MovePoint(0, 3737.374756f, 3564.841309f, 477.433014f);
|
||||
}
|
||||
if (Creature* pTalbot = me->SummonCreature(NPC_COUNSELOR_TALBOT, 3747.23f, 3614.936f, 473.321f, 4.462012f, TEMPSUMMON_CORPSE_TIMED_DESPAWN, 120000))
|
||||
{
|
||||
uiTalbot = pTalbot->GetGUID();
|
||||
pTalbot->AddUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
pTalbot->SetWalk(true);
|
||||
pTalbot->GetMotionMaster()->MovePoint(0, 3738.000977f, 3568.882080f, 477.433014f);
|
||||
}
|
||||
me->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
me->SetWalk(false);
|
||||
break;
|
||||
|
||||
case 4:
|
||||
@@ -1118,13 +1118,13 @@ public:
|
||||
if (Creature* pArlos = me->SummonCreature(NPC_GENERAL_ARLOS, 3745.527100f, 3615.655029f, 473.321533f, 4.447805f, TEMPSUMMON_CORPSE_TIMED_DESPAWN, 120000))
|
||||
{
|
||||
uiArlos = pArlos->GetGUID();
|
||||
pArlos->AddUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
pArlos->SetWalk(true);
|
||||
pArlos->GetMotionMaster()->MovePoint(0, 3735.570068f, 3572.419922f, 477.441010f);
|
||||
}
|
||||
if (Creature* pLeryssa = me->SummonCreature(NPC_LERYSSA, 3749.654541f, 3614.959717f, 473.323486f, 4.524959f, TEMPSUMMON_CORPSE_TIMED_DESPAWN, 120000))
|
||||
{
|
||||
uiLeryssa = pLeryssa->GetGUID();
|
||||
pLeryssa->AddUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
pLeryssa->SetWalk(false);
|
||||
pLeryssa->SetReactState(REACT_PASSIVE);
|
||||
pLeryssa->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
pLeryssa->GetMotionMaster()->MovePoint(0, 3741.969971f, 3571.439941f, 477.441010f);
|
||||
@@ -1446,7 +1446,7 @@ public:
|
||||
pArlos->Kill(pArlos, false);
|
||||
pLeryssa->RemoveAura(SPELL_STUN);
|
||||
pLeryssa->ClearUnitState(UNIT_STATE_STUNNED);
|
||||
pLeryssa->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
pLeryssa->SetWalk(false);
|
||||
pLeryssa->GetMotionMaster()->MovePoint(0, 3722.114502f, 3564.201660f, 477.441437f);
|
||||
|
||||
if (killer->GetTypeId() == TYPEID_PLAYER)
|
||||
|
||||
@@ -162,7 +162,7 @@ public:
|
||||
player->GroupEventHappens(QUEST_PERILOUS_ADVENTURE, me);
|
||||
DoScriptText(SAY_QUEST_COMPLETE, me, player);
|
||||
}
|
||||
me->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
me->SetWalk(false);
|
||||
break;
|
||||
case 25:
|
||||
DoScriptText(SAY_VICTORY4, me);
|
||||
|
||||
@@ -389,7 +389,7 @@ public:
|
||||
{
|
||||
if (player->isAlive())
|
||||
{
|
||||
summon->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
summon->SetWalk(false);
|
||||
summon->GetMotionMaster()->MovePoint(0, afCenter[0], afCenter[1], afCenter[2]);
|
||||
summon->AI()->AttackStart(player);
|
||||
return;
|
||||
|
||||
@@ -1328,7 +1328,7 @@ public:
|
||||
break;
|
||||
case 2:
|
||||
// walk forward
|
||||
me->AddUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
me->SetWalk(true);
|
||||
me->GetMotionMaster()->MovePoint(0, me->GetPositionX() + (cos(m_heading) * 10), me->GetPositionY() + (sin(m_heading) * 10), me->GetPositionZ());
|
||||
m_uiTimer = 5000;
|
||||
m_uiPhase = 3;
|
||||
|
||||
Reference in New Issue
Block a user