-
Sziasztok!
Az elõbb csináltam egy kick rendszert és amikor ki akarja írni a chatre, h ki kit kickelt milyen indokkal nem írja , h kit.
Igazábõl kb. két hete scriptelek, és fogalmam sincs mit kellene tennem...
Itt a rendszer:
CMD:kick(playerid,params[])
{
if(IsPlayerAdmin(playerid))
{
new jatekosid;
new indok[64];
if(sscanf(params,\"is\",jatekosid,indok)) return SendClientMessage(playerid,piros,\"HASZNÁLAT: /kick <játékosid> <indok>\");
{
Kick(jatekosid);
GetPlayerName(playerid,nev,sizeof(nev));
new nev2[64];
GetPlayerName(jatekosid,nev2,sizeof(nev2));
format(indok,64,\"<Szerver>%s kickelte %s-t. Indok: %s\",nev,jatekosid,indok);
SendClientMessageToAll(narancs,indok);
printf(indok);
}
}
else SendClientMessage(playerid,narancs,\"<Szerver> Nem vagy admin.\");
return 1;
}
Hibát nem talál.
Amikor ingame vagyok és kickelek valakit, ezt írja: <Szerver>CrAzYwEEE kickelte -t. Indok: teszt
Nem tudom mit tegyek...
Elõre is köszi a segítséget!
-
CMD:kick(playerid,params[])
{
if(IsPlayerAdmin(playerid))
{
new jatekosid;
new indok[64];
if(sscanf(params,\"us\",jatekosid,indok)) return SendClientMessage(playerid,piros,\"HASZNÁLAT: /kick <játékosid> <indok>\");
{
Kick(jatekosid);
GetPlayerName(playerid,nev,sizeof(nev));
new nev2[64];
GetPlayerName(jatekosid,nev2,sizeof(nev2));
format(indok,64,\"<Szerver>%s kickelte %s-t. Indok: %s\",nev,jatekosid,indok);
SendClientMessageToAll(narancs,indok);
printf(indok);
}
}
else SendClientMessage(playerid,narancs,\"<Szerver> Nem vagy admin.\");
return 1;
}
Így ?
Mivel az i az integer,az u pedig játékosnév/id.
-
Sajnos így sem mûködik :hmmm:
-
Lekérni lekéred a jatekosid nevét:
new nev2[64];
GetPlayerName(jatekosid,nev2,sizeof(nev2));
Csak nem használod, és nem a megfelelõ változót írtad be a format eljáráshoz!
format(indok,64,\"<Szerver>%s kickelte %s-t. Indok: %s\",nev, nev2, indok);
-
Így sem megy :no: :no: :\'(
-
Ha 0.3x samp klienset használsz akkor késleltetni kell a Kick függvényt.
és akkor is így kell, hogy legyen:
CMD:kick(playerid,params[])
{
if(IsPlayerAdmin(playerid))
{
new jatekosid;
new indok[64];
if(sscanf(params,\"is[64]\",jatekosid,indok)) return SendClientMessage(playerid,piros,\"HASZNÁLAT: /kick <játékosid> <indok>\");
{
new nev2[24+1], nev[24+1];
GetPlayerName(playerid,nev,sizeof(nev));
GetPlayerName(jatekosid,nev2,sizeof(nev2));
format(indok,64,\"<Szerver>%s kickelte %s-t. Indok: %s\",nev,jatekosid,indok);
SendClientMessageToAll(narancs,indok);
printf(indok);
Kick(jatekosid);
}
}
else SendClientMessage(playerid,narancs,\"<Szerver> Nem vagy admin.\");
return 1;
}
-
Köszönöm szépen a segítséget, most sikerült mûködésbe hoznom :)
ZÁROK