[Ajuda] Comando para setar dinheiro
#1

Fala galera, comecei a mexer com pawn esse mкs e depois de muito estudo e vнdeo-aula consegui fazer meu primeiro comando funcionar.

Код:
	CMD:setardinheiro(playerid, params[]) {
	new id, value;
	if(sscanf(params, "dd", id, value)) return SendClientMessage(playerid, -1, "Use: /setardinheiro [id] [valor]");
	if(!IsPlayerConnected(id)) return SendClientMessage(playerid, -1, "| ERRO | O jogador nгo estб online.");
	if(!IsPlayerAdmin(id)) return SendClientMessage(playerid, -1, "| ERRO | Vocк nгo й um Administrador.");
	GivePlayerMoney(id,(GetPlayerMoney(id) + value));
	SendClientMessage(id, -1, "Vocк recebeu dinheiro do Administrador.");
	return 1;
}
Porйm... Ficou faltando um modo de aparecer a quantia "x" que o jogador recebeu, serб que alguйm pode dar uma luz?

Outra coisa, o cбlculo ficou meio errado ali, eu seto uma quantia e o jogo retorna outra.
Reply
#2

Sу adaptar ao seu comando.

PHP код:
new Str[200];
format(Strsizeof(Str),"Vocк recebeu %i com sucesso!",value);
SendClientMessage(id, -1Str); 
Reply
#3

PHP код:
CMD:setardinheiro(playeridparams[]) {
    
//criando as variavel!
    
new idvalue;
    
//sscanf trabalhando
    
if(sscanf(params"ii"idvalue)) return SendClientMessage(playerid, -1"Use: /setardinheiro [id] [valor]");
    
//verificando se o player ta online
    
if(!IsPlayerConnected(id)) return SendClientMessage(playerid, -1"| ERRO | O jogador nгo estб online.");
    
//verificando se o player que digitou o comando!
    // AQUI ESTAVA ERRADO << if(!IsPlayerAdmin(id)) return SendClientMessage(playerid, -1, "| ERRO | Vocк nгo й um Administrador.");
    //Estava verificando se o player que iria receber o dinheiro era admin, nao o que digitou o comando.
    
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1"| ERRO | Vocк nгo й um Administrador.");
    
//setando o dinheiro!
    
GivePlayerMoney(id,(GetPlayerMoney(id) + value));
    
//criando a string
    
new string[80];
    
//formando a strimg inserindo o valor do dinheiro
    
format(stringsizeof(string),"Vocк recebeu %i de um administrador",value);
    
//enviando mensagem para o jogador que recebeu
    
SendClientMessage(id,-1,string);
    
format(stringsizeof(string),"Vocк setou o dinheiro de um jogador para %i",value);
    
SendClientMessage(playerid,-1,string);
    return 
1;

Vocк poderia ser mais especifico com o erro de calculo? porque pelo que eu vi estб certo.
Reply
#4

eis o problema de calculo:
PHP код:
GivePlayerMoney(id,(GetPlayerMoney(id) + value)); 
Com isso o player recebe oq ele tem na mao + qto vc deu...

Ex:

Eu tenho 1000 na mao e vc me seta 1000 eu vou ganhar 1000+1000, ou seja, seu calculo me setou 2k.
Sу trocar para:
PHP код:
GivePlayerMoney(idvalue); 
Reply
#5

Valeu galera, consegui arrumar tudinho aqui =D
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)