Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package de.doppelbemme.onejumptodie.listener;
- import org.bukkit.Bukkit;
- import org.bukkit.GameMode;
- import org.bukkit.Material;
- import org.bukkit.entity.Player;
- 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.CreatureSpawnEvent;
- import org.bukkit.event.entity.EntityDamageEvent;
- import org.bukkit.event.entity.EntityDamageEvent.DamageCause;
- import org.bukkit.event.entity.EntityRegainHealthEvent;
- import org.bukkit.event.entity.FoodLevelChangeEvent;
- import org.bukkit.event.player.PlayerDropItemEvent;
- import org.bukkit.event.player.PlayerJoinEvent;
- import org.bukkit.event.player.PlayerMoveEvent;
- import org.bukkit.event.player.PlayerPickupItemEvent;
- import org.bukkit.event.player.PlayerQuitEvent;
- import org.bukkit.event.server.ServerListPingEvent;
- import org.bukkit.event.weather.ThunderChangeEvent;
- import org.bukkit.event.weather.WeatherChangeEvent;
- import de.doppelbemme.onejumptodie.main.GameState;
- import de.doppelbemme.onejumptodie.main.Main;
- public class StuffListener implements Listener {
- @EventHandler
- public void onDrop(PlayerDropItemEvent e) {
- e.setCancelled(true);
- }
- @EventHandler
- public void onDrop(PlayerPickupItemEvent e) {
- e.setCancelled(true);
- }
- @EventHandler
- public void onFall(EntityDamageEvent e) {
- if(Main.main.state == GameState.LOBBY || Main.main.state == GameState.GRACE || Main.main.state == GameState.RESTART) {
- if (e.getEntity() instanceof Player) {
- e.setCancelled(true);
- }else {
- e.setCancelled(false);
- }
- }else if(Main.main.state == GameState.INGAME) {
- if(!e.getCause().equals(DamageCause.ENTITY_ATTACK)) {
- if (e.getEntity() instanceof Player) {
- e.setCancelled(false);
- }else {
- e.setCancelled(true);
- }
- }else {
- e.setCancelled(true);
- }
- }
- }
- @EventHandler
- public void onBlockBreak(BlockBreakEvent e) {
- e.setCancelled(true);
- }
- @EventHandler
- public void onBlockPlace(BlockPlaceEvent e) {
- e.setCancelled(true);
- }
- @EventHandler
- public void onCreatureSpawn(CreatureSpawnEvent e) {
- e.setCancelled(true);
- }
- @EventHandler
- public void onHunger(FoodLevelChangeEvent e) {
- Player p = (Player) e.getEntity();
- e.setCancelled(true);
- }
- @EventHandler
- public void onWeatherChange(WeatherChangeEvent e) {
- boolean rain = e.toWeatherState();
- if(rain)
- e.setCancelled(true);
- }
- @EventHandler
- public void onThunderChange(ThunderChangeEvent e) {
- boolean storm = e.toThunderState();
- if(storm)
- e.setCancelled(true);
- }
- @EventHandler
- public void onJoin(PlayerJoinEvent e) {
- Player p = e.getPlayer();
- e.setJoinMessage(Main.GamePrefix + "§a" + e.getPlayer().getDisplayName() + " hat die Runde betreten.");
- Main.main.utils.clearPlayer(e.getPlayer());
- p.teleport(Main.main.lm.getLocation("lobby"));
- if(Bukkit.getOnlinePlayers().size() == 1) {
- Main.main.cd.startLobbyCD();
- }else if(Bukkit.getOnlinePlayers().size() == 2) {
- Bukkit.broadcastMessage(Main.GamePrefix + "§7Ein zweiter Spieler hat die Runde betreten. Der Countdown wurde verkürzt.");
- Main.main.cd.startLobbyCD();
- }
- }
- @EventHandler
- public void onQuit(PlayerQuitEvent e) {
- Player p = e.getPlayer();
- e.setQuitMessage(Main.GamePrefix + "§c" + e.getPlayer().getDisplayName() + " hat die Runde verlassen.");
- Main.main.utils.clearPlayer(e.getPlayer());
- }
- @EventHandler
- public void onPlayerRegen(EntityRegainHealthEvent e) {
- e.setCancelled(true);
- }
- @EventHandler
- public void onPing(ServerListPingEvent e) {
- if(Main.main.state == GameState.LOBBY) {
- e.setMotd("§a§lLobby");
- }else {
- e.setMotd("§bDev-Server von Doppelbemme");
- }
- }
- @EventHandler
- public void onPlayerMove(PlayerMoveEvent e) {
- if(Main.main.state == GameState.GRACE) {
- e.setCancelled(true);
- }else {
- e.setCancelled(false);
- }
- Player p = e.getPlayer();
- if(p.getLocation().add(0, -1, 0).getBlock().getType() == Material.IRON_BLOCK) {
- Main.point1.add(p.getName());
- p.sendMessage(Main.GamePrefix + "§aDu hast einen Checkpoint erreicht.");
- }else if(p.getLocation().add(0, -1, 0).getBlock().getType() == Material.DIAMOND_BLOCK) {
- Main.point1.remove(p.getName());
- Main.main.point2.add(p);
- p.sendMessage(Main.GamePrefix + "§aDu hast einen Checkpoint erreicht.");
- }else if(p.getLocation().add(0, -1, 0).getBlock().getType() == Material.EMERALD_BLOCK) {
- Main.main.point2.remove(p);
- Main.main.point3.add(p);
- p.sendMessage(Main.GamePrefix + "§aDu hast einen Checkpoint erreicht.");
- }else if(p.getLocation().add(0, -1, 0).getBlock().getType() == Material.GOLD_BLOCK) {
- Main.main.point3.remove(p);
- Main.main.finish.add(p);
- p.setGameMode(GameMode.SPECTATOR);
- Bukkit.broadcastMessage(Main.GamePrefix + "§6" + p.getDisplayName() + " §ahat das Ziel erreicht.");
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement