Доброго времени суток! Выдернул из DM Mari El.
Ко всем [color=#0000BF]#define[/color]:
[code]#define SPEC_TYPE_NONE 0
#define SPEC_TYPE_PLAYER 1
#define SPEC_TYPE_VEHICLE 2[/code]

Ко всем [color=#0000BF]enum[/color]:
[code] Muted,
Jailed,
SpecID[MAX_PLAYERS],
SpecType[MAX_PLAYERS],
Freeze,
Zhertva,
Spawned, [/code]

В [color=#0000BF]public[/color] OnPlayerClickPlayer:
[code]if(Player[playerid][pAdmin] == 1)
{
ShowPlayerDialog(playerid,4,DIALOG_STYLE_LIST,»Администраторский раздел»,»Пнуть
Убить
Взорвать
Заткнуть
Kикнуть
Забанить
ТП к игроку
ТП игрока к себе
Посадить
Следить
Замарозить
«,»Применить»,»Отмена»);
Player[playerid][Zhertva] = clickedplayerid;
}[/code]

В [color=#0000BF]public[/color] OnDialogResponse:
[code]if(dialogid == 4)
{
if(response)
{
new zherid = Player[playerid][Zhertva];
new Float:X,Float:Y,Float:Z,pname[40],gname[40],string[256];
GetPlayerName(playerid,pname,sizeof(pname));
GetPlayerName(zherid,gname,sizeof(gname));
if(listitem == 0)
{
if(!IsPlayerSpawned(zherid))
{
SendClientMessage(playerid,0xB30400EF,»Игрок еще не заспавнен»);
return 1;
}
GetPlayerPos(zherid,X,Y,Z);
SetPlayerPos(zherid,X,Y,Z+10);
format(string,sizeof(string),»Aдминистратор %s пнул игрока %s»,pname,playerid,gname,zherid);
SendClientMessageToAll(0x099DE0F6,string);
}
if(listitem == 1)
{
if(!IsPlayerSpawned(zherid))
{
SendClientMessage(playerid,0xB30400EF,»Игрок еще не заспавнен»);
return 1;
}
SetPlayerHealth(zherid,0.0);
format(string,sizeof(string),»Aдминистратор %s убил игрока %s»,pname,playerid,gname,zherid);
SendClientMessageToAll(0x099DE0F6,string);
}
if(listitem == 2)
{
if(!IsPlayerSpawned(zherid))
{
SendClientMessage(playerid,0xB30400EF,»Игрок еще не заспавнен»);
return 1;
}
GetPlayerPos(zherid,X,Y,Z);
CreateExplosion(X,Y,Z,10,0);
CreateExplosion(X,Y,Z,10,0);
CreateExplosion(X,Y,Z,10,0);
format(string,sizeof(string),»Aдминистратор %s убил игрока %s»,pname,playerid,gname,zherid);
SendClientMessageToAll(0x099DE0F6,string);
}
if(listitem == 3)
{
if(Player[zherid][Muted] == 0)
{
Player[zherid][Muted] = 1;
format(string,sizeof(string),»Aдминистратор %s заткнул игрока %s»,pname,gname);
SendClientMessageToAll(0x099DE0F6,string);
}
else
{
Player[zherid][Muted] = 0;
format(string,sizeof(string),»Aдминистратор %s разрешил писать в чат игроку %s»,pname,gname);
SendClientMessageToAll(0x099DE0F6,string);
}
}
if(listitem == 4)
{
format(string,sizeof(string),»Aдминистратор %s кинул игрока %s»,pname,gname);
SendClientMessageToAll(0x099DE0F6,string);
Kick(zherid);
}
if(listitem == 5)
{
format(string,sizeof(string),»Aдминистратор %s забанил игрока %s»,pname,gname);
SendClientMessageToAll(0x099DE0F6,string);
Ban(zherid);
}
if(listitem == 6)
{
if(playerid != zherid)
{
if(!IsPlayerSpawned(zherid))
{
SendClientMessage(playerid,0xB30400EF,»Игрок еще не заспавнен»);
return 1;
}
GetPlayerPos(zherid,X,Y,Z);
if(IsPlayerInAnyVehicle(playerid))
{
SetVehiclePos(GetPlayerVehicleID(playerid),X+1,Y,Z);
}
else
{
SetPlayerPos(playerid,X+1,Y,Z);
}
SetPlayerInterior(playerid,GetPlayerInterior(zherid));
format(string,sizeof(string),»Вы телепортировались к игроку %s»,gname);
SendClientMessage(playerid,0x099DE0F6,string);
format(string,sizeof(string),»Aдминистратор %s куда-то телепортировался… (к вам)»,pname);
SendClientMessage(zherid,0x099DE0F6,string);
}
else
{
SendClientMessage(playerid,0xB30400EF,»Вы телепортировали к cебе игрока Админ»);
SendClientMessage(playerid,0xB30400EF,»Aдминистратор %s телепортировал вас к себе»);
}
}
if(listitem == 7)
{
if(playerid != zherid)
{
if(!IsPlayerSpawned(zherid))
{
SendClientMessage(playerid,0xB30400EF,»Игрок еще не заспавнен»);
return 1;
}
GetPlayerPos(playerid,X,Y,Z);
if(IsPlayerInAnyVehicle(zherid))
{
SetVehiclePos(GetPlayerVehicleID(zherid),X+1,Y,Z);
}
else
{
SetPlayerPos(zherid,X+1,Y,Z);
}
SetPlayerInterior(zherid,GetPlayerInterior(playerid));
format(string,sizeof(string),»Вы телепортировали к cебе игрока %s»,gname);
SendClientMessage(playerid,0x099DE0F6,string);
format(string,sizeof(string),»Aдминистратор %s телепортировал вас к себе»,pname);
SendClientMessage(zherid,0x099DE0F6,string);
}
else
{
SendClientMessage(playerid,0xB30400EF,»Вы не можете телепортировать себя»);
}
}
if(listitem == 8)
{
if(playerid != zherid)
{
if(!IsPlayerSpawned(zherid))
{
SendClientMessage(playerid,0xB30400EF,»Игрок еще не заспавнен»);
return 1;
}
if(Player[zherid][Jailed] == 0)
{
Player[zherid][Jailed] = 1;
SetPlayerInterior(zherid,3);
SetPlayerPos(zherid,2574.1096,-2413.3933,21.5356);
format(string,sizeof(string),»Aдминистратор %s посадил %s в тюрьму…»,pname,gname);
SendClientMessageToAll(0x099DE0F6,string);
}
else
{
Player[zherid][Jailed] = 0;
SetPlayerInterior(zherid,0);
SpawnPlayer(zherid);
format(string,sizeof(string),»Aдминистратор %s освободил игрока %s»,pname,gname);
SendClientMessageToAll(0x099DE0F6,string);
}
}
else
{
SendClientMessage(playerid,0xB30400EF,»Вы не можете сажать себя в тюрьму»);
}
}
if(listitem == 9)
{
if(playerid != zherid)
{
if(!IsPlayerSpawned(zherid))
{
SendClientMessage(playerid,0xB30400EF,»Игрок еще не заспавнен»);
return 1;
}
TogglePlayerSpectating(playerid,1);
PlayerSpectatePlayer(playerid,zherid);
SetPlayerInterior(playerid,GetPlayerInterior(zherid));
Player[playerid][SpecID] = zherid;
Player[playerid][SpecType] = 1;
format(string,sizeof(string),»Bы следите за %s.»,gname);
SendClientMessage(playerid,0x099DE0F6,string);
SendClientMessage(playerid,0x099DE0F6,»Чтобы отключить слежку, введите: «/spec-off»»»»);
}
}
if(listitem == 10)
{
if(playerid != zherid)
{
if(!IsPlayerSpawned(zherid))
{
SendClientMessage(playerid

От danilasar

Это я

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *