(TUT) Como criar x1 de duas pessoas.

Primeiramente no TOPO Digite:
pawn Código:
new bool:TaNoX1[MAX_PLAYERS]; // Cria uma array com técnica de borleana.
new Quantos; // Para contar quantos players tem em tal lugar.


Okay, depois de ter criado isto,

vamos em OnPlayerCommandText

pawn Código:
if(!strcmp("/X1", cmdtext, true))
{
    if(Quantos == 2) return SendClientMessage(playerid, Vermelho," X1 está cheio, tente mais tarde.");
    SendClientMessageToAll(Branco,"[INFO] Alguém foi para x1 de duas pessoas, vai duelar também! ( / X1 ) ");
    SetPlayerPos(playerid,1494.0419, -1136.7343, 135.8281);
    Quantos += 1;
    TaNoX1[playerid] = true;
    return 1;
}



Explicação: 



if(Quantos == 2) < verifica Quandos players digitaram o comando. e se for igual a 2 ele manda a mensagem.

SendClientMessageToAll < Manda mensagem para todos que alguem foi para x1.
SetPlayerPos < Seta a posição do player.
Quantos += 1; < Adiciona Numero a variavel.
TaNoX1[playerid] = true; < Declara que ele está no x1 e seta para true (sim).




Agora vamos ao OnPlayerDeath

Adicione a na public.


pawn Código:
if(TaNoX1[playerid] == true)
{
    OnPlayerSpawn(playerid);
    OnPlayerSpawn(killerid)
    new string[50+MAX_PLAYER_NAME];
    new Nome[40][MAX_PLAYERS];
    new Nomi[40][MAX_PLAYERS];
    TaNoX1[playerid] = false;
    TaNoX1[killerid] = false;
    GetPlayerName(killerid, Nomi[killerid], 40);
    GetPlayerName(playerid, Nome[playerid], 40);
    format(string, sizeof(string),"[INFO] Mr.%s Ganhou no x1 contra %s.",Nomi[killerid], Nome[killerid]);
    SendClientMessageToAll(Branco, string);
    Quantos = 0;
}


if(TaNoX1[playerid] == true) < verifica se está no x1.

OnPlayerSpawn(playerid); < manda nascer quem morreu
OnPlayerSpawn(killerid); < Manda Nascer Quem matou
TaNoX1[playerid] = false; < Declara Que Não está no X1 ( Quem morreu )
TaNoX1[killerid] = false; < Declara Que Não está no X1 ( Quem Matou )
GetPlayerName(killerid, Nomi[killerid], 40); < Pega o Nome de quem Matou
GetPlayerName(playerid, Nome[playerid], 40); < Pega o Nome de quem morreu
format(string, sizeof(string),"[INFO] Mr.%s Ganhou no x1 contra %s.",Nomi[killerid], Nome[killerid]); < Formata a string
SendClientMessageToAll(Branco, string); < manda a mensagem.



Créditos 

- > [FeK]Garfield



Testadores & ajudantes 

- > Cobertosinho 
- > JVSell

Código pronto para os preguiçosos 
pawn Código:
#include <a_samp> #define Branco     \              0xFAFAFAFF #define Vermelho   \              0xFF0023FF new     bool:TaNoX1[MAX_PLAYERS],     Quantos ; public      OnPlayerCommandText(playerid, cmdtext[]) {     if(!strcmp("/X1", cmdtext, true, 4))     {         if(Quantos == 2) return SendClientMessage(playerid, Vermelho," X1 está cheio, tente mais tarde.");         SendClientMessageToAll(Branco,"[INFO] Alguém foi para x1 de duas pessoas, vai duelar também! ( / X1 ) ");         SetPlayerPos(playerid,1494.0419, -1136.7343, 135.8281);         Quantos += 1;         TaNoX1[playerid] = true;         return true;     }     return false; } public      OnPlayerDeath(playerid, killerid, reason) {     if(TaNoX1[playerid] == true)     {        new               string[50+MAX_PLAYER_NAME],               Nome[40][MAX_PLAYERS],               Nomi[40][MAX_PLAYERS]        ;        TaNoX1[playerid] = false;        TaNoX1[killerid] = false;        GetPlayerName(killerid, Nomi[killerid], 40);        GetPlayerName(playerid, Nome[playerid], 40);        format(string, sizeof(string),"[INFO] Mr.%s Ganhou no x1 contra %s.",Nomi[killerid], Nome[killerid]);        SendClientMessageToAll(Branco, string);        Quantos = 0;     }     return true; }

COMPARTILHE

VEJA TAMBÉM

Próxima
« Anterior
Anterior
Próximo »