-
Sziasztok!
Szeretném megtudni, hogy sscanf-ban lehetséges-e a VAGY használata.
A következõképp kellene nekem használni:
sscanf(param, \"u\", giveplayerid) return SendClientMessage(playerid, \"Használat: /parancs [JátékosID / Kikapcsol]
(ezt csak most példának írtam)
Tehát a parancsnak a paramétere lehet egy felhasználó, vagy egy string is, ez kellene nekem.
Köszönöm a válaszokat!
-
if( sscanf( params, \"uds\", játékos név / azonosító, integer ( egész szám ), string ) )
-
esetleg?
new szoveg[30];
if( sscanf( params, \"u\" ) || sscanf(params, \"s[30]\", szoveg))
{
if(Isnull(szoveg))
{
if(strcmp(szoveg, \"Kikapcsol\", 10, true))
{
}
return 1;
}
}
//Isnullon kívüli cuccok
Nem tudom jó e ez az elv, de én itt indulnék el. Befejezni már nem volt kedvem de remélem érted a logikám
-
if(sscanf(params, \"s[32]\", string)) return ...
if(IsNumeric(string)) // ha játékos ID
else {
if(!strcmp(string, \"kikapcsol\")) // ha az, hogy kikapcsol
}
else // ha egyik sem.
-
Köszönöm a válaszokat holnap kipróbálom a megoldásokat és írok :) Azt hittem mondjuk, hogy van egy ilyen alapból az sscanf-ban csak én nem tudom :o
-
Ahogy a fõposztban szerepel úgy lehet használni játékosnév vagy játékos ID beírásával is, azért van az \"u\" format.
pl.: /parancs béla vagy /parancs 2 A hozzáadott változó értéke \"giveplayerid\" mindenféleképpen egy szám lesz attól függõen, hogy van-e csatlakozott játékos (mint a példában) béla illetve 2-es azonosítószámmal.
-
TengeriMalac megoldása lett végül a legkonfortosabb, ugyanis ha if-ben két sscanfot használok VAGY-al errorozik a pawno :-[
Amit pedig AmF írt akkor lenne jó, ha a paraméterekben egy játékost, egy integert és egy szöveget is használnék egymás után.
Amit zsolesszka írt, azzal az a baj, hogy nem játékosnevet értek a string alatt, hanem egy szót(\"kikapcsol\"). Mindenesetre próbáltam csak \"u\"-val, mert én is azt hittem, hogy jó lesz, de sajnos nem.
Mindenesetre meg lett oldva, köszönöm a segítséget!