Skripta koju koristim: svoju
Detaljan opis problema: ehh.. neznam u cemu je problem, nadam se da cete mi pokazat
Dio skripte:
CMD:dajbodove(playerid,params[])
{
//if(PlayerInfo[playerid][pAdmin] < 6) SendClientMessage(playerid,-1,"{afafaf}Nemozes koristiti ovu komandu!");
new pid,pbodova,pIme[MAX_PLAYER_NAME],stringggg[128];
if(sscanf(params,"rd",pid,pbodova)) return SendClientMessage(playerid,COLOR_WHITE,"{afafaf}/dajbodove [ID/dio imena][koliko bodova]");
else if(pid == INVALID_PLAYER_ID) return SendClientMessage(playerid,COLOR_WHITE,"{afafaf}Igrac nije na serveru!");
else
{
PlayerInfo[pid][pDonBodovi] = PlayerInfo[pid][pDonBodovi]+ pbodova;
GetPlayerName(pid,pIme,sizeof(pIme));
format(stringggg,128,"{afafaf}Dodijelio si {ffffff}%d {afafaf}bodova igracu {ffffff}%s",pbodova,pIme);
SendClientMessage(playerid,COLOR_WHITE,"{afafaf}Dodijelio si {ffffff}%d {afafaf}bodova igracu {ffffff}%s");
}
return 1;
}
ako upisem bez parametara izbaci mi ono "/dajbodove [id/dio imena] [koliko bodova]"
al cim upisem parametre server se srusi :/
Neke slike/video za lakse dobivanje pomoci(neobavezno):
ovako..
CMD:dajbodove(playerid,params[])
{
//if(PlayerInfo[playerid][pAdmin] < 6) SendClientMessage(playerid,-1,"{afafaf}Nemozes koristiti ovu komandu!");
new pid,pbodova,pIme[MAX_PLAYER_NAME],stringggg[128];
if(sscanf(params,"ud",pid,pbodova)) return SendClientMessage(playerid,COLOR_WHITE,"{afafaf}/dajbodove [ID/dio imena][koliko bodova]");
else if(pid == INVALID_PLAYER_ID) return SendClientMessage(playerid,COLOR_WHITE,"{afafaf}Igrac nije na serveru!");
else
{
PlayerInfo[pid][pDonBodovi] = PlayerInfo[pid][pDonBodovi]+ pbodova;
GetPlayerName(pid,pIme,sizeof(pIme));
format(stringggg,128,"{afafaf}Dodijelio si {ffffff}%d {afafaf}bodova igracu {ffffff}%s",pbodova,pIme);
SendClientMessage(playerid,COLOR_WHITE,"{afafaf}Dodijelio si {ffffff}%d {afafaf}bodova igracu {ffffff}%s");
}
return 1;
}
opet mi se srusi...
a evo..
CMD:dajbodove(playerid,params[])
{
//if(PlayerInfo[playerid][pAdmin] < 6) SendClientMessage(playerid,-1,"{afafaf}Nemozes koristiti ovu komandu!");
new pid,pbodova,pIme[MAX_PLAYER_NAME],stringggg[128];
if(sscanf(params,"ud",pid,pbodova)) return SendClientMessage(playerid,COLOR_WHITE,"{afafaf}/dajbodove [ID/dio imena][koliko bodova]");
else if(pid == INVALID_PLAYER_ID) return SendClientMessage(playerid,COLOR_WHITE,"{afafaf}Igrac nije na serveru!");
else
{
PlayerInfo[pid][pDonBodovi] = PlayerInfo[pid][pDonBodovi]+ pbodova;
GetPlayerName(pid,pIme,sizeof(pIme));
format(stringggg,128,"{afafaf}Dodijelio si {ffffff}%d {afafaf}bodova igracu {ffffff}%s",pbodova,pIme);
SendClientMessage(playerid,COLOR_WHITE,stringggg);
}
return 1;
}
Hvala sad radi, ako nije problem zanima me u cemu je bio problem, sto sam grijesio, i zanima me kako stavis taj kod znaci ne ovako
nego na ovaj nacin na koji si ti stavio
Hvala puno :)
[code=c]if(sscanf(params,"ud",pid,pbodova))
a ti si stavio
if(sscanf(params,"rd",pid,pbodova)) // rd ??
i
SendClientMessage(playerid,COLOR_WHITE,"{afafaf}Dodijelio si {ffffff}%d {afafaf}bodova igracu {ffffff}%s"); // %s je izazvao crash
a trebao si poslat formatiran "string" iznad ;)
LOCK!
edit:: ovaj code stavljas sa [code=c][ /code] // bez razmaka
[/code][/code]