Ligar ou Desligar uma funзгo com um ъnico comando -
RStyle2014 - 26.02.2015
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.
Re: Ligar ou Desligar uma funзгo com um ъnico comando -
Hiuship - 26.02.2015
PHP код:
new GodMode[MAX_PLAYERS];
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/godmode", cmdtext, true, 10) == 0)
{
if(GodMode[playerid] == 0)
{
SetPlayerHealth(playerid, 99999);
GodMode[playerid] = 1;
}
else
{
SetPlayerHealth(playerid, 100);
GodMode[playerid] = 0;
}
return 1;
}
return 0;
}
Re: Ligar ou Desligar uma funзгo com um ъnico comando -
RStyle2014 - 26.02.2015
Quote:
Originally Posted by Hiuship
PHP код:
new GodMode[MAX_PLAYERS];
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/godmode", cmdtext, true, 10) == 0)
{
if(GodMode[playerid] == 0)
{
SetPlayerHealth(playerid, 99999);
GodMode[playerid] = 1;
}
else
{
SetPlayerHealth(playerid, 100);
GodMode[playerid] = 0;
}
return 1;
}
return 0;
}
|
You sir, are my hero.
Muito obrigado!
Re: Ligar ou Desligar uma funзгo com um ъnico comando -
Dry - 26.02.2015
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;
}