From d5c58c6b17c90f3e139751890339d0b390596b8a Mon Sep 17 00:00:00 2001 From: mathiascode Date: Mon, 30 Mar 2020 20:09:06 +0300 Subject: [PATCH] Tweak attack ranges --- Server/monsters.ini | 46 +++++++++++++++++++++---------------------- src/Mobs/Monster.h | 10 +++++----- src/MonsterConfig.cpp | 4 ++-- 3 files changed, 30 insertions(+), 30 deletions(-) diff --git a/Server/monsters.ini b/Server/monsters.ini index be78b3ad1..bf1fc95a4 100644 --- a/Server/monsters.ini +++ b/Server/monsters.ini @@ -1,6 +1,6 @@ [Bat] AttackDamage=0.0 -AttackRange=2.0 +AttackRange=1.0 AttackRate=1.0 MaxHealth=6 SightDistance=25.0 @@ -15,21 +15,21 @@ SightDistance=25.0 [CaveSpider] AttackDamage=2.0 -AttackRange=2.0 +AttackRange=1.0 AttackRate=1.0 MaxHealth=12 SightDistance=25.0 [Chicken] AttackDamage=0.0 -AttackRange=2.0 +AttackRange=1.0 AttackRate=1.0 MaxHealth=4 SightDistance=25.0 [Cow] AttackDamage=0.0 -AttackRange=2.0 +AttackRange=1.0 AttackRate=1.0 MaxHealth=10 SightDistance=25.0 @@ -50,7 +50,7 @@ SightDistance=25.0 [Enderman] AttackDamage=4.0 -AttackRange=2.0 +AttackRange=1.0 AttackRate=1.0 MaxHealth=40 SightDistance=64.0 @@ -65,21 +65,21 @@ SightDistance=50.0 [Giant] AttackDamage=6.0 -AttackRange=2.0 +AttackRange=1.0 AttackRate=1.0 MaxHealth=100 SightDistance=25.0 [Guardian] AttackDamage=9.0 -AttackRange=2.0 +AttackRange=1.0 AttackRate=1.0 MaxHealth=30 SightDistance=25.0 [Horse] AttackDamage=6.0 -AttackRange=2.0 +AttackRange=1.0 AttackRate=1.0 MaxHealth=30 SightDistance=25.0 @@ -93,7 +93,7 @@ SightDistance=25.0 [MagmaCube] AttackDamage=6.0 -AttackRange=2.0 +AttackRange=1.0 AttackRate=1.0 IsFireproof=1 MaxHealth=16 @@ -101,42 +101,42 @@ SightDistance=25.0 [Mooshroom] AttackDamage=0.0 -AttackRange=2.0 +AttackRange=1.0 AttackRate=1.0 MaxHealth=10 SightDistance=25.0 [Ocelot] AttackDamage=0.0 -AttackRange=2.0 +AttackRange=1.0 AttackRate=1.0 MaxHealth=10 SightDistance=25.0 [Pig] AttackDamage=0.0 -AttackRange=2.0 +AttackRange=1.0 AttackRate=1.0 MaxHealth=10 SightDistance=25.0 [Rabbit] AttackDamage=0.0 -AttackRange=2.0 +AttackRange=0.75 AttackRate=1.0 MaxHealth=10 SightDistance=25.0 [Sheep] AttackDamage=0.0 -AttackRange=2.0 +AttackRange=1.0 AttackRate=1.0 MaxHealth=8 SightDistance=25.0 [Silverfish] AttackDamage=1.0 -AttackRange=2.0 +AttackRange=0.75 AttackRate=1.0 MaxHealth=8 SightDistance=25.0 @@ -150,35 +150,35 @@ BurnsInDaylight=1 [Slime] AttackDamage=4.0 -AttackRange=2.0 +AttackRange=1.0 AttackRate=1.0 MaxHealth=16 SightDistance=25.0 [SnowGolem] AttackDamage=0.0 -AttackRange=2.0 +AttackRange=1.0 AttackRate=1.0 MaxHealth=4 SightDistance=25.0 [Spider] AttackDamage=2.0 -AttackRange=2.0 +AttackRange=1.0 AttackRate=1.0 MaxHealth=16 SightDistance=25.0 [Squid] AttackDamage=0.0 -AttackRange=2.0 +AttackRange=1.0 AttackRate=1.0 MaxHealth=10 SightDistance=25.0 [Villager] AttackDamage=0.0 -AttackRange=2.0 +AttackRange=1.0 AttackRate=1.0 MaxHealth=20 SightDistance=25.0 @@ -192,14 +192,14 @@ SightDistance=25.0 [Wolf] AttackDamage=8.0 -AttackRange=2.0 +AttackRange=1.0 AttackRate=1.0 MaxHealth=20 SightDistance=25.0 [Zombie] AttackDamage=4.0 -AttackRange=2.0 +AttackRange=1.0 AttackRate=1.0 MaxHealth=20 SightDistance=25.0 @@ -207,7 +207,7 @@ BurnsInDaylight=1 [ZombiePigman] AttackDamage=7.0 -AttackRange=2.0 +AttackRange=1.0 AttackRate=1.0 IsFireproof=1 MaxHealth=20 diff --git a/src/Mobs/Monster.h b/src/Mobs/Monster.h index 567e13ab2..93c29c533 100644 --- a/src/Mobs/Monster.h +++ b/src/Mobs/Monster.h @@ -116,9 +116,9 @@ public: virtual void InStateChasing (std::chrono::milliseconds a_Dt, cChunk & a_Chunk); virtual void InStateEscaping(std::chrono::milliseconds a_Dt, cChunk & a_Chunk); - int GetAttackRate() { return static_cast(m_AttackRate); } - void SetAttackRate(float a_AttackRate) { m_AttackRate = a_AttackRate; } - void SetAttackRange(int a_AttackRange) { m_AttackRange = a_AttackRange; } + double GetAttackRate() { return m_AttackRate; } + void SetAttackRate(double a_AttackRate) { m_AttackRate = a_AttackRate; } + void SetAttackRange(double a_AttackRange) { m_AttackRange = a_AttackRange; } void SetAttackDamage(int a_AttackDamage) { m_AttackDamage = a_AttackDamage; } void SetSightDistance(int a_SightDistance) { m_SightDistance = a_SightDistance; } @@ -269,9 +269,9 @@ protected: AString m_SoundDeath; AString m_SoundAmbient; - float m_AttackRate; + double m_AttackRate; int m_AttackDamage; - int m_AttackRange; + double m_AttackRange; int m_AttackCoolDownTicksLeft; int m_SightDistance; diff --git a/src/MonsterConfig.cpp b/src/MonsterConfig.cpp index 1cb91dfec..271a72a7f 100644 --- a/src/MonsterConfig.cpp +++ b/src/MonsterConfig.cpp @@ -14,7 +14,7 @@ struct cMonsterConfig::sAttributesStruct AString m_Name; int m_SightDistance; int m_AttackDamage; - int m_AttackRange; + double m_AttackRange; double m_AttackRate; double m_MaxHealth; bool m_IsFireproof; @@ -71,7 +71,7 @@ void cMonsterConfig::Initialize() AString Name = MonstersIniFile.GetKeyName(i); Attributes.m_Name = Name; Attributes.m_AttackDamage = MonstersIniFile.GetValueI(Name, "AttackDamage", 0); - Attributes.m_AttackRange = MonstersIniFile.GetValueI(Name, "AttackRange", 0); + Attributes.m_AttackRange = MonstersIniFile.GetValueF(Name, "AttackRange", 0); Attributes.m_SightDistance = MonstersIniFile.GetValueI(Name, "SightDistance", 0); Attributes.m_AttackRate = MonstersIniFile.GetValueF(Name, "AttackRate", 0); Attributes.m_MaxHealth = MonstersIniFile.GetValueF(Name, "MaxHealth", 1);