From 62c5554bec248ba3d91987c7a3394d42680cf566 Mon Sep 17 00:00:00 2001 From: maikmerten Date: Wed, 31 Aug 2005 20:33:10 +0000 Subject: [PATCH] get some rcon-like features git-svn-id: svn://svn.icculus.org/nexuiz/trunk@513 f962a42d-fe04-0410-a3ab-8c8b0445ebaa --- qcsrc/gamec/clientcommands.c | 19 +++++++++++++++++++ qcsrc/gamec/defs.h | 3 +++ 2 files changed, 22 insertions(+) create mode 100644 qcsrc/gamec/clientcommands.c diff --git a/qcsrc/gamec/clientcommands.c b/qcsrc/gamec/clientcommands.c new file mode 100644 index 000000000..40f02cba2 --- /dev/null +++ b/qcsrc/gamec/clientcommands.c @@ -0,0 +1,19 @@ +void SV_ParseClientCommand(string s) { + tokenize(s); + + if(cvar("sv_clientcommands")) { + if(argv(0) == "clogin") { + if(argv(1) == cvar_string("sv_clientcommands_password")) { + self.adminstatus = 1; + sprint(self, "You now have remote admin status.\n"); + } + } else if(argv(0) == "ccmd" && self.adminstatus) { + localcmd(strcat(argv(1)," ",argv(2)," ",argv(3)," ",argv(4),"\n")); + } else { + clientcommand(self,s); + } + + } else { + clientcommand(self,s); + } +} diff --git a/qcsrc/gamec/defs.h b/qcsrc/gamec/defs.h index 7fdde9cd8..2b306199b 100644 --- a/qcsrc/gamec/defs.h +++ b/qcsrc/gamec/defs.h @@ -14,6 +14,9 @@ entity dest; //.string wad; //.string map; +// is this client a remote administrator? +.float adminstatus; + //.float worldtype; .float delay; .float wait; -- 2.39.2