From 463c0d9e0e7d28665e0d8456c49e63f02b8b79a5 Mon Sep 17 00:00:00 2001 From: Uleat Date: Wed, 18 Mar 2020 16:12:25 -0400 Subject: [PATCH] Added proximity check for feared clients --- common/ruletypes.h | 1 + zone/mob_ai.cpp | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/common/ruletypes.h b/common/ruletypes.h index f1d00529f..20e26e315 100644 --- a/common/ruletypes.h +++ b/common/ruletypes.h @@ -161,6 +161,7 @@ RULE_BOOL(Character, DismountWater, true, "Dismount horses when entering water") RULE_BOOL(Character, UseNoJunkFishing, false, "Disregards junk items when fishing") RULE_BOOL(Character, SoftDeletes, true, "When characters are deleted in character select, they are only soft deleted") RULE_INT(Character, DefaultGuild, 0, "If not 0, new characters placed into the guild # indicated") +RULE_BOOL(Character, ProcessFearedProximity, true, "Processes proximity checks when feared") RULE_CATEGORY_END() RULE_CATEGORY(Mercs) diff --git a/zone/mob_ai.cpp b/zone/mob_ai.cpp index 43d85c450..b687c0c8a 100644 --- a/zone/mob_ai.cpp +++ b/zone/mob_ai.cpp @@ -747,6 +747,13 @@ void Client::AI_Process() RunTo(m_FearWalkTarget.x, m_FearWalkTarget.y, m_FearWalkTarget.z); } } + if (RuleB(Character, ProcessFearedProximity) && proximity_timer.Check()) { + entity_list.ProcessMove(this, glm::vec3(GetX(), GetY(), GetZ())); + if (RuleB(TaskSystem, EnableTaskSystem) && RuleB(TaskSystem, EnableTaskProximity)) + ProcessTaskProximities(GetX(), GetY(), GetZ()); + + m_Proximity = glm::vec3(GetX(), GetY(), GetZ()); + } return; }