-
sziasztok azt hogy tudom meg csinálni hogy a SendClientMessage-t csak az adminoknak küldje el ??? /ahelp parancshoz lesz ;)
Szerk:
sziasztok azt gondoltam h van 1 ember be írja
/ahelp <szöveg>
És ezt elküldi minden online adminnak a szöveget...
ezt hogy lehet megcsinálni ??
-
CMD:ahelp(playerid, params[])
{
if(IsPlayerAdmin(playerid))
{
SendClientMessage(playerid, -1, \"Admin parancsok!\");
}
return 1;
}
vagy
CMD:ahelp(playerid, params[])
{
if(IsPlayerAdmin(playerid))
{
SendAdminMessage(-1, \"Admin parancsok!\");
}
return 1;
}
stock SendAdminMessage(color, string[])
{
for(new i; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(IsPlayerAdmin(i))
{
SendClientMessage(i, color, string);
}
}
}
}
-
Nem pont így gondoltam hanem van 1 ember be írja
/ahelp <szöveg>
És ezt elküldi minden online adminnak a szöveget...
De én fogalmaztam rosszul :(
-
CMD:ahelp(playerid, params[]) {
new help[128];
if(sscanf(params, \"s[128]\", help)) return SendClientMessage(playerid, -1, \"/ahelp <szöveg>\");
for(new i = 0; i < MAX_PLAYERS; i++) if(IsPlayerConnected(i) && IsPlayerAdmin(i)) SendClientMessage(i, -1, help);
return 1;
}
-
Köszi a segítséget végül a kód így néz ki:
CMD:ahelp(playerid, params[]) {
new name[MAX_PLAYER_NAME];
new tex[128];
new i = 0;
new form[200];
GetPlayerName(playerid,name,sizeof(name));
if(sscanf(params, \"s[128]\", tex)) return SendClientMessage(playerid, -1, \"Használat: /ahelp <szöveg>\");
for(new i = 0; i < MAX_PLAYERS; i++) if(IsPlayerConnected(i) && pinfo[playerid][admin] >= 3 || IsPlayerAdmin(i)) format( form, sizeof(form), \"[AdminHelp]<%s>: %s\", name, tex); SendClientMessage(i, zold, form);
return 1;
}
-
a format részt tehetnéd a ciklus elé is, ugy kevésbé terhelné a szervert, illetve gyorsabb lenne.