[Pedido] Equipes iguais
#1

Entгo pessoal, no meu gm freeroam vai ter uma mini arena igual ''cs'' q tipo quando entrar nessa arena, tera q escolher uma equipe etc...Mais ae q eu pensei agora em um problema: queria q automaticamente o numero de pessoas de cada equipe fiquem iguais...
Quem puder fazer ou pelo menos criar uma base pra mim, eu agradeceria
Reply
#2

Acredito que de para fazer assim:

pawn Код:
if(Time1 > Time2) {
   return SendClientMessage(playerid, -1, " Escolha outra equipe. ");
}
Nгo tenho certeza..

@Edit

Lembrando que, deve usar uma variavel aumentando os jogadores no time 1 e no time 2..

pawn Код:
new
      Time1, Time2
;

// Ao ir escolher o time 1
Time1 += 1;

// Ao ir escolher o time 2
Time2 += 1;
Reply
#3

Quote:
Originally Posted by @Riichard
Посмотреть сообщение
Acredito que de para fazer assim:

pawn Код:
if(Time1 > Time2) {
   return SendClientMessage(playerid, -1, " Escolha outra equipe. ");
}
Nгo tenho certeza..

@Edit

Lembrando que, deve usar uma variavel aumentando os jogadores no time 1 e no time 2..

pawn Код:
new
      Time1, Time2
;

// Ao ir escolher o time 1
Time1 += 1;

// Ao ir escolher o time 2
Time2 += 1;
Ae, mais nao vai da um bug tipo, quando tiver 0 de uma equipe e 1 de outra?
E tipo eu tb queria, q automaticamente uma pessoa ir pra outra equipe pra ficar igual(pode ser ja com o mata-mata rolando)...
Reply
#4

Quote:
Originally Posted by Matheus_KirTz
Посмотреть сообщение
Ae, mais nao vai da um bug tipo, quando tiver 0 de uma equipe e 1 de outra?
E tipo eu tb queria, q automaticamente uma pessoa ir pra outra equipe pra ficar igual(pode ser ja com o mata-mata rolando)...
Acredito que nгo.

No if que postei, em vez de mensagens, use os codes(SetPlayerPos/Color..) que e usado na equipe 2..
Reply
#5

Quote:
Originally Posted by Matheus_KirTz
Посмотреть сообщение
Ae, mais nao vai da um bug tipo, quando tiver 0 de uma equipe e 1 de outra?
E tipo eu tb queria, q automaticamente uma pessoa ir pra outra equipe pra ficar igual(pode ser ja com o mata-mata rolando)...
Up, ainda preciso do comando q falei acima
Reply
#6

pawn Код:
new bool:Equipe[MAX_PLAYERS];
DuasEquipes(t1,t2)
{
    static bool:loop;
    for(new v, b = GetMaxPlayers(); v != b; v++)
    {
        if(loop == true)
        {
            Equipe[v] = true;
            loop = false;
            SendClientMessage(v,-1,"Vocк foi para a Equipe 1.");
            SetPlayerTeam(v,t1);
        }
        else
        {
            Equipe[v] = false;
            loop = true;
            SendClientMessage(v,-1,"Vocк foi para a Equipe 2.");
            SetPlayerTeam(v,t2);
        }
    }
}
Reply
#7

pawn Код:
DuasEquipes(t1,t2)
{
    static bool:loop;
    for(new v, b = GetMaxPlayers(); v != b; v++)
    {
        if(loop == true)
        {
            Equipe[v] = true;
            loop = false;
            SendClientMessage(v,-1,"Vocк foi para a Equipe 1.");
            SetPlayerTeam(v,t1);
        }
        else
        {
            Equipe[v] = false;
            loop = true;
            SendClientMessage(v,-1,"Vocк foi para a Equipe 2.");
            SetPlayerTeam(v,t2);
        }
    }
}
Onde q eu boto isso?
Reply
#8

UP AE
Malz Double Post :/
Reply
#9

Tente isto.

pawn Код:
stock IgualarEquipes(time1, time2){
    static
        bool: Foi,
        Max,
        Int
    ;
   
    Foi = false;
    Max = GetMaxPlayers();
    Int = 0;
   
   
    for( ; Max != Int; ++Int){
        if(IsPlayerConnected(Int)){
     if(NoCS[Int]){
                if(!Foi){
                    SetPlayerTeam(Int,  time1);
                    Foi  = true;
                }else{
                    SetPlayerTeam(Int,  time2);
                    Foi  = false;
                }
            }
        }
    }
}


NOTA:

Quando o player ir para бrea de CS coloque o seguinte cуdigo no comando.
pawn Код:
NoCS[playerid] = true;

No OnPlayerDeath & OnPlayerDisconnect, coloque:
pawn Код:
if(NoCS[playerid]) NoCS[playerid] = false;

Ai quando quiser igualar, й sу botar "IgualarEquipes(ID_TIME1, ID_TIME2)".
Reply
#10

Quote:
Originally Posted by [Full]Garfield[XDB]
Посмотреть сообщение
Tente isto.

pawn Код:
stock IgualarEquipes(time1, time2){
    static
        bool: Foi,
        Max,
        Int
    ;
   
    Foi = false;
    Max = GetMaxPlayers();
    Int = 0;
   
   
    for( ; Max != Int; ++Int){
        if(IsPlayerConnected(Int)){
     if(NoCS[Int]){
                if(!Foi){
                    SetPlayerTeam(Int,  time1);
                    Foi  = true;
                }else{
                    SetPlayerTeam(Int,  time2);
                    Foi  = false;
                }
            }
        }
    }
}


NOTA:

Quando o player ir para бrea de CS coloque o seguinte cуdigo no comando.
pawn Код:
NoCS[playerid] = true;

No OnPlayerDeath & OnPlayerDisconnect, coloque:
pawn Код:
if(NoCS[playerid]) NoCS[playerid] = false;

Ai quando quiser igualar, й sу botar "IgualarEquipes(ID_TIME1, ID_TIME2)".
Agora sу uma pergunta, dentro () do GetMaxPlayer eu boto o numero maximo de pessoas em cada time? Sу tenho essa pergunta, o resto aparentemente ta funcionado
vlw
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)