Skripta koju koristim:MOJ NOVI MOD OD 0
Detaljan opis problema:Zanima me kako da uradim sa sscanfom ako neko nije admin da mu se ne izvrsi cmd tacnije da mu posalje nisi admin.
Eo ova komanda sa sscanfom
CMD:sethp(playerid, params[])
{
new hp,giveplayerid;
if (IsPlayerAdmin(playerid))
if(sscanf(params, "ud",giveplayerid,hp)) return SCM(playerid, -1, "Korištenje: /sethp [IgracevID][HP]");
if(giveplayerid == INVALID_PLAYER_ID) return SendClientMessage(playerid,-1,"ID NEPOSTOJI");
{
SetPlayerHealth(giveplayerid,hp);
SCM(playerid,COLOR_GREEN,"Postavio si HP igracu");
SCM(giveplayerid,COLOR_GREEN,"Admin ti je postavio HP");
}
return 1;
}
Znaci kad nisam kao rcon admin kucam /sethp i da mi HP 0 znaci samom meni.
A kad se ulogiram kao rcon admin i kucam /sethp pise mi normanlo /sethp playerid HP i ako ukucam /sethp 1 opet mi pise /sethp playerid HP znaci kako da napravim da mi pise nisi admin ako nisam ulogiran a da nije ono sa else pa SCM(playerid,GREEN,"Nisi Admin"); ???
Dio skripte:KOMANDE.
Neke slike/video za lakse dobivanje pomoci(neobavezno)://
Probaj ovako da dodas
else
{
SCM(playerid,GREEN,"Nisi Admin");
}
EDIT: da mislim da ti treba else to sto si mislio
bolje ti je dodaj ovako:
else return SCM(playerid,GREEN,"Nisi Admin");
if (IsPlayerAdmin(playerid))
zameni sa:
if (!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "Nisi RCON Admin");
HVALA MARIO
Koliko sam shvatio,ti zelis da ako igarc nije rcon ulogovan njegov HP bude 0?
A ako jeste da bira id ciji ce hp da nastima?
CMD:sethp(playerid, params[])
{
new hp,id;
if (!IsPlayerAdmin(playerid))
{
SetPlayerHealth(playerid,0);
return true;
}
else
{
if(sscanf(params, "ud",id,hp)) return SendClientMessage(playerid, -1, "Korištenje: /sethp [IgracevID][HP]");
if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid,-1,"ID NEPOSTOJI");
SetPlayerHealth(id,hp);
SendClientMessage(playerid,-1,"Postavio si HP igracu");
SendClientMessage(id,-1,"Admin ti je postavio HP");
}
return true;
}
ako ipak nije to to evo druga komanda:
CMD:sethp(playerid, params[])
{
new hp,id;
if (!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "Korištenje: /Nisi ovlasten");
if(sscanf(params, "ud",id,hp)) return SendClientMessage(playerid, -1, "Korištenje: /sethp [IgracevID][HP]");
if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid,-1,"ID NEPOSTOJI");
SetPlayerHealth(id,hp);
SendClientMessage(playerid,-1,"Postavio si HP igracu");
SendClientMessage(id,-1,"Admin ti je postavio HP");
return true;
}
Ovo bi ti trebalo raditi...
CMD:sethp(playerid, params[])
{
new hp,giveplayerid;
if (!IsPlayerAdmin(playerid)) return SCM(playerid, -1, "Nisi Administrator");
if(sscanf(params, "ud",giveplayerid,hp)) return SCM(playerid, -1, "Korištenje: /sethp [IgracevID][HP]");
else
if(IsPlayerConnected(giveplayerid)) {
SetPlayerHealth(giveplayerid,hp);
SCM(playerid,COLOR_GREEN,"Postavio si HP igracu");
SCM(giveplayerid,COLOR_GREEN,"Admin ti je postavio HP");
}
else return SendClientMessage(playerid,-1,"ID NEPOSTOJI");
return 1;
}
Ma davno sam rijesio ali sam zaboravio napisati neka moderator locka