Код:
#include <a_samp>
enum Info
{
AdminLevel,
}
new PlayerInfo[MAX_PLAYERS][Info];
//=============================================================================
public OnPlayerCommandText(playerid, cmdtext[])
{
new cmd[256], idx;
cmd = strtok(cmdtext, idx);
if(strcmp(cmd, "/makeadmin", true) == 0)
{
new string[128];
new tmp[256];
new player[MAX_PLAYER_NAME], giveplayer[MAX_PLAYER_NAME];
new giveplayerid;
if (IsPlayerAdmin(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, ORANGE, "USAGE: /makeadmin [playerid] [level]");
SendClientMessage(playerid, ORANGE, "FUNCTION: Player will be an admin.");
return 1;
}
giveplayerid = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
new level = strval(tmp);
if(giveplayerid != INVALID_PLAYER_ID)
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, player, sizeof(player));
PlayerInfo[giveplayerid][AdminLevel] = level;
printf("Admin %s made %s a level %d admin.", player, giveplayer, level);
format(string, sizeof(string), "You are now an administrator level %d thanks to %s.", level, player);
SendClientMessage(giveplayerid, 0x00C2ECFF, string);
format(string, sizeof(string), "You have given %s level %d admin.", giveplayer,PlayerInfo[giveplayerid][AdminLevel]);
SendClientMessage(playerid, 0x00C2ECFF, string);
}
else if(giveplayerid == INVALID_PLAYER_ID)
{
format(string, sizeof(string), "%i is not an active player.", giveplayerid);
SendClientMessage(playerid, 0xE60000FF, string);
}
}
else
{
SendClientMessage(playerid, 0xE60000FF, "You are not a lead admin!");
}
return 1;
}
//=============================================================================
public OnPlayerCommandText( playerid, cmdtext[] )
{
if( strcmp( cmdtext, "/ban", true ) == 0 )
{
Ban( playerid );
SendClientMessageToAll( playerid, COLOR_RED, "%s was banned by admin %s");
return 1;
}
}
//=============================================================================
public OnPlayerCommandText ( playerid, cmdtext[] )
{
if( strcmp(cmdtext, "/kick", true ) == 0 )
{
Kick( playerid);
SendClientMessageToAll( playerid, COLOR-RED, "%s was kicked by admin %s");
return 1;
}
}
//============================================================================
Can anyone tell to me if its typed correctly? I really dont know and i dont want to test it on server i dont want to get a fucked up server.
No it's not, there are many mistakes. And don't copy/paste from others scripts, that's the worst way to "learn" scripting.
You have 2 OnPlayerCommandText's and the ban command is useless. It will ban the person who types it, and it you can't attempt to format a string within the SendClientMessage function...