From 6bb563743ed57f8d9bbd9eeb01771d7d879fb5cc Mon Sep 17 00:00:00 2001 From: Mario Date: Sat, 27 Apr 2013 21:28:48 +1000 Subject: [PATCH] Add a cvar to only attack enemies infront of the monster --- monsters.cfg | 1 + qcsrc/server/autocvars.qh | 1 + qcsrc/server/monsters/lib/monsters.qc | 12 ++++++++++++ 3 files changed, 14 insertions(+) diff --git a/monsters.cfg b/monsters.cfg index d91d0293f..7940c6839 100644 --- a/monsters.cfg +++ b/monsters.cfg @@ -14,6 +14,7 @@ set g_monster_spawnshieldtime 2 "Monsters will not take damage for this amount o set g_monsters_typefrag 1 set g_monsters_healthbars 1 "Show health bars above monsters" set g_monsters_target_range 2000 +set g_monsters_target_infront 0 "Only find targets infront of the monster" set g_monsters_respawn 1 "Enable monster respawning" set g_monsters_respawn_delay 20 "Monsters respawn in this amount of seconds" set g_monsters_score_kill 1 "Get this many points for killing a naturally spawned monster" diff --git a/qcsrc/server/autocvars.qh b/qcsrc/server/autocvars.qh index d7c8d1144..5f1169117 100644 --- a/qcsrc/server/autocvars.qh +++ b/qcsrc/server/autocvars.qh @@ -1252,6 +1252,7 @@ float autocvar_g_monsters_think_delay; float autocvar_g_monsters_max; float autocvar_g_monsters_max_perplayer; float autocvar_g_monsters_target_range; +float autocvar_g_monsters_target_infront; float autocvar_g_monsters_typefrag; float autocvar_g_monsters_owners; float autocvar_g_monsters_miniboss_chance; diff --git a/qcsrc/server/monsters/lib/monsters.qc b/qcsrc/server/monsters/lib/monsters.qc index 860fe39f2..af9b38fd0 100644 --- a/qcsrc/server/monsters/lib/monsters.qc +++ b/qcsrc/server/monsters/lib/monsters.qc @@ -129,6 +129,18 @@ float monster_isvalidtarget (entity targ, entity ent) if not(IsDifferentTeam(targ, ent)) return FALSE; // enemy is on our team + + if(autocvar_g_monsters_target_infront) + if(ent.enemy != targ) + { + float dot; + + makevectors (ent.angles); + dot = normalize (targ.origin - ent.origin) * v_forward; + + if(dot <= 0.3) + return FALSE; + } return TRUE; } -- 2.39.2