-
Sziasztok.
Van egy parancs. Pl. /goto [ név id ]
Ezt megoldom ugye sscanf-al. De ennek a parancsnak van egy alparancsa. pl. /goto [ enged ]
ehhez is tegyük fel raknék egy sscanf-ot. De ugye az már valamiért nem mûködik.
Eddig próbáltam így:
if(sscanf(params[0], \"r\", Kinek)) bla bla...
if(sscanf(params[1], \"r\", Kihez)) bla bla
Így nem jó.
Próbáltam egy új változóval is.
Pl.
new command[20];
if(sscanf(params, \"r\", Kinek)) bla bla...
if(sscanf(command, \"r\", Kihez)) bla bla
Így se jó... Mi a megoldás?
UI: ZCMD parancsfeldolgozó
UI2: Köszönöm elõre is.
-
if(sscanf(params, \"ii\", valami, valami2)) return SendClient..
H string változó akkor s[érték] az i helyére. i = egész szám.
-
Úgy is próbáltam de nem sikerült...
Jelenleg így néz ki a parancsom:
CMD:szemelyi(playerid, params[])
{
new Parancs[128], Kinek;
if(sscanf(params, \"s[128]\", Parancs)) return SendClientMessage(playerid, -1, \"\"HEX_SZERVER\"Szeró: \"HEX_FEHER\"Használata: \"HEX_SZERVER\"/személyi [ Vesz / Felmutat ]\");
{
if( !strcmp(Parancs,\"vesz\") ) // A VESZ PARANCS TÖKÉLETESEN MÛKÖDIK !
{
if(IsPlayerInRangeOfPoint(playerid, 1.5, 358.2363,168.9488,1008.3828))
{
if(GetPlayerMoney(playerid) >= 25)
{
if(pInfo[playerid][pSzemelyi] == 0)
{
GivePlayerMoney(playerid, -25);
pInfo[playerid][pSzemelyi] = 1;
SCM(playerid, -1, \"\"HEX_SZERVER\"Szeró: \"HEX_FEHER\"Sikeresen vettél egy személyit!\");
}
else
{
SCM(playerid, -1, \"\"HEX_SZERVER\"Szeró: \"HEX_FEHER\"Már van személyid!\");
}
}
else
{
SCM(playerid, -1, \"\"HEX_SZERVER\"Szeró: \"HEX_FEHER\"Nincs elegendõ pénzed! \"HEX_SZERVER\"(Készpénzben 25 dollár!)\");
}
}
else
{
SCM(playerid, -1, \"\"HEX_SZERVER\"Szeró: \"HEX_FEHER\"Itt nem vehetsz személyit!\");
}
}
else if( !strcmp(Parancs,\"felmutat\") ) // EZ MÁR SZAR!
{
if(sscanf(params, \"s[128]r\",Parancs, Kinek)) return SendClientMessage(playerid, -1, \"\"HEX_SZERVER\"Szeró: \"HEX_FEHER\"Használata: \"HEX_SZERVER\"/személyi felmutat [ Név / ID ]\"); // IDEÁIG ELJUT DE A SZÖVEGET NEM JELENTI MEG...
SCM(Kinek, -1, \"ASDASDASDASFDFDEF\");
}
}
return 1;
}
Erre lenne nekem szükségem. De sehogy se sikerül megoldanom. Nagyon megköszönném ha tudna valaki segíteni. :)
-
Tessék!
CMD:szemelyi(playerid, params[]) {
new Parancs[8], Kinek;
if(sscanf(params, \"s[8]\", Parancs)) return SendClientMessage(playerid, -1, \"Használat: /személyi [ Vesz / Felmutat ]\");
if( !strcmp(Parancs,\"vesz\") ) // A VESZ PARANCS TÖKÉLETESEN MÛKÖDIK !
{
if(!IsPlayerInRangeOfPoint(playerid, 1.5, 358.2363,168.9488,1008.3828)) return SCM(playerid, -1, \"\"HEX_SZERVER\"Szeró: \"HEX_FEHER\"Itt nem vehetsz személyit!\");
if(GetPlayerMoney(playerid) < 25) return SCM(playerid, -1, \"\"HEX_SZERVER\"Szeró: \"HEX_FEHER\"Nincs elegendõ pénzed! \"HEX_SZERVER\"(Készpénzben 25 dollár!)\");
if(pInfo[playerid][pSzemelyi] == 1) return SCM(playerid, -1, \"\"HEX_SZERVER\"Szeró: \"HEX_FEHER\"Már van személyid!\");
GivePlayerMoney(playerid, -25);
pInfo[playerid][pSzemelyi] = 1;
SCM(playerid, -1, \"\"HEX_SZERVER\"Szeró: \"HEX_FEHER\"Sikeresen vettél egy személyit!\");
}
else if( !strcmp(Parancs,\"felmutat\")) {
SCM(Kinek, -1, \"ASDASDASDASFDFDEF\");
}
return 1;
}
-
Oké eddig nekem is megvan... De hol van, hogy KINEK mutassa fel? :)
Dupla hozzászólás automatikusan összefûzve. ( 2013. szeptember 21. - 19:41:40 )
Mindegy. Már megoldottam!