1 команда позволяет телепортировать одного игрока к другому.
Использование /tp [ID] [ID] , думаю понятно.
Код
CMD:tp(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] < 2) return true; // Проверка на администратора и его уровень
if(sscanf(params,"uu",params[0],params[1])) return SendClientMessage(playerid,COLOR_GREY,"Введите: /tp [id ] [id]");
new Float:pos[3];
GetPlayerPos(params[1],pos[0],pos[1],pos[2]);
SetPlayerPos(params[0],pos[0]+1,pos[1]+1,pos[2]);
SetPlayerInterior(params[0], GetPlayerInterior(params[1]));
SetPlayerVirtualWorld(params[0], GetPlayerVirtualWorld(params[1]));
SCM(playerid, COLOR_WHITE, "Выполнено");
return true;
}
2 команда - позволяет кикнуть игрока, может у кого нет на ZCMD
Использование - /kick ID причина
Код
CMD:kick(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] == 0) return true;
new string[144];
if(sscanf(params,"us[64]",params[0], params[1])) return SendClientMessage(playerid, COLOR_WHITE,"Используйте: /kick [id] [причина]");
format(string, 144, "{FF0000}Администратор %s отсоединил Вас от сервера\nПричина: %s\nДля выхода введите /q", GN(playerid), params[1]);
ShowPlayeridDialog(params[0], 160, DIALOG_STYLE_MSGBOX, "Внимание", string, "Закрыть", "");
format(string, 144, "[A - INFO] %s отключен от сервера с причиной: %s", GN(params[0]), params[1]);
ASCM(COLOR_KICK, string, 1);
SetTimerEx("Kickk",30,false,"i", params[0]);
return 1;
}
Создадим
Код
public Kickk(playerid)
{
Kick(playerid);
}
Если у кого нет ASCM то
Код
stock ASCM(color,const string[],level)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(PlayerInfo[i][pAdmin] >= level)
{
SCM(i, color, string);
}
}
}
return true;
}
Если нет SCM
Код
#define SCM SendClientMessage