hacer contador de users?
#1

Bueno hice un texdraw para cuantos users hay en el sv al loguear pero nose como obtener los users conectado alguien me dice como creo un contador de usuarios?
Reply
#2

Puedes hacerlo de varias formas, una:

pawn Код:
new UsersOnline;

public OnPlayerConnect(playerid)
{
    UsersOnline++;
    return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
    UsersOnline--;
    return 1;
}
o

pawn Код:
new Logeado[MAX_PLAYERS];

public OnPlayerConnect(playerid)
{
    Logeado[playerid] = true;
    return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
    Logeado[playerid] = false;
    return 1;
}

stock GetPlayersOnline()
{
    new _c;
    for(new i; i != MAX_PLAYERS; i++)
    {
        if(!Logeado[i] || !IsPlayerConnected(i))
            continue;
           
        _c++;
    }
    return _c;
}
y la funciуn estб ahн.
Reply
#3

Teniendo en cuenta que el primer mйtodo es mucho mas rбpido.
Reply
#4

Con variables,
pawn Код:
new Total_Users;

public OnPlayerConnect(playerid)
{
    Total_Users++;
    return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
    Total_Users--;
    printf("En total hay %i jugadores conectados",Total_Users);
    return 1;
}
Reply
#5

bueno use la de zume la segunda opciуn que me dio y no me da me dice 00 usuarios conectados y lo puse asi:

format(string, sizeof(string), "%d usuarios conectados", GetPlayersOnline());
Reply
#6

Situaste el valor de la variable? sin embargo la primera contarб como ves a todos los jugadores con la variable Logueado, la otra es mбs rбpida como dice Desing

otra para contar los conectados serнa asн:

pawn Код:
stock GetPlayersOnline()
{
    new _c;
    for(new i; i != MAX_PLAYERS; i++)
    {
        if(!IsPlayerConnected(i))
            continue;

        _c++;
    }
    return _c;
}
Reply
#7

Quote:
Originally Posted by _Zume
Посмотреть сообщение
Situaste el valor de la variable? sin embargo la primera contarб como ves a todos los jugadores con la variable Logueado, la otra es mбs rбpida como dice Desing

otra para contar los conectados serнa asн:

pawn Код:
stock GetPlayersOnline()
{
    new _c;
    for(new i; i != MAX_PLAYERS; i++)
    {
        if(!IsPlayerConnected(i))
            continue;

        _c++;
    }
    return _c;
}
Bueno si lo ise pero no sale creo que no me explique bien quiero que muestre los players online al estar escribiendo la contraseсa
Reply
#8

o sea los que no estбn identificados? sуlo eliminarle el ! a la primera funciуn u al primer ejemplo ponle en donde deberнa estar la variable que aumenta..
Reply
#9

Quote:
Originally Posted by maicolpao
Посмотреть сообщение
Bueno si lo ise pero no sale creo que no me explique bien quiero que muestre los players online al estar escribiendo la contraseсa
Ok, muestra como tiene el dialog de la contraseсa, alli tienes que poner el format con la variable, dentro del dialog. o en un textdraw, como sea.
Reply
#10

Ya lo arregle me di cuenta de que era asi:

TextDrawShowForPlayer(playerid, TextdrawSRP12);
format(string, sizeof(string), "%i usuarios conectados", GetPlayersOnline());
TextDrawSetString(TextdrawSRP12, string);
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)