[Ajuda] Ligar ou Desligar uma funзгo com um ъnico comando
#1

Olб todos.

Eu estou programando um servidor bбsico para um amigo e eu estou com uma dъvida, como que eu faзo para uma funзгo ser ligada e desligada com o mesmo comando? Por exemplo:

Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
	if (strcmp("/godmode", cmdtext, true, 10) == 0)
	{
		SetPlayerHealth(playerid, 99999);
		return 1;
	}
	return 0;
}
Eu acho que tem alguma coisa a ver com os return's, mas eu preciso ter certeza e saber como que faзo.

Nesse exemplo, o usuбrio digita o comando acima e consegue vida ilimitada, porйm quando ele digita o MESMO comando, eu quero que a vida do usuбrio retorne para 100.

Nгo quero que alguйm faзa para mim, apenas se for necessбrio para demonstrar.
Reply
#2

PHP код:
new GodMode[MAX_PLAYERS];
public 
OnPlayerCommandText(playeridcmdtext[])
{
    if (
strcmp("/godmode"cmdtexttrue10) == 0)
    {
        if(
GodMode[playerid] == 0)
        {
            
SetPlayerHealth(playerid99999);
            
GodMode[playerid] = 1;
        }
        else
        {
            
SetPlayerHealth(playerid100);
            
GodMode[playerid] = 0;
        }
        return 
1;
    }
    return 
0;

Reply
#3

Quote:
Originally Posted by Hiuship
Посмотреть сообщение
PHP код:
new GodMode[MAX_PLAYERS];
public 
OnPlayerCommandText(playeridcmdtext[])
{
    if (
strcmp("/godmode"cmdtexttrue10) == 0)
    {
        if(
GodMode[playerid] == 0)
        {
            
SetPlayerHealth(playerid99999);
            
GodMode[playerid] = 1;
        }
        else
        {
            
SetPlayerHealth(playerid100);
            
GodMode[playerid] = 0;
        }
        return 
1;
    }
    return 
0;

You sir, are my hero.

Muito obrigado!
Reply
#4

pawn Код:
new bool:Loading[MAX_PLAYERS];

public OnPlayerCommandText(playerid, cmdtext[])
{
    if (strcmp("/godmode", cmdtext, true, 10) == 0)
    {
        if ( Loading[playerid] == false )
        {
            SetPlayerHealth(playerid, 99999);
            SendClientMessage(playerid, -1, "GOD MODE ON.");
            Loading[playerid] = true;
        }
        else
        {
            SetPlayerHealth(playerid, 100.0);
            SendClientMessage(playerid, -1, "GOD MODE ON.");
            Loading[playerid] = false;
        }
        return 1;
    }
    return 0;
}
Okay, vamos comeзar do comeзo:

Aqui vamos criar uma variбvel boleana, para identificar se ele ja usou ou nгo.

pawn Код:
new bool:Loading[MAX_PLAYERS];
Aqui vamos identificar se ele jб estб em god mode. Se retornar como falso quer dizer que nгo estб.

pawn Код:
if ( Loading[playerid] == false )
{
Aqui vamos setar a vida para X e setar a variбvel boleana para true

pawn Код:
if ( Loading[playerid] == false )
        {
            SetPlayerHealth(playerid, 99999);
            SendClientMessage(playerid, -1, "GOD MODE ON.");
            Loading[playerid] = true;// Setamos para true.
        }
E para finalizar:

Vamos dizer ao pawno: " Se a variбvel boleana ja estiver = true vamos setala para falso, e retornar a vida do jogador a 100.0";

pawn Код:
else
{
    SetPlayerHealth(playerid, 100.0);
    SendClientMessage(playerid, -1, "GOD MODE ON.");
    Loading[playerid] = false;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)