SA-MP Forums Archive
[Pedido] Limitador de Dinheiro - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Pedido] Limitador de Dinheiro (/showthread.php?tid=612229)



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"1000true);
return 
1;
}
forward dinheiro(playerid);
public 
dinheiro(playerid)
{
if(
GetPlayerMoney(playerid) <=1000000)
ResetPlayerMoney(playerid);
GivePlayerMoney(playerid,999999);
SendClientMessage(playerid0xFF0000FF"[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"5000true);
}
forward AtualizarGrana();
public 
AtualizarGrana()
{
    for(new 
0MAX_PLAYERS; ++i)
    {
        if(
GetPlayerMoney(i) > 1000000)
        {
            
ResetPlayerMoney(i);
            
GivePlayerMoney(i1000000);
            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.