no me funciona el contador
#1

bueno pues que cuando el usuario usa /enter entra pero el contador no funciona y siempre da el mismo equipo.

el error estб en :
pawn Код:
stock GetPlayersInTeamFromMaxPlayers(teamid)
{
    new playercount = 0;
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
        if(gTeam[i] != teamid) continue;
        playercount++;
    }
    return playercount;
}
Reply
#2

Si no he entendido mal el cуdigo, esa funciуn sirve para contar cuбntos jugadores hay en un equipo determinado (en teamid). Por ejemplo:

pawn Код:
GetPlayersInTeamFromMaxPlayers(3);
te devolverнa el nъmero de jugadores en el equipo nъmero 3. Segъn entiendo por lo que dices, tъ quieres una funciуn que te diga el equipo que tiene menos jugadores, їno? Yo lo harнa asн:

pawn Код:
#define MAX_EQUIPOS 4 // Introduce aquн la cantidad mбxima de equipos

stock GetLessPlayersTeam()
{
    new minteam = -1;
    new jugadores[MAX_EQUIPOS];
    for(new i=0; i < MAX_PLAYERS; i++)
    {
        if(!IsPlayerConnected(i)) continue;
        jugadores[gTeam[i]]++;
    }
    for(new j=0; j < MAX_EQUIPOS; j++)
    {
        if(j=0) minteam = j;
        if(jugadores[j] >= jugadores[minteam]) continue;
        minteam = j;
    }
    return minteam;
}
Ahora mismo no tengo tiempo para probarlo, pero si te da alguna clase de problema avнsame
Reply
#3

solo me da un Warning:

possibly unintended assignment

aquн=
pawn Код:
if(j=0) minteam = j;
EDIT:

ese warning ha sido solucionado simplemente he cambiado:
pawn Код:
if(j=0) minteam=j;

//a

if(j==0) minteam=j;
ya editarй diciendo si funciona o no
Reply
#4

el contador sigue sin fucnionar , sigue asignando el mismo equнpo,

pawn Код:
stock GetLessPlayersTeam()
{
    new minteam = -1;
    new jugadores[MAX_EVENT_TEAMS];
    for(new i=0; i < MAX_PLAYERS; i++)
    {
        if(!IsPlayerConnected(i)) continue;
        jugadores[gEventTeam[i]]++;
    }
    for(new j=0; j < MAX_EVENT_TEAMS; j++)
    {
        if(j==0) minteam = j;
        if(jugadores[j] >= jugadores[minteam]) continue;
        minteam = j;
    }
    return minteam;
}

if (strcmp("/enter", cmdtext, true, 10) == 0) //This command enter the player in the event
    {
        if(OSEvent == 1)
        {
        InEventCount++;
        EPlayerTeam[playerid] = GetPlayerTeam(playerid);
        ResetPlayerWeapons(playerid);
        GivePlayerWeapon(playerid, 23, 999999);
        new minteam = GetLessPlayersTeam();
        if(minteam == 2)
        {
        SetPlayerTeam(playerid, 2);
        SetPlayerColor(playerid, COL_RED);
        SetPlayerPos(playerid, RSpawn[0], RSpawn[1], RSpawn[2]);
        TEXTRed[playerid] = CreatePlayerTextDraw(playerid, 320.0, 240.0, "YOUR TEAM ITS RED");
        PlayerTextDrawColor(playerid, TEXTRed[playerid], COL_RED);
        PlayerTextDrawShow(playerid, TEXTRed[playerid]);
        TextRed[playerid] = SetTimerEx("EndTextRed", 9000, true, "i", playerid);
        return 1;
        }
        else if(minteam == 1)
        {
        SetPlayerTeam(playerid, 1);
        SetPlayerColor(playerid, COL_BLUE);
        SetPlayerPos(playerid, BSpawn[0], BSpawn[1], BSpawn[2]);
        TEXTBlue[playerid] = CreatePlayerTextDraw(playerid, 320.0, 240.0, "YOUR TEAM ITS BLUE");
        PlayerTextDrawColor(playerid, TEXTBlue[playerid], COL_BLUE);
        PlayerTextDrawShow(playerid, TEXTBlue[playerid]);
        TextBlue[playerid] = SetTimerEx("EndTextBlue", 9000, true, "i", playerid);
        }
        return 1;
        }
        return 1;
    }
Reply
#5

/bump , sigo esperando una ayudita T.T
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)