summaryrefslogtreecommitdiff
path: root/src/being/localplayer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/being/localplayer.cpp')
-rw-r--r--src/being/localplayer.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/being/localplayer.cpp b/src/being/localplayer.cpp
index fd3acd4f9..d5e32316c 100644
--- a/src/being/localplayer.cpp
+++ b/src/being/localplayer.cpp
@@ -1117,18 +1117,20 @@ void LocalPlayer::moveToTarget(int dist)
dist = settings.moveToTargetType;
if (dist != 0)
{
+ const bool broken = Net::getServerFeatures()
+ ->haveBrokenPlayerAttackDistance();
switch (dist)
{
case 10:
dist = mAttackRange;
- if (dist == 1 && serverVersion < 1)
+ if (dist == 1 && broken)
dist = 2;
break;
case 11:
dist = mAttackRange - 1;
if (dist < 1)
dist = 1;
- if (dist == 1 && serverVersion < 1)
+ if (dist == 1 && broken)
dist = 2;
break;
default:
@@ -2746,10 +2748,12 @@ void LocalPlayer::attack2(Being *const target, const bool keep,
if (!dontChangeEquipment && target)
changeEquipmentBeforeAttack(target);
+ const bool broken = Net::getServerFeatures()
+ ->haveBrokenPlayerAttackDistance();
+
// probably need cache getPathLength(target)
if ((!target || settings.attackType == 0 || settings.attackType == 3)
- || (withinAttackRange(target, serverVersion < 1,
- serverVersion < 1 ? 1 : 0)
+ || (withinAttackRange(target, broken, broken ? 1 : 0)
&& getPathLength(target) <= getAttackRange2()))
{
attack(target, keep);