[AJUDA] /setminfps e /setmaxping
#1

como eu poderia fazer um comando que seta-se o minimo de fps, caso chegue no minimo setado no comando, ( /setminfps 20) o minimo de fps seria 20, se o player tive-se um fps menor que 20, seria kickado do servidor em 10 segundos.
o ping a mesma coisa, ( /setmaxping 250 ) o player com ping acima de 250 seria kickado do servidor em 10 segundos tambйm.

nгo tenho o melhor geito pra fazer isso rs'
Reply
#2

pawn Код:
public OnGameModeInit() //ou OnFilterScriptInit()
{
    SetTimer("ping", 2000, true, "d", playerid);
    return 1;
}
pawn Код:
forward ping(playerid);
public ping(playerid)
{
    if(GetPlayerPing(playerid) >= 250) //mude o 250 pelo ping maximo
    {
        SendClientMessage(playerid, -1, "Vocк foi kickado por ter ping muito alto");
        Kick(playerid);
        return 1;
    }
}
Reply
#3

isso eu consegui fazer, sу nгo consegui fazer setar por comando o Numero mбximo de piing
Reply
#4

pawn Код:
new MaxPing = 300;

if(!strcmp(cmdtext,"/maxping"))
{
    new tmp[24], idx; tmp = strtok(cmdtext, idx);

    if(!strlen(tmp))
        return SendClientMessage(playerid, -1, "/maxping [numero]");

    MaxPing = strval(tmp);
    return 1;
}
Reply
#5

pawn Код:
forward ping(playerid);
public ping(playerid)
{
    if(GetPlayerPing(playerid) >= MaxPing) // <<<<
    {
        SendClientMessage(playerid, -1, "Vocк foi kickado por ter ping muito alto");
        Kick(playerid);
        return 1;
    }
}
Reply
#6

(11) : warning 202: number of arguments does not match definition
(11) : error 017: undefined symbol "playerid"
(14) : warning 235: public function lacks forward declaration (symbol "ping")
(22) : warning 209: function "ping" should return a value
(35) : warning 209: function "OnPlayerCommandText" should return a value

Linha 11 ( linha do settimer ) :
pawn Код:
public OnFilterScriptInit()
{
    SetTimer("ping", 2000, true, "d", playerid);
    return 1;
}
Linha 14 ( Linha da public ) :

pawn Код:
public ping(playerid)
{
    if(GetPlayerPing(playerid) >= MaxPing) // <<<<
    {
        SendClientMessage(playerid, -1, "Vocк foi kickado por ter ping muito alto");
        Kick(playerid);
        return 1;
    }
}
Linha 22: ultima linha do cуdigo anterior ( } )

Linha 35 ( ultimo } do cуdigo) :

pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if(!strcmp(cmdtext,"/maxping"))
{
    new tmp[24], idx; tmp = strtok(cmdtext, idx);

    if(!strlen(tmp))
        return SendClientMessage(playerid, -1, "/maxping [numero]");

    MaxPing = strval(tmp);
    return 1;
}
}
Reply
#7

Quote:
Originally Posted by Cristhian
Посмотреть сообщение
pawn Код:
public OnGameModeInit() //ou OnFilterScriptInit()
{
    SetTimer("ping", 2000, true, "d", playerid);
    return 1;
}
Vocк nгo pode querer usar um parвmetro que nгo foi fornecido...

pawn Код:
public OnFilterScriptInit()
{
    SetTimer("CheckPing", 2000, true);
    return 1;
}

public CheckPing()
{
    for(new i, j=GetMaxPlayers(); i != j ; i++)
        if(GetPlayerPing(i) >= MaxPing)
        {
            SendClientMessage(i, -1, "Vocк foi kickado por ter ping muito alto");
            Kick(i);
        }

    return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{
    if(!strcmp(cmdtext,"/maxping"))
    {
        new tmp[24], idx; tmp = strtok(cmdtext, idx);

        if(!strlen(tmp))
            return SendClientMessage(playerid, -1, "/maxping [numero]");

        MaxPing = strval(tmp);
        return 1;
    }
    return 1;
}
Reply
#8

(14) : warning 235: public function lacks forward declaration (symbol "CheckPing")

Linha 14 ( linha da public )

pawn Код:
public CheckPing()
{
    for(new i, j=GetMaxPlayers(); i != j ; i++)
        if(GetPlayerPing(i) >= MaxPing)
        {
            SendClientMessage(i, -1, "Vocк foi kickado por ter ping muito alto");
            Kick(i);
        }

    return 1;
}
1 Warning.
Reply
#9

Acrescente

pawn Код:
forward CheckPing();
Reply
#10

nenhum comando do game mode funciona mais O.O
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)