Advertisement
Wouto1997

Untitled

Jun 27th, 2018
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.01 KB | None | 0 0
  1. import net.menoni.rd.Debugger;
  2. import net.menoni.rd.RuntimeDebugger;
  3. import org.bukkit.Bukkit;
  4. import org.bukkit.Location;
  5. import org.bukkit.Material;
  6. import org.bukkit.TreeSpecies;
  7. import org.bukkit.block.Block;
  8. import org.bukkit.block.BlockFace;
  9. import org.bukkit.command.CommandSender;
  10. import org.bukkit.entity.Boat;
  11. import org.bukkit.entity.Entity;
  12. import org.bukkit.entity.Player;
  13. import org.bukkit.event.EventHandler;
  14. import org.bukkit.event.HandlerList;
  15. import org.bukkit.event.Listener;
  16. import org.bukkit.event.block.Action;
  17. import org.bukkit.event.player.PlayerInteractEvent;
  18. import org.bukkit.event.vehicle.VehicleMoveEvent;
  19. import org.bukkit.util.Vector;
  20.  
  21. import java.util.List;
  22.  
  23. public class MarioKartWii implements Debugger, Debugger.Stoppable, Listener {
  24.  
  25.     @Override
  26.     public void debug(RuntimeDebugger plugin, CommandSender cs) {
  27.         Bukkit.getPluginManager().registerEvents(this, plugin);
  28.     }
  29.  
  30.     @Override
  31.     public void stop() {
  32.         HandlerList.unregisterAll(this);
  33.     }
  34.    
  35.     @EventHandler
  36.     public void doEntityMove(VehicleMoveEvent vehicleMoveEvent) {
  37.         if (!(vehicleMoveEvent.getVehicle() instanceof Boat)) {
  38.             return;
  39.         }
  40.         List<Entity> passengers = vehicleMoveEvent.getVehicle().getPassengers();
  41.         Player player = null;
  42.         for (Entity passenger : passengers) {
  43.             if (passenger instanceof Player) {
  44.                 player = (Player) passenger;
  45.             }
  46.         }
  47.         if (player == null) {
  48.             return;
  49.         }
  50.         Location loc = player.getLocation();
  51.         Boat boat = (Boat) vehicleMoveEvent.getVehicle();
  52.         TreeSpecies[] species = TreeSpecies.values();
  53.         TreeSpecies specy = boat.getWoodType();
  54.         int index = 0;
  55.         for (int i = 0; i < species.length; i++) {
  56.             if (species[i] == specy) {
  57.                 index = i;
  58.             }
  59.         }
  60.         if (index >= species.length) {
  61.             index = 0;
  62.         }
  63.         boat.setWoodType(species[index]);
  64.         boolean boost = false;
  65.         boolean jump = false;
  66.         for (int i = 0; i < 3; i++) {
  67.             Block block = loc.getBlock().getRelative(BlockFace.DOWN, i + 1);
  68.             if (block.getType() == Material.GOLD_BLOCK) {
  69.                 boost = true;
  70.             }
  71.             if (block.getType() == Material.DIAMOND_BLOCK) {
  72.                 jump = true;
  73.             }
  74.         }
  75.         if (boost) {
  76.             player.getVelocity().multiply(2.0d);
  77.             boat.getVelocity().multiply(2.0d);
  78.         }
  79.         if (jump) {
  80.             player.getVelocity().add(new Vector(0.0d, 5.0d, 0.0d));
  81.             boat.getVelocity().add(new Vector(0.0d, 5.0d, 0.0d));
  82.         }
  83.     }
  84.  
  85.     @EventHandler
  86.     public void doItemTurbos(PlayerInteractEvent interactEvent) {
  87.         if (interactEvent.getAction() != Action.RIGHT_CLICK_BLOCK && interactEvent.getAction() != Action.RIGHT_CLICK_AIR) {
  88.             return;
  89.         }
  90.         if (interactEvent.getPlayer() == null) {
  91.             return;
  92.         }
  93.         if (!(interactEvent.getPlayer().getVehicle() instanceof Boat)) {
  94.             return;
  95.         }
  96.         if (interactEvent.getItem().getType() != Material.GOLD_INGOT) {
  97.             return;
  98.         }
  99.         Boat boat = (Boat) interactEvent.getPlayer().getVehicle();
  100.         interactEvent.getItem().setAmount(interactEvent.getItem().getAmount() - 1);
  101.         interactEvent.getPlayer().getVelocity().multiply(1.5d);
  102.         boat.getVelocity().multiply(1.5d);
  103.     }
  104.  
  105. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement