Advertisement
Guest User

GeekyCompz HEALTH-DONOR Plugin

a guest
Sep 7th, 2013
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.03 KB | None | 0 0
  1. package uk.co.geekycompz.HealthDonor;
  2.  
  3. import org.bukkit.Bukkit;
  4. import org.bukkit.command.Command;
  5. import org.bukkit.command.CommandExecutor;
  6. import org.bukkit.command.CommandSender;
  7. import org.bukkit.entity.Player;
  8.  
  9. public class CmdExecutor implements CommandExecutor{
  10.  
  11.     HealthDonor plugin;
  12.     public CmdExecutor (HealthDonor plugin){
  13.         this.plugin = plugin;
  14.     }
  15.    
  16.     @Override
  17.     public boolean onCommand(CommandSender sender, Command cmd, String string, String[] args) {
  18.         if(sender instanceof Player == false){
  19.             sender.sendMessage("§4[§cHealthDonor§4] §7You must be in-game to execute this command.");
  20.             return false;
  21.         }
  22.        
  23.         Player senderplayer = (Player) sender;
  24.        
  25.         int ItemID = plugin.getConfig().getInt("ItemID");
  26.         @SuppressWarnings("deprecation")
  27.         int ItemIDinHand = senderplayer.getItemInHand().getTypeId();
  28.         int maxHealth = plugin.getConfig().getInt("MaxDonation");
  29.        
  30.         double senderHealth = senderplayer.getHealth();
  31.        
  32.         if(args.length != 2){
  33.             sender.sendMessage("§4[§cHealthDonor§4] §8§lUsage: §7/healthdonor <1-19 half hearts> <player>");
  34.             return false;
  35.         }
  36.        
  37.         if(args.length==2){
  38.             if(plugin.getConfig().getBoolean("RequireItem") == true){
  39.                 if(ItemIDinHand != ItemID){
  40.                     sender.sendMessage("§4[§cHealthDonor§4] §7You need the item, '" + ItemID + "' to donate.");
  41.                     return false;
  42.                 }
  43.             }
  44.             if(Bukkit.getServer().getPlayer(args[1]) == null){
  45.                 sender.sendMessage("§4[§cHealthDonor§4] §7The player '" + args[1]+ "' is currently offline.");
  46.                 return false;
  47.             }else{
  48.                
  49.             if(Bukkit.getServer().getPlayer(args[1]) == sender){
  50.                 sender.sendMessage("§4[§cHealthDonor§4] §7You cannot donate to yourself.");
  51.                 return false;
  52.             }
  53.            
  54.             int health = Integer.parseInt(args[0]);
  55.             Player targetplayer = (Player) Bukkit.getServer().getPlayer(args[1]);
  56.             double targetHealth = targetplayer.getHealth();
  57.            
  58.             if(health >= maxHealth || health >= 19){
  59.                 sender.sendMessage("§4[§cHealthDonor§4] §7You can not donate that much health.");
  60.                 return false;
  61.             }
  62.            
  63.             if(health >= senderHealth || health == senderHealth){
  64.                 sender.sendMessage("§4[§cHealthDonor§4] §7You do not have that much health.");
  65.                 return false;
  66.             }
  67.              if(targetHealth + health >= 20){
  68.                 sender.sendMessage("§4[§cHealthDonor§4] §7The player '" + targetplayer.getName() + "' cannot obtain that much health. §2(Health = " + targetHealth + "/20.0).");
  69.                 return false;
  70.             }else{
  71.                 senderplayer.setHealth(senderHealth - health);
  72.                 targetplayer.setHealth(targetHealth + health);
  73.                
  74.                 sender.sendMessage("§4[§cHealthDonor§4] §aYou donated '" + health + "' half hearts to '" + targetplayer.getName() + "'!");
  75.                 targetplayer.sendMessage("§4[§cHealthDonor§4] §aYou recieved '" + health + "' half hearts from '" + sender.getName() + "'!");
  76.                
  77.                 if(plugin.getConfig().getBoolean("RemoveItem") == true){
  78.                     senderplayer.getItemInHand().setAmount(0); 
  79.                 }else{
  80.                     return true;
  81.                 }
  82.             }
  83.                 return true;
  84.             }
  85.         }
  86.         return true;
  87.     }
  88. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement