Lexepi

Untitled

Nov 6th, 2016
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.09 KB | None | 0 0
  1. package SheepWars;
  2.  
  3.  
  4.  
  5. import org.bukkit.Bukkit;
  6. import org.bukkit.DyeColor;
  7. import org.bukkit.Material;
  8. import org.bukkit.entity.EntityType;
  9. import org.bukkit.entity.Player;
  10. import org.bukkit.entity.Sheep;
  11. import org.bukkit.entity.Vehicle;
  12. import org.bukkit.event.EventHandler;
  13. import org.bukkit.event.Listener;
  14. import org.bukkit.event.block.Action;
  15. import org.bukkit.event.entity.EntityDamageEvent;
  16. import org.bukkit.event.entity.EntityDamageEvent.DamageCause;
  17. import org.bukkit.event.entity.EntityDeathEvent;
  18. import org.bukkit.event.player.PlayerInteractEvent;
  19. import org.bukkit.event.vehicle.VehicleExitEvent;
  20. import org.bukkit.plugin.java.JavaPlugin;
  21.  
  22.  
  23.  
  24. public class SheepWars extends JavaPlugin implements Listener{
  25.  
  26.  
  27. int task;
  28. float countdown = (float) 8.5;
  29.  
  30. public void onEnable(){
  31. Bukkit.getPluginManager().registerEvents(this, this);
  32.  
  33. }
  34.  
  35. @EventHandler
  36. public void onPlayerInteract(PlayerInteractEvent e){
  37. Player p = e.getPlayer();
  38. if(e.getItem().getType() != Material.WOOL)return;
  39. if(e.getItem().getItemMeta() == null) return;
  40. String itemName = e.getItem().getItemMeta().getDisplayName();
  41. if(!itemName.equalsIgnoreCase("Mouton Explosif")) return;
  42. if(e.getAction() != Action.RIGHT_CLICK_AIR) return;
  43.  
  44. p.getLocation().getDirection();
  45. Sheep sheep = (Sheep) p.getWorld().spawn(p.getLocation(), Sheep.class);
  46. sheep.setVelocity(p.getLocation().getDirection().normalize().multiply(6D));
  47. sheep.setColor(DyeColor.RED);
  48.  
  49. task = Bukkit.getScheduler().scheduleSyncRepeatingTask(Bukkit.getPluginManager().getPlugin("SheepWars"), new Runnable(){
  50.  
  51. @Override
  52. public void run() {
  53. countdown--;
  54. if(countdown == 5){
  55. sheep.setColor(DyeColor.WHITE);
  56. }else if(countdown == 4){
  57. sheep.setColor(DyeColor.RED);
  58. }else if(countdown == 3.5){
  59. sheep.setColor(DyeColor.RED);
  60. }else if(countdown == 3){
  61. sheep.setColor(DyeColor.RED);
  62. }else if(countdown == 2.5){
  63. sheep.setColor(DyeColor.WHITE);
  64. }else if(countdown == 2){
  65. sheep.setColor(DyeColor.RED);
  66. }else if(countdown == 1.5){
  67. sheep.setColor(DyeColor.WHITE);
  68. }else if(countdown == 1){
  69. sheep.setColor(DyeColor.RED);
  70. }else if(countdown == 0.5){
  71. sheep.setColor(DyeColor.WHITE);
  72. }else if(countdown == 0){
  73. sheep.getWorld().createExplosion(sheep.getLocation(), 4f);
  74. }
  75. }
  76.  
  77. }, 20, 20);
  78. }
  79.  
  80.  
  81. @EventHandler
  82. public void onSheepFallDamage(EntityDamageEvent e){
  83. if(e.getEntity() instanceof Sheep){
  84. if(e.getCause() == DamageCause.FALL){
  85. e.setCancelled(true);
  86. }
  87. }
  88. }
  89.  
  90.  
  91. @EventHandler
  92. public void onSheepDeath(EntityDeathEvent e){
  93. if(e.getEntity().getType() == EntityType.SHEEP){
  94. e.getDrops().clear();
  95. e.setDroppedExp(0);
  96. }
  97. }
  98.  
  99. @EventHandler
  100. public void onPlayerDismount(VehicleExitEvent e){
  101. if(e.getVehicle() instanceof Sheep && e.getExited() instanceof Player){
  102. Vehicle s = e.getVehicle();
  103. s.remove();
  104. }
  105. }
  106. }
Advertisement
Add Comment
Please, Sign In to add comment