2012-07-17 15:58:45 -06:00
|
|
|
package me.Travja.HungerArena;
|
2012-07-18 07:14:50 +10:00
|
|
|
|
|
|
|
import org.bukkit.entity.Entity;
|
|
|
|
import org.bukkit.entity.Player;
|
2012-10-08 17:55:42 -06:00
|
|
|
import org.bukkit.entity.Projectile;
|
|
|
|
import org.bukkit.entity.Skeleton;
|
2012-07-18 07:14:50 +10:00
|
|
|
import org.bukkit.event.EventHandler;
|
2012-10-08 17:55:42 -06:00
|
|
|
import org.bukkit.event.EventPriority;
|
2012-07-18 07:14:50 +10:00
|
|
|
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;
|
|
|
|
}
|
2013-02-16 18:03:13 -07:00
|
|
|
int a = 0;
|
2012-10-08 17:55:42 -06:00
|
|
|
@EventHandler(priority= EventPriority.MONITOR)
|
2012-07-18 07:14:50 +10:00
|
|
|
public void PlayerPvP(EntityDamageByEntityEvent event){
|
2013-02-16 18:03:13 -07:00
|
|
|
Entity pl = event.getEntity();
|
|
|
|
Entity dl = event.getDamager();
|
|
|
|
if(pl instanceof Player && dl instanceof Player){
|
|
|
|
Player p = (Player) pl;
|
|
|
|
Player d = (Player) dl;
|
|
|
|
if(plugin.getArena(p)!= null && plugin.getArena(d)!= null){
|
|
|
|
a = plugin.getArena(p);
|
|
|
|
if(plugin.canjoin.get(a)){
|
2012-10-08 17:55:42 -06:00
|
|
|
if(event.isCancelled()){
|
|
|
|
event.setCancelled(false);
|
|
|
|
}
|
|
|
|
}
|
2013-02-16 18:03:13 -07:00
|
|
|
}
|
|
|
|
if(plugin.getArena(p)!= null){
|
|
|
|
a = plugin.getArena(p);
|
|
|
|
if(!plugin.canjoin.get(a)){
|
2012-10-08 17:55:42 -06:00
|
|
|
if(!event.isCancelled()){
|
|
|
|
event.setCancelled(true);
|
|
|
|
}
|
|
|
|
}
|
2013-02-16 18:03:13 -07:00
|
|
|
}
|
|
|
|
if(plugin.getArena(p)== null && plugin.getArena(d)!= null){
|
2012-10-08 17:55:42 -06:00
|
|
|
if(!event.isCancelled()){
|
|
|
|
event.setCancelled(true);
|
|
|
|
}
|
|
|
|
}
|
2013-02-16 18:03:13 -07:00
|
|
|
}else if(pl instanceof Player && dl instanceof Projectile){
|
|
|
|
Projectile projectile = (Projectile) dl;
|
|
|
|
Player p = (Player) pl;
|
2012-10-08 17:55:42 -06:00
|
|
|
if(projectile.getShooter() instanceof Player){
|
2013-02-16 18:03:13 -07:00
|
|
|
if(plugin.getArena(p) != null){
|
2012-10-08 17:55:42 -06:00
|
|
|
Player shooter = (Player) projectile.getShooter();
|
2013-02-16 18:03:13 -07:00
|
|
|
if(plugin.getArena(shooter)!= null){
|
2012-10-08 17:55:42 -06:00
|
|
|
event.setCancelled(false);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}else if(projectile.getShooter() instanceof Entity){
|
|
|
|
Entity e = projectile.getShooter();
|
|
|
|
if(e instanceof Skeleton){
|
2013-02-16 18:03:13 -07:00
|
|
|
if(plugin.getArena(p)!= null){
|
2012-10-08 17:55:42 -06:00
|
|
|
event.setCancelled(false);
|
|
|
|
}
|
|
|
|
}
|
2012-07-18 07:14:50 +10:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|