pawn Код:
#include <a_samp>
#include <zcmd>
#include <sscanf>
#define DIALOG_EVENTO 5000
new EmEvento[MAX_PLAYERS];
new EventoAberto = 0;
new Float:Pos[4];
new Float:PosEvento[4];
new IntEvento;
new Fala[128];
public OnDialogResponse(playerid,dialogid,response,listitem,inputtext[])
{
if(dialogid == DIALOG_EVENTO)
{
if(response)
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid,DIALOG_EVENTO,DIALOG_STYLE_INPUT,"Criar Evento","Escreva o nome do evento no campo abaixo","Criar","Cancelar");
return 1;
}
GetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
GetPlayerFacingAngle(playerid,Pos[3]);
PosEvento[0] = Pos[0];
PosEvento[1] = Pos[1];
PosEvento[2] = Pos[2];
PosEvento[3] = Pos[3];
IntEvento = GetPlayerInterior(playerid);
EventoAberto = 1;
format(Fala,sizeof(Fala),"O administrador criou o evento %s, para ir, use /irevento.",inputtext);
SendClientMessageToAll(0xFF8080AA,Fala);
}
}
return 1;
}
CMD:evento(playerid)
{
SendClientMessage(playerid,0xBFBFBFAA,"/evento, /irevento, /congelarevento, /dararmaevento, /descongelarevento");
SendClientMessage(playerid,0xBFBFBFAA,"/desarmarevento, /darvidaevento, /darcoleteevento, /carroevento, /criarevento");
return 1;
}
CMD:irevento(playerid)
{
if(EventoAberto == 1)
{
GameTextForPlayer(playerid,"~r~Voce veio ao evento",2000,3);
SetPlayerPos(playerid,PosEvento[0],PosEvento[1],PosEvento[2]);
SetPlayerFacingAngle(playerid,PosEvento[3]);
SetPlayerInterior(playerid,IntEvento);
EmEvento[playerid] = 1;
}
return 1;
}
CMD:congelarevento(playerid)
{
if(IsPlayerAdmin(playerid))
{
SendClientMessageToAll(0xFF8080AA,"O administrador congelou todos do evento!");
for(new i=0; i<MAX_PLAYERS; i++)
{
if(EmEvento[i] == 1)
{
TogglePlayerControllable(i,0);
}
}
}
return 1;
}
CMD:dararmaevento(playerid,params[])
{
if(IsPlayerAdmin(playerid))
{
new ID;
if(!sscanf(params,"d",ID))
{
SendClientMessage(playerid,0xBFBFBFAA,"Use /dararmaevento [id da arma]");
return 1;
}
if(ID < 0 || ID > 46)
{
SendClientMessage(playerid,0xBFBFBFAA,"Armas de 0 a 46.");
return 1;
}
SendClientMessageToAll(0xFF8080AA,"O administrador armou todos do evento!");
for(new i=0; i<MAX_PLAYERS; i++)
{
if(EmEvento[i] == 1)
{
GivePlayerWeapon(i,ID,1000000);
}
}
}
return 1;
}
CMD:descongelarevento(playerid)
{
if(IsPlayerAdmin(playerid))
{
SendClientMessageToAll(0xFF8080AA,"O administrador descongelou todos do evento!");
for(new i=0; i<MAX_PLAYERS; i++)
{
if(EmEvento[i] == 1)
{
TogglePlayerControllable(i,1);
}
}
}
return 1;
}
CMD:desarmarevento(playerid)
{
if(IsPlayerAdmin(playerid))
{
SendClientMessageToAll(0xFF8080AA,"O administrador desarmou todos do evento!");
for(new i=0; i<MAX_PLAYERS; i++)
{
if(EmEvento[i] == 1)
{
ResetPlayerWeapons(i);
}
}
}
return 1;
}
CMD:darvidaevento(playerid,params[])
{
if(IsPlayerAdmin(playerid))
{
new Float:ID;
if(!sscanf(params,"d",ID))
{
SendClientMessage(playerid,0xBFBFBFAA,"Use /darvidaevento [quantidade]");
return 1;
}
SendClientMessageToAll(0xFF8080AA,"O administrador deu vida а todos do evento!");
for(new i=0; i<MAX_PLAYERS; i++)
{
if(EmEvento[i] == 1)
{
SetPlayerHealth(i,ID);
}
}
}
return 1;
}
CMD:darcoleteevento(playerid,params[])
{
if(IsPlayerAdmin(playerid))
{
new Float:ID;
if(!sscanf(params,"d",ID))
{
SendClientMessage(playerid,0xBFBFBFAA,"Use /darcoleteevento [quantidade]");
return 1;
}
SendClientMessageToAll(0xFF8080AA,"O administrador deu colete а todos do evento!");
for(new i=0; i<MAX_PLAYERS; i++)
{
if(EmEvento[i] == 1)
{
SetPlayerArmour(i,ID);
}
}
}
return 1;
}
CMD:carroevento(playerid,params[])
{
if(IsPlayerAdmin(playerid))
{
new ID,CarroID;
if(!sscanf(params,"dd",ID,CarroID))
{
SendClientMessage(playerid,0xBFBFBFAA,"Use /carroevento [id do player] [carro id]");
return 1;
}
if(CarroID < 400 || CarroID > 611)
{
SendClientMessage(playerid,0xBFBFBFAA,"Carros de 400 a 611.");
return 1;
}
SendClientMessage(ID,0xFF8080AA,"O administrador criou um veнculo para vocк no evento.");
GetPlayerPos(ID,Pos[0],Pos[1],Pos[2]);
GetPlayerFacingAngle(ID,Pos[3]);
new CarroID2 = CreateVehicle(CarroID,Pos[0],Pos[1],Pos[2],Pos[3],-1,-1,60000);
PutPlayerInVehicle(ID,CarroID2,PLAYER_STATE_DRIVER);
}
return 1;
}
CMD:criarevento(playerid)
{
if(IsPlayerAdmin(playerid))
{
if(EventoAberto == 1)
{
SendClientMessageToAll(0xBFBFBFAA,"O administrador cancelou o evento!");
EventoAberto = 0;
return 1;
}
else
{
ShowPlayerDialog(playerid,DIALOG_EVENTO,DIALOG_STYLE_INPUT,"Criar Evento","Escreva o nome do evento no campo abaixo","Criar","Cancelar");
return 1;
}
}
return 1;
}