Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #include <zcmd>
- #include <sscanf> // Mude para o nome da sua variavel
- enum ARInfo
- {
- Password,
- QuantMax,
- Quant,
- Arma,
- Float:PosX,
- Float:PosY,
- Float:PosZ,
- bool:ArenaAti
- }
- new ArenasInfo[MAX_PLAYERS][ARInfo];
- new String[255];
- new Arena[MAX_PLAYERS];
- main()
- {
- print("\n--------------------------------------\n");
- print("By:Vict9r\n");
- print("Sistema de Arena Privada 1.0 \n");
- print("--------------------------------------\n");
- }
- public OnPlayerConnect(playerid)
- {
- ArenasInfo[playerid][Password] = 0;
- ArenasInfo[playerid][QuantMax] = 0;
- ArenasInfo[playerid][Quant] = 0;
- ArenasInfo[playerid][Arma] = 0;
- ArenasInfo[playerid][ArenaAti] = false;
- Arena[playerid] = -1;
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- if(Arena[playerid] >= 0)
- {
- SetPlayerVirtualWorld(playerid, Arena[playerid]);
- SetPlayerPos(playerid, ArenasInfo[Arena[playerid]][PosX], ArenasInfo[Arena[playerid]][PosY], ArenasInfo[Arena[playerid]][PosZ]);
- GivePlayerWeapon(playerid, ArenasInfo[Arena[playerid]][Arma], 500);
- }
- return 1;
- }
- CMD:criararena(playerid, params[])
- {
- new MaxPlayers,WeaponID,Pass;
- if(sscanf(params,"iii",MaxPlayers, WeaponID,Pass)) return SendClientMessage(playerid,-1,"/criararena [Quantidade de Jogadores] [ID ARMA] [SENHA DA SALA]");
- if(ArenasInfo[playerid][ArenaAti] == true) return SendClientMessage(playerid,-1,"{FE2E2E} Erro - {FFFFFF} Voce ja possue uma arena criada!. /deletearena");
- ArenasInfo[playerid][Password] = Pass;
- ArenasInfo[playerid][QuantMax] = MaxPlayers;
- ArenasInfo[playerid][Quant] = 1;
- ArenasInfo[playerid][Arma] = WeaponID;
- ArenasInfo[playerid][ArenaAti] = true;
- new Float:X, Float:Y, Float:Z;
- GetPlayerPos(playerid, X, Y, Z);
- ArenasInfo[playerid][PosX] = X;
- ArenasInfo[playerid][PosY] = Y;
- ArenasInfo[playerid][PosZ] = Z;
- SetPlayerVirtualWorld(playerid, playerid);
- Arena[playerid] = playerid;
- format(String,sizeof(String),"{BF00FF}(%s) {FFFFFF} Criou arena com senha. (Quantidade de Jogadores Maximo: %i | ID Weapon: %i)",PlayerName(playerid),MaxPlayers, WeaponID);
- SendClientMessageToAll(-1, String);
- return 1;
- }
- CMD:enterarena(playerid, params[])
- {
- new playeID,Pass;
- if(sscanf(params,"ii",playeID,Pass)) return SendClientMessage(playerid,-1,"/enterarena [ID DO JOGADOR] [SENHA DA SALA]");
- if(ArenasInfo[playeID][Password] != Pass) return SendClientMessage(playerid,-1,"{FE2E2E} Erro - {FFFFFF} Voce coloco a senha errada!!.");
- if(ArenasInfo[playeID][ArenaAti] == false) return SendClientMessage(playerid,-1,"{FE2E2E} Erro - {FFFFFF} Esse jogador nao possue uma arena criada!.");
- if(ArenasInfo[playeID][Quant] >= ArenasInfo[playeID][QuantMax]) return SendClientMessage(playerid,-1,"{FE2E2E} Erro - {FFFFFF} Quantidade maxima atingida!.");
- SetPlayerVirtualWorld(playerid, playeID);
- SetPlayerPos(playerid, ArenasInfo[playeID][PosX], ArenasInfo[playeID][PosY], ArenasInfo[playeID][PosZ]);
- Arena[playerid] = playeID;
- ArenasInfo[playeID][Quant] ++;
- GivePlayerWeapon(playerid, ArenasInfo[playeID][Arma], 500);
- format(String,sizeof(String),"{BF00FF}(%s) {FFFFFF} Entro na arena do jogador %s. (Quantidade de Jogadores: %i | ID Weapon: %i)",PlayerName(playerid),PlayerName(playeID),ArenasInfo[playeID][Quant], ArenasInfo[playeID][Arma]);
- SendClientMessageToAll(-1, String);
- return 1;
- }
- CMD:exitarena(playerid)
- {
- if(ArenasInfo[Arena[playerid]][ArenaAti] == false) return SendClientMessage(playerid,-1,"{FE2E2E} Erro - {FFFFFF} Esse jogador nao possue uma arena criada!.");
- SetPlayerVirtualWorld(playerid, 0);
- ArenasInfo[Arena[playerid]][Quant] --;
- format(String,sizeof(String),"{BF00FF}(%s) {FFFFFF} Saiu da arena do jogador %s. (Quantidade de Jogadores: %i | ID Weapon: %i)",PlayerName(playerid),PlayerName(Arena[playerid]),ArenasInfo[Arena[playerid]][Quant], ArenasInfo[Arena[playerid]][Arma]);
- SendClientMessageToAll(-1, String);
- Arena[playerid] = -1;
- return 1;
- }
- CMD:deletearena(playerid)
- {
- if(ArenasInfo[playerid][ArenaAti] == false) return SendClientMessage(playerid,-1,"{FE2E2E} Erro - {FFFFFF} Voce nao possue uma arena criada!. /criararena");
- ArenasInfo[playerid][Password] = 0;
- ArenasInfo[playerid][QuantMax] = 0;
- ArenasInfo[playerid][Quant] = 0;
- ArenasInfo[playerid][Arma] = 0;
- ArenasInfo[playerid][ArenaAti] = false;
- Arena[playerid] = -1;
- format(String,sizeof(String),"{BF00FF}(%s) {FFFFFF} Deleto sua arena com senha.",PlayerName(playerid));
- SendClientMessageToAll(-1, String);
- for(new i; i != GetPlayerPoolSize(); ++i) // Pra quem tiver na casa
- {
- if(Arena[i] == playerid)
- {
- Arena[i] = -1;
- SetPlayerVirtualWorld(i, 0);
- SpawnPlayer(i);
- }
- }
- return 1;
- }
- stock PlayerName(playerid) {
- new nome[MAX_PLAYER_NAME];
- GetPlayerName(playerid,nome,100);
- return nome;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement