CMD /heal
#1

Hello, I made a CMD /heal. It costs 1500$ to heal a player but can someone tell me that if the player don't have 1500$ he must get a message "You don't have enough cash" and he shouldn't be healed. And if players health is already full then if he types /heal he should get a message "You already have 100% health".
Currently this is my CMD:-
PHP код:
CMD:heal(playerid,params[])
{
     
SetPlayerHealth(playerid100.0);
     
SendClientMessage(playerid, -1"You have healed yourself for 1500$.");
     
GivePlayerMoney(playerid, -1500);
     return 
1;

Reply
#2

https://sampwiki.blast.hk/wiki/GetPlayerMoney
https://sampwiki.blast.hk/wiki/Control_Structures#Operators

Get player's money and in an if statement, check if the amount of money is lower than 1500 and return an error.

https://sampwiki.blast.hk/wiki/GetPlayerHealth

Get player's health and check if it is equal to 100.0 and return an error.

Those two checks that return an error should be at the top of the command and keep the rest of the code below.
Reply
#3

PHP код:
CMD:heal(playerid,params[]) 

     if(
GetPlayerHealth(playerid) < 99) return SendClientMessage(playerid, -1"Error: Your health is already full.");
     if(
GetPlayerMoney(playerid) < 1500) return SendClientMessage(playerid, -1"Error: You do not enough cash.");
     
SetPlayerHealth(playerid100.0); 
     
SendClientMessage(playerid, -1"You have healed yourself for 1500$."); 
     
GivePlayerMoney(playerid, -1500); 
     return 
1

Reply
#4

Quote:
Originally Posted by Ahmed21
Посмотреть сообщение
PHP код:
CMD:heal(playerid,params[]) 

     if(
GetPlayerHealth(playerid) < 99) return SendClientMessage(playerid, -1"Error: Your health is already full.");
     if(
GetPlayerMoney(playerid) < 1500) return SendClientMessage(playerid, -1"Error: You do not enough cash.");
     
SetPlayerHealth(playerid100.0); 
     
SendClientMessage(playerid, -1"You have healed yourself for 1500$."); 
     
GivePlayerMoney(playerid, -1500); 
     return 
1

Dude, i had 7000 cash and 50 percent health but when i write /heal it keels saying ERROR:Your health is already full.
Reply
#5

PHP код:
CMD:heal(playerid,params[]) 

     if(
GetPlayerHealth(playerid) > 99) return SendClientMessage(playerid, -1"Error: Your health is already full.");
     if(
GetPlayerMoney(playerid) < 1500) return SendClientMessage(playerid, -1"Error: You do not enough cash.");
     
SetPlayerHealth(playerid100.0); 
     
SendClientMessage(playerid, -1"You have healed yourself for 1500$."); 
     
GivePlayerMoney(playerid, -1500); 
     return 
1

Fixed.
Reply
#6

Guys.... Do you know how you have to use GetPlayerHealth()?

PHP код:
CMD:heal(playerid,params[])
{
    new 
Float:health;
    
GetPlayerHealth(playerid,health);
    if(
health == 100.0) return SendClientMessage(playerid, -1"Error: Your health is already full.");
     if(
GetPlayerMoney(playerid) < 1500) return SendClientMessage(playerid, -1"Error: You do not enough cash.");
      
SetPlayerHealth(playerid100.0);
       
SendClientMessage(playerid, -1"You have healed yourself for 1500$.");
       
GivePlayerMoney(playerid, -1500);
    return 
1;

Reply
#7

If you have 257 PV, you can heal with your command.
Reply
#8

Код:
CMD:heal(playerid,params[]) 
{ 
    new Float:health; 
    GetPlayerHealth(playerid,health); 
    if(health == 99) return SendClientMessage(playerid, -1, "Error: Your health is already full."); 
     if(GetPlayerMoney(playerid) < 1500) return SendClientMessage(playerid, -1, "Error: You do not enough cash."); 
      SetPlayerHealth(playerid, 100.0); 
       SendClientMessage(playerid, -1, "You have healed yourself for 1500$."); 
       GivePlayerMoney(playerid, -1500); 
    return 1;
Reply
#9

Quote:
Originally Posted by Dayrion
Посмотреть сообщение
If you have 257 PV, you can heal with your command.
Yeah!
Код:
if(health >= 100.0)
Reply
#10

Quote:
Originally Posted by F1N4L
Посмотреть сообщение
Yeah!
Код:
if(health >= 100.0)
This will change nothing.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)