Clybzotik
Ученик
Здравствуйте, вылаживаю очередную команду.
При вводе команды игроку будет устанавливать камеру в нужной позиции.
Нужные дефайны
Это в public OnDialogResponse
ProxDetector
При вводе команды игроку будет устанавливать камеру в нужной позиции.
Нужные дефайны
PHP:
#define CAMERA_LIST 99 // 99 - id вашего диалога
PHP:
CMD:camera(playerid)
{
if(!GetPVarInt(playerid, "Logged")) return SendClientMessage(playerid,0xFF0000AA, "Вы не авторизованы!");
if(PlayerInfo[playerid][pMember] >=1 && PlayerInfo[playerid][pMember] <= 10)
ShowPlayerDialog(playerid, CAMERA_LIST, DIALOG_STYLE_INPUT,"Система слежения", "Camera 1\nCamera 2\nCamera 3\nCamera 4\nCamera 5", "Следить" , "Выход");
return 1;
}
CMD:cameraoff(playerid)
{
if(!GetPVarInt(playerid, "Logged")) return SendClientMessage(playerid,0xFF0000AA,, "Вы не авторизованы!");
if(PlayerInfo[playerid][pMember] >=1 && PlayerInfo[playerid][pMember] <= 10)
SetCameraBehindPlayer(playerid);
SendClientMessage(playerid,0xFF8000AA,,"Вы выключили камеру.");
return 1;
}
PHP:
if(dialogid == CAMERA_LIST)
{
if(response)
{
switch(listitem)
{
case 0:
{
SetPlayerCameraPos(playerid,1,1,1);
SendClientMessage(playerid,0xFF8000AA,"Используйте /cameraoff для выключения камеры.");
}
case 1:
{
SetPlayerCameraPos(playerid,1,1,1);
SendClientMessage(playerid,0xFF8000AA,"Используйте /cameraoff для выключения камеры.");
}
case 2:
{
SetPlayerCameraPos(playerid,1,1,1);
SendClientMessage(playerid,0xFF8000AA,"Используйте /cameraoff для выключения камеры.");
}
case 3:
{
SetPlayerCameraPos(playerid,1,1,1);
SendClientMessage(playerid,0xFF8000AA,"Используйте /cameraoff для выключения камеры.");
}
case 4:
{
SetPlayerCameraPos(playerid,1,1,1);
SendClientMessage(playerid,0xFF8000AA,"Используйте /cameraoff для выключения камеры.");
}
}
}
else return 1;
}
PHP:
stock ProxDetector(Float: radius, playerid, string[], colour)
{
#if defined foreach
foreach(new i : Player)
#else
for(new i = GetPlayerPoolSize(); i != -1; --i)
{
if(IsPlayerConnected(i))
#endif
{
new Float: coords[3];
GetPlayerCameraPos(playerid, coords[0], coords[1], coords[2]);
foreach(new i:Player)
{
if(GetPlayerDistanceFromPoint(i, coords[0], coords[1], coords[2]) >= radius) continue;
SendClientMessage(i, colour, string);
}
}
#if !defined foreach
}
#endif
return true;
}
Последнее редактирование:
