From: Samual Date: Sat, 17 Dec 2011 20:21:12 +0000 (-0500) Subject: Separate GetFilteredNumber and GetFilteredEntity X-Git-Tag: xonotic-v0.6.0~188^2~28^2~115 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=e5bd9c54745794f66824fa03824a9f9d9ab43c0d;p=xonotic%2Fxonotic-data.pk3dir.git Separate GetFilteredNumber and GetFilteredEntity --- diff --git a/qcsrc/server/command/common.qc b/qcsrc/server/command/common.qc index 05302c8a1..679e49888 100644 --- a/qcsrc/server/command/common.qc +++ b/qcsrc/server/command/common.qc @@ -19,29 +19,39 @@ string GetCallerName(entity caller) return ((autocvar_sv_adminnick != "") ? autocvar_sv_adminnick : autocvar_hostname); } -// find a player which matches the input string, and return their entity number -float GetFilteredNumber(string input) +entity GetFilteredEntity(string input) { entity tmp_player, selection; - float output, matches; + float tmp_number; - // check and see if we can get a number from input like "#3" or "3" if(substring(input, 0, 1) == "#") - output = stof(substring(input, 1, -1)); + tmp_number = stof(substring(input, 1, -1)); + else + tmp_number = stof(input); + + if(tmp_number) + { + selection = edict_num(tmp_number); + } else - output = stof(input); - - // if we can't, check and see if we can match the input to the netname of any player in the game - if not(output) { FOR_EACH_CLIENT(tmp_player) if (strdecolorize(tmp_player.netname) == strdecolorize(input)) selection = tmp_player; - - if (selection) { output = num_for_edict(selection); } } - - print(strcat("input: ", input, ", output: ", ftos(output), ",\n")); + + return selection; +} + +// find a player which matches the input string, and return their entity number +float GetFilteredNumber(string input) +{ + entity selection = GetFilteredEntity(input); + float output; + + if(selection) { output = num_for_edict(selection); } + + print(strcat("input: ", input, ", output: ", ftos(output), ",\n")); // todo remove after done debugging return output; } diff --git a/qcsrc/server/command/vote.qc b/qcsrc/server/command/vote.qc index 2a5676a02..66fd049f0 100644 --- a/qcsrc/server/command/vote.qc +++ b/qcsrc/server/command/vote.qc @@ -448,7 +448,6 @@ string VoteCommand_extractcommand(string input, float startpos, float argc) else output = substring(input, argv_start_index(startpos), argv_end_index(-1) - argv_start_index(startpos)); - print("VoteCommand_parse: '", output, "'. \n"); return output; }