GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Segítségkérés => A témát indította: ppatrik2012 - 2013. Április 13. - 13:16:31

Cím: Help ZCMD->STRCMP
Írta: ppatrik2012 - 2013. Április 13. - 13:16:31
Mára még1 kérdésem lenne.. Vannak ugye az:
if(sscanf(params................. parancsok ZCMD-nél. Én szeretnék ugyan ilyen parancsokat STRCMP-nél, de:
if(sscanf(cmdtext................ Így nem jó... Hogyan kellene STRCMP-s cucchoz \"params\" callbacket vagy minek hívják, átvinni? Szerintem hülyén írtam le, de érthetõ szerintem. Ezen fennakadtam, és ez így nem jó :S
Cím: Help ZCMD->STRCMP
Írta: Red-Eye - 2013. Április 13. - 13:32:44
Hmm.. nem teszteltem de ötletem a következõ:
létrehozol valami külön változót amibe beletudod bakolni magát a \"/asd\" parancsot mondjuk
legyen ez most
new asd[20]; no meg mondjuk számot kérünk be
new szam;
if(sscanf(cmdtext,\"s[20]i\",asd,szam)............
próbáld ki ha olyanom lesz letesztelem csak most ebédelni készülök épp.
Cím: Help ZCMD->STRCMP
Írta: TengeriMalac - 2013. Április 13. - 13:36:31
mért nem zcmd? egyszerû, gyors, átlátható
Cím: Help ZCMD->STRCMP
Írta: Zsolesszka - 2013. Április 13. - 17:04:05
A bejövõ parancs a következõképp szerepel a cmdtext változóban:
/bla parameter -ek
Ahhoz hogy összetudd hasonlítani egy strcmp funkcióval ahhoz le kell választani a példából a /bla részt csak úgy fog mûködni.
Ezt megoldhatod egy megelõzõ sscanf-el vagy a szokásos strtok alkalmazásával.
Tehát a sscanf verzió:
 

public
OnPlayerCommandText(playerid, cmdtext[])
{
new
command[32],
params[96];
sscanf(cmdtext, \"s[32]S[96]\", command, params);
if(strcmp(command, \"/bla\") == 0)  // -> /bla
{
print(params); // -> parameter -ek
return 1;
}
return 0;
}

 
Az strtok:
 

public
OnPlayerCommandText(playerid, cmdtext[])
{
new
cmd[20], // <. ha az strtok eljárásban a result[20] is,  ha más annyit kell ide írni.
idx;
cmd = strtok(cmdtext, idx);   
if(strcmp(cmd, \"/bla\") == 0)  // -> /bla
{
print(cmdtext[idx]); // -> parameter -ek
return 1;
}
return 0;
}
Cím: Help ZCMD->STRCMP
Írta: ppatrik2012 - 2013. Április 13. - 20:31:43
Köszönöm a segítséget, de nekem ez sajnos \"kínai\", átváltottam ZCMD-re :)