galera tenho esse sistema de evento chuck como base.
pawn Код:
#include a_samp
#include zcmd
new bool:Chuck[MAX_PLAYERS], bool:Evento[MAX_PLAYERS], players;
CMD:entrarevento(playerid) {
new s[128], n[24];
if(Evento[playerid])
return false;
if(players == 0) {
players ++;
GetPlayerName(playerid, n, 24);
format(s, 128, "%s foi para o evento do Chuck Norris.! [Jogadores: %i]", n, players);
SendClientMessageToAll(-1, s);
Evento[playerid] = true;
SendClientMessage(playerid, -1, "Sу tem vocк no evento, entгo vocк й o chuck norris da vez.");
SetPlayerPos(playerid, -394.155914,2229.033691,46.915809);
Chuck[playerid] = true;
GivePlayerWeapon(playerid, 35, 999999); //arma e municao
SetPlayerSkin(playerid, 264); //skin
SetPlayerArmour(playerid, 100);
SetPlayerHealth(playerid, 100);
TogglePlayerControllable(playerid, true);
}
else {
players ++;
GetPlayerName(playerid, n, 24);
format(s, 128, "%s foi para o evento do Chuck Norris.! [Jogadores: %i]", n, players);
SendClientMessageToAll(-1, s);
Evento[playerid] = true;
SetPlayerPos(playerid, -394.155914,2229.033691,46.915809);
}
return true;
}
CMD:sairevento(playerid) {
if(!Evento[playerid])
return false;
if(Chuck[playerid]) {
Chuck[playerid] = false;
for(new i; i < MAX_PLAYERS; ++i) {
if(Evento[i]) {
SendClientMessageToAll(-1, "O Chuck Norris saiu do evento.. evento encerrado.");
SpawnPlayer(i);
Evento[i] = false;
players = 0;
}
}
}
SendClientMessage(playerid, -1, "Vocк saiu do evento..");
return true;
}
public OnPlayerDisconnect(playerid) {
if(Evento[playerid])
return players --;
if(Chuck[playerid]) {
Chuck[playerid] = false;
for(new i; i < MAX_PLAYERS; ++i) {
if(Evento[i]) {
SendClientMessageToAll(-1, "O Chuck Norris saiu do servidor.. evento encerrado.");
SpawnPlayer(i);
Evento[i] = false;
players = 0;
}
}
}
return true;
}
public OnPlayerSpawn(playerid) {
if(Evento[playerid]) {
SendClientMessage(playerid, -1, "Vocк spawnou no evento Chuck norris..");
SetPlayerPos(playerid, -394.155914,2229.033691,46.915809);
}
return true;
}
public OnPlayerDeath(playerid, killerid, reason) {
if(Chuck[playerid]) {
Chuck[killerid] = true;
Chuck[playerid] = false;
new s[128], n[24];
GetPlayerName(killerid, n, 24);
format(s, 128, "%s й o novo Chuck Norris do evento.!", n);
SendClientMessageToAll(-1, s);
GivePlayerWeapon(killerid, 35, 999999);
SetPlayerSkin(killerid, 264);
SetPlayerArmour(killerid, 100);
SetPlayerHealth(killerid, 100);
TogglePlayerControllable(killerid, true);
}
return true;
}
coloquei a posiзгo mas с vai.
pawn Код:
#include a_samp
#include zcmd
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/eventochuck", cmdtext, true, 10) == 0)
{
new str[128], playername[MAX_PLAYER_NAME];
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "Vocк nгo estб logado na RCON");
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
SetPlayerPos(playerid, -394.155914,2229.033691,46.915809);
GetPlayerName(playerid, playername, sizeof(playername));
format(str, sizeof(str), "%s estб convidando a todos para o Evento de PaintBall! Deseja aceitar?");
ShowPlayerDialog(i, 7471, DIALOG_STYLE_MSGBOX, "Evento", str, "Sim", "Nгo");
}
}
return 1;
}
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 7471)
{
if(response)
{
SetPlayerPos(playerid, -394.155914,2229.033691,46.915809); //Pos do PaintBall
SendClientMessage(playerid, -1, "Bem Vindo ao PaintBall");
}
else
{
SendClientMessage(playerid, -1, "Vocк nгo foi para o Evento!");
}
}
return 1;
}
new bool:Chuck[MAX_PLAYERS], bool:Evento[MAX_PLAYERS], players;
CMD:entrarevento(playerid) {
new s[128], n[24];
if(Evento[playerid])
return false;
if(players == 0) {
players ++;
GetPlayerName(playerid, n, 24);
format(s, 128, "%s foi para o evento do Chuck Norris.! [Jogadores: %i]", n, players);
SendClientMessageToAll(-1, s);
Evento[playerid] = true;
SendClientMessage(playerid, -1, "Sу tem vocк no evento, entгo vocк й o chuck norris da vez.");
SetPlayerPos(playerid, -394.155914,2229.033691,46.915809);
Chuck[playerid] = true;
GivePlayerWeapon(playerid, 35, 999999); //arma e municao
SetPlayerSkin(playerid, 264); //skin
SetPlayerArmour(playerid, 100);
SetPlayerHealth(playerid, 100);
TogglePlayerControllable(playerid, true);
}
else {
players ++;
GetPlayerName(playerid, n, 24);
format(s, 128, "%s foi para o evento do Chuck Norris.! [Jogadores: %i]", n, players);
SendClientMessageToAll(-1, s);
Evento[playerid] = true;
SetPlayerPos(playerid, -394.155914,2229.033691,46.915809);
}
return true;
}
CMD:sairevento(playerid) {
if(!Evento[playerid])
return false;
if(Chuck[playerid]) {
Chuck[playerid] = false;
for(new i; i < MAX_PLAYERS; ++i) {
if(Evento[i]) {
SendClientMessageToAll(-1, "O Chuck Norris saiu do evento.. evento encerrado.");
SpawnPlayer(i);
Evento[i] = false;
players = 0;
}
}
}
SendClientMessage(playerid, -1, "Vocк saiu do evento..");
return true;
}
public OnPlayerDisconnect(playerid) {
if(Evento[playerid])
return players --;
if(Chuck[playerid]) {
Chuck[playerid] = false;
for(new i; i < MAX_PLAYERS; ++i) {
if(Evento[i]) {
SendClientMessageToAll(-1, "O Chuck Norris saiu do servidor.. evento encerrado.");
SpawnPlayer(i);
Evento[i] = false;
players = 0;
}
}
}
return true;
}
public OnPlayerSpawn(playerid) {
if(Evento[playerid]) {
SendClientMessage(playerid, -1, "Vocк spawnou no evento Chuck norris..");
SetPlayerPos(playerid, -394.155914,2229.033691,46.915809);
}
return true;
}
public OnPlayerDeath(playerid, killerid, reason) {
if(Chuck[playerid]) {
Chuck[killerid] = true;
Chuck[playerid] = false;
new s[128], n[24];
GetPlayerName(killerid, n, 24);
format(s, 128, "%s й o novo Chuck Norris do evento.!", n);
SendClientMessageToAll(-1, s);
GivePlayerWeapon(killerid, 35, 999999);
SetPlayerSkin(killerid, 264);
SetPlayerArmour(killerid, 100);
SetPlayerHealth(killerid, 100);
TogglePlayerControllable(killerid, true);
}
return true;
}
Procure por FS's de Evento... voce estб de tal maneira baralhado que estб usando comandos STRCMP e ZCMD num sistema :S