aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/AI/SmartScripts
diff options
context:
space:
mode:
authorccrs <ccrs@users.noreply.github.com>2019-05-15 01:33:55 +0200
committerShauren <shauren.trinity@gmail.com>2021-12-05 16:17:02 +0100
commitdd11603150e73ebaf94100af65625b3cbfb1093e (patch)
tree554ea305e67c783cde0a6d1cc43d48eb8ac3ab9b /src/server/game/AI/SmartScripts
parent6efb8d2d22f65b5267033366c502455c3c13286e (diff)
Core/AI: variable naming standarization
plus minimum codestyle changes (cherry picked from commit 179c7da1fc264b1444aa50632317e16dca02f78b)
Diffstat (limited to 'src/server/game/AI/SmartScripts')
-rw-r--r--src/server/game/AI/SmartScripts/SmartAI.cpp172
-rw-r--r--src/server/game/AI/SmartScripts/SmartAI.h59
2 files changed, 115 insertions, 116 deletions
diff --git a/src/server/game/AI/SmartScripts/SmartAI.cpp b/src/server/game/AI/SmartScripts/SmartAI.cpp
index 868d773dce0..4218ca172ae 100644
--- a/src/server/game/AI/SmartScripts/SmartAI.cpp
+++ b/src/server/game/AI/SmartScripts/SmartAI.cpp
@@ -30,17 +30,17 @@
#include "ScriptMgr.h"
#include "Vehicle.h"
-SmartAI::SmartAI(Creature* creature, uint32 scriptId) : CreatureAI(creature, scriptId), mIsCharmed(false), mFollowCreditType(0), mFollowArrivedTimer(0), mFollowCredit(0), mFollowArrivedEntry(0), mFollowDist(0.f), mFollowAngle(0.f),
+SmartAI::SmartAI(Creature* creature, uint32 scriptId) : CreatureAI(creature, scriptId), _charmed(false), _followCreditType(0), _followArrivedTimer(0), _followCredit(0), _followArrivedEntry(0), _followDistance(0.f), _followAngle(0.f),
_escortState(SMART_ESCORT_NONE), _escortNPCFlags(0), _escortInvokerCheckTimer(1000), _currentWaypointNode(0), _waypointReached(false), _waypointPauseTimer(0), _waypointPauseForced(false), _repeatWaypointPath(false),
- _OOCReached(false), _waypointPathEnded(false), mRun(true), mEvadeDisabled(false), mCanAutoAttack(true), mCanCombatMove(true), mInvincibilityHpLevel(0), mDespawnTime(0), mDespawnState(0), mConditionsTimer(0),
- _gossipReturn(false), mEscortQuestID(0)
+ _OOCReached(false), _waypointPathEnded(false), _run(true), _evadeDisabled(false), _canAutoAttack(true), _canCombatMove(true), _invincibilityHPLevel(0), _despawnTime(0), _despawnState(0), _vehicleConditionsTimer(0),
+ _gossipReturn(false), _escortQuestId(0)
{
- mHasConditions = sConditionMgr->HasConditionsForNotGroupedEntry(CONDITION_SOURCE_TYPE_CREATURE_TEMPLATE_VEHICLE, creature->GetEntry());
+ _vehicleConditions = sConditionMgr->HasConditionsForNotGroupedEntry(CONDITION_SOURCE_TYPE_CREATURE_TEMPLATE_VEHICLE, creature->GetEntry());
}
bool SmartAI::IsAIControlled() const
{
- return !mIsCharmed;
+ return !_charmed;
}
void SmartAI::StartPath(bool run/* = false*/, uint32 pathId/* = 0*/, bool repeat/* = false*/, Unit* invoker/* = nullptr*/, uint32 nodeId/* = 1*/)
@@ -102,7 +102,7 @@ bool SmartAI::LoadPath(uint32 entry)
{
Trinity::NormalizeMapCoord(waypoint.x);
Trinity::NormalizeMapCoord(waypoint.y);
- waypoint.moveType = mRun ? WAYPOINT_MOVE_TYPE_RUN : WAYPOINT_MOVE_TYPE_WALK;
+ waypoint.moveType = _run ? WAYPOINT_MOVE_TYPE_RUN : WAYPOINT_MOVE_TYPE_WALK;
}
GetScript()->SetPathId(entry);
@@ -133,7 +133,7 @@ void SmartAI::PausePath(uint32 delay, bool forced)
if (forced)
{
_waypointPauseForced = forced;
- SetRun(mRun);
+ SetRun(_run);
me->PauseMovement();
me->SetHomePosition(me->GetPosition());
}
@@ -152,7 +152,7 @@ void SmartAI::StopPath(uint32 DespawnTime, uint32 quest, bool fail)
if (me->GetMotionMaster()->GetCurrentMovementGeneratorType() == WAYPOINT_MOTION_TYPE)
waypointInfo = me->GetCurrentWaypointInfo();
- if (mDespawnState != 2)
+ if (_despawnState != 2)
SetDespawnTime(DespawnTime);
me->GetMotionMaster()->MoveIdle();
@@ -164,16 +164,16 @@ void SmartAI::StopPath(uint32 DespawnTime, uint32 quest, bool fail)
{
if (waypointInfo.first)
GetScript()->ProcessEventsFor(SMART_EVENT_WAYPOINT_ENDED, nullptr, waypointInfo.first, waypointInfo.second);
- if (mDespawnState == 1)
+ if (_despawnState == 1)
StartDespawn();
}
return;
}
if (quest)
- mEscortQuestID = quest;
+ _escortQuestId = quest;
- if (mDespawnState != 2)
+ if (_despawnState != 2)
SetDespawnTime(DespawnTime);
me->GetMotionMaster()->MoveIdle();
@@ -196,16 +196,16 @@ void SmartAI::EndPath(bool fail)
}
ObjectVector const* targets = GetScript()->GetStoredTargetVector(SMART_ESCORT_TARGETS, *me);
- if (targets && mEscortQuestID)
+ if (targets && _escortQuestId)
{
if (targets->size() == 1 && GetScript()->IsPlayer((*targets->begin())))
{
Player* player = targets->front()->ToPlayer();
if (!fail && player->IsAtGroupRewardDistance(me) && !player->HasCorpse())
- player->GroupEventHappens(mEscortQuestID, me);
+ player->GroupEventHappens(_escortQuestId, me);
if (fail)
- player->FailQuest(mEscortQuestID);
+ player->FailQuest(_escortQuestId);
if (Group* group = player->GetGroup())
{
@@ -216,9 +216,9 @@ void SmartAI::EndPath(bool fail)
continue;
if (!fail && groupGuy->IsAtGroupRewardDistance(me) && !groupGuy->HasCorpse())
- groupGuy->AreaExploredOrEventHappens(mEscortQuestID);
+ groupGuy->AreaExploredOrEventHappens(_escortQuestId);
else if (fail)
- groupGuy->FailQuest(mEscortQuestID);
+ groupGuy->FailQuest(_escortQuestId);
}
}
}
@@ -230,9 +230,9 @@ void SmartAI::EndPath(bool fail)
{
Player* player = target->ToPlayer();
if (!fail && player->IsAtGroupRewardDistance(me) && !player->HasCorpse())
- player->AreaExploredOrEventHappens(mEscortQuestID);
+ player->AreaExploredOrEventHappens(_escortQuestId);
else if (fail)
- player->FailQuest(mEscortQuestID);
+ player->FailQuest(_escortQuestId);
}
}
}
@@ -248,12 +248,12 @@ void SmartAI::EndPath(bool fail)
if (_repeatWaypointPath)
{
if (IsAIControlled())
- StartPath(mRun, GetScript()->GetPathId(), _repeatWaypointPath);
+ StartPath(_run, GetScript()->GetPathId(), _repeatWaypointPath);
}
else if (pathid == GetScript()->GetPathId()) // if it's not the same pathid, our script wants to start another path; don't override it
GetScript()->SetPathId(0);
- if (mDespawnState == 1)
+ if (_despawnState == 1)
StartDespawn();
}
@@ -267,7 +267,7 @@ void SmartAI::ResumePath()
_waypointReached = false;
_waypointPauseTimer = 0;
- SetRun(mRun);
+ SetRun(_run);
me->ResumeMovement();
}
@@ -296,7 +296,7 @@ void SmartAI::UpdateAI(uint32 diff)
if (!UpdateVictim())
return;
- if (mCanAutoAttack)
+ if (_canAutoAttack)
DoMeleeAttackIfReady();
}
@@ -380,7 +380,7 @@ void SmartAI::WaypointReached(uint32 nodeId, uint32 pathId)
if (_currentWaypointNode == _path.nodes.size())
_waypointPathEnded = true;
else
- SetRun(mRun);
+ SetRun(_run);
}
}
@@ -410,7 +410,7 @@ void SmartAI::MovementInform(uint32 type, uint32 id)
void SmartAI::EnterEvadeMode(EvadeReason /*why*/)
{
- if (mEvadeDisabled)
+ if (_evadeDisabled)
{
GetScript()->ProcessEventsFor(SMART_EVENT_EVADE);
return;
@@ -429,7 +429,7 @@ void SmartAI::EnterEvadeMode(EvadeReason /*why*/)
GetScript()->ProcessEventsFor(SMART_EVENT_EVADE); // must be after _EnterEvadeMode (spells, auras, ...)
- SetRun(mRun);
+ SetRun(_run);
if (Unit* owner = me->GetCharmerOrOwner())
{
@@ -441,9 +441,9 @@ void SmartAI::EnterEvadeMode(EvadeReason /*why*/)
AddEscortState(SMART_ESCORT_RETURNING);
ReturnToLastOOCPos();
}
- else if (Unit* target = !mFollowGuid.IsEmpty() ? ObjectAccessor::GetUnit(*me, mFollowGuid) : nullptr)
+ else if (Unit* target = !_followGUID.IsEmpty() ? ObjectAccessor::GetUnit(*me, _followGUID) : nullptr)
{
- me->GetMotionMaster()->MoveFollow(target, mFollowDist, mFollowAngle);
+ me->GetMotionMaster()->MoveFollow(target, _followDistance, _followAngle);
// evade is not cleared in MoveFollow, so we can't keep it
me->ClearUnitState(UNIT_STATE_EVADE);
}
@@ -517,8 +517,8 @@ void SmartAI::InitializeAI()
{
GetScript()->OnInitialize(me);
- mDespawnTime = 0;
- mDespawnState = 0;
+ _despawnTime = 0;
+ _despawnState = 0;
_escortState = SMART_ESCORT_NONE;
me->SetVisible(true);
@@ -529,13 +529,13 @@ void SmartAI::InitializeAI()
GetScript()->OnReset();
}
- mFollowGuid.Clear(); // do not reset follower on Reset(), we need it after combat evade
- mFollowDist = 0;
- mFollowAngle = 0;
- mFollowCredit = 0;
- mFollowArrivedTimer = 1000;
- mFollowArrivedEntry = 0;
- mFollowCreditType = 0;
+ _followGUID.Clear(); // do not reset follower on Reset(), we need it after combat evade
+ _followDistance = 0;
+ _followAngle = 0;
+ _followCredit = 0;
+ _followArrivedTimer = 1000;
+ _followArrivedEntry = 0;
+ _followCreditType = 0;
}
void SmartAI::JustReachedHome()
@@ -590,18 +590,18 @@ void SmartAI::AttackStart(Unit* who)
if (!IsAIControlled())
{
if (who)
- me->Attack(who, mCanAutoAttack);
+ me->Attack(who, _canAutoAttack);
return;
}
- if (who && me->Attack(who, mCanAutoAttack))
+ if (who && me->Attack(who, _canAutoAttack))
{
me->GetMotionMaster()->Clear(MOTION_PRIORITY_NORMAL);
me->PauseMovement();
- if (mCanCombatMove)
+ if (_canCombatMove)
{
- SetRun(mRun);
+ SetRun(_run);
me->GetMotionMaster()->MoveChase(who);
}
}
@@ -624,8 +624,8 @@ void SmartAI::DamageTaken(Unit* doneBy, uint32& damage)
if (!IsAIControlled()) // don't allow players to use unkillable units
return;
- if (mInvincibilityHpLevel && (damage >= me->GetHealth() - mInvincibilityHpLevel))
- damage = me->GetHealth() - mInvincibilityHpLevel; // damage should not be nullified, because of player damage req.
+ if (_invincibilityHPLevel && (damage >= me->GetHealth() - _invincibilityHPLevel))
+ damage = me->GetHealth() - _invincibilityHPLevel; // damage should not be nullified, because of player damage req.
}
void SmartAI::HealReceived(Unit* doneBy, uint32& addhealth)
@@ -672,14 +672,14 @@ void SmartAI::OnCharmed(bool /*isNew*/)
EndPath(true);
}
- mIsCharmed = charmed;
+ _charmed = charmed;
if (!charmed && !me->IsInEvadeMode())
{
if (_repeatWaypointPath)
- StartPath(mRun, GetScript()->GetPathId(), true);
+ StartPath(_run, GetScript()->GetPathId(), true);
else
- me->SetWalk(!mRun);
+ me->SetWalk(!_run);
if (!me->LastCharmerGUID.IsEmpty())
{
@@ -718,7 +718,7 @@ ObjectGuid SmartAI::GetGUID(int32 /*id*/) const
void SmartAI::SetRun(bool run)
{
me->SetWalk(!run);
- mRun = run;
+ _run = run;
for (auto& node : _path.nodes)
node.moveType = run ? WAYPOINT_MOVE_TYPE_RUN : WAYPOINT_MOVE_TYPE_WALK;
}
@@ -740,7 +740,7 @@ void SmartAI::SetSwim(bool swim)
void SmartAI::SetEvadeDisabled(bool disable)
{
- mEvadeDisabled = disable;
+ _evadeDisabled = disable;
}
bool SmartAI::GossipHello(Player* player)
@@ -774,10 +774,10 @@ void SmartAI::QuestReward(Player* player, Quest const* quest, LootItemType /*typ
void SmartAI::SetCombatMove(bool on)
{
- if (mCanCombatMove == on)
+ if (_canCombatMove == on)
return;
- mCanCombatMove = on;
+ _canCombatMove = on;
if (!IsAIControlled())
return;
@@ -791,7 +791,7 @@ void SmartAI::SetCombatMove(bool on)
return movement->Mode == MOTION_MODE_DEFAULT && movement->Priority == MOTION_PRIORITY_NORMAL;
}))
{
- SetRun(mRun);
+ SetRun(_run);
me->GetMotionMaster()->MoveChase(me->GetVictim());
}
}
@@ -811,38 +811,38 @@ void SmartAI::SetFollow(Unit* target, float dist, float angle, uint32 credit, ui
return;
}
- mFollowGuid = target->GetGUID();
- mFollowDist = dist;
- mFollowAngle = angle;
- mFollowArrivedTimer = 1000;
- mFollowCredit = credit;
- mFollowArrivedEntry = end;
- mFollowCreditType = creditType;
- SetRun(mRun);
- me->GetMotionMaster()->MoveFollow(target, mFollowDist, mFollowAngle);
+ _followGUID = target->GetGUID();
+ _followDistance = dist;
+ _followAngle = angle;
+ _followArrivedTimer = 1000;
+ _followCredit = credit;
+ _followArrivedEntry = end;
+ _followCreditType = creditType;
+ SetRun(_run);
+ me->GetMotionMaster()->MoveFollow(target, _followDistance, _followAngle);
}
void SmartAI::StopFollow(bool complete)
{
- mFollowGuid.Clear();
- mFollowDist = 0;
- mFollowAngle = 0;
- mFollowCredit = 0;
- mFollowArrivedTimer = 1000;
- mFollowArrivedEntry = 0;
- mFollowCreditType = 0;
+ _followGUID.Clear();
+ _followDistance = 0;
+ _followAngle = 0;
+ _followCredit = 0;
+ _followArrivedTimer = 1000;
+ _followArrivedEntry = 0;
+ _followCreditType = 0;
me->GetMotionMaster()->MoveIdle();
if (!complete)
return;
- Player* player = ObjectAccessor::GetPlayer(*me, mFollowGuid);
+ Player* player = ObjectAccessor::GetPlayer(*me, _followGUID);
if (player)
{
- if (!mFollowCreditType)
- player->RewardPlayerAndGroupAtEvent(mFollowCredit, me);
+ if (!_followCreditType)
+ player->RewardPlayerAndGroupAtEvent(_followCredit, me);
else
- player->GroupEventHappens(mFollowCredit, me);
+ player->GroupEventHappens(_followCredit, me);
}
SetDespawnTime(5000);
@@ -870,10 +870,10 @@ void SmartAI::OnSpellClick(Unit* clicker, bool spellClickHandled)
void SmartAI::CheckConditions(uint32 diff)
{
- if (!mHasConditions)
+ if (!_vehicleConditions)
return;
- if (mConditionsTimer <= diff)
+ if (_vehicleConditionsTimer <= diff)
{
if (Vehicle * vehicleKit = me->GetVehicleKit())
{
@@ -891,10 +891,10 @@ void SmartAI::CheckConditions(uint32 diff)
}
}
- mConditionsTimer = 1000;
+ _vehicleConditionsTimer = 1000;
}
else
- mConditionsTimer -= diff;
+ _vehicleConditionsTimer -= diff;
}
void SmartAI::UpdatePath(uint32 diff)
@@ -906,7 +906,7 @@ void SmartAI::UpdatePath(uint32 diff)
{
if (!IsEscortInvokerInRange())
{
- StopPath(0, mEscortQuestID, true);
+ StopPath(0, _escortQuestId, true);
// allow to properly hook out of range despawn action, which in most cases should perform the same operation as dying
GetScript()->ProcessEventsFor(SMART_EVENT_DEATH, me);
@@ -950,41 +950,41 @@ void SmartAI::UpdatePath(uint32 diff)
void SmartAI::UpdateFollow(uint32 diff)
{
- if (mFollowGuid.IsEmpty())
+ if (!_followGUID.IsEmpty())
{
- if (mFollowArrivedTimer < diff)
+ if (_followArrivedTimer < diff)
{
- if (me->FindNearestCreature(mFollowArrivedEntry, INTERACTION_DISTANCE, true))
+ if (me->FindNearestCreature(_followArrivedEntry, INTERACTION_DISTANCE, true))
{
StopFollow(true);
return;
}
- mFollowArrivedTimer = 1000;
+ _followArrivedTimer = 1000;
}
else
- mFollowArrivedTimer -= diff;
+ _followArrivedTimer -= diff;
}
}
void SmartAI::UpdateDespawn(uint32 diff)
{
- if (mDespawnState <= 1 || mDespawnState > 3)
+ if (_despawnState <= 1 || _despawnState > 3)
return;
- if (mDespawnTime < diff)
+ if (_despawnTime < diff)
{
- if (mDespawnState == 2)
+ if (_despawnState == 2)
{
me->SetVisible(false);
- mDespawnTime = 5000;
- mDespawnState++;
+ _despawnTime = 5000;
+ _despawnState++;
}
else
me->DespawnOrUnsummon();
}
else
- mDespawnTime -= diff;
+ _despawnTime -= diff;
}
void SmartGameObjectAI::UpdateAI(uint32 diff)
diff --git a/src/server/game/AI/SmartScripts/SmartAI.h b/src/server/game/AI/SmartScripts/SmartAI.h
index 801981a676a..26658533b2a 100644
--- a/src/server/game/AI/SmartScripts/SmartAI.h
+++ b/src/server/game/AI/SmartScripts/SmartAI.h
@@ -62,9 +62,9 @@ class TC_GAME_API SmartAI : public CreatureAI
bool HasEscortState(uint32 uiEscortState) const { return (_escortState & uiEscortState) != 0; }
void AddEscortState(uint32 uiEscortState) { _escortState |= uiEscortState; }
void RemoveEscortState(uint32 uiEscortState) { _escortState &= ~uiEscortState; }
- void SetAutoAttack(bool on) { mCanAutoAttack = on; }
+ void SetAutoAttack(bool on) { _canAutoAttack = on; }
void SetCombatMove(bool on);
- bool CanCombatMove() { return mCanCombatMove; }
+ bool CanCombatMove() { return _canCombatMove; }
void SetFollow(Unit* target, float dist = 0.0f, float angle = 0.0f, uint32 credit = 0, uint32 end = 0, uint32 creditType = 0);
void StopFollow(bool complete);
bool IsEscortInvokerInRange();
@@ -75,7 +75,7 @@ class TC_GAME_API SmartAI : public CreatureAI
void WaypointPathEnded(uint32 nodeId, uint32 pathId) override;
void SetTimedActionList(SmartScriptHolder& e, uint32 entry, Unit* invoker);
- SmartScript* GetScript() { return &mScript; }
+ SmartScript* GetScript() { return &_script; }
// Called at reaching home after evade, InitializeAI(), EnterEvadeMode() for resetting variables
void JustReachedHome() override;
@@ -170,7 +170,7 @@ class TC_GAME_API SmartAI : public CreatureAI
void SetEvadeDisabled(bool disable = true);
- void SetInvincibilityHpLevel(uint32 level) { mInvincibilityHpLevel = level; }
+ void SetInvincibilityHpLevel(uint32 level) { _invincibilityHPLevel = level; }
bool GossipHello(Player* player) override;
bool GossipSelect(Player* player, uint32 menuId, uint32 gossipListId) override;
@@ -181,10 +181,10 @@ class TC_GAME_API SmartAI : public CreatureAI
void SetDespawnTime (uint32 t)
{
- mDespawnTime = t;
- mDespawnState = t ? 1 : 0;
+ _despawnTime = t;
+ _despawnState = t ? 1 : 0;
}
- void StartDespawn() { mDespawnState = 2; }
+ void StartDespawn() { _despawnState = 2; }
void OnSpellClick(Unit* clicker, bool spellClickHandled) override;
@@ -192,7 +192,7 @@ class TC_GAME_API SmartAI : public CreatureAI
void SetGossipReturn(bool val) { _gossipReturn = val; }
- void SetEscortQuest(uint32 questID) { mEscortQuestID = questID; }
+ void SetEscortQuest(uint32 questID) { _escortQuestId = questID; }
private:
bool AssistPlayerInCombatAgainst(Unit* who);
@@ -202,16 +202,15 @@ class TC_GAME_API SmartAI : public CreatureAI
void UpdateFollow(uint32 diff);
void UpdateDespawn(uint32 diff);
- SmartScript mScript;
-
- bool mIsCharmed;
- uint32 mFollowCreditType;
- uint32 mFollowArrivedTimer;
- uint32 mFollowCredit;
- uint32 mFollowArrivedEntry;
- ObjectGuid mFollowGuid;
- float mFollowDist;
- float mFollowAngle;
+ SmartScript _script;
+ bool _charmed;
+ uint32 _followCreditType;
+ uint32 _followArrivedTimer;
+ uint32 _followCredit;
+ uint32 _followArrivedEntry;
+ ObjectGuid _followGUID;
+ float _followDistance;
+ float _followAngle;
uint32 _escortState;
uint32 _escortNPCFlags;
@@ -225,23 +224,23 @@ class TC_GAME_API SmartAI : public CreatureAI
bool _OOCReached;
bool _waypointPathEnded;
- bool mRun;
- bool mEvadeDisabled;
- bool mCanAutoAttack;
- bool mCanCombatMove;
- uint32 mInvincibilityHpLevel;
+ bool _run;
+ bool _evadeDisabled;
+ bool _canAutoAttack;
+ bool _canCombatMove;
+ uint32 _invincibilityHPLevel;
- uint32 mDespawnTime;
- uint32 mDespawnState;
+ uint32 _despawnTime;
+ uint32 _despawnState;
// Vehicle conditions
- bool mHasConditions;
- uint32 mConditionsTimer;
+ bool _vehicleConditions;
+ uint32 _vehicleConditionsTimer;
// Gossip
bool _gossipReturn;
- uint32 mEscortQuestID;
+ uint32 _escortQuestId;
};
class TC_GAME_API SmartGameObjectAI : public GameObjectAI
@@ -253,7 +252,7 @@ class TC_GAME_API SmartGameObjectAI : public GameObjectAI
void UpdateAI(uint32 diff) override;
void InitializeAI() override;
void Reset() override;
- SmartScript* GetScript() { return &mScript; }
+ SmartScript* GetScript() { return &_script; }
static int32 Permissible(GameObject const* /*go*/) { return PERMIT_BASE_NO; }
bool GossipHello(Player* player) override;
@@ -274,7 +273,7 @@ class TC_GAME_API SmartGameObjectAI : public GameObjectAI
void SetGossipReturn(bool val) { _gossipReturn = val; }
private:
- SmartScript mScript;
+ SmartScript _script;
// Gossip
bool _gossipReturn;