From 0c9811d3e3c1e20e16f5d1dca794fa247815eea5 Mon Sep 17 00:00:00 2001 From: Marco Hladik Date: Sat, 18 Sep 2021 01:33:26 +0200 Subject: [PATCH] Gamerules: Disable monster spawning in multiplayer, also fix draw being called when the weapon is already selected. --- src/server/gamerules.h | 1 + src/server/gamerules_multiplayer.qc | 6 ++++++ src/server/player.qc | 7 +++++-- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/server/gamerules.h b/src/server/gamerules.h index 302ea3c..e9adce7 100644 --- a/src/server/gamerules.h +++ b/src/server/gamerules.h @@ -42,6 +42,7 @@ class HLMultiplayerRules:HLGameRules virtual void(void) FrameStart; virtual void(void) CheckRules; + virtual int(void) MonstersSpawn; /* client */ virtual void(base_player) PlayerSpawn; diff --git a/src/server/gamerules_multiplayer.qc b/src/server/gamerules_multiplayer.qc index d85e65b..ab0bdb4 100644 --- a/src/server/gamerules_multiplayer.qc +++ b/src/server/gamerules_multiplayer.qc @@ -176,6 +176,12 @@ HLMultiplayerRules::ConsoleCommand(base_player pp, string cmd) return (1); } +int +HLMultiplayerRules::MonstersSpawn(void) +{ + return (FALSE); +} + void HLMultiplayerRules::HLMultiplayerRules(void) { diff --git a/src/server/player.qc b/src/server/player.qc index 2b8b170..d0b7dd4 100644 --- a/src/server/player.qc +++ b/src/server/player.qc @@ -80,8 +80,11 @@ void Weapons_Draw(void); void CSEv_PlayerSwitchWeapon_i(int w) { player pl = (player)self; - pl.activeweapon = w; - Weapons_Draw(); + + if (pl.activeweapon != w) { + pl.activeweapon = w; + Weapons_Draw(); + } } void