13.04.2011, 21:24
Pessoal,й o seguinte.. Tenho um sistema de evento aqui,que quando eu crio evento dai o teleporte й aberto,mais quando eu fecho,o evento ainda continua aberto...
Vlw
pawn Код:
#include <a_samp>
#define FILTERSCRIPT
#if defined FILTERSCRIPT
//Defines
#define LARANJA 0xFF6600AA
#define VERDECLARO 0x00FF0CAA
#define VERDEMEDIO 0xa5b1A3AA
#define BRANCO 0xFFFFFFAA
#define VERMELHO 0xFF0000AA
#define VERDEFRACO 0x80cf80AA
#define ROXO 0x9900FFAA
#define VERMELHOFORTE 0x33AA33AA
#define AZUL 0x8000FF96
#define AZULFRACO 0x33CCFFAA
#define VERMELHOLOUCO 0xff6633AA
#define AZULFORTE 0xFFFF00AA
#define AMARELOFORTE 0xF5DEB3AA
#define MARRON 0x58504796
new VencedorDoEvento = 999;
new JogadorNoEvento[MAX_PLAYERS];
new str2[128];
forward FimEvento();
new Float:ex;//Posiзгo X
new Float:ey;//Posiзгo Y
new Float:ez;//Posiзгo Z
new Text:EventomGo;
new EntrounoEvento;
public OnFilterScriptInit()
{
return 1;
}
#endif
public OnPlayerDeath(playerid, killerid, reason)
{
SendDeathMessage(killerid, playerid, reason);
new killerName[MAX_PLAYER_NAME];
new playerName[MAX_PLAYER_NAME];
if(EntrounoEvento == 1)
{
GetPlayerName(playerid,killerName,sizeof(killerName));
GetPlayerName(playerid,playerName,sizeof(playerName));
format(str2, sizeof(str2), "| EVENTO | O jogador %s matou %s. Arma: %d.", killerName, playerName, reason);
SendClientMessageToAll(0xff6633AA, str2);
EntrounoEvento = 0;
}
if(JogadorNoEvento[playerid] != 1)
{
JogadorNoEvento[killerid] ++;
if(JogadorNoEvento[killerid] > VencedorDoEvento)
{
new killer[MAX_PLAYER_NAME];
VencedorDoEvento = killerid;
VencedorDoEvento = JogadorNoEvento[killerid];
GetPlayerName(killerid, killer, sizeof(killer));
}
return 1;
}
return 1;
}
public OnPlayerSpawn(playerid)
{
if(EntrounoEvento == 1)
{
ResetPlayerWeapons(playerid);
GivePlayerWeapon(playerid, 29, 999);
SetPlayerHealth(playerid,100);
}
return 1;
}
public OnPlayerDisconnect(playerid)
{
TextDrawDestroy(EventomGo);
return 1;
}
public OnGameModeInit()
{
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp("/criarevento",cmdtext,true)==0)
{
if (IsPlayerAdmin(playerid))
{
if(EntrounoEvento != 1)
{
new string[256];
new sendername[MAX_PLAYER_NAME];
GetPlayerName(playerid, sendername, sizeof(sendername));
new number = 20;
format(string, sizeof(string), "* O administrador %s criou um evento. (Maximo de Jogadores:%d)", sendername,number);
SendClientMessageToAll(AZULFORTE,string);
GetPlayerPos(playerid,ex,ey,ez);
}
else
{
SendClientMessage(playerid, 0xff6633AA, "| ERRO | Ja existe um evento em andamento.");
}
}
else
{
SendClientMessage(playerid, 0xff6633AA, "| ERRO | Voce nao e Administrador.");
}
return 1;
}
if(strcmp("/irevento",cmdtext,true)==0)
{
if (IsPlayerConnected(playerid))
{
if(EntrounoEvento == 0)
{
new string[256];
new sendername[MAX_PLAYER_NAME];
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s foi para o evento.", sendername);
SendClientMessageToAll(AZULFORTE,string);
SetPlayerPos(playerid,ex,ey,ez);
PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
SetPlayerPos(playerid,ex,ey,ez);
}
else
{
SendClientMessage(playerid, 0xff6633AA, "Voce nгo pode entrar no evento.");
}
}
else
{
SendClientMessage(playerid, 0xff6633AA, "| ERRO | Vocк nгo estб logado.");
}
return 1;
}
if(strcmp("/fecharevento",cmdtext,true)==0)
{
if (IsPlayerAdmin(playerid))
{
if(EntrounoEvento == 0)
{
new string[256];
new sendername[MAX_PLAYER_NAME];
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* O administrador %s fechou o evento.", sendername);
SendClientMessageToAll(AZULFORTE,string);
SetTimer("GoEvento", 1000, 0);
}
else
{
SendClientMessage(playerid, 0xff6633AA, "| ERRO | O Evento ja estб fechado.");
}
}
else
{
SendClientMessage(playerid, 0xff6633AA, "| ERRO | Voce nao e Administrador.");
}
return 1;
}
if(strcmp("/sairevento",cmdtext,true)==0)
{
if (IsPlayerAdmin(playerid))
{
if(EntrounoEvento == 1)
{
new string[256];
new sendername[MAX_PLAYER_NAME];
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %saiu do evento .", sendername);
SetPlayerPos(playerid,ex,ey,ez);
PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
}
else
{
SendClientMessage(playerid, 0xff6633AA, "| ERRO | Impossivel sair do evento.");
}
}
else
{
SendClientMessage(playerid, 0xff6633AA, "| ERRO | Voce nao e Administrador.");
}
return 1;
}
return 0;
}
