Checar se o jogador tem Dinheiro -
Saidmrn - 27.10.2012
Olб a todos,eu queria pedir ajuda em 1 coisa que eu to fazendo e ja pesquisei no ****** como fazer e nгo consegui.
Eu quero criar um sistema para o player escolher o que quer comer e adicionar "X" quantidade de vida.
E eu queria que checasse se ele tem a grana. eu tava fazendo assim :
Код:
#define id 1
#define COR_Comer 0xFF8000AA
public OnPlayerCommandText(playerid, cmdtext[])
if (strcmp("/Comer", cmdtext, true, 10) == 0)
{
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_LIST, "Pizza Hut", "Pizza de mussarela\nPizza 2\npizza 3\npizza 4", "Comer", "Sair");
return 1;
}
Ok,agora vem a parte que eu nгo consegui.
Como fazer para que veja se o jogador tem o dinheiro para comprar a pizza ?
Re: Checar se o jogador tem Dinheiro -
Ouro - 27.10.2012
pawn Код:
if(GetPlayerMoney(playerid) < 1) return SendClientMessage(playerid, -1, "Vocк nгo tem 1 real.");
Re: Checar se o jogador tem Dinheiro -
Saidmrn - 27.10.2012
Quote:
Originally Posted by Ouro
pawn Код:
if(GetPlayerMoney(playerid) < 1) return SendClientMessage(playerid, -1, "Vocк nгo tem 1 real.");
|
й isso ?
if(dialogid == 1)
{
if(response == 1)
{
if(listitem == 0)
{
if(GetPlayerMoney(playerid) < 1000) return
SendClientMessage(playerid, -1000, "Vocк nгo tem dinheiro para pagar .");
if(GetPlayerMoney(playerid) >= 1000) return
SendClientMessage(playerid, -1000, "Vocк comeu uma pizza .");
return 1;
}
# EDIT :
Consegui fazer isso,mais quando ele Come a pizza,nгo tira o dinheiro dele.como faзo pra diminuir - 1000 ?
Re: Checar se o jogador tem Dinheiro -
Ouro - 27.10.2012
pawn Код:
if(dialogid == 1)
{
if(response)
{
if(listitem == 0)
{
if(GetPlayerMoney(playerid) < 1000) return SendClientMessage(playerid, -1, "Vocк nгo tem dinheiro para pagar .");
SendClientMessage(playerid, -1000, "Vocк comeu uma pizza e perdeu 1000 reais.");
GivePlayerMoney(playerid, -1000);
}
Re: Checar se o jogador tem Dinheiro -
Rodney Francalim - 27.10.2012
pawn Код:
// TOPO DO GM
#define PRECOPIZZAMUSSARELA 20
//11 й o valor da pizza em US$
#define CURAPIZZAMUSSARELA 2.0
//2.0 й o valor que a pizza de mussarela vai curar do jogador
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
switch(dialogid) // Para nгo ficar colocando if(dialogid == 1) ... if(dialogid == 2) ...
{
case 1: //Pizza de mussarela P.S.: Esse 0 indica o primeiro item da lista
{
new Float:Saude;
GetPlayerHealth(playerid, Saude);
switch(listitem) // O mesmo para o de cima
{
case 0:
{
GetPlayerMoney(playerid);
if(GetPlayerMoney(playerid) < PRECOPIZZAMUSSARELA) return SendClientMessage(playerid, 0xFF0000FF, "Vocк nгo tem dinheiro suficiente"); // Se o dinheiro que o jogador tiver for menor do que o preзo da pizza de mussarela, definido lб no topo, entгo retornarб uma mensagem para o player de que ele nгo tem dinheiro suficiente
else GivePlayerMoney(playerid, -PRECOPIZZAMUSSARELA), SendClientMessage(playerid, 0xFF8000AA, "Vocк comeu sua pizza de mussarela"), SetPlayerHealth(playerid, Saude+CURAPIZZAMUSSARELA); // Mas se ele tiver, entгo serб descontado o valor da pizza (por isso usei " - " antes do PRECOPIZZAMUSSARELA, para ler como um valor negativo e descontar), e retornarб uma mensagem dizendo que ele comeu aumentando seu life
}
}
}
// E assim sucessivamente com as outras pizzas
}
return 1;
}
Nгo sei se vai dar certo, mas esse й o raciocнnio a ser seguido.
Re: Checar se o jogador tem Dinheiro -
Ouro - 27.10.2012
Quote:
Originally Posted by Rodney_Francalim
pawn Код:
// TOPO DO GM #define PRECOPIZZAMUSSARELA 20 //11 й o valor da pizza em US$ #define CURAPIZZAMUSSARELA 2.0 //2.0 й o valor que a pizza de mussarela vai curar do jogador
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { switch(dialogid) // Para nгo ficar colocando if(dialogid == 1) ... if(dialogid == 2) ... { case 1: //Pizza de mussarela P.S.: Esse 0 indica o primeiro item da lista { new Float:Saude; GetPlayerHealth(playerid, Saude); switch(listitem) // O mesmo para o de cima { case 0: { GetPlayerMoney(playerid); if(GetPlayerMoney(playerid) < PRECOPIZZAMUSSARELA) return SendClientMessage(playerid, 0xFF0000FF, "Vocк nгo tem dinheiro suficiente"); // Se o dinheiro que o jogador tiver for menor do que o preзo da pizza de mussarela, definido lб no topo, entгo retornarб uma mensagem para o player de que ele nгo tem dinheiro suficiente else GivePlayerMoney(playerid, -PRECOPIZZAMUSSARELA), SendClientMessage(playerid, 0xFF8000AA, "Vocк comeu sua pizza de mussarela"), SetPlayerHealth(playerid, Saude+CURAPIZZAMUSSARELA); // Mas se ele tiver, entгo serб descontado o valor da pizza (por isso usei " - " antes do PRECOPIZZAMUSSARELA, para ler como um valor negativo e descontar), e retornarб uma mensagem dizendo que ele comeu aumentando seu life } } } // E assim sucessivamente com as outras pizzas } return 1; }
Nгo sei se vai dar certo, mas esse й o raciocнnio a ser seguido.
|
Re: Checar se o jogador tem Dinheiro -
Saidmrn - 27.10.2012
Quote:
Originally Posted by Rodney_Francalim
pawn Код:
// TOPO DO GM #define PRECOPIZZAMUSSARELA 20 //11 й o valor da pizza em US$ #define CURAPIZZAMUSSARELA 2.0 //2.0 й o valor que a pizza de mussarela vai curar do jogador
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { switch(dialogid) // Para nгo ficar colocando if(dialogid == 1) ... if(dialogid == 2) ... { case 1: //Pizza de mussarela P.S.: Esse 0 indica o primeiro item da lista { new Float:Saude; GetPlayerHealth(playerid, Saude); switch(listitem) // O mesmo para o de cima { case 0: { GetPlayerMoney(playerid); if(GetPlayerMoney(playerid) < PRECOPIZZAMUSSARELA) return SendClientMessage(playerid, 0xFF0000FF, "Vocк nгo tem dinheiro suficiente"); // Se o dinheiro que o jogador tiver for menor do que o preзo da pizza de mussarela, definido lб no topo, entгo retornarб uma mensagem para o player de que ele nгo tem dinheiro suficiente else GivePlayerMoney(playerid, -PRECOPIZZAMUSSARELA), SendClientMessage(playerid, 0xFF8000AA, "Vocк comeu sua pizza de mussarela"), SetPlayerHealth(playerid, Saude+CURAPIZZAMUSSARELA); // Mas se ele tiver, entгo serб descontado o valor da pizza (por isso usei " - " antes do PRECOPIZZAMUSSARELA, para ler como um valor negativo e descontar), e retornarб uma mensagem dizendo que ele comeu aumentando seu life } } } // E assim sucessivamente com as outras pizzas } return 1; }
Nгo sei se vai dar certo, mas esse й o raciocнnio a ser seguido.
|
Mais eu usar :
GivePlayerMoney(playerid, -PRECOPIZZAMUSSARELA)
ou
GivePlayerMoney(playerid, -1000);
nгo й a mesma coisa ?
Eu usei isso e quando ele escolhe a pizza nгo diminui o seu dinheiro.
Re: Checar se o jogador tem Dinheiro -
Rodney Francalim - 27.10.2012
Quote:
Originally Posted by Ouro
|
What? :P
Re: Checar se o jogador tem Dinheiro -
Saidmrn - 27.10.2012
Aeeeeeee consegui,vlw ai a todos =DDDDDDD