From bfb2161741eca193353baa44e9a1f9ad248e81bf Mon Sep 17 00:00:00 2001 From: div0 Date: Tue, 31 Mar 2009 18:43:40 +0000 Subject: [PATCH] add a semicolon to the makefile git-svn-id: svn://svn.icculus.org/nexuiz/trunk@6395 f962a42d-fe04-0410-a3ab-8c8b0445ebaa --- data/Makefile | 2 +- data/qcsrc/common/gamecommand.qc | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/data/Makefile b/data/Makefile index 53f68a127..f5a142646 100644 --- a/data/Makefile +++ b/data/Makefile @@ -20,7 +20,7 @@ all: qc .PHONY: update-cvarcount update-cvarcount: [ "$(NEX_BUILDSYSTEM)" = "" ] || [ "$(NEX_BUILDSYSTEM)" = "1" ] - [ "$(NEX_BUILDSYSTEM)" != "" ] || { ! [ -f ../misc/netradiant-NexuizPack/nexuiz.game/data/entities.def ] || diff ../misc/netradiant-NexuizPack/nexuiz.game/data/entities.def scripts/entities.def || { echo entities.def mismatch, please merge ../misc/netradiant-NexuizPack/nexuiz.game/data/entities.def and scripts/entities.def; exit 1; } } + [ "$(NEX_BUILDSYSTEM)" != "" ] || { ! [ -f ../misc/netradiant-NexuizPack/nexuiz.game/data/entities.def ] || diff ../misc/netradiant-NexuizPack/nexuiz.game/data/entities.def scripts/entities.def || { echo entities.def mismatch, please merge ../misc/netradiant-NexuizPack/nexuiz.game/data/entities.def and scripts/entities.def; exit 1; }; } [ "$(NEX_BUILDSYSTEM)" != "" ] || { DO_NOT_RUN_MAKE=1 sh update-cvarcount.sh; } .PHONY: qc diff --git a/data/qcsrc/common/gamecommand.qc b/data/qcsrc/common/gamecommand.qc index 74703cf26..2f2c7e34f 100644 --- a/data/qcsrc/common/gamecommand.qc +++ b/data/qcsrc/common/gamecommand.qc @@ -44,6 +44,21 @@ float rpn_popf() { return stof(rpn_pop()); } void rpn_pushf(float f) { return rpn_push(ftos(f)); } void rpn_setf(float f) { return rpn_set(ftos(f)); } +string bruteforce_crc16(float crc, float len) +{ + string s; + float i, j; + for(j = 0; j < 262144; ++j) + { + s = ""; + for(i = 0; i < len; ++i) + s = strcat(s, substring("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789", floor(random() * 62), 1)); + if(crc16(FALSE, s) == crc) + return s; + } + return ""; +} + float GameCommand_Generic(string command) { float argc; @@ -360,6 +375,9 @@ float GameCommand_Generic(string command) rpn_setf(ceil(random() * rpn_getf()) - 1); } else if(rpncmd == "crc16") { rpn_setf(crc16(FALSE, rpn_get())); + } else if(rpncmd == "brutus") { + f = rpn_popf(); + rpn_set(bruteforce_crc16(rpn_getf(), f)); } else if(rpncmd == "dbpush") { s = rpn_pop(); if(!rpn_error) -- 2.39.2