Sistema de Fome que eu estava fazendo. -
RookieCoder - 18.12.2012
Oi galera, estou aqui perguntando de novo

.
Bom, eu estava fazendo um sisteminha bбsico de fome, para ver se eu tф pegando a o jeitinho da coisa.. E deu estes erro. Analisem o code para min por favor.
pawn Код:
// Topo GM
new Fome[MAX_PLAYERS];
forward pFome(playerid);
public pFome();
{
if (Fome[playerid] => 10)
{
Fome[playerid]--;
}
else (Fome[playerid] =< 10)
{
Fome[playerid]--;
SetPlayerHealth(playerid, -10);
SendClientMessage(playerid, VERMELHO,"Vocк perdeu vida por estar com muita fome");
}
{
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/status", cmdtext, true, 10) == 0)
{
new stringFome[256];
SendClientMessage(playerid,VERDE,"Seus status:");
format(stringFome,sizeof(stringFome),"Fome: %d", Fome[playerid]);
SendClientMessage(playerid,0xFF9933AA, stringFome);
return 1;
}
return 0;
}
public OnGameModeInit()
{
SetGameModeText("ZBR-RP");
DisableInteriorEnterExits();
SetTimer("pFome", 3600000 , true);
return 1;
}
Erros :
C:\Users\Raн\Documents\GM\gamemodes\ZRP.pwn(25) : error 055: start of function body without function header
C:\Users\Raн\Documents\GM\gamemodes\ZRP.pwn(26) : error 010: invalid function or declaration
C:\Users\Raн\Documents\GM\gamemodes\ZRP.pwn(30) : error 010: invalid function or declaration
(Vejam se ele esse sistema funcionarб tambйm por favor ?)
Re: Sistema de Fome que eu estava fazendo. -
DrTHE - 18.12.2012
Vocк estб fazendo isso
muito errado, explique exatamente o que vocк quer fazer.
O que vocк usa para atualizar a 'fome' do jogador ?
Re: Sistema de Fome que eu estava fazendo. -
RookieCoder - 18.12.2012
Uso os SetTimer..
A cada 1 hora, ele diminui -1 de fome.
EDIT:
Esqueci de postar a parte do settimer e alguns erros. Pera ae.
EDIT 2:
AGORA SIM OLHA LБ.
Re: Sistema de Fome que eu estava fazendo. -
DrTHE - 18.12.2012
pawn Код:
// Topo GM
new Fome[MAX_PLAYERS];
forward pFome();
public pFome()
{
for(new i; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(Fome[i] >= 10)
{
Fome[i]--;
}
else if(Fome[i] <= 10)
{
Fome[i]++;
SetPlayerHealth(i, -10);
SendClientMessage(i, VERMELHO, "Vocк perdeu vida por estar com muita fome");
}
}
}
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/status", cmdtext, true, 10) == 0)
{
new stringFome[256];
SendClientMessage(playerid,VERDE,"Seus status:");
format(stringFome,sizeof(stringFome),"Fome: %d", Fome[playerid]);
SendClientMessage(playerid,0xFF9933AA, stringFome);
return 1;
}
return 0;
}
public OnGameModeInit()
{
SetTimer("pFome", 3600000 , true);
return 1;
}
Alguns erros com chaves, operadores e callbacks.
Re: Sistema de Fome que eu estava fazendo. -
RookieCoder - 18.12.2012
Deixa-me olhar. Obrigado jб toma REP pela forзa dada, eu acho que й o unico meio de agradecer nй.
Re: Sistema de Fome que eu estava fazendo. -
BielCOP - 18.12.2012
Rookie, voce nao pode dar REP ainda --'
@TOPIC:
pawn Код:
// Topo GM
new Fome[MAX_PLAYERS];
forward pFome();
public pFome()
{
for(new i; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(Fome[i] >= 10)
{
Fome[i]--;
}
else if(Fome[i] <= 10)
{
Fome[i]++;
SetPlayerHealth(i, -10);
SendClientMessage(i, VERMELHO, "Vocк perdeu vida por estar com muita fome");
}
}
}
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/status", cmdtext, true, 10) == 0)
{
new stringFome[256];
SendClientMessage(playerid,VERDE,"Seus status:");
format(stringFome,sizeof(stringFome),"Fome: %d", Fome[playerid]);
SendClientMessage(playerid,0xFF9933AA, stringFome);
return 1;
}
return 0;
}
public OnGameModeInit()
{
SetTimer("pFome", 3600000 , 1);
return 1;
}
Re: Sistema de Fome que eu estava fazendo. -
RookieCoder - 18.12.2012
Biel, pode me responder uma coisa ?
Como faзo para tirar UM POUCO do sangue do cara..
Eu tinha usado o SetPlayerHealth, mas ele seta o sangue do player e nгo "Tira."
Por exemplo, queria mesmo dar um dano de tipo.. 10 no sangue do cara, mas nгo deixa-lo no 10, somente diminuir 10..
Re: Sistema de Fome que eu estava fazendo. -
BielCOP - 18.12.2012
Jб entendi o que й.
Isto acima vai setar a vida do player para -10, ou seja, ele morrerб :S
pawn Код:
new Float:Life;
GetPlayerHealth(playerid,Life);
SetPlayerHealth(playerid,Life-10);
O correto й isso acima. Jб que tirarб 10% da vida que a pessoa tem, e nao setarб.
Re: Sistema de Fome que eu estava fazendo. -
EditPawn - 18.12.2012
Quote:
Originally Posted by RookieCoder
Biel, pode me responder uma coisa ?
Como faзo para tirar UM POUCO do sangue do cara..
Eu tinha usado o SetPlayerHealth, mas ele seta o sangue do player e nгo "Tira."
Por exemplo, queria mesmo dar um dano de tipo.. 10 no sangue do cara, mas nгo deixa-lo no 10, somente diminuir 10..
|
й sу usar a funзгo GetPlayerHealth e conforme a vida dele, voce seta um valor 'x' a menos ^^
Quote:
Originally Posted by BielCOP
Jб entendi o que й.
Isto acima vai setar a vida do player para -10, ou seja, ele morrerб :S
pawn Код:
new Float:Life;
GetPlayerHealth(playerid,Life);
SetPlayerHealth(playerid,Life-10);
O correto й isso acima. Jб que tirarб 10% da vida que a pessoa tem, e nao setarб.
|
Nao ira tirar 10% da vida nao :S
Re: Sistema de Fome que eu estava fazendo. -
BielCOP - 18.12.2012
Tem como provar ?
Nao se contrarie ao meu post.
Ele estб correto, uso uma funcao parecida no meu GM.
Porque no dele nao ira pegar ? --'