Merged
This commit is contained in:
		
							
								
								
									
										289
									
								
								src/me/travja/hungerarena/BlockStorage.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										289
									
								
								src/me/travja/hungerarena/BlockStorage.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,289 @@
 | 
			
		||||
package me.Travja.HungerArena;
 | 
			
		||||
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
import org.bukkit.Location;
 | 
			
		||||
import org.bukkit.Material;
 | 
			
		||||
import org.bukkit.block.Block;
 | 
			
		||||
import org.bukkit.block.BlockFace;
 | 
			
		||||
import org.bukkit.event.EventHandler;
 | 
			
		||||
import org.bukkit.event.Listener;
 | 
			
		||||
import org.bukkit.event.block.BlockBreakEvent;
 | 
			
		||||
import org.bukkit.event.block.BlockBurnEvent;
 | 
			
		||||
import org.bukkit.event.block.BlockFadeEvent;
 | 
			
		||||
import org.bukkit.event.block.BlockFormEvent;
 | 
			
		||||
import org.bukkit.event.block.BlockGrowEvent;
 | 
			
		||||
import org.bukkit.event.block.BlockPhysicsEvent;
 | 
			
		||||
import org.bukkit.event.block.BlockPistonExtendEvent;
 | 
			
		||||
import org.bukkit.event.block.BlockPlaceEvent;
 | 
			
		||||
import org.bukkit.event.block.LeavesDecayEvent;
 | 
			
		||||
import org.bukkit.event.entity.EntityExplodeEvent;
 | 
			
		||||
import org.bukkit.event.player.PlayerBucketEmptyEvent;
 | 
			
		||||
import org.bukkit.event.player.PlayerBucketFillEvent;
 | 
			
		||||
 | 
			
		||||
public class BlockStorage implements Listener {
 | 
			
		||||
	public Main plugin;
 | 
			
		||||
	public BlockStorage(Main m) {
 | 
			
		||||
		this.plugin = m;
 | 
			
		||||
	}
 | 
			
		||||
	/*@EventHandler
 | 
			
		||||
	public void creeperExplosion(EntityExplodeEvent event){
 | 
			
		||||
		if(plugin.canjoin== true){
 | 
			
		||||
			for(Block b:event.blockList()){
 | 
			
		||||
				String w = b.getWorld().getName();
 | 
			
		||||
				int x = b.getX();
 | 
			
		||||
				int y = b.getY();
 | 
			
		||||
				int z = b.getZ();
 | 
			
		||||
				int d = b.getTypeId();
 | 
			
		||||
				String coords = w + "," + x + "," + y + "," + z + "," + d;
 | 
			
		||||
				System.out.println("Explode: " + coords);
 | 
			
		||||
				List<String> blocks = plugin.config.getStringList("Blocks_Destroyed");
 | 
			
		||||
				blocks.add(coords);
 | 
			
		||||
				plugin.config.set("Blocks_Destroyed", blocks);
 | 
			
		||||
				plugin.saveConfig();
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void burningBlocks(BlockBurnEvent event){
 | 
			
		||||
		if(plugin.canjoin== true){
 | 
			
		||||
			Block b = event.getBlock();
 | 
			
		||||
			String w = b.getWorld().getName();
 | 
			
		||||
			int x = b.getX();
 | 
			
		||||
			int y = b.getY();
 | 
			
		||||
			int z = b.getZ();
 | 
			
		||||
			int d = b.getTypeId();
 | 
			
		||||
			String coords = w + "," + x + "," + y + "," + z + "," + d;
 | 
			
		||||
			System.out.println("Burn: " + coords);
 | 
			
		||||
			List<String> blocks = plugin.config.getStringList("Blocks_Destroyed");
 | 
			
		||||
			blocks.add(coords);
 | 
			
		||||
			plugin.config.set("Blocks_Destroyed", blocks);
 | 
			
		||||
			plugin.saveConfig();
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void leafDecay(LeavesDecayEvent event){
 | 
			
		||||
		if(plugin.canjoin== true){
 | 
			
		||||
			Block b = event.getBlock();
 | 
			
		||||
			String w = b.getWorld().getName();
 | 
			
		||||
			int x = b.getX();
 | 
			
		||||
			int y = b.getY();
 | 
			
		||||
			int z = b.getZ();
 | 
			
		||||
			int d = b.getTypeId();
 | 
			
		||||
			String coords = w + "," + x + "," + y + "," + z + "," + d;
 | 
			
		||||
			System.out.println("Decay: " + coords);
 | 
			
		||||
			List<String> blocks = plugin.config.getStringList("Blocks_Destroyed");
 | 
			
		||||
			blocks.add(coords);
 | 
			
		||||
			plugin.config.set("Blocks_Destroyed", blocks);
 | 
			
		||||
			plugin.saveConfig();
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void blockPlace(BlockPlaceEvent event){
 | 
			
		||||
		if(plugin.canjoin== true){
 | 
			
		||||
			Block b = event.getBlock();
 | 
			
		||||
			String w = b.getWorld().getName();
 | 
			
		||||
			int x = b.getX();
 | 
			
		||||
			int y = b.getY();
 | 
			
		||||
			int z = b.getZ();
 | 
			
		||||
			int d = b.getTypeId();
 | 
			
		||||
			String coords = w + "," + x + "," + y + "," + z + "," + d;
 | 
			
		||||
			if(!(d== 51) && !(d==12){
 | 
			
		||||
				System.out.println("Place: " + coords);
 | 
			
		||||
				List<String> blocks = plugin.config.getStringList("Blocks_Placed");
 | 
			
		||||
				blocks.add(coords);
 | 
			
		||||
				plugin.config.set("Blocks_Placed", blocks);
 | 
			
		||||
				plugin.saveConfig();
 | 
			
		||||
			}
 | 
			
		||||
			Location location = b.getLocation();
 | 
			
		||||
			if (b.getType() == Material.SAND || b.getType() == Material.GRAVEL) {
 | 
			
		||||
				if (location.getBlock().getRelative(BlockFace.DOWN).getType() == Material.AIR) {
 | 
			
		||||
					int i = 0;
 | 
			
		||||
					for (i = location.getBlockY(); i > -1; i --) {
 | 
			
		||||
						location = new Location(location.getWorld(), location.getBlockX(), i,  location.getBlockZ());
 | 
			
		||||
						if (location.getBlock().getType() != Material.AIR && location.getBlock().getType() != Material.WATER && location.getBlock().getType() != Material.LAVA) {
 | 
			
		||||
							break;
 | 
			
		||||
						}
 | 
			
		||||
						event.getPlayer().sendMessage("Block will land at: " + location);
 | 
			
		||||
						System.out.println("Sand Place: " + coords);
 | 
			
		||||
						List<String> blocks = plugin.config.getStringList("Blocks_Destroyed");
 | 
			
		||||
						blocks.add(coords);
 | 
			
		||||
						plugin.config.set("Blocks_Destroyed", blocks);
 | 
			
		||||
						plugin.saveConfig();
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void bucketEmpty(PlayerBucketEmptyEvent event){
 | 
			
		||||
		if(plugin.canjoin== true){
 | 
			
		||||
			Block clicked = event.getBlockClicked();
 | 
			
		||||
			BlockFace face = event.getBlockFace();
 | 
			
		||||
			Block b = clicked.getRelative(face);
 | 
			
		||||
			String w = b.getWorld().getName();
 | 
			
		||||
			int x = b.getX();
 | 
			
		||||
			int y = b.getY();
 | 
			
		||||
			int z = b.getZ();
 | 
			
		||||
			int d = b.getTypeId();
 | 
			
		||||
			String coords = w + "," + x + "," + y + "," + z + "," + d;
 | 
			
		||||
			System.out.println("Bucket Empty: " + coords);
 | 
			
		||||
			List<String> blocks = plugin.config.getStringList("Blocks_Placed");
 | 
			
		||||
			blocks.add(coords);
 | 
			
		||||
			plugin.config.set("Blocks_Destroyed", blocks);
 | 
			
		||||
			plugin.saveConfig();
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void bucketFill(PlayerBucketFillEvent event){
 | 
			
		||||
		if(plugin.canjoin== true){
 | 
			
		||||
			Block b = event.getBlockClicked();
 | 
			
		||||
			String w = b.getWorld().getName();
 | 
			
		||||
			int x = b.getX();
 | 
			
		||||
			int y = b.getY();
 | 
			
		||||
			int z = b.getZ();
 | 
			
		||||
			int d = b.getTypeId();
 | 
			
		||||
			String coords = w + "," + x + "," + y + "," + z + "," + d;
 | 
			
		||||
			System.out.println("Bucket Fill: " + coords);
 | 
			
		||||
			List<String> blocks = plugin.config.getStringList("Blocks_Destroyed");
 | 
			
		||||
			blocks.add(coords);
 | 
			
		||||
			plugin.config.set("Blocks_Destroyed", blocks);
 | 
			
		||||
			plugin.saveConfig();
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void blockBreak(BlockBreakEvent event){
 | 
			
		||||
		if(plugin.canjoin== true){
 | 
			
		||||
			Block b = event.getBlock();
 | 
			
		||||
			String w = b.getWorld().getName();
 | 
			
		||||
			int x = b.getX();
 | 
			
		||||
			int y = b.getY();
 | 
			
		||||
			int z = b.getZ();
 | 
			
		||||
			int d = b.getTypeId();
 | 
			
		||||
			String coords = w + "," + x + "," + y + "," + z + "," + d;
 | 
			
		||||
			System.out.println("Break: " + coords);
 | 
			
		||||
			List<String> blocks = plugin.config.getStringList("Blocks_Destroyed");
 | 
			
		||||
			blocks.add(coords);
 | 
			
		||||
			plugin.config.set("Blocks_Destroyed", blocks);
 | 
			
		||||
			plugin.saveConfig();
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void blockMelt(BlockFadeEvent event){
 | 
			
		||||
		if(plugin.canjoin== true){
 | 
			
		||||
			Block b = event.getBlock();
 | 
			
		||||
			String w = b.getWorld().getName();
 | 
			
		||||
			int x = b.getX();
 | 
			
		||||
			int y = b.getY();
 | 
			
		||||
			int z = b.getZ();
 | 
			
		||||
			int d = b.getTypeId();
 | 
			
		||||
			String coords = w + "," + x + "," + y + "," + z + "," + d;
 | 
			
		||||
			System.out.println("Fade: " + coords);
 | 
			
		||||
			List<String> blocks = plugin.config.getStringList("Blocks_Destroyed");
 | 
			
		||||
			blocks.add(coords);
 | 
			
		||||
			plugin.config.set("Blocks_Destroyed", blocks);
 | 
			
		||||
			plugin.saveConfig();
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void blockGrow(BlockGrowEvent event){
 | 
			
		||||
		if(plugin.canjoin== true){
 | 
			
		||||
			Block b = event.getBlock();
 | 
			
		||||
			String w = b.getWorld().getName();
 | 
			
		||||
			int x = b.getX();
 | 
			
		||||
			int y = b.getY();
 | 
			
		||||
			int z = b.getZ();
 | 
			
		||||
			int d = b.getTypeId();
 | 
			
		||||
			String coords = w + "," + x + "," + y + "," + z + "," + d;
 | 
			
		||||
			System.out.println("Grow: " + coords);
 | 
			
		||||
			List<String> blocks = plugin.config.getStringList("Blocks_Placed");
 | 
			
		||||
			blocks.add(coords);
 | 
			
		||||
			plugin.config.set("Blocks_Destroyed", blocks);
 | 
			
		||||
			plugin.saveConfig();
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void blockForm(BlockFormEvent event){
 | 
			
		||||
		if(plugin.canjoin== true){
 | 
			
		||||
			Block b = event.getBlock();
 | 
			
		||||
			String w = b.getWorld().getName();
 | 
			
		||||
			int x = b.getX();
 | 
			
		||||
			int y = b.getY();
 | 
			
		||||
			int z = b.getZ();
 | 
			
		||||
			int d = b.getTypeId();
 | 
			
		||||
			String coords = w + "," + x + "," + y + "," + z + "," + d;
 | 
			
		||||
			System.out.println("Snowfall: " + coords);
 | 
			
		||||
			List<String> blocks = plugin.config.getStringList("Blocks_Placed");
 | 
			
		||||
			blocks.add(coords);
 | 
			
		||||
			plugin.config.set("Blocks_Destroyed", blocks);
 | 
			
		||||
			plugin.saveConfig();
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void pistonPush(BlockPistonExtendEvent event){
 | 
			
		||||
		if(plugin.canjoin== true){
 | 
			
		||||
			for(Block b:event.getBlocks()){
 | 
			
		||||
				String w = b.getWorld().getName();
 | 
			
		||||
				int x = b.getX();
 | 
			
		||||
				int y = b.getY();
 | 
			
		||||
				int z = b.getZ();
 | 
			
		||||
				int d = b.getTypeId();
 | 
			
		||||
				String coords = w + "," + x + "," + y + "," + z + "," + d;
 | 
			
		||||
				System.out.println("Piston: " + coords);
 | 
			
		||||
				List<String> blocks = plugin.config.getStringList("Blocks_Destroyed");
 | 
			
		||||
				blocks.add(coords);
 | 
			
		||||
				plugin.config.set("Blocks_Destroyed", blocks);
 | 
			
		||||
				plugin.saveConfig();
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void onChange(BlockPhysicsEvent event){
 | 
			
		||||
		Block block = event.getBlock();
 | 
			
		||||
		Material changed = event.getChangedType();
 | 
			
		||||
		if (block.getType() == Material.LAVA){
 | 
			
		||||
			if (changed == Material.LAVA){
 | 
			
		||||
				Block b = event.getBlock();
 | 
			
		||||
				String w = b.getWorld().getName();
 | 
			
		||||
				int x = b.getX();
 | 
			
		||||
				int y = b.getY();
 | 
			
		||||
				int z = b.getZ();
 | 
			
		||||
				int d = b.getTypeId();
 | 
			
		||||
				String coords = w + "," + x + "," + y + "," + z + "," + d;
 | 
			
		||||
				System.out.println("Lava Change: " + coords);
 | 
			
		||||
				List<String> blocks = plugin.config.getStringList("Blocks_Placed");
 | 
			
		||||
				blocks.add(coords);
 | 
			
		||||
				plugin.config.set("Blocks_Destroyed", blocks);
 | 
			
		||||
				plugin.saveConfig();
 | 
			
		||||
			}else if(changed == Material.WATER){
 | 
			
		||||
				Block b = event.getBlock();
 | 
			
		||||
				String w = b.getWorld().getName();
 | 
			
		||||
				int x = b.getX();
 | 
			
		||||
				int y = b.getY();
 | 
			
		||||
				int z = b.getZ();
 | 
			
		||||
				int d = b.getTypeId();
 | 
			
		||||
				String coords = w + "," + x + "," + y + "," + z + "," + d;
 | 
			
		||||
				System.out.println("Water Change: " + coords);
 | 
			
		||||
				List<String> blocks = plugin.config.getStringList("Blocks_Placed");
 | 
			
		||||
				blocks.add(coords);
 | 
			
		||||
				plugin.config.set("Blocks_Destroyed", blocks);
 | 
			
		||||
				plugin.saveConfig();
 | 
			
		||||
			}
 | 
			
		||||
		}else if (block.getType() == Material.SAND || block.getType() == Material.GRAVEL) {
 | 
			
		||||
			if (changed == Material.AIR) {
 | 
			
		||||
				Block b = event.getBlock();
 | 
			
		||||
				String w = b.getWorld().getName();
 | 
			
		||||
				int x = b.getX();
 | 
			
		||||
				int y = b.getY();
 | 
			
		||||
				int z = b.getZ();
 | 
			
		||||
				int d = b.getTypeId();
 | 
			
		||||
				String coords = w + "," + x + "," + y + "," + z + "," + d;
 | 
			
		||||
				System.out.println("Sand/Gravel Fall: " + coords);
 | 
			
		||||
				List<String> blocks = plugin.config.getStringList("Blocks_Placed");
 | 
			
		||||
				blocks.add(coords);
 | 
			
		||||
				plugin.config.set("Blocks_Destroyed", blocks);
 | 
			
		||||
				plugin.saveConfig();
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}*/
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										25
									
								
								src/me/travja/hungerarena/Blocks.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								src/me/travja/hungerarena/Blocks.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,25 @@
 | 
			
		||||
package me.Travja.HungerArena;
 | 
			
		||||
 | 
			
		||||
import org.bukkit.ChatColor;
 | 
			
		||||
import org.bukkit.entity.Player;
 | 
			
		||||
import org.bukkit.event.EventHandler;
 | 
			
		||||
import org.bukkit.event.Listener;
 | 
			
		||||
import org.bukkit.event.block.BlockBreakEvent;
 | 
			
		||||
 | 
			
		||||
public class Blocks implements Listener {
 | 
			
		||||
	public Main plugin;
 | 
			
		||||
	public Blocks(Main m) {
 | 
			
		||||
		this.plugin = m;
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void BreakBlock(BlockBreakEvent event){
 | 
			
		||||
		Player p = event.getPlayer();
 | 
			
		||||
		String pname = p.getDisplayName();
 | 
			
		||||
		if(plugin.Playing.contains(pname)){
 | 
			
		||||
			if(plugin.config.getString("Protected_Arena").equalsIgnoreCase("True")){
 | 
			
		||||
				event.setCancelled(true);
 | 
			
		||||
				p.sendMessage(ChatColor.RED + "You can't break blocks when you're playing!");
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										51
									
								
								src/me/travja/hungerarena/ChatListener.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										51
									
								
								src/me/travja/hungerarena/ChatListener.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,51 @@
 | 
			
		||||
package me.Travja.HungerArena;
 | 
			
		||||
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
import org.bukkit.ChatColor;
 | 
			
		||||
import org.bukkit.entity.Entity;
 | 
			
		||||
import org.bukkit.entity.Player;
 | 
			
		||||
import org.bukkit.event.EventHandler;
 | 
			
		||||
import org.bukkit.event.Listener;
 | 
			
		||||
import org.bukkit.event.player.PlayerChatEvent;
 | 
			
		||||
 | 
			
		||||
public class ChatListener implements Listener {
 | 
			
		||||
	public Main plugin;
 | 
			
		||||
	public ChatListener(Main m) {
 | 
			
		||||
		this.plugin = m;
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void TributeChat(PlayerChatEvent event){
 | 
			
		||||
		Player p = event.getPlayer();
 | 
			
		||||
		String pname = p.getName();
 | 
			
		||||
		if(plugin.Playing.contains(pname)){
 | 
			
		||||
			String msg = "<" + ChatColor.RED + "[Tribute] " + ChatColor.WHITE + p.getName() + ">" + " " + event.getMessage();
 | 
			
		||||
			if(plugin.config.getString("ChatClose").equalsIgnoreCase("True")){
 | 
			
		||||
				double radius = plugin.config.getDouble("ChatClose_Radius");
 | 
			
		||||
				List<Entity> near = p.getNearbyEntities(radius, radius, radius);
 | 
			
		||||
				event.setCancelled(true);
 | 
			
		||||
				if(!(near.size()== 0)){
 | 
			
		||||
					p.sendMessage(msg);
 | 
			
		||||
					for(Entity e:near){
 | 
			
		||||
						if(e instanceof Player){
 | 
			
		||||
							((Player) e).sendMessage(msg);
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}else if(near.size()== 0){
 | 
			
		||||
					p.sendMessage(msg);
 | 
			
		||||
					p.sendMessage(ChatColor.YELLOW + "No one near!");
 | 
			
		||||
				}else if(!(near.size()== 0)){
 | 
			
		||||
					for(Entity en:near){
 | 
			
		||||
						if(!(en instanceof Player)){
 | 
			
		||||
							p.sendMessage(msg);
 | 
			
		||||
							p.sendMessage(ChatColor.YELLOW + "No one near!");
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
			}else{
 | 
			
		||||
				event.setCancelled(true);
 | 
			
		||||
				plugin.getServer().broadcastMessage(msg);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										84
									
								
								src/me/travja/hungerarena/Chests.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										84
									
								
								src/me/travja/hungerarena/Chests.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,84 @@
 | 
			
		||||
package me.Travja.HungerArena;
 | 
			
		||||
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
import org.bukkit.ChatColor;
 | 
			
		||||
import org.bukkit.Location;
 | 
			
		||||
import org.bukkit.Material;
 | 
			
		||||
import org.bukkit.block.Block;
 | 
			
		||||
import org.bukkit.block.Chest;
 | 
			
		||||
import org.bukkit.entity.Player;
 | 
			
		||||
import org.bukkit.event.EventHandler;
 | 
			
		||||
import org.bukkit.event.Listener;
 | 
			
		||||
import org.bukkit.event.block.Action;
 | 
			
		||||
import org.bukkit.event.block.BlockBreakEvent;
 | 
			
		||||
import org.bukkit.event.player.PlayerInteractEvent;
 | 
			
		||||
import org.bukkit.inventory.ItemStack;
 | 
			
		||||
 | 
			
		||||
public class Chests implements Listener {
 | 
			
		||||
	public Main plugin;
 | 
			
		||||
	public Chests(Main m) {
 | 
			
		||||
		this.plugin = m;
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void ChestSaves(PlayerInteractEvent event){
 | 
			
		||||
		Block block = event.getClickedBlock();
 | 
			
		||||
		Player p = event.getPlayer();
 | 
			
		||||
		if(p.getItemInHand().getType()== Material.BLAZE_ROD && event.getAction() == Action.LEFT_CLICK_BLOCK){
 | 
			
		||||
			if(block.getState() instanceof Chest){
 | 
			
		||||
				if(p.hasPermission("HungerArena.Chest.Store")){
 | 
			
		||||
					ItemStack[] itemsinchest = ((Chest) block.getState()).getInventory().getContents();
 | 
			
		||||
					int blockx = block.getX();
 | 
			
		||||
					int blocky = block.getY();
 | 
			
		||||
					int blockz = block.getZ();
 | 
			
		||||
					String blockw = block.getWorld().getName().toString();
 | 
			
		||||
					if(!plugin.getConfig().contains("Storage." + blockx + "," + blocky + "," + blockz + ".Location.X")){
 | 
			
		||||
						plugin.getConfig().addDefault("Storage." + blockx + "," + blocky + "," + blockz + ".Location.X", blockx);
 | 
			
		||||
						plugin.getConfig().addDefault("Storage." + blockx + "," + blocky + "," + blockz + ".Location.Y", blocky);
 | 
			
		||||
						plugin.getConfig().addDefault("Storage." + blockx + "," + blocky + "," + blockz + ".Location.Z",blockz);
 | 
			
		||||
						plugin.getConfig().addDefault("Storage." + blockx + "," + blocky + "," + blockz + ".Location.W", blockw);
 | 
			
		||||
						plugin.getConfig().addDefault("Storage." + blockx + "," + blocky + "," + blockz + ".ItemsInStorage", itemsinchest);
 | 
			
		||||
					}else{
 | 
			
		||||
						plugin.getConfig().set("Storage." + blockx + "," + blocky+ "," + blockz + ".Location.X",blockx);
 | 
			
		||||
						plugin.getConfig().set("Storage." + blockx + "," + blocky + "," + blockz + ".Location.Y", blocky);
 | 
			
		||||
						plugin.getConfig().set("Storage." + blockx + "," + blocky + "," + blockz + ".Location.Z", blockz);
 | 
			
		||||
						plugin.getConfig().set("Storage." + blockx + "," + blocky + "," + blockz + ".Location.W", blockw);
 | 
			
		||||
						plugin.getConfig().set("Storage." + blockx + "," + blocky + "," + blockz + ".ItemsInStorage", itemsinchest);
 | 
			
		||||
					}
 | 
			
		||||
					List<String> list2 = plugin.getConfig().getStringList("StorageXYZ");
 | 
			
		||||
					list2.add(blockx + "," + blocky + "," + blockz);
 | 
			
		||||
					plugin.getConfig().set("StorageXYZ", list2);
 | 
			
		||||
					plugin.getConfig().options().copyDefaults(true);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage(ChatColor.GREEN + "Chest Stored!");
 | 
			
		||||
				}else{
 | 
			
		||||
					p.sendMessage(ChatColor.RED + "You don't have permission to store chests!");
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void onBlockBreak(BlockBreakEvent event) {
 | 
			
		||||
		Player p = event.getPlayer();
 | 
			
		||||
		Block block = event.getBlock();
 | 
			
		||||
		Location blocklocation = event.getBlock().getLocation();
 | 
			
		||||
		if (block.getState() instanceof Chest && !plugin.Playing.contains(p.getDisplayName())) {
 | 
			
		||||
			int blockx = blocklocation.getBlockX();
 | 
			
		||||
			int blocky = blocklocation.getBlockY();
 | 
			
		||||
			int blockz = blocklocation.getBlockZ();
 | 
			
		||||
			if (plugin.getConfig().getStringList("StorageXYZ").contains(blockx + "," + blocky + "," + blockz)) {
 | 
			
		||||
				if(p.hasPermission("HungerArena.Chest.Break")){
 | 
			
		||||
					List<String> list2 = plugin.getConfig().getStringList("StorageXYZ");
 | 
			
		||||
					list2.remove(blockx + "," + blocky + "," + blockz);
 | 
			
		||||
					plugin.getConfig().set("StorageXYZ", list2);
 | 
			
		||||
					plugin.getConfig().options().copyDefaults(true);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage("Chest Removed!");
 | 
			
		||||
				} else {
 | 
			
		||||
                                    event.setCancelled(true);
 | 
			
		||||
                                    p.sendMessage(ChatColor.RED + "[HungerArena] That's a storage chest! You don't have permission to break it!");
 | 
			
		||||
                                }
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										27
									
								
								src/me/travja/hungerarena/CommandBlock.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								src/me/travja/hungerarena/CommandBlock.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,27 @@
 | 
			
		||||
package me.Travja.HungerArena;
 | 
			
		||||
 | 
			
		||||
import org.bukkit.ChatColor;
 | 
			
		||||
import org.bukkit.entity.Player;
 | 
			
		||||
import org.bukkit.event.EventHandler;
 | 
			
		||||
import org.bukkit.event.EventPriority;
 | 
			
		||||
import org.bukkit.event.Listener;
 | 
			
		||||
import org.bukkit.event.player.PlayerCommandPreprocessEvent;
 | 
			
		||||
 | 
			
		||||
public class CommandBlock implements Listener {
 | 
			
		||||
	public Main plugin;
 | 
			
		||||
	public CommandBlock(Main m) {
 | 
			
		||||
		this.plugin = m;
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler(priority = EventPriority.HIGHEST)
 | 
			
		||||
	public void CatchCommand(PlayerCommandPreprocessEvent event){
 | 
			
		||||
		String cmd = event.getMessage();
 | 
			
		||||
		Player p = event.getPlayer();
 | 
			
		||||
		String pname = p.getName();
 | 
			
		||||
		if(!cmd.contains("/ha") && plugin.Playing.contains(pname) && plugin.canjoin== true){
 | 
			
		||||
			if(!p.hasPermission("HungerArena.UseCommands")){
 | 
			
		||||
				event.setCancelled(true);
 | 
			
		||||
				p.sendMessage(ChatColor.RED + "You are only allowed to use /ha commands!");
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										167
									
								
								src/me/travja/hungerarena/DeathListener.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										167
									
								
								src/me/travja/hungerarena/DeathListener.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,167 @@
 | 
			
		||||
package me.Travja.HungerArena;
 | 
			
		||||
 | 
			
		||||
import org.bukkit.*;
 | 
			
		||||
import org.bukkit.configuration.file.FileConfiguration;
 | 
			
		||||
import org.bukkit.entity.Player;
 | 
			
		||||
import org.bukkit.event.EventHandler;
 | 
			
		||||
import org.bukkit.event.Listener;
 | 
			
		||||
import org.bukkit.event.entity.PlayerDeathEvent;
 | 
			
		||||
import org.bukkit.event.player.PlayerRespawnEvent;
 | 
			
		||||
 | 
			
		||||
public class DeathListener implements Listener{
 | 
			
		||||
	public Main plugin;
 | 
			
		||||
	public DeathListener(Main m){
 | 
			
		||||
		this.plugin = m;
 | 
			
		||||
	}
 | 
			
		||||
	public FileConfiguration config;
 | 
			
		||||
	int i = 0;
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void onPlayerRespawn(PlayerRespawnEvent event){
 | 
			
		||||
		Player p = event.getPlayer();
 | 
			
		||||
		String pname = p.getName();
 | 
			
		||||
		if(plugin.Dead.contains(pname)){
 | 
			
		||||
			String[] Spawncoords = plugin.config.getString("Spawn_coords").split(",");
 | 
			
		||||
			World spawnw = plugin.getServer().getWorld(Spawncoords[3]);
 | 
			
		||||
			double spawnx = Double.parseDouble(Spawncoords[0]);
 | 
			
		||||
			double spawny = Double.parseDouble(Spawncoords[1]);
 | 
			
		||||
			double spawnz = Double.parseDouble(Spawncoords[2]);
 | 
			
		||||
			Location Spawn = new Location(spawnw, spawnx, spawny, spawnz);
 | 
			
		||||
			event.setRespawnLocation(Spawn);
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler
 | 
			
		||||
    @SuppressWarnings("SizeReplaceableByIsEmpty")
 | 
			
		||||
	public void onPlayerDeath(PlayerDeathEvent event){
 | 
			
		||||
		Player p = event.getEntity();
 | 
			
		||||
		Server s = p.getServer();
 | 
			
		||||
		String pname = p.getName();
 | 
			
		||||
		String[] Spawncoords = plugin.config.getString("Spawn_coords").split(",");
 | 
			
		||||
		World spawnw = plugin.getServer().getWorld(Spawncoords[3]);
 | 
			
		||||
		double spawnx = Double.parseDouble(Spawncoords[0]);
 | 
			
		||||
		double spawny = Double.parseDouble(Spawncoords[1]);
 | 
			
		||||
		double spawnz = Double.parseDouble(Spawncoords[2]);
 | 
			
		||||
		Location Spawn = new Location(spawnw, spawnx, spawny, spawnz);
 | 
			
		||||
		if(plugin.Playing.contains(pname)){
 | 
			
		||||
			if(plugin.config.getString("Cannon_Death").equalsIgnoreCase("True")){
 | 
			
		||||
				double y = p.getLocation().getY();
 | 
			
		||||
				double newy = y+200;
 | 
			
		||||
				double x = p.getLocation().getX();
 | 
			
		||||
				double z = p.getLocation().getZ();
 | 
			
		||||
				Location strike = new Location(p.getWorld(), x, newy, z);
 | 
			
		||||
				p.getWorld().strikeLightning(strike);
 | 
			
		||||
			}
 | 
			
		||||
			plugin.Dead.add(pname);
 | 
			
		||||
			plugin.Playing.remove(pname);
 | 
			
		||||
			String leftmsg = ChatColor.BLUE + "There are now " + plugin.Playing.size() + " tributes left!";
 | 
			
		||||
			if(p.getKiller() instanceof Player){
 | 
			
		||||
				if(p.getKiller().getItemInHand().getType().getId()== 0){
 | 
			
		||||
					Player killer = p.getKiller();
 | 
			
		||||
					String killername = killer.getName();
 | 
			
		||||
					event.setDeathMessage("");
 | 
			
		||||
					s.broadcastMessage(ChatColor.LIGHT_PURPLE + "**BOOM** Tribute " + pname + " was killed by tribute " + killername + " with their FIST!");
 | 
			
		||||
					s.broadcastMessage(leftmsg);
 | 
			
		||||
					if(plugin.Playing.size()== 1 && plugin.canjoin== true){
 | 
			
		||||
						//Announce winner
 | 
			
		||||
						String winnername = plugin.Playing.get(i++);
 | 
			
		||||
						Player winner = plugin.getServer().getPlayerExact(winnername);
 | 
			
		||||
						String winnername2 = winner.getName();
 | 
			
		||||
						plugin.getServer().broadcastMessage(ChatColor.GREEN + winnername2 + " is the victor of this Hunger Games!");
 | 
			
		||||
						winner.getInventory().clear();
 | 
			
		||||
						winner.teleport(Spawn);
 | 
			
		||||
						winner.getInventory().setBoots(null);
 | 
			
		||||
						winner.getInventory().setChestplate(null);
 | 
			
		||||
						winner.getInventory().setHelmet(null);
 | 
			
		||||
						winner.getInventory().setLeggings(null);
 | 
			
		||||
						winner.getInventory().addItem(plugin.Reward);
 | 
			
		||||
						plugin.Playing.clear();
 | 
			
		||||
						//Show spectators
 | 
			
		||||
						if(!plugin.Watching.isEmpty()){
 | 
			
		||||
							String s1 = plugin.Watching.get(i++);
 | 
			
		||||
							Player spectator = plugin.getServer().getPlayerExact(s1);
 | 
			
		||||
							spectator.setAllowFlight(false);
 | 
			
		||||
							spectator.teleport(Spawn);
 | 
			
		||||
							for(Player online:plugin.getServer().getOnlinePlayers()){
 | 
			
		||||
								online.showPlayer(spectator);
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
						if(plugin.config.getString("Auto_Restart").equalsIgnoreCase("True")){
 | 
			
		||||
							Bukkit.getServer().dispatchCommand(Bukkit.getConsoleSender(), "ha restart");
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}else{
 | 
			
		||||
					Player killer = p.getKiller();
 | 
			
		||||
					String killername = killer.getName();
 | 
			
		||||
					Material weapon = killer.getItemInHand().getType();
 | 
			
		||||
					String msg = ChatColor.LIGHT_PURPLE + "**BOOM** Tribute " + pname + " was killed by tribute " + killername + " with a(n) " + weapon;
 | 
			
		||||
					event.setDeathMessage("");
 | 
			
		||||
					s.broadcastMessage(msg);
 | 
			
		||||
					s.broadcastMessage(leftmsg);
 | 
			
		||||
					if(plugin.Playing.size()== 1 && plugin.canjoin== true){
 | 
			
		||||
						//Announce winner
 | 
			
		||||
						String winnername = plugin.Playing.get(i++);
 | 
			
		||||
						Player winner = plugin.getServer().getPlayerExact(winnername);
 | 
			
		||||
						String winnername2 = winner.getName();
 | 
			
		||||
						plugin.getServer().broadcastMessage(ChatColor.GREEN + winnername2 + " is the victor of this Hunger Games!");
 | 
			
		||||
						winner.getInventory().clear();
 | 
			
		||||
						winner.teleport(Spawn);
 | 
			
		||||
						winner.getInventory().setBoots(null);
 | 
			
		||||
						winner.getInventory().setChestplate(null);
 | 
			
		||||
						winner.getInventory().setHelmet(null);
 | 
			
		||||
						winner.getInventory().setLeggings(null);
 | 
			
		||||
						winner.getInventory().addItem(plugin.Reward);
 | 
			
		||||
						plugin.Playing.clear();
 | 
			
		||||
						//Show spectators
 | 
			
		||||
						if(plugin.Watching.size() != 0){
 | 
			
		||||
							String s1 = plugin.Watching.get(i++);
 | 
			
		||||
							Player spectator = plugin.getServer().getPlayerExact(s1);
 | 
			
		||||
							spectator.setAllowFlight(false);
 | 
			
		||||
							spectator.teleport(Spawn);
 | 
			
		||||
							for(Player online:plugin.getServer().getOnlinePlayers()){
 | 
			
		||||
								online.showPlayer(spectator);
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
						if(plugin.config.getString("Auto_Restart").equalsIgnoreCase("True")){
 | 
			
		||||
							Bukkit.getServer().dispatchCommand(Bukkit.getConsoleSender(), "ha restart");
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
			}else{
 | 
			
		||||
				event.setDeathMessage("");
 | 
			
		||||
				s.broadcastMessage(ChatColor.LIGHT_PURPLE + pname + " died of natural causes!");
 | 
			
		||||
				s.broadcastMessage(leftmsg);
 | 
			
		||||
				if(plugin.Playing.size()== 1 && plugin.canjoin== true){
 | 
			
		||||
					//Announce winner
 | 
			
		||||
					String winnername = plugin.Playing.get(i++);
 | 
			
		||||
					Player winner = plugin.getServer().getPlayerExact(winnername);
 | 
			
		||||
					String winnername2 = winner.getName();
 | 
			
		||||
					plugin.getServer().broadcastMessage(ChatColor.GREEN + winnername2 + " is the victor of this Hunger Games!");
 | 
			
		||||
					winner.getInventory().clear();
 | 
			
		||||
					winner.teleport(Spawn);
 | 
			
		||||
					winner.getInventory().setBoots(null);
 | 
			
		||||
					winner.getInventory().setChestplate(null);
 | 
			
		||||
					winner.getInventory().setHelmet(null);
 | 
			
		||||
					winner.getInventory().setLeggings(null);
 | 
			
		||||
					winner.getInventory().addItem(plugin.Reward);
 | 
			
		||||
                                        // Create the event here
 | 
			
		||||
                                        PlayerWinGamesEvent winevent = new PlayerWinGamesEvent(winner);
 | 
			
		||||
                                        // Call the event
 | 
			
		||||
                                        Bukkit.getServer().getPluginManager().callEvent(winevent);
 | 
			
		||||
					plugin.Playing.clear();
 | 
			
		||||
					//Show spectators
 | 
			
		||||
					if(!plugin.Watching.isEmpty()){
 | 
			
		||||
						String s1 = plugin.Watching.get(i++);
 | 
			
		||||
						Player spectator = plugin.getServer().getPlayerExact(s1);
 | 
			
		||||
						spectator.setAllowFlight(false);
 | 
			
		||||
						spectator.teleport(Spawn);
 | 
			
		||||
						for(Player online:plugin.getServer().getOnlinePlayers()){
 | 
			
		||||
							online.showPlayer(spectator);
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
					if(plugin.config.getString("Auto_Restart").equalsIgnoreCase("True")){
 | 
			
		||||
						Bukkit.getServer().dispatchCommand(Bukkit.getConsoleSender(), "ha restart");
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										32
									
								
								src/me/travja/hungerarena/DmgListener.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								src/me/travja/hungerarena/DmgListener.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,32 @@
 | 
			
		||||
package me.travja.hungerarena;
 | 
			
		||||
 | 
			
		||||
import org.bukkit.entity.Entity;
 | 
			
		||||
import org.bukkit.entity.Player;
 | 
			
		||||
import org.bukkit.event.EventHandler;
 | 
			
		||||
import org.bukkit.event.Listener;
 | 
			
		||||
import org.bukkit.event.entity.EntityDamageEvent;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *
 | 
			
		||||
 * @author YoshiGenius
 | 
			
		||||
 */
 | 
			
		||||
public class DmgListener implements Listener {
 | 
			
		||||
    
 | 
			
		||||
    public Main plugin;
 | 
			
		||||
    public DmgListener(Main m) {
 | 
			
		||||
        this.plugin = m;
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    @EventHandler
 | 
			
		||||
    public void onDmg(EntityDamageEvent evt) {
 | 
			
		||||
        Entity e = evt.getEntity();
 | 
			
		||||
        if (e instanceof Player) {
 | 
			
		||||
            Player p = (Player) e;
 | 
			
		||||
            String pn = p.getName();
 | 
			
		||||
            if (plugin.Frozen.contains(pn)) {
 | 
			
		||||
                evt.setCancelled(true);
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										24
									
								
								src/me/travja/hungerarena/FreezeListener.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								src/me/travja/hungerarena/FreezeListener.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,24 @@
 | 
			
		||||
package me.Travja.HungerArena;
 | 
			
		||||
 | 
			
		||||
import org.bukkit.Location;
 | 
			
		||||
import org.bukkit.entity.Player;
 | 
			
		||||
import org.bukkit.event.EventHandler;
 | 
			
		||||
import org.bukkit.event.Listener;
 | 
			
		||||
import org.bukkit.event.player.PlayerMoveEvent;
 | 
			
		||||
import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause;
 | 
			
		||||
 | 
			
		||||
public class FreezeListener implements Listener {
 | 
			
		||||
	public Main plugin;
 | 
			
		||||
	public FreezeListener(Main m) {
 | 
			
		||||
		this.plugin = m;
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void onPlayerMove(PlayerMoveEvent event){
 | 
			
		||||
		Player p = event.getPlayer();
 | 
			
		||||
		String pname = p.getName();
 | 
			
		||||
		if(plugin.Frozen.contains(pname) && plugin.config.getString("Frozen_Teleport").equalsIgnoreCase("True")){
 | 
			
		||||
                        Location from = event.getFrom();
 | 
			
		||||
                        p.teleport(from, TeleportCause.ENDER_PEARL);
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										1402
									
								
								src/me/travja/hungerarena/HaCommands.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1402
									
								
								src/me/travja/hungerarena/HaCommands.java
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										137
									
								
								src/me/travja/hungerarena/JoinAndQuitListener.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										137
									
								
								src/me/travja/hungerarena/JoinAndQuitListener.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,137 @@
 | 
			
		||||
package me.Travja.HungerArena;
 | 
			
		||||
 | 
			
		||||
import org.bukkit.Bukkit;
 | 
			
		||||
import org.bukkit.ChatColor;
 | 
			
		||||
import org.bukkit.Location;
 | 
			
		||||
import org.bukkit.World;
 | 
			
		||||
import org.bukkit.entity.Player;
 | 
			
		||||
import org.bukkit.event.EventHandler;
 | 
			
		||||
import org.bukkit.event.Listener;
 | 
			
		||||
import org.bukkit.event.player.PlayerJoinEvent;
 | 
			
		||||
import org.bukkit.event.player.PlayerQuitEvent;
 | 
			
		||||
 | 
			
		||||
public class JoinAndQuitListener implements Listener {
 | 
			
		||||
	public Main plugin;
 | 
			
		||||
	public JoinAndQuitListener(Main m) {
 | 
			
		||||
                this.plugin = m;
 | 
			
		||||
	}
 | 
			
		||||
	int i = 0;
 | 
			
		||||
        
 | 
			
		||||
        @EventHandler
 | 
			
		||||
        public void onJoin(PlayerJoinEvent evt) {
 | 
			
		||||
            Player p = evt.getPlayer();
 | 
			
		||||
            for (String s : plugin.Watching) {
 | 
			
		||||
                Player spectator = Bukkit.getServer().getPlayerExact(s);
 | 
			
		||||
                p.hidePlayer(spectator);
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void onPlayerJoin(PlayerJoinEvent event){
 | 
			
		||||
		final Player p = event.getPlayer();
 | 
			
		||||
		String pname = p.getName();
 | 
			
		||||
		if(!plugin.Watching.isEmpty()){
 | 
			
		||||
			String s = plugin.Watching.get(i++);
 | 
			
		||||
			Player spectator = plugin.getServer().getPlayerExact(s);
 | 
			
		||||
			p.hidePlayer(spectator);
 | 
			
		||||
		}
 | 
			
		||||
		if(plugin.Out.contains(pname)){
 | 
			
		||||
			plugin.Playing.add(pname);
 | 
			
		||||
			plugin.getServer().getScheduler().scheduleSyncDelayedTask(plugin, new Runnable(){
 | 
			
		||||
				public void run(){
 | 
			
		||||
					p.sendMessage(ChatColor.AQUA + "You have saved yourself from being ejected from the arena!");
 | 
			
		||||
				}
 | 
			
		||||
			}, 40L);
 | 
			
		||||
			plugin.Out.remove(pname);
 | 
			
		||||
		}
 | 
			
		||||
		if(plugin.Quit.contains(pname) || plugin.Dead.contains(pname)){
 | 
			
		||||
			String[] Spawncoords = plugin.config.getString("Spawn_coords").split(",");
 | 
			
		||||
			String w = Spawncoords[3];
 | 
			
		||||
			World spawnw = plugin.getServer().getWorld(w);
 | 
			
		||||
			double spawnx = Double.parseDouble(Spawncoords[0]);
 | 
			
		||||
			double spawny = Double.parseDouble(Spawncoords[1]);
 | 
			
		||||
			double spawnz = Double.parseDouble(Spawncoords[2]);
 | 
			
		||||
			final Location Spawn = new Location(spawnw, spawnx, spawny, spawnz);
 | 
			
		||||
			plugin.getServer().getScheduler().scheduleSyncDelayedTask(plugin, new Runnable(){
 | 
			
		||||
				public void run(){
 | 
			
		||||
					p.teleport(Spawn);
 | 
			
		||||
					p.sendMessage(ChatColor.RED + "You have been teleported to spawn because you quit/forfeited!");
 | 
			
		||||
				}
 | 
			
		||||
			}, 40L);
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
        
 | 
			
		||||
        @EventHandler
 | 
			
		||||
        public void onQuit(PlayerQuitEvent evt) {
 | 
			
		||||
            Player p = evt.getPlayer();
 | 
			
		||||
            String pname = p.getName();
 | 
			
		||||
            if (plugin.Frozen.contains(pname)) {
 | 
			
		||||
                plugin.Frozen.remove(pname);
 | 
			
		||||
                String[] Spawncoords = plugin.config.getString("Spawn_coords").split(",");
 | 
			
		||||
		String w = Spawncoords[3];
 | 
			
		||||
		World spawnw = plugin.getServer().getWorld(w);
 | 
			
		||||
		double spawnx = Double.parseDouble(Spawncoords[0]);
 | 
			
		||||
		double spawny = Double.parseDouble(Spawncoords[1]);
 | 
			
		||||
		double spawnz = Double.parseDouble(Spawncoords[2]);
 | 
			
		||||
		Location Spawn = new Location(spawnw, spawnx, spawny, spawnz);
 | 
			
		||||
                p.teleport(Spawn);
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void onPlayerQuit(PlayerQuitEvent event){
 | 
			
		||||
		final Player p = event.getPlayer();
 | 
			
		||||
		final String pname = p.getName();
 | 
			
		||||
		String[] Spawncoords = plugin.config.getString("Spawn_coords").split(",");
 | 
			
		||||
		String w = Spawncoords[3];
 | 
			
		||||
		World spawnw = plugin.getServer().getWorld(w);
 | 
			
		||||
		double spawnx = Double.parseDouble(Spawncoords[0]);
 | 
			
		||||
		double spawny = Double.parseDouble(Spawncoords[1]);
 | 
			
		||||
		double spawnz = Double.parseDouble(Spawncoords[2]);
 | 
			
		||||
		final Location Spawn = new Location(spawnw, spawnx, spawny, spawnz);
 | 
			
		||||
		if(plugin.Playing.contains(pname)){
 | 
			
		||||
			plugin.Out.add(pname);
 | 
			
		||||
			plugin.Playing.remove(pname);
 | 
			
		||||
		}
 | 
			
		||||
		plugin.getServer().getScheduler().scheduleSyncDelayedTask(plugin, new Runnable(){
 | 
			
		||||
			public void run(){
 | 
			
		||||
				if(plugin.Out.contains(pname)){
 | 
			
		||||
					if(plugin.canjoin== true){
 | 
			
		||||
						plugin.Quit.add(pname);
 | 
			
		||||
						plugin.Out.remove(pname);
 | 
			
		||||
						if(plugin.Playing.size()== 1){
 | 
			
		||||
							//Announce Winner
 | 
			
		||||
							String winnername = plugin.Playing.get(i++);
 | 
			
		||||
							Player winner = plugin.getServer().getPlayerExact(winnername);
 | 
			
		||||
							String winnername2 = winner.getName();
 | 
			
		||||
							p.getServer().broadcastMessage(ChatColor.GREEN + winnername2 + " is the victor of this Hunger Games!");
 | 
			
		||||
							winner.getInventory().clear();
 | 
			
		||||
							winner.getInventory().setBoots(null);
 | 
			
		||||
							winner.getInventory().setChestplate(null);
 | 
			
		||||
							winner.getInventory().setHelmet(null);
 | 
			
		||||
							winner.getInventory().setLeggings(null);
 | 
			
		||||
							winner.getInventory().addItem(plugin.Reward);
 | 
			
		||||
                                                        PlayerWinGamesEvent evt = new PlayerWinGamesEvent(winner);
 | 
			
		||||
                                                        Bukkit.getServer().getPluginManager().callEvent(evt);
 | 
			
		||||
							//Make spectators visible
 | 
			
		||||
							if(!plugin.Watching.isEmpty()){
 | 
			
		||||
								String s = plugin.Watching.get(i++);
 | 
			
		||||
								Player spectator = plugin.getServer().getPlayerExact(s);
 | 
			
		||||
								spectator.setAllowFlight(false);
 | 
			
		||||
								spectator.teleport(Spawn);
 | 
			
		||||
								for(Player online:plugin.getServer().getOnlinePlayers()){
 | 
			
		||||
									online.showPlayer(spectator);
 | 
			
		||||
								}
 | 
			
		||||
							}
 | 
			
		||||
							if(plugin.config.getString("Auto_Restart").equalsIgnoreCase("True")){
 | 
			
		||||
								Bukkit.getServer().dispatchCommand(Bukkit.getConsoleSender(), "ha restart");
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}else{
 | 
			
		||||
					plugin.Quit.add(pname);
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}, 1200L);
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										109
									
								
								src/me/travja/hungerarena/Main.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										109
									
								
								src/me/travja/hungerarena/Main.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,109 @@
 | 
			
		||||
package me.Travja.HungerArena;
 | 
			
		||||
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
import java.util.HashSet;
 | 
			
		||||
import java.util.logging.Logger;
 | 
			
		||||
import net.milkbowl.vault.economy.Economy;
 | 
			
		||||
import org.bukkit.ChatColor;
 | 
			
		||||
import org.bukkit.command.CommandExecutor;
 | 
			
		||||
import org.bukkit.configuration.file.FileConfiguration;
 | 
			
		||||
import org.bukkit.event.Listener;
 | 
			
		||||
import org.bukkit.inventory.ItemStack;
 | 
			
		||||
import org.bukkit.plugin.RegisteredServiceProvider;
 | 
			
		||||
import org.bukkit.plugin.java.JavaPlugin;
 | 
			
		||||
 | 
			
		||||
public class Main extends JavaPlugin{
 | 
			
		||||
	static final Logger log = Logger.getLogger("Minecraft");
 | 
			
		||||
	public ArrayList<String> Playing = new ArrayList<String>();
 | 
			
		||||
	public ArrayList<String> Ready = new ArrayList<String>();
 | 
			
		||||
	public ArrayList<String> Dead = new ArrayList<String>();
 | 
			
		||||
	public ArrayList<String> Quit = new ArrayList<String>();
 | 
			
		||||
	public ArrayList<String> Out = new ArrayList<String>();
 | 
			
		||||
	public ArrayList<String> Watching = new ArrayList<String>();
 | 
			
		||||
	public ArrayList<String> NeedConfirm = new ArrayList<String>();
 | 
			
		||||
	public HashSet<String> Frozen = new HashSet<String>();
 | 
			
		||||
	public Listener DeathListener = new DeathListener(this);
 | 
			
		||||
	public Listener SpectatorListener = new SpectatorListener(this);
 | 
			
		||||
	public Listener FreezeListener = new FreezeListener(this);
 | 
			
		||||
	public Listener JoinAndQuitListener = new JoinAndQuitListener(this);
 | 
			
		||||
	public Listener ChatListener = new ChatListener(this);
 | 
			
		||||
	public Listener Chests = new Chests(this);
 | 
			
		||||
	public Listener PvP = new PvP(this);
 | 
			
		||||
	public Listener Blocks = new Blocks(this);
 | 
			
		||||
	public Listener CommandBlock = new CommandBlock(this);
 | 
			
		||||
	public Listener Damage = new DmgListener(this);
 | 
			
		||||
	public Listener Teleport = new TeleportListener(this);
 | 
			
		||||
	public Listener Signs = new Signs(this);
 | 
			
		||||
	public Listener BlockStorage = new BlockStorage(this);
 | 
			
		||||
	public Listener WinGames = new WinGamesListener(this);
 | 
			
		||||
	public CommandExecutor HaCommands = new HaCommands(this);
 | 
			
		||||
	public CommandExecutor SponsorCommands = new SponsorCommands(this);
 | 
			
		||||
	public CommandExecutor SpawnsCommand = new SpawnsCommand(this);
 | 
			
		||||
	public boolean canjoin;
 | 
			
		||||
	public boolean exists;
 | 
			
		||||
	public FileConfiguration config = getConfig();
 | 
			
		||||
	public ItemStack Reward;
 | 
			
		||||
	public ItemStack Cost;
 | 
			
		||||
	public boolean vault = false;
 | 
			
		||||
	public Economy econ = null;
 | 
			
		||||
	public void onEnable(){
 | 
			
		||||
		log.info("[HungerArena] enabled v" + getDescription().getVersion());
 | 
			
		||||
		config.options().copyDefaults(true);
 | 
			
		||||
		this.saveDefaultConfig();
 | 
			
		||||
		getServer().getPluginManager().registerEvents(DeathListener, this);
 | 
			
		||||
		getServer().getPluginManager().registerEvents(SpectatorListener, this);
 | 
			
		||||
		getServer().getPluginManager().registerEvents(FreezeListener, this);
 | 
			
		||||
		getServer().getPluginManager().registerEvents(JoinAndQuitListener, this);
 | 
			
		||||
		getServer().getPluginManager().registerEvents(ChatListener, this);
 | 
			
		||||
		getServer().getPluginManager().registerEvents(Chests, this);
 | 
			
		||||
		getServer().getPluginManager().registerEvents(PvP, this);
 | 
			
		||||
		getServer().getPluginManager().registerEvents(Blocks, this);
 | 
			
		||||
		getServer().getPluginManager().registerEvents(CommandBlock, this);
 | 
			
		||||
		getServer().getPluginManager().registerEvents(Signs, this);
 | 
			
		||||
		getServer().getPluginManager().registerEvents(BlockStorage, this);
 | 
			
		||||
		getServer().getPluginManager().registerEvents(WinGames, this);
 | 
			
		||||
		getServer().getPluginManager().registerEvents(Damage, this);
 | 
			
		||||
		getCommand("Ha").setExecutor(HaCommands);
 | 
			
		||||
		getCommand("Sponsor").setExecutor(SponsorCommands);
 | 
			
		||||
		getCommand("Startpoint").setExecutor(SpawnsCommand);
 | 
			
		||||
		if (setupEconomy()) {
 | 
			
		||||
			log.info(ChatColor.AQUA + "[HungerArena] Found Vault! Hooking in for economy!");
 | 
			
		||||
		}
 | 
			
		||||
		if (config.getDouble("config.version") != 1.3) {
 | 
			
		||||
			config.set("config.version", 1.3);
 | 
			
		||||
			config.set("eco.enabled", false);
 | 
			
		||||
			config.set("eco.reward", 100);
 | 
			
		||||
		}
 | 
			
		||||
		if (config.getBoolean("eco.enabled", true)) {
 | 
			
		||||
			if (vault == true) {
 | 
			
		||||
				log.info(ChatColor.AQUA + "Economy hook deployed.");
 | 
			
		||||
			} else {
 | 
			
		||||
				log.info(ChatColor.RED + "You want economy support... yet you don't have Vault. Sorry, can't give you it.");
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		if (config.getBoolean("eco.enabled", false)) {
 | 
			
		||||
			if (vault == true) {
 | 
			
		||||
				log.info(ChatColor.GREEN + "We see that you have Vault on your server. To set economy support to true, enable it in the config.");
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		Reward = new ItemStack(config.getInt("Reward.ID"), config.getInt("Reward.Amount"));
 | 
			
		||||
		Cost = new ItemStack(config.getInt("Sponsor_Cost.ID"), config.getInt("Sponsor_Cost.Amount"));
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	public void onDisable(){
 | 
			
		||||
		log.info("[HungerArena] disabled v" + getDescription().getVersion());
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	public boolean setupEconomy() {
 | 
			
		||||
		if (getServer().getPluginManager().getPlugin("Vault") == null) {
 | 
			
		||||
			return false;
 | 
			
		||||
		}
 | 
			
		||||
		RegisteredServiceProvider<Economy> rsp = getServer().getServicesManager().getRegistration(Economy.class);
 | 
			
		||||
		if (rsp == null) {
 | 
			
		||||
			return false;
 | 
			
		||||
		}
 | 
			
		||||
		econ = rsp.getProvider();
 | 
			
		||||
		vault = true;
 | 
			
		||||
		return econ != null;
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										27
									
								
								src/me/travja/hungerarena/PlayerWinGamesEvent.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								src/me/travja/hungerarena/PlayerWinGamesEvent.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,27 @@
 | 
			
		||||
package me.travja.hungerarena;
 | 
			
		||||
 | 
			
		||||
import org.bukkit.entity.Player;
 | 
			
		||||
import org.bukkit.event.HandlerList;
 | 
			
		||||
import org.bukkit.event.player.PlayerEvent;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *
 | 
			
		||||
 * @author YoshiGenius
 | 
			
		||||
 */
 | 
			
		||||
public class PlayerWinGamesEvent extends PlayerEvent {
 | 
			
		||||
    
 | 
			
		||||
    private static final HandlerList handlers = new HandlerList();
 | 
			
		||||
    
 | 
			
		||||
    public PlayerWinGamesEvent(final Player p) {
 | 
			
		||||
        super(p);
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    public HandlerList getHandlers() {
 | 
			
		||||
        return handlers;
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    public static HandlerList getHandlerList() {
 | 
			
		||||
        return handlers;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										24
									
								
								src/me/travja/hungerarena/PvP.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								src/me/travja/hungerarena/PvP.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,24 @@
 | 
			
		||||
package me.travja.hungerarena;
 | 
			
		||||
 | 
			
		||||
import org.bukkit.entity.Entity;
 | 
			
		||||
import org.bukkit.entity.Player;
 | 
			
		||||
import org.bukkit.event.EventHandler;
 | 
			
		||||
import org.bukkit.event.Listener;
 | 
			
		||||
import org.bukkit.event.entity.EntityDamageByEntityEvent;
 | 
			
		||||
 | 
			
		||||
public class PvP implements Listener {
 | 
			
		||||
	public Main plugin;
 | 
			
		||||
	public PvP(Main m) {
 | 
			
		||||
		this.plugin = m;
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void PlayerPvP(EntityDamageByEntityEvent event){
 | 
			
		||||
		Entity p = event.getEntity();
 | 
			
		||||
		if(p instanceof Player){
 | 
			
		||||
			String pname = ((Player) p).getName();
 | 
			
		||||
			if(plugin.Playing.contains(pname) && plugin.canjoin== false){
 | 
			
		||||
				event.setCancelled(true);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										52
									
								
								src/me/travja/hungerarena/Signs.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										52
									
								
								src/me/travja/hungerarena/Signs.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,52 @@
 | 
			
		||||
package me.travja.hungerarena;
 | 
			
		||||
 | 
			
		||||
import org.bukkit.ChatColor;
 | 
			
		||||
import org.bukkit.Material;
 | 
			
		||||
import org.bukkit.block.Block;
 | 
			
		||||
import org.bukkit.entity.Player;
 | 
			
		||||
import org.bukkit.event.EventHandler;
 | 
			
		||||
import org.bukkit.event.Listener;
 | 
			
		||||
import org.bukkit.event.block.Action;
 | 
			
		||||
import org.bukkit.event.block.SignChangeEvent;
 | 
			
		||||
import org.bukkit.event.player.PlayerInteractEvent;
 | 
			
		||||
 | 
			
		||||
public class Signs implements Listener {
 | 
			
		||||
	public Main plugin;
 | 
			
		||||
	public Signs(Main m) {
 | 
			
		||||
		this.plugin = m;
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void Sign(PlayerInteractEvent event){
 | 
			
		||||
		Player p = event.getPlayer();
 | 
			
		||||
		Block b = event.getClickedBlock();
 | 
			
		||||
                if (b == null) {
 | 
			
		||||
                    return;
 | 
			
		||||
                }
 | 
			
		||||
		if(event.getAction()== Action.RIGHT_CLICK_BLOCK){
 | 
			
		||||
			if(b.getType()== Material.SIGN || b.getType()==Material.SIGN_POST || b.getType()==Material.WALL_SIGN){
 | 
			
		||||
				org.bukkit.block.Sign sign = (org.bukkit.block.Sign) b.getState();
 | 
			
		||||
				String line1 = sign.getLine(0);
 | 
			
		||||
                                String line2 = sign.getLine(1);
 | 
			
		||||
                                String line3 = sign.getLine(2);
 | 
			
		||||
                                String line4 = sign.getLine(3);
 | 
			
		||||
				if(line1.equalsIgnoreCase(ChatColor.BLUE + "[HungerArena]") || line1.equalsIgnoreCase(ChatColor.BLUE + "[HA]")){
 | 
			
		||||
					if(line2.equals("")){
 | 
			
		||||
						p.performCommand("ha");
 | 
			
		||||
					}else{
 | 
			
		||||
						p.performCommand("ha " + line2);
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
				if(line1.equalsIgnoreCase(ChatColor.BLUE + "[Sponsor]")){
 | 
			
		||||
					p.performCommand("sponsor " + line2 + " " + line3 + " " + line4);
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void Create(SignChangeEvent event){
 | 
			
		||||
		String top = event.getLine(0);
 | 
			
		||||
		if(top.equalsIgnoreCase("[HungerArena]") || top.equalsIgnoreCase("[HA]") || top.equalsIgnoreCase("[Sponsor]")){
 | 
			
		||||
			event.setLine(0, ChatColor.BLUE + top);
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										243
									
								
								src/me/travja/hungerarena/SpawnsCommand.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										243
									
								
								src/me/travja/hungerarena/SpawnsCommand.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,243 @@
 | 
			
		||||
package me.travja.hungerarena;
 | 
			
		||||
 | 
			
		||||
import org.bukkit.ChatColor;
 | 
			
		||||
import org.bukkit.command.Command;
 | 
			
		||||
import org.bukkit.command.CommandExecutor;
 | 
			
		||||
import org.bukkit.command.CommandSender;
 | 
			
		||||
import org.bukkit.entity.Player;
 | 
			
		||||
 | 
			
		||||
public class SpawnsCommand implements CommandExecutor {
 | 
			
		||||
	public Main plugin;
 | 
			
		||||
	public SpawnsCommand(Main m) {
 | 
			
		||||
		this.plugin = m;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@Override
 | 
			
		||||
	public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) {
 | 
			
		||||
		Player p = (Player) sender;
 | 
			
		||||
		if(cmd.getName().equalsIgnoreCase("StartPoint")){
 | 
			
		||||
			if(p.hasPermission("HungerArena.StartPoint")){	
 | 
			
		||||
				if(args[0].equalsIgnoreCase("1")){
 | 
			
		||||
					double x = p.getLocation().getX();
 | 
			
		||||
					double y = p.getLocation().getY();
 | 
			
		||||
					double z = p.getLocation().getZ();
 | 
			
		||||
					String w = p.getWorld().getName();
 | 
			
		||||
					plugin.config.set("Tribute_one_spawn", x + "," + y + "," + z + "," + w);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage(ChatColor.AQUA + "You have set the spawn location of Tribute one!");
 | 
			
		||||
				}
 | 
			
		||||
				if(args[0].equalsIgnoreCase("2")){
 | 
			
		||||
					double x = p.getLocation().getX();
 | 
			
		||||
					double y = p.getLocation().getY();
 | 
			
		||||
					double z = p.getLocation().getZ();
 | 
			
		||||
					String w = p.getWorld().getName();
 | 
			
		||||
					plugin.config.set("Tribute_two_spawn", x + "," + y + "," + z + "," + w);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage(ChatColor.AQUA + "You have set the spawn location of Tribute two!");
 | 
			
		||||
				}
 | 
			
		||||
				if(args[0].equalsIgnoreCase("3")){
 | 
			
		||||
					double x = p.getLocation().getX();
 | 
			
		||||
					double y = p.getLocation().getY();
 | 
			
		||||
					double z = p.getLocation().getZ();
 | 
			
		||||
					String w = p.getWorld().getName();
 | 
			
		||||
					plugin.config.set("Tribute_three_spawn", x + "," + y + "," + z + "," + w);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage(ChatColor.AQUA + "You have set the spawn location of Tribute three!");
 | 
			
		||||
				}
 | 
			
		||||
				if(args[0].equalsIgnoreCase("4")){
 | 
			
		||||
					double x = p.getLocation().getX();
 | 
			
		||||
					double y = p.getLocation().getY();
 | 
			
		||||
					double z = p.getLocation().getZ();
 | 
			
		||||
					String w = p.getWorld().getName();
 | 
			
		||||
					plugin.config.set("Tribute_four_spawn", x + "," + y + "," + z + "," + w);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage(ChatColor.AQUA + "You have set the spawn location of Tribute four!");
 | 
			
		||||
				}
 | 
			
		||||
				if(args[0].equalsIgnoreCase("5")){
 | 
			
		||||
					double x = p.getLocation().getX();
 | 
			
		||||
					double y = p.getLocation().getY();
 | 
			
		||||
					double z = p.getLocation().getZ();
 | 
			
		||||
					String w = p.getWorld().getName();
 | 
			
		||||
					plugin.config.set("Tribute_five_spawn", x + "," + y + "," + z + "," + w);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage(ChatColor.AQUA + "You have set the spawn location of Tribute five!");
 | 
			
		||||
				}
 | 
			
		||||
				if(args[0].equalsIgnoreCase("6")){
 | 
			
		||||
					double x = p.getLocation().getX();
 | 
			
		||||
					double y = p.getLocation().getY();
 | 
			
		||||
					double z = p.getLocation().getZ();
 | 
			
		||||
					String w = p.getWorld().getName();
 | 
			
		||||
					plugin.config.set("Tribute_six_spawn", x + "," + y + "," + z + "," + w);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage(ChatColor.AQUA + "You have set the spawn location of Tribute six!");
 | 
			
		||||
				}
 | 
			
		||||
				if(args[0].equalsIgnoreCase("7")){
 | 
			
		||||
					double x = p.getLocation().getX();
 | 
			
		||||
					double y = p.getLocation().getY();
 | 
			
		||||
					double z = p.getLocation().getZ();
 | 
			
		||||
					String w = p.getWorld().getName();
 | 
			
		||||
					plugin.config.set("Tribute_seven_spawn", x + "," + y + "," + z + "," + w);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage(ChatColor.AQUA + "You have set the spawn location of Tribute seven!");
 | 
			
		||||
				}
 | 
			
		||||
				if(args[0].equalsIgnoreCase("8")){
 | 
			
		||||
					double x = p.getLocation().getX();
 | 
			
		||||
					double y = p.getLocation().getY();
 | 
			
		||||
					double z = p.getLocation().getZ();
 | 
			
		||||
					String w = p.getWorld().getName();
 | 
			
		||||
					plugin.config.set("Tribute_eight_spawn", x + "," + y + "," + z + "," + w);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage(ChatColor.AQUA + "You have set the spawn location of Tribute eight!");
 | 
			
		||||
				}
 | 
			
		||||
				if(args[0].equalsIgnoreCase("9")){
 | 
			
		||||
					double x = p.getLocation().getX();
 | 
			
		||||
					double y = p.getLocation().getY();
 | 
			
		||||
					double z = p.getLocation().getZ();
 | 
			
		||||
					String w = p.getWorld().getName();
 | 
			
		||||
					plugin.config.set("Tribute_nine_spawn", x + "," + y + "," + z + "," + w);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage(ChatColor.AQUA + "You have set the spawn location of Tribute nine!");
 | 
			
		||||
				}
 | 
			
		||||
				if(args[0].equalsIgnoreCase("10")){
 | 
			
		||||
					double x = p.getLocation().getX();
 | 
			
		||||
					double y = p.getLocation().getY();
 | 
			
		||||
					double z = p.getLocation().getZ();
 | 
			
		||||
					String w = p.getWorld().getName();
 | 
			
		||||
					plugin.config.set("Tribute_ten_spawn", x + "," + y + "," + z + "," + w);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage(ChatColor.AQUA + "You have set the spawn location of Tribute ten!");
 | 
			
		||||
				}
 | 
			
		||||
				if(args[0].equalsIgnoreCase("11")){
 | 
			
		||||
					double x = p.getLocation().getX();
 | 
			
		||||
					double y = p.getLocation().getY();
 | 
			
		||||
					double z = p.getLocation().getZ();
 | 
			
		||||
					String w = p.getWorld().getName();
 | 
			
		||||
					plugin.config.set("Tribute_eleven_spawn", x + "," + y + "," + z + "," + w);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage(ChatColor.AQUA + "You have set the spawn location of Tribute eleven!");
 | 
			
		||||
				}
 | 
			
		||||
				if(args[0].equalsIgnoreCase("12")){
 | 
			
		||||
					double x = p.getLocation().getX();
 | 
			
		||||
					double y = p.getLocation().getY();
 | 
			
		||||
					double z = p.getLocation().getZ();
 | 
			
		||||
					String w = p.getWorld().getName();
 | 
			
		||||
					plugin.config.set("Tribute_twelve_spawn", x + "," + y + "," + z + "," + w);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage(ChatColor.AQUA + "You have set the spawn location of Tribute twelve!");
 | 
			
		||||
				}
 | 
			
		||||
				if(args[0].equalsIgnoreCase("13")){
 | 
			
		||||
					double x = p.getLocation().getX();
 | 
			
		||||
					double y = p.getLocation().getY();
 | 
			
		||||
					double z = p.getLocation().getZ();
 | 
			
		||||
					String w = p.getWorld().getName();
 | 
			
		||||
					plugin.config.set("Tribute_thirteen_spawn", x + "," + y + "," + z + "," + w);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage(ChatColor.AQUA + "You have set the spawn location of Tribute thirteen!");
 | 
			
		||||
				}
 | 
			
		||||
				if(args[0].equalsIgnoreCase("14")){
 | 
			
		||||
					double x = p.getLocation().getX();
 | 
			
		||||
					double y = p.getLocation().getY();
 | 
			
		||||
					double z = p.getLocation().getZ();
 | 
			
		||||
					String w = p.getWorld().getName();
 | 
			
		||||
					plugin.config.set("Tribute_fourteen_spawn", x + "," + y + "," + z + "," + w);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage(ChatColor.AQUA + "You have set the spawn location of Tribute fourteen!");
 | 
			
		||||
				}
 | 
			
		||||
				if(args[0].equalsIgnoreCase("15")){
 | 
			
		||||
					double x = p.getLocation().getX();
 | 
			
		||||
					double y = p.getLocation().getY();
 | 
			
		||||
					double z = p.getLocation().getZ();
 | 
			
		||||
					String w = p.getWorld().getName();
 | 
			
		||||
					plugin.config.set("Tribute_fifteen_spawn", x + "," + y + "," + z + "," + w);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage(ChatColor.AQUA + "You have set the spawn location of Tribute fifteen!");
 | 
			
		||||
				}
 | 
			
		||||
				if(args[0].equalsIgnoreCase("16")){
 | 
			
		||||
					double x = p.getLocation().getX();
 | 
			
		||||
					double y = p.getLocation().getY();
 | 
			
		||||
					double z = p.getLocation().getZ();
 | 
			
		||||
					String w = p.getWorld().getName();
 | 
			
		||||
					plugin.config.set("Tribute_sixteen_spawn", x + "," + y + "," + z + "," + w);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage(ChatColor.AQUA + "You have set the spawn location of Tribute sixteen!");
 | 
			
		||||
				}
 | 
			
		||||
				if(args[0].equalsIgnoreCase("17")){
 | 
			
		||||
					double x = p.getLocation().getX();
 | 
			
		||||
					double y = p.getLocation().getY();
 | 
			
		||||
					double z = p.getLocation().getZ();
 | 
			
		||||
					String w = p.getWorld().getName();
 | 
			
		||||
					plugin.config.set("Tribute_seventeen_spawn", x + "," + y + "," + z + "," + w);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage(ChatColor.AQUA + "You have set the spawn location of Tribute seventeen!");
 | 
			
		||||
				}
 | 
			
		||||
				if(args[0].equalsIgnoreCase("18")){
 | 
			
		||||
					double x = p.getLocation().getX();
 | 
			
		||||
					double y = p.getLocation().getY();
 | 
			
		||||
					double z = p.getLocation().getZ();
 | 
			
		||||
					String w = p.getWorld().getName();
 | 
			
		||||
					plugin.config.set("Tribute_eighteen_spawn", x + "," + y + "," + z + "," + w);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage(ChatColor.AQUA + "You have set the spawn location of Tribute eighteen!");
 | 
			
		||||
				}
 | 
			
		||||
				if(args[0].equalsIgnoreCase("19")){
 | 
			
		||||
					double x = p.getLocation().getX();
 | 
			
		||||
					double y = p.getLocation().getY();
 | 
			
		||||
					double z = p.getLocation().getZ();
 | 
			
		||||
					String w = p.getWorld().getName();
 | 
			
		||||
					plugin.config.set("Tribute_nineteen_spawn", x + "," + y + "," + z + "," + w);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage(ChatColor.AQUA + "You have set the spawn location of Tribute nineteen!");
 | 
			
		||||
				}
 | 
			
		||||
				if(args[0].equalsIgnoreCase("20")){
 | 
			
		||||
					double x = p.getLocation().getX();
 | 
			
		||||
					double y = p.getLocation().getY();
 | 
			
		||||
					double z = p.getLocation().getZ();
 | 
			
		||||
					String w = p.getWorld().getName();
 | 
			
		||||
					plugin.config.set("Tribute_twenty_spawn", x + "," + y + "," + z + "," + w);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage(ChatColor.AQUA + "You have set the spawn location of Tribute twenty!");
 | 
			
		||||
				}
 | 
			
		||||
				if(args[0].equalsIgnoreCase("21")){
 | 
			
		||||
					double x = p.getLocation().getX();
 | 
			
		||||
					double y = p.getLocation().getY();
 | 
			
		||||
					double z = p.getLocation().getZ();
 | 
			
		||||
					String w = p.getWorld().getName();
 | 
			
		||||
					plugin.config.set("Tribute_twentyone_spawn", x + "," + y + "," + z + "," + w);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage(ChatColor.AQUA + "You have set the spawn location of Tribute twentyone!");
 | 
			
		||||
				}
 | 
			
		||||
				if(args[0].equalsIgnoreCase("22")){
 | 
			
		||||
					double x = p.getLocation().getX();
 | 
			
		||||
					double y = p.getLocation().getY();
 | 
			
		||||
					double z = p.getLocation().getZ();
 | 
			
		||||
					String w = p.getWorld().getName();
 | 
			
		||||
					plugin.config.set("Tribute_twentytwo_spawn", x + "," + y + "," + z + "," + w);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage(ChatColor.AQUA + "You have set the spawn location of Tribute twentytwo!");
 | 
			
		||||
				}
 | 
			
		||||
				if(args[0].equalsIgnoreCase("23")){
 | 
			
		||||
					double x = p.getLocation().getX();
 | 
			
		||||
					double y = p.getLocation().getY();
 | 
			
		||||
					double z = p.getLocation().getZ();
 | 
			
		||||
					String w = p.getWorld().getName();
 | 
			
		||||
					plugin.config.set("Tribute_twentythree_spawn", x + "," + y + "," + z + "," + w);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage(ChatColor.AQUA + "You have set the spawn location of Tribute twentythree!");
 | 
			
		||||
				}
 | 
			
		||||
				if(args[0].equalsIgnoreCase("24")){
 | 
			
		||||
					double x = p.getLocation().getX();
 | 
			
		||||
					double y = p.getLocation().getY();
 | 
			
		||||
					double z = p.getLocation().getZ();
 | 
			
		||||
					String w = p.getWorld().getName();
 | 
			
		||||
					plugin.config.set("Tribute_twentyfour_spawn", x + "," + y + "," + z + "," + w);
 | 
			
		||||
					plugin.saveConfig();
 | 
			
		||||
					p.sendMessage(ChatColor.AQUA + "You have set the spawn location of Tribute twentyfour!");
 | 
			
		||||
				}
 | 
			
		||||
			}else{
 | 
			
		||||
				p.sendMessage(ChatColor.RED + "You don't have permission!");
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		return false;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										132
									
								
								src/me/travja/hungerarena/SpectatorListener.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										132
									
								
								src/me/travja/hungerarena/SpectatorListener.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,132 @@
 | 
			
		||||
package me.travja.hungerarena;
 | 
			
		||||
 | 
			
		||||
import org.bukkit.ChatColor;
 | 
			
		||||
import org.bukkit.Location;
 | 
			
		||||
import org.bukkit.World;
 | 
			
		||||
import org.bukkit.entity.Entity;
 | 
			
		||||
import org.bukkit.entity.Player;
 | 
			
		||||
import org.bukkit.entity.Projectile;
 | 
			
		||||
import org.bukkit.event.EventHandler;
 | 
			
		||||
import org.bukkit.event.Listener;
 | 
			
		||||
import org.bukkit.event.block.BlockBreakEvent;
 | 
			
		||||
import org.bukkit.event.block.BlockPlaceEvent;
 | 
			
		||||
import org.bukkit.event.entity.EntityDamageByEntityEvent;
 | 
			
		||||
import org.bukkit.event.entity.EntityTargetEvent;
 | 
			
		||||
import org.bukkit.event.player.*;
 | 
			
		||||
 | 
			
		||||
public class SpectatorListener implements Listener {
 | 
			
		||||
	public Main plugin;
 | 
			
		||||
	public SpectatorListener(Main m){
 | 
			
		||||
		this.plugin = m;
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void SpectatorDrops(PlayerDropItemEvent event){
 | 
			
		||||
		Player p = event.getPlayer();
 | 
			
		||||
		String pname = p.getName();
 | 
			
		||||
		if(plugin.Watching.contains(pname)){
 | 
			
		||||
			event.setCancelled(true);
 | 
			
		||||
			p.sendMessage(ChatColor.RED + "You are spectating, you can't interfere with the game!");
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void SpectatorInteractBlock(PlayerInteractEvent event){
 | 
			
		||||
		Player p = event.getPlayer();
 | 
			
		||||
		String pname = p.getName();
 | 
			
		||||
		if(plugin.Watching.contains(pname)){
 | 
			
		||||
			event.setCancelled(true);
 | 
			
		||||
			p.sendMessage(ChatColor.RED + "You are spectating, you can't interfere with the game!");
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
        
 | 
			
		||||
        @EventHandler
 | 
			
		||||
	public void SpectatorInteractEntity(PlayerInteractEntityEvent event){
 | 
			
		||||
		Player p = event.getPlayer();
 | 
			
		||||
		String pname = p.getName();
 | 
			
		||||
		if(plugin.Watching.contains(pname)){
 | 
			
		||||
			event.setCancelled(true);
 | 
			
		||||
			p.sendMessage(ChatColor.RED + "You are spectating, you can't interfere with the game!");
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void SpectatorItems(PlayerPickupItemEvent event){
 | 
			
		||||
		Player p = event.getPlayer();
 | 
			
		||||
		String pname = p.getName();
 | 
			
		||||
		if(plugin.Watching.contains(pname)){
 | 
			
		||||
			event.setCancelled(true);
 | 
			
		||||
			p.sendMessage(ChatColor.RED + "You are spectating, you can't interfere with the game!");
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void SpectatorPvP(EntityDamageByEntityEvent event){
 | 
			
		||||
		Entity offense = event.getDamager();
 | 
			
		||||
		if(offense instanceof Player){
 | 
			
		||||
			Player Attacker = (Player) event.getDamager();
 | 
			
		||||
			String attackerName = Attacker.getName();
 | 
			
		||||
			if(plugin.Watching.contains(attackerName)){
 | 
			
		||||
				event.setCancelled(true);
 | 
			
		||||
				Attacker.sendMessage(ChatColor.RED + "You are spectating, you can't interfere with the game!");
 | 
			
		||||
			}
 | 
			
		||||
		}else if(event.getDamager() instanceof Projectile){
 | 
			
		||||
			Projectile arrow = (Projectile) offense;
 | 
			
		||||
			if(arrow.getShooter() instanceof Player){
 | 
			
		||||
				Player BowMan = (Player) arrow.getShooter();
 | 
			
		||||
				String bowManName = BowMan.getName();
 | 
			
		||||
				if(plugin.Watching.contains(bowManName)){
 | 
			
		||||
					event.setCancelled(true);
 | 
			
		||||
					BowMan.sendMessage(ChatColor.RED + "You are spectating, you can't interfere with the game!");
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void SpectatorBlockBreak(BlockBreakEvent event){
 | 
			
		||||
		Player p = event.getPlayer();
 | 
			
		||||
		String pname = p.getName();
 | 
			
		||||
		if(plugin.Watching.contains(pname)){
 | 
			
		||||
			event.setCancelled(true);
 | 
			
		||||
			p.sendMessage(ChatColor.RED + "You are spectating, you can't interfere with the game!");
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
        
 | 
			
		||||
        @EventHandler
 | 
			
		||||
	public void SpectatorBlockPlace(BlockPlaceEvent event){
 | 
			
		||||
		Player p = event.getPlayer();
 | 
			
		||||
		String pname = p.getName();
 | 
			
		||||
		if(plugin.Watching.contains(pname)){
 | 
			
		||||
			event.setCancelled(true);
 | 
			
		||||
			p.sendMessage(ChatColor.RED + "You are spectating, you can't interfere with the game!");
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
        
 | 
			
		||||
        @EventHandler
 | 
			
		||||
	public void SpectatorQuit(PlayerQuitEvent event){
 | 
			
		||||
		Player p = event.getPlayer();
 | 
			
		||||
		String pname = p.getName();
 | 
			
		||||
		if(plugin.Watching.contains(pname)){
 | 
			
		||||
                    plugin.Watching.remove(pname);
 | 
			
		||||
                    String[] Spawncoords = plugin.config.getString("Spawn_coords").split(",");
 | 
			
		||||
		    String w = Spawncoords[3];
 | 
			
		||||
		    World spawnw = plugin.getServer().getWorld(w);
 | 
			
		||||
		    double spawnx = Double.parseDouble(Spawncoords[0]);
 | 
			
		||||
		    double spawny = Double.parseDouble(Spawncoords[1]);
 | 
			
		||||
		    double spawnz = Double.parseDouble(Spawncoords[2]);
 | 
			
		||||
		    final Location Spawn = new Location(spawnw, spawnx, spawny, spawnz);
 | 
			
		||||
                    p.teleport(Spawn);
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
        
 | 
			
		||||
	@EventHandler
 | 
			
		||||
	public void MobNerf(EntityTargetEvent event){
 | 
			
		||||
		Entity target = event.getTarget();
 | 
			
		||||
                Entity e = event.getEntity();
 | 
			
		||||
                if (e instanceof Player) {
 | 
			
		||||
                    return;
 | 
			
		||||
                }
 | 
			
		||||
		if(target instanceof Player){
 | 
			
		||||
			String targetName = ((Player) target).getName();
 | 
			
		||||
			if(plugin.Watching.contains(targetName)){
 | 
			
		||||
			        event.setTarget(null);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										102
									
								
								src/me/travja/hungerarena/SponsorCommands.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										102
									
								
								src/me/travja/hungerarena/SponsorCommands.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,102 @@
 | 
			
		||||
package me.travja.hungerarena;
 | 
			
		||||
 | 
			
		||||
import org.bukkit.Bukkit;
 | 
			
		||||
import org.bukkit.ChatColor;
 | 
			
		||||
import org.bukkit.command.Command;
 | 
			
		||||
import org.bukkit.command.CommandExecutor;
 | 
			
		||||
import org.bukkit.command.CommandSender;
 | 
			
		||||
import org.bukkit.command.ConsoleCommandSender;
 | 
			
		||||
import org.bukkit.entity.Player;
 | 
			
		||||
import org.bukkit.inventory.ItemStack;
 | 
			
		||||
 | 
			
		||||
public class SponsorCommands implements CommandExecutor {
 | 
			
		||||
	public Main plugin;
 | 
			
		||||
	public SponsorCommands(Main m) {
 | 
			
		||||
		this.plugin = m;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@Override
 | 
			
		||||
	public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) {
 | 
			
		||||
		if(cmd.getName().equalsIgnoreCase("Sponsor")){
 | 
			
		||||
			if(sender instanceof Player){
 | 
			
		||||
				Player p = (Player) sender;
 | 
			
		||||
				String pname = p.getName();
 | 
			
		||||
				String epname = p.getName();
 | 
			
		||||
				if(p.hasPermission("HungerArena.Sponsor")){
 | 
			
		||||
					if(!plugin.Playing.contains(epname)){
 | 
			
		||||
						if(args.length== 0){
 | 
			
		||||
							p.sendMessage(ChatColor.RED + "You didn't specify a tribute!");
 | 
			
		||||
							return false;
 | 
			
		||||
						}
 | 
			
		||||
						if(args.length== 1){
 | 
			
		||||
							p.sendMessage(ChatColor.RED + "You didn't specify an item!");
 | 
			
		||||
						}
 | 
			
		||||
						if(args.length== 2){
 | 
			
		||||
							p.sendMessage(ChatColor.RED + "You didn't specify an amount!");
 | 
			
		||||
						}
 | 
			
		||||
						if(args.length== 3){
 | 
			
		||||
							Player target = Bukkit.getServer().getPlayer(args[0]);
 | 
			
		||||
							if(args[1].equalsIgnoreCase("57") || args[1].equalsIgnoreCase("7")){
 | 
			
		||||
								p.sendMessage(ChatColor.RED + "You can't sponsor that item!");
 | 
			
		||||
							}else{
 | 
			
		||||
								int ID = Integer.parseInt(args[1]);
 | 
			
		||||
								int Amount = Integer.parseInt(args[2]);
 | 
			
		||||
								ItemStack sponsoritem = new ItemStack(ID, Amount);
 | 
			
		||||
								if(p.getInventory().contains(plugin.config.getInt("Sponsor_Cost.ID"), plugin.config.getInt("Sponsor_Cost.Amount")*Amount)){
 | 
			
		||||
									if(!plugin.Playing.contains(target.getName())){
 | 
			
		||||
										p.sendMessage(ChatColor.RED + "That person isn't playing!");
 | 
			
		||||
									}else{
 | 
			
		||||
										if(args[0].equalsIgnoreCase(pname)){
 | 
			
		||||
											p.sendMessage(ChatColor.RED + "You can't sponsor yourself!");
 | 
			
		||||
										}else{
 | 
			
		||||
											target.sendMessage(ChatColor.AQUA + "You have been Sponsored!");
 | 
			
		||||
											target.getInventory().addItem(sponsoritem);
 | 
			
		||||
											p.sendMessage("You have sponsored " + target.getName() + "!");
 | 
			
		||||
											p.getInventory().removeItem(plugin.Cost);
 | 
			
		||||
										}
 | 
			
		||||
									}
 | 
			
		||||
								}else{
 | 
			
		||||
									p.sendMessage(ChatColor.RED + "You don't have the necessary items to sponsor!");
 | 
			
		||||
								}
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}else{
 | 
			
		||||
						p.sendMessage(ChatColor.RED + "You are playing, you can't sponsor yourself!");
 | 
			
		||||
					}
 | 
			
		||||
				}else{
 | 
			
		||||
					p.sendMessage(ChatColor.RED + "You don't have permission!");
 | 
			
		||||
				}
 | 
			
		||||
			}else if(sender instanceof ConsoleCommandSender){
 | 
			
		||||
				if(args.length== 0){
 | 
			
		||||
					sender.sendMessage(ChatColor.RED + "You didn't specify a tribute!");
 | 
			
		||||
					return false;
 | 
			
		||||
				}
 | 
			
		||||
				if(args.length== 1){
 | 
			
		||||
					sender.sendMessage(ChatColor.RED + "You didn't specify an item!");
 | 
			
		||||
				}
 | 
			
		||||
				if(args.length== 2){
 | 
			
		||||
					sender.sendMessage(ChatColor.RED + "You didn't specify an amount!");
 | 
			
		||||
				}
 | 
			
		||||
				if(args.length== 3){
 | 
			
		||||
					Player target = Bukkit.getPlayer(args[0]);
 | 
			
		||||
					if(args[1].equalsIgnoreCase("57") || args[1].equalsIgnoreCase("7")){
 | 
			
		||||
						sender.sendMessage(ChatColor.RED + "You can't sponsor that item!");
 | 
			
		||||
					}else{
 | 
			
		||||
						int ID = Integer.parseInt(args[1]);
 | 
			
		||||
						int Amount = Integer.parseInt(args[2]);
 | 
			
		||||
						ItemStack sponsoritem = new ItemStack(ID, Amount);
 | 
			
		||||
						if(!plugin.Playing.contains(target.getName())){
 | 
			
		||||
							sender.sendMessage(ChatColor.RED + "That person isn't playing!");
 | 
			
		||||
						}else{
 | 
			
		||||
							sender.sendMessage(ChatColor.RED + "You can't sponsor yourself!");
 | 
			
		||||
							target.sendMessage(ChatColor.AQUA + "You have been Sponsored!");
 | 
			
		||||
							target.getInventory().addItem(sponsoritem);
 | 
			
		||||
							sender.sendMessage("You have sponsored " + target.getName() + "!");
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		return false;
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										36
									
								
								src/me/travja/hungerarena/TeleportListener.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								src/me/travja/hungerarena/TeleportListener.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,36 @@
 | 
			
		||||
package me.travja.hungerarena;
 | 
			
		||||
 | 
			
		||||
import org.bukkit.entity.Player;
 | 
			
		||||
import org.bukkit.event.EventHandler;
 | 
			
		||||
import org.bukkit.event.Listener;
 | 
			
		||||
import org.bukkit.event.player.PlayerTeleportEvent;
 | 
			
		||||
import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *
 | 
			
		||||
 * @author YoshiGenius
 | 
			
		||||
 */
 | 
			
		||||
public class TeleportListener implements Listener {
 | 
			
		||||
    
 | 
			
		||||
    public Main plugin;
 | 
			
		||||
    public TeleportListener(Main m) {
 | 
			
		||||
        this.plugin = m;
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    @EventHandler
 | 
			
		||||
    public void onTP(PlayerTeleportEvent evt) {
 | 
			
		||||
        Player p = evt.getPlayer();
 | 
			
		||||
        TeleportCause tc = evt.getCause();
 | 
			
		||||
        if (tc == TeleportCause.ENDER_PEARL) {
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
        if (tc == TeleportCause.END_PORTAL) {
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
        if (tc == TeleportCause.NETHER_PORTAL) {
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
        evt.setCancelled(true);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										24
									
								
								src/me/travja/hungerarena/WinGamesListener.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								src/me/travja/hungerarena/WinGamesListener.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,24 @@
 | 
			
		||||
package me.travja.hungerarena;
 | 
			
		||||
 | 
			
		||||
import org.bukkit.entity.Player;
 | 
			
		||||
import org.bukkit.event.EventHandler;
 | 
			
		||||
import org.bukkit.event.Listener;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *
 | 
			
		||||
 * @author YoshiGenius
 | 
			
		||||
 */
 | 
			
		||||
public class WinGamesListener implements Listener {
 | 
			
		||||
    
 | 
			
		||||
    public Main plugin;
 | 
			
		||||
    public WinGamesListener(Main m) {
 | 
			
		||||
	this.plugin = m;
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    @EventHandler
 | 
			
		||||
    public void onWin(PlayerWinGamesEvent evt) {
 | 
			
		||||
        Player p = evt.getPlayer();
 | 
			
		||||
        plugin.econ.depositPlayer(p.getName(), plugin.config.getDouble("EcoReward"));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user