A rövidebb parancsok blokkolják a hosszabbak mûködését

Indította Petrik, 2013. július 24. - 14:27:51

Előző téma - Következő téma

Petrik

Sziasztok. Az lenne a problémám, hogy a rövidebb parancsok blokkolják azoknak a hosszabb parancsok mûködését, amik ugyanazzal a betûvel a kezdõdnek.
Van egy \'/r\' parancsom, ami rádiót jelent, azonban ha beírom, hogy /repair (ami másik parancsom), akkor kiírja, hogy \'nincs frekvencia beállítva\', mivel a \'/r\'-t érzékeli. Sose tudtam a megoldását, valaki valami ötlet?
 
if(!strcmp(cmdtext, \"/r\", true, 2))

 

if(!strcmp(cmdtext, \"/repair\", true, 7))

 
Nem kérek olyan kommenteket, hogy \"Használj ZCMD-t, az könnyebb\", meg \"Miért nem ZCMD-t használsz\". Én ezt használom, ezt szeretem. Válaszokat elõre is köszönöm!

Zsolesszka

Mert megszabod hogy mennyi karaktert egyeztessen:
 
if(!strcmp(cmdtext, \"/r\", true, 2))[/quote]
Természetes dolog hogy egyezést talál mivel az /r parancsnál 3 karakternyit kellene ellenõrizni a harmadik meg az úgynevezett null karakter \'\\0\'.
Tehát: \'/\',\'r\',\'\\0\' ez 3 karakter.
Hagyd el a karakterek meghatározásának lehetõségét vagy növeld meg egyel az értékeket.
 
if(!strcmp(cmdtext, \"/r\", true, 3))
//vagy
if(!strcmp(cmdtext, \"/r\", true))

Petrik

Idézetet írta: ɐʞzssǝlosz date=1374676308\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"40363\" data-ipsquote-contentclass=\"forums_TopicMert megszabod hogy mennyi karaktert egyeztessen:
 
if(!strcmp(cmdtext, \"/r\", true, 2))
Természetes dolog hogy egyezést talál mivel az /r parancsnál 3 karakternyit kellene ellenõrizni a harmadik meg az úgynevezett null karakter \'\\0\'.
Tehát: \'/\',\'r\',\'\\0\' ez 3 karakter.
Hagyd el a karakterek meghatározásának lehetõségét vagy növeld meg egyel az értékeket.
 
if(!strcmp(cmdtext, \"/r\", true, 3))
//vagy
if(!strcmp(cmdtext, \"/r\", true))

 

[/quote]
Ez így jó is lenne, csak az a baj, hogy hibát észlel mostmár, ha a \'/r\' után szöveget írok. Nem ismeri fel a parancsot.

Fl0rian

próbáld magad szeparálni a parancsot és paramétereit. egy szóköz választja el õket egymástól.

Zsolesszka

Ha parancs után szeretnél plusz paramétert írni arra kitalálták ezt: http://wiki.sa-mp.com/wiki/Strtok\" rel=\"external nofollow\">http://wiki.sa-mp.com/wiki/Strtok