Limitador de Dinheiro -
JacKPanK - 15.07.2016
Alguйm pode me ajuda com um limitador de dinheiro, tipo o player chegar a 1000000 se ele ficar com 1000001 o dinheiro dele й resetado para 1000000.
Acho que й uma coisa simples mas nгo to conseguindo criar, jб procurei no fуrum num achei.
@edit
Eu tentei assim mas acho que num tem nada haver
PHP код:
public OnPlayerConnect(playerid)
{
SetTimer("dinheiro", 1000, true);
return 1;
}
forward dinheiro(playerid);
public dinheiro(playerid)
{
if(GetPlayerMoney(playerid) <=1000000)
ResetPlayerMoney(playerid);
GivePlayerMoney(playerid,999999);
SendClientMessage(playerid, 0xFF0000FF, "[Banco] Vocк passou do limite de dinheiro que й 1000000!");
}
Respuesta: Limitador de Dinheiro -
Kanuy - 15.07.2016
Код:
public OnPlayerUpdate(playerid)
{
if(GetPlayerMoney(playerid) > 1000000)
{
ResetPlayerMoney(playerid);
GivePlayerMoney(playerid, 1000000);
return 1;
}
return 1;
}
@edit
Voce inverteu o sinal
Код:
if(GetPlayerMoney(playerid) <=1000000) // < = verifica se e menor ou igual a " "
if(GetPlayerMoney(playerid) > 1000000) > verifica se e maior a " "
Re: Respuesta: Limitador de Dinheiro -
JacKPanK - 15.07.2016
Quote:
Originally Posted by Kanuy
Код:
public OnPlayerUpdate(playerid)
{
if(GetPlayerMoney(playerid) > 1000000)
{
ResetPlayerMoney(playerid);
GivePlayerMoney(playerid, 1000000);
return 1;
}
return 1;
}
@edit
Voce inverteu o sinal
Код:
if(GetPlayerMoney(playerid) <=1000000) // < = verifica se e menor ou igual a " "
if(GetPlayerMoney(playerid) > 1000000) > verifica se e maior a " "
|
Valeu em cara, salvo minha vida, deu certo aqui, c num quer me ajudar nгo com meu projeto? kk to aceitado ajuda kk
Re: Limitador de Dinheiro -
XandyMello - 16.07.2016
Use dessa forma:
pawn Код:
public OnGameModeInit()
{
SetTimer("AtualizarGrana", 5000, false); //1000 = 1 seg
}
forward AtualizarGrana();
public AtualizarGrana()
{
for(new i = 0; i < MAX_PLAYERS; ++i)
{
if(GetPlayerMoney(i) > 1000000)
{
ResetPlayerMoney(i);
GivePlayerMoney(i, 1000000);
return 1;
}
}
}
Terб uma atualizaзгo de 5 em 5 segundos para verificar. Bem mais otimizado do que usar na public OnPlayerUpdate.
@Edit, SetTimer("AtualizarGrana, 5000, true); :P
Re: Respuesta: Limitador de Dinheiro -
ipsLuan - 16.07.2016
Quote:
Originally Posted by JacKPanK
Valeu em cara, salvo minha vida, deu certo aqui, c num quer me ajudar nгo com meu projeto? kk to aceitado ajuda kk
|
Nгo й necessбrio conhecimento de Pawn pra resolver isso. Isso й operaзгo matemбtica.
> maior que
< menor que
Respuesta: Re: Limitador de Dinheiro -
Kanuy - 16.07.2016
Quote:
Originally Posted by XandyMello
Use dessa forma:
pawn Код:
public OnGameModeInit() { SetTimer("AtualizarGrana", 5000, false); //1000 = 1 seg } forward AtualizarGrana(); public AtualizarGrana() { for(new i = 0; i < MAX_PLAYERS; ++i) { if(GetPlayerMoney(i) > 1000000) { ResetPlayerMoney(i); GivePlayerMoney(i, 1000000); return 1; } } }
Terб uma atualizaзгo de 5 em 5 segundos para verificar. Bem mais otimizado do que usar na public OnPlayerUpdate.
|
A repetiзгo de seu timer deveria ter valor true para funcionar...
E se o jogador ultrapassar o limite no comeзo da repetiзгo do timer ele terб 5 segundos extras desnecessбrios, logo melhor seria um timer repetitivo de no maximo 1 segundo, sendo que a public OnPlayerUpdate atualiza ao jogador ter alteraзхes e se nгo me engano mais algumas vezes por segundo entгo pra que timer?
Respuesta: Re: Limitador de Dinheiro -
XandyMello - 17.07.2016
Quote:
Originally Posted by Kanuy
A repetiзгo de seu timer deveria ter valor true para funcionar...
E se o jogador ultrapassar o limite no comeзo da repetiзгo do timer ele terб 5 segundos extras desnecessбrios, logo melhor seria um timer repetitivo de no maximo 1 segundo, sendo que a public OnPlayerUpdate atualiza ao jogador ter alteraзхes e se nгo me engano mais algumas vezes por segundo entгo pra que timer?
|
Jб dei edit. Cara, nгo tem necessidade de utilizar a public OnPlayerUpdate, ela й chamada muitas vezes para cada player. Faзa um teste e me diga. SetTimer global й super mais otimizado, e se estiver a include forach ficaria perfeito.
Pra que resetar muito rбpido a grana do player ? Pense comigo: Uma hora o player irб pegar a atualizaзгo do setimer num й mesmo ?. 5 segundos й jб й necessбrio.
Respuesta: Limitador de Dinheiro -
SammyJ - 17.07.2016
PHP код:
public OnGameModeInit()
{
SetTimer("AtualizarGrana", 5000, true);
}
forward AtualizarGrana();
public AtualizarGrana()
{
for(new i = 0; i < MAX_PLAYERS; ++i)
{
if(GetPlayerMoney(i) > 1000000)
{
ResetPlayerMoney(i);
GivePlayerMoney(i, 1000000);
return 1;
}
}
}
@edit
Re: Limitador de Dinheiro -
BobbMarley - 18.07.2016
cria uma varнavel para o dinheiro com um nome, e qnd logar(verificar) pega essa variбvel e compara com o playerMoney e se for maior que > a variavel, Reseta o dinheiro e seta o dinheiro para a quantidade que estб dentro da mesma variavel. ou seja como se fosse uma segunda moeda, mas no caso sу para seguranзa mesmo do dinheiro original do gta.
att;
BobMarley
Qualquer dъvida contate-me por Pm, irei ajudar com prazer.