diff options
-rw-r--r-- | src/Mobs/AggressiveMonster.cpp | 1 | ||||
-rw-r--r-- | src/Mobs/Behaviors/BehaviorAggressive.h | 4 | ||||
-rw-r--r-- | src/Mobs/Behaviors/BehaviorAttacker.cpp (renamed from src/Mobs/Behaviors/BehaviorChaser.cpp) | 37 | ||||
-rw-r--r-- | src/Mobs/Behaviors/BehaviorAttacker.h (renamed from src/Mobs/Behaviors/BehaviorChaser.h) | 8 | ||||
-rw-r--r-- | src/Mobs/Behaviors/BehaviorBrave.cpp | 0 | ||||
-rw-r--r-- | src/Mobs/Behaviors/BehaviorBrave.h | 0 | ||||
-rw-r--r-- | src/Mobs/Behaviors/CMakeLists.txt | 6 | ||||
-rw-r--r-- | src/Mobs/Monster.cpp | 2 | ||||
-rw-r--r-- | src/Mobs/Monster.h | 4 | ||||
-rw-r--r-- | src/MonsterConfig.cpp | 2 |
10 files changed, 32 insertions, 32 deletions
diff --git a/src/Mobs/AggressiveMonster.cpp b/src/Mobs/AggressiveMonster.cpp index 6cfeee4a5..172799249 100644 --- a/src/Mobs/AggressiveMonster.cpp +++ b/src/Mobs/AggressiveMonster.cpp @@ -7,7 +7,6 @@ #include "../Entities/Player.h" #include "../Tracer.h" #include "Behaviors/BehaviorAggressive.h" -#include "Behaviors/BehaviorChaser.h" #include "Behaviors/BehaviorWanderer.h" diff --git a/src/Mobs/Behaviors/BehaviorAggressive.h b/src/Mobs/Behaviors/BehaviorAggressive.h index 88c226b27..944eee36c 100644 --- a/src/Mobs/Behaviors/BehaviorAggressive.h +++ b/src/Mobs/Behaviors/BehaviorAggressive.h @@ -4,7 +4,7 @@ class cBehaviorAggressive; #include "Behavior.h" -class cBehaviorChaser; +class cBehaviorAttacker; /** The mob is agressive toward specific mobtypes, or toward the player. This Behavior has a dependency on BehaviorChaser. */ @@ -26,7 +26,7 @@ private: // Our parent cMonster * m_Parent; - cBehaviorChaser * m_ParentChaser; + cBehaviorAttacker * m_ParentChaser; // The mob we want to attack cPawn * m_Target; diff --git a/src/Mobs/Behaviors/BehaviorChaser.cpp b/src/Mobs/Behaviors/BehaviorAttacker.cpp index dd9f193d6..14ce8a264 100644 --- a/src/Mobs/Behaviors/BehaviorChaser.cpp +++ b/src/Mobs/Behaviors/BehaviorAttacker.cpp @@ -1,7 +1,7 @@ #include "Globals.h" // NOTE: MSVC stupidness requires this to be the same across all modules -#include "BehaviorChaser.h" +#include "BehaviorAttacker.h" #include "BehaviorStriker.h" #include "../Monster.h" #include "../../Entities/Pawn.h" @@ -9,7 +9,7 @@ -cBehaviorChaser::cBehaviorChaser() : +cBehaviorAttacker::cBehaviorAttacker() : m_AttackRate(3) , m_AttackDamage(1) , m_AttackRange(1) @@ -23,7 +23,7 @@ cBehaviorChaser::cBehaviorChaser() : -void cBehaviorChaser::AttachToMonster(cMonster & a_Parent, cBehaviorStriker & a_ParentStriker) +void cBehaviorAttacker::AttachToMonster(cMonster & a_Parent, cBehaviorStriker & a_ParentStriker) { m_Parent = &a_Parent; m_ParentStriker = &a_ParentStriker; @@ -37,7 +37,7 @@ void cBehaviorChaser::AttachToMonster(cMonster & a_Parent, cBehaviorStriker & a_ -bool cBehaviorChaser::IsControlDesired(std::chrono::milliseconds a_Dt, cChunk & a_Chunk) +bool cBehaviorAttacker::IsControlDesired(std::chrono::milliseconds a_Dt, cChunk & a_Chunk) { UNUSED(a_Dt); UNUSED(a_Chunk); @@ -50,7 +50,7 @@ bool cBehaviorChaser::IsControlDesired(std::chrono::milliseconds a_Dt, cChunk & -void cBehaviorChaser::Tick(std::chrono::milliseconds a_Dt, cChunk & a_Chunk) +void cBehaviorAttacker::Tick(std::chrono::milliseconds a_Dt, cChunk & a_Chunk) { UNUSED(a_Dt); UNUSED(a_Chunk); @@ -93,15 +93,14 @@ void cBehaviorChaser::Tick(std::chrono::milliseconds a_Dt, cChunk & a_Chunk) } } -void cBehaviorChaser::ApproachTarget() +void cBehaviorAttacker::ApproachTarget() { - // potential mobTodo inheritence for creaper approachers, etc m_Parent->MoveToPosition(m_Target->GetPosition()); } -void cBehaviorChaser::PostTick(std::chrono::milliseconds a_Dt, cChunk & a_Chunk) +void cBehaviorAttacker::PostTick(std::chrono::milliseconds a_Dt, cChunk & a_Chunk) { if (m_TicksSinceLastDamaged < 100) { @@ -118,7 +117,7 @@ void cBehaviorChaser::PostTick(std::chrono::milliseconds a_Dt, cChunk & a_Chunk) -void cBehaviorChaser::DoTakeDamage(TakeDamageInfo & a_TDI) +void cBehaviorAttacker::DoTakeDamage(TakeDamageInfo & a_TDI) { if ((a_TDI.Attacker != nullptr) && a_TDI.Attacker->IsPawn()) { @@ -137,7 +136,7 @@ void cBehaviorChaser::DoTakeDamage(TakeDamageInfo & a_TDI) -void cBehaviorChaser::Destroyed() +void cBehaviorAttacker::Destroyed() { SetTarget(nullptr); } @@ -146,7 +145,7 @@ void cBehaviorChaser::Destroyed() -void cBehaviorChaser::SetAttackRate(float a_AttackRate) +void cBehaviorAttacker::SetAttackRate(float a_AttackRate) { m_AttackRate = a_AttackRate; } @@ -155,7 +154,7 @@ void cBehaviorChaser::SetAttackRate(float a_AttackRate) -void cBehaviorChaser::SetAttackRange(int a_AttackRange) +void cBehaviorAttacker::SetAttackRange(int a_AttackRange) { m_AttackRange = a_AttackRange; } @@ -164,7 +163,7 @@ void cBehaviorChaser::SetAttackRange(int a_AttackRange) -void cBehaviorChaser::SetAttackDamage(int a_AttackDamage) +void cBehaviorAttacker::SetAttackDamage(int a_AttackDamage) { m_AttackDamage = a_AttackDamage; } @@ -172,7 +171,7 @@ void cBehaviorChaser::SetAttackDamage(int a_AttackDamage) -cPawn * cBehaviorChaser::GetTarget() +cPawn * cBehaviorAttacker::GetTarget() { return m_Target; } @@ -181,7 +180,7 @@ cPawn * cBehaviorChaser::GetTarget() -void cBehaviorChaser::SetTarget(cPawn * a_Target) +void cBehaviorAttacker::SetTarget(cPawn * a_Target) { m_Target = a_Target; } @@ -190,7 +189,7 @@ void cBehaviorChaser::SetTarget(cPawn * a_Target) -bool cBehaviorChaser::TargetIsInStrikeRange() +bool cBehaviorAttacker::TargetIsInStrikeRange() { ASSERT(m_Target != nullptr); ASSERT(m_Parent != nullptr); @@ -219,7 +218,7 @@ bool cBehaviorChaser::TargetIsInStrikeRange() -bool cBehaviorChaser::TargetOutOfSight() +bool cBehaviorAttacker::TargetOutOfSight() { ASSERT(m_Target != nullptr); if ((GetTarget()->GetPosition() - m_Parent->GetPosition()).Length() > m_Parent->GetSightDistance()) @@ -233,7 +232,7 @@ bool cBehaviorChaser::TargetOutOfSight() -void cBehaviorChaser::ResetStrikeCooldown() +void cBehaviorAttacker::ResetStrikeCooldown() { m_AttackCoolDownTicksLeft = static_cast<int>(3 * 20 * m_AttackRate); // A second has 20 ticks, an attack rate of 1 means 1 hit every 3 seconds } @@ -242,7 +241,7 @@ void cBehaviorChaser::ResetStrikeCooldown() -void cBehaviorChaser::StrikeTarget() +void cBehaviorAttacker::StrikeTarget() { if (m_AttackCoolDownTicksLeft != 0) { diff --git a/src/Mobs/Behaviors/BehaviorChaser.h b/src/Mobs/Behaviors/BehaviorAttacker.h index 20b60a921..67592acba 100644 --- a/src/Mobs/Behaviors/BehaviorChaser.h +++ b/src/Mobs/Behaviors/BehaviorAttacker.h @@ -1,20 +1,20 @@ #pragma once -class cBehaviorChaser; +class cBehaviorAttacker; #include "Behavior.h" class cBehaviorStriker; -/** Grants chase capability to the mob. Note that this is not the same as agression! +/** Grants attack capability to the mob. Note that this is not the same as agression! The mob may possess this trait and not attack anyone or only attack when provoked. Unlike most traits, this one has several forms, and therefore it is an abstract type You should use one of its derived classes, and you cannot use it directly. */ -class cBehaviorChaser : public cBehavior +class cBehaviorAttacker : public cBehavior { public: - cBehaviorChaser(); + cBehaviorAttacker(); void AttachToMonster(cMonster & a_Parent, cBehaviorStriker & a_ParentStriker); // Functions our host Monster should invoke: diff --git a/src/Mobs/Behaviors/BehaviorBrave.cpp b/src/Mobs/Behaviors/BehaviorBrave.cpp new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/src/Mobs/Behaviors/BehaviorBrave.cpp diff --git a/src/Mobs/Behaviors/BehaviorBrave.h b/src/Mobs/Behaviors/BehaviorBrave.h new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/src/Mobs/Behaviors/BehaviorBrave.h diff --git a/src/Mobs/Behaviors/CMakeLists.txt b/src/Mobs/Behaviors/CMakeLists.txt index a075cd12c..9aa3a1a4a 100644 --- a/src/Mobs/Behaviors/CMakeLists.txt +++ b/src/Mobs/Behaviors/CMakeLists.txt @@ -7,8 +7,9 @@ include_directories ("${PROJECT_SOURCE_DIR}/../") SET (SRCS Behavior.cpp BehaviorAggressive.cpp + BehaviorAttacker.cpp + BehaviorBrave.cpp BehaviorBreeder.cpp - BehaviorChaser.cpp BehaviorDoNothing.cpp BehaviorDayLightBurner.cpp BehaviorCoward.cpp @@ -22,8 +23,9 @@ SET (SRCS SET (HDRS Behavior.h BehaviorAggressive.h + BehaviorAttacker.h + BehaviorBrave.h BehaviorBreeder.h - BehaviorChaser.h BehaviorDoNothing.h BehaviorDayLightBurner.h BehaviorCoward.h diff --git a/src/Mobs/Monster.cpp b/src/Mobs/Monster.cpp index 6bee21775..6e15fe626 100644 --- a/src/Mobs/Monster.cpp +++ b/src/Mobs/Monster.cpp @@ -1035,7 +1035,7 @@ const cBehaviorBreeder * cMonster::GetBehaviorBreeder() const -cBehaviorChaser * cMonster::GetBehaviorChaser() +cBehaviorAttacker * cMonster::GetBehaviorChaser() { return nullptr; } diff --git a/src/Mobs/Monster.h b/src/Mobs/Monster.h index 47688ae91..c28e240c1 100644 --- a/src/Mobs/Monster.h +++ b/src/Mobs/Monster.h @@ -16,7 +16,7 @@ class cClientHandle; class cPassiveMonster; class cBehaviorAggressive; class cBehaviorBreeder; -class cBehaviorChaser; +class cBehaviorAttacker; class cBehaviorStriker; class cBehaviorWanderer; class cBehaviorDayLightBurner; @@ -202,7 +202,7 @@ public: // Behavior getters (most are probably not used. mobTodo - cleanup most of them) virtual cBehaviorBreeder * GetBehaviorBreeder(); virtual const cBehaviorBreeder * GetBehaviorBreeder() const; - virtual cBehaviorChaser * GetBehaviorChaser(); + virtual cBehaviorAttacker * GetBehaviorChaser(); virtual cBehaviorDayLightBurner * GetBehaviorDayLightBurner(); // mobTodo this is probably temporary // Polymorphic behavior functions diff --git a/src/MonsterConfig.cpp b/src/MonsterConfig.cpp index 97336166c..3c86903e9 100644 --- a/src/MonsterConfig.cpp +++ b/src/MonsterConfig.cpp @@ -91,7 +91,7 @@ void cMonsterConfig::AssignAttributes(cMonster * a_Monster, const AString & a_Na { if (itr->m_Name.compare(a_Name) == 0) { - cBehaviorChaser * Chaser = a_Monster->GetBehaviorChaser(); + cBehaviorAttacker * Chaser = a_Monster->GetBehaviorChaser(); // mobTodo chaser is kind of "attacker", not really chaser? if (Chaser != nullptr) |