commit 6da37ac20158b779aa0aa5a79b9614168ef560d8 Author: BuildTools Date: Mon Jan 15 17:43:19 2024 +0100 Fist Build diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/.idea/compiler.xml b/.idea/compiler.xml new file mode 100644 index 0000000..94ad040 --- /dev/null +++ b/.idea/compiler.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/encodings.xml b/.idea/encodings.xml new file mode 100644 index 0000000..aa00ffa --- /dev/null +++ b/.idea/encodings.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml new file mode 100644 index 0000000..861936a --- /dev/null +++ b/.idea/jarRepositories.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..e4e2ad7 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,15 @@ + + + + + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..ec3253c --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/ZalmikLobby.iml b/ZalmikLobby.iml new file mode 100644 index 0000000..662e239 --- /dev/null +++ b/ZalmikLobby.iml @@ -0,0 +1,16 @@ + + + + + + + SPIGOT + + 1 + + + + + + \ No newline at end of file diff --git a/dependency-reduced-pom.xml b/dependency-reduced-pom.xml new file mode 100644 index 0000000..f0f4043 --- /dev/null +++ b/dependency-reduced-pom.xml @@ -0,0 +1,60 @@ + + + 4.0.0 + xyz.tronax + ZalmikLobby + ZalmikLobby + 1.0-SNAPSHOT + + + + true + src/main/resources + + + + + maven-compiler-plugin + 3.8.1 + + ${java.version} + ${java.version} + + + + maven-shade-plugin + 3.2.4 + + + package + + shade + + + + + + + + + spigotmc-repo + https://hub.spigotmc.org/nexus/content/repositories/snapshots/ + + + sonatype + https://oss.sonatype.org/content/groups/public/ + + + + + org.spigotmc + spigot-api + 1.20.4-R0.1-SNAPSHOT + provided + + + + 1.8 + UTF-8 + + diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..7b9479b --- /dev/null +++ b/pom.xml @@ -0,0 +1,76 @@ + + + 4.0.0 + + xyz.tronax + ZalmikLobby + 1.0-SNAPSHOT + jar + + ZalmikLobby + + + 1.8 + UTF-8 + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.8.1 + + ${java.version} + ${java.version} + + + + org.apache.maven.plugins + maven-shade-plugin + 3.2.4 + + + package + + shade + + + + + + + + src/main/resources + true + + + + + + + spigotmc-repo + https://hub.spigotmc.org/nexus/content/repositories/snapshots/ + + + sonatype + https://oss.sonatype.org/content/groups/public/ + + + + + + org.spigotmc + spigot-api + 1.20.4-R0.1-SNAPSHOT + provided + + + org.spigotmc + spigot + 1.20.4-R0.1-SNAPSHOT + + + diff --git a/src/main/java/xyz/tronax/zalmiklobby/Main.java b/src/main/java/xyz/tronax/zalmiklobby/Main.java new file mode 100644 index 0000000..4ae7d52 --- /dev/null +++ b/src/main/java/xyz/tronax/zalmiklobby/Main.java @@ -0,0 +1,61 @@ +package xyz.tronax.zalmiklobby; + +import org.bukkit.Bukkit; +import org.bukkit.command.CommandExecutor; +import org.bukkit.event.Listener; +import org.bukkit.plugin.java.JavaPlugin; +import xyz.tronax.zalmiklobby.commands.*; +import xyz.tronax.zalmiklobby.listeners.*; + +import java.util.ArrayList; + +public final class Main extends JavaPlugin { + + public static ArrayList build = new ArrayList(); + public static ArrayList flymode = new ArrayList(); + + + public static String line = "§8§l<>---------< §e§lLobby §8§l>---------<>"; + public static String prefix = "§3Zalmik §8|"; + public static String noperm = prefix + " §cDu hast nicht genügend Rechte!"; + + @Override + public void onEnable() { + Bukkit.getConsoleSender().sendMessage(prefix + " §aLobby erfolgreich aktiviert!"); + register(); + } + + @Override + public void onDisable() { + Bukkit.getConsoleSender().sendMessage(prefix + " §cLobby erfolgreich deaktiviert!"); + } + + private void register() { + registerEvent(new DamageListener()); + registerEvent(new JoinItemListener()); + registerEvent(new DropListener()); + registerEvent(new BuildListener()); + registerEvent(new HungerListener()); + registerEvent(new XPListener()); + registerEvent(new JoinListener()); + registerEvent(new LeaveListener()); + + + registerCMD("build", new CMD_build()); + registerCMD("ping", new CMD_ping()); + registerCMD("fly", new CMD_fly()); + registerCMD("clearchat", new CMD_chatclear()); + registerCMD("spawn", new CMD_spawn()); + registerCMD("setspawn", new CMD_setspawn()); + + } + + private void registerEvent(Listener Listener) { + Bukkit.getPluginManager().registerEvents(Listener, this); + } + + private void registerCMD(String cmd, CommandExecutor executor) { + getCommand(cmd).setExecutor(executor); + } + +} diff --git a/src/main/java/xyz/tronax/zalmiklobby/commands/CMD_build.java b/src/main/java/xyz/tronax/zalmiklobby/commands/CMD_build.java new file mode 100644 index 0000000..6813a44 --- /dev/null +++ b/src/main/java/xyz/tronax/zalmiklobby/commands/CMD_build.java @@ -0,0 +1,46 @@ +package xyz.tronax.zalmiklobby.commands; + +import org.bukkit.GameMode; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import xyz.tronax.zalmiklobby.Main; +import xyz.tronax.zalmiklobby.listeners.JoinItemListener; + +public class CMD_build implements CommandExecutor { + + @Override + public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { + if(!(sender instanceof Player)) { + sender.sendMessage(Main.prefix + " §cDu bist kein Spieler!"); + } else { + Player p = (Player) sender; + if(p.hasPermission("lobby.build")) { + if(!Main.build.contains(p.getName())) { + p.setGameMode(GameMode.CREATIVE); + p.getInventory().clear(); + p.sendMessage(Main.prefix + " §aBuild-Modus aktiviert!"); + + Main.build.add(p.getName()); + } else { + p.setGameMode(GameMode.ADVENTURE); + p.getInventory().clear(); + p.sendMessage(Main.prefix + " §cBuild-Modus deaktiviert!"); + p.setHealth(20); + JoinItemListener.joiniitemsi(p); + + Main.build.remove(p.getName()); + } + } else { + p.sendMessage(Main.noperm); + } + } + + + + + return false; + } + +} diff --git a/src/main/java/xyz/tronax/zalmiklobby/commands/CMD_chatclear.java b/src/main/java/xyz/tronax/zalmiklobby/commands/CMD_chatclear.java new file mode 100644 index 0000000..91ed71d --- /dev/null +++ b/src/main/java/xyz/tronax/zalmiklobby/commands/CMD_chatclear.java @@ -0,0 +1,38 @@ +package xyz.tronax.zalmiklobby.commands; + +import org.bukkit.Bukkit; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import xyz.tronax.zalmiklobby.Main; + +public class CMD_chatclear implements CommandExecutor { + @Override + public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { + if(sender.hasPermission("lobby.clearchat")) { + if(args.length == 0) { + for(int i = 0; i<=100; i++) { + Bukkit.getServer().broadcastMessage(""); + } + Bukkit.getServer().broadcastMessage(Main.prefix + "§cDer Chat wurde von §4§l" + sender.getName() + " §cgecleart."); + } else if(args.length == 1) { + Player t = Bukkit.getServer().getPlayer(args[0]); + if(t == null) { + sender.sendMessage(Main.prefix + "§cDer Spieler §4§l" + args[0] + "§r §cist nicht online!"); + } else { + for(int i = 0; i<=100; i++) { + t.sendMessage(""); + } + t.sendMessage(Main.prefix + "§cDeine Chat wurde von §4§l" + sender.getName() + " §cgecleart."); + } + } else { + sender.sendMessage(Main.prefix + " §cZu viele Argumente!"); + } + } else { + sender.sendMessage(Main.noperm); + } + + return false; + } +} diff --git a/src/main/java/xyz/tronax/zalmiklobby/commands/CMD_fly.java b/src/main/java/xyz/tronax/zalmiklobby/commands/CMD_fly.java new file mode 100644 index 0000000..5ce78d9 --- /dev/null +++ b/src/main/java/xyz/tronax/zalmiklobby/commands/CMD_fly.java @@ -0,0 +1,32 @@ +package xyz.tronax.zalmiklobby.commands; + +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import xyz.tronax.zalmiklobby.Main; + +public class CMD_fly implements CommandExecutor { + @Override + public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { + if(!(sender instanceof Player)) { + sender.sendMessage(Main.prefix + " §cDu bist kein Spieler!"); + } else { + Player p = (Player) sender; + if(p.hasPermission("lobby.fly")) { + if(Main.flymode.contains(p.getName())) { + p.sendMessage(Main.prefix + " §cDer Flugmodus wurde deaktiviert!"); + p.setAllowFlight(false); + Main.flymode.remove(p.getName()); + } else { + p.sendMessage(Main.prefix + " §aDer Flugmodus wurde aktiviert!"); + p.setAllowFlight(true); + Main.flymode.add(p.getName()); + } + } else { + p.sendMessage(Main.noperm); + } + } + return false; + } +} diff --git a/src/main/java/xyz/tronax/zalmiklobby/commands/CMD_ping.java b/src/main/java/xyz/tronax/zalmiklobby/commands/CMD_ping.java new file mode 100644 index 0000000..6e383d7 --- /dev/null +++ b/src/main/java/xyz/tronax/zalmiklobby/commands/CMD_ping.java @@ -0,0 +1,54 @@ +package xyz.tronax.zalmiklobby.commands; + +import org.bukkit.Bukkit; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.craftbukkit.v1_20_R3.entity.CraftPlayer; +import org.bukkit.entity.Player; +import xyz.tronax.zalmiklobby.Main; + +public class CMD_ping implements CommandExecutor { + @Override + public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { + if(!(sender instanceof Player)) { + // Console + if(args.length == 0) { + sender.sendMessage(Main.prefix + " §cBitte nutze /ping [Spieler]"); + } else if(args.length == 1) { + Player t = (Player) Bukkit.getPlayer(args[0]); + if(t == null) { + sender.sendMessage(Main.prefix + " §cDer Spieler §4§l" + args[0] + "§r §cist nicht online!"); + } else { + //sender.sendMessage(Main.prefix + "§e§l" + t.getName() + " §r§7's Ping: §a§l" + ((CraftPlayer) t).getHandle().ping + " §a§lms."); + } + } else { + sender.sendMessage(Main.prefix + " §cZu viele Argumente!"); + } + } else { + // Player + Player p = (Player) sender; + if(args.length == 0) { + //p.sendMessage(Main.prefix + " §7Dein Ping: §a§l" + ((CraftPlayer) p).getHandle().ping + " §a§lms."); + } else if(args.length == 1) { + Player t = (Player) Bukkit.getPlayer(args[0]); + if(t == null) { + p.sendMessage(Main.prefix + " §cDer Spieler §4§l" + args[0] + "§r §cist nicht online!"); + } else if(t == p) { + // p.sendMessage(Main.prefix + " §7Dein Ping: §a§l" + ((CraftPlayer) p).getHandle().ping + " §a§lms."); + } else { + // p.sendMessage(Main.prefix + "§e§l" + t.getName() + " §r§7's Ping: §a§l" + ((CraftPlayer) t).getHandle().ping + " §a§lms."); + } + } else { + p.sendMessage(Main.prefix + " §cZu viele Argumente!"); + } + + } + + + + + return false; + } + +} diff --git a/src/main/java/xyz/tronax/zalmiklobby/commands/CMD_setspawn.java b/src/main/java/xyz/tronax/zalmiklobby/commands/CMD_setspawn.java new file mode 100644 index 0000000..9be8404 --- /dev/null +++ b/src/main/java/xyz/tronax/zalmiklobby/commands/CMD_setspawn.java @@ -0,0 +1,52 @@ +package xyz.tronax.zalmiklobby.commands; + +import org.bukkit.Bukkit; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.configuration.file.YamlConfiguration; +import org.bukkit.entity.Player; +import xyz.tronax.zalmiklobby.Main; + +import java.io.File; +import java.io.IOException; + +public class CMD_setspawn implements CommandExecutor { + @Override + public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { + if(!(sender instanceof Player)) { + sender.sendMessage(Main.prefix + " §cDu bist kein Spieler!"); + } else { + Player p = (Player) sender; + if(p.hasPermission("lobby.setspawn")) { + String w = p.getLocation().getWorld().getName(); + double x = p.getLocation().getX(); + double y = p.getLocation().getY(); + double z = p.getLocation().getZ(); + float pitch = (float) p.getLocation().getPitch(); + float yaw = (float) p.getLocation().getYaw(); + + File file = new File("plugins//Lobby//spawn.yml"); + YamlConfiguration cfg = YamlConfiguration.loadConfiguration(file); + + + cfg.set("Spawn.world", w); + cfg.set("Spawn.X", x); + cfg.set("Spawn.Y", y); + cfg.set("Spawn.Z", z); + cfg.set("Spawn.Pitch", (double) pitch); + cfg.set("Spawn.Yaw", (double) yaw); + + try { + cfg.save(file); + } catch (IOException e) { + Bukkit.getConsoleSender().sendMessage(Main.prefix + " §cDatei konnte nicht gefunden werden!"); + } + p.sendMessage(Main.prefix + " §8Du hast den §eSpawn §8gesetzt!"); + } else { + p.sendMessage(Main.noperm); + } + } + return false; + } +} diff --git a/src/main/java/xyz/tronax/zalmiklobby/commands/CMD_spawn.java b/src/main/java/xyz/tronax/zalmiklobby/commands/CMD_spawn.java new file mode 100644 index 0000000..f5d43fa --- /dev/null +++ b/src/main/java/xyz/tronax/zalmiklobby/commands/CMD_spawn.java @@ -0,0 +1,38 @@ +package xyz.tronax.zalmiklobby.commands; + +import org.bukkit.Bukkit; +import org.bukkit.Location; +import org.bukkit.World; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.configuration.file.YamlConfiguration; +import org.bukkit.entity.Player; + +import java.io.File; + +public class CMD_spawn implements CommandExecutor { + @Override + public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { + if(!(sender instanceof Player)) { + + } else { + File file = new File("plugins//Lobby//spawn.yml"); + YamlConfiguration cfg = YamlConfiguration.loadConfiguration(file); + Player p = (Player) sender; + String w = (String) cfg.getString("Spawn.world"); + double x = (double) cfg.getDouble("Spawn.X"); + double y = (double) cfg.getDouble("Spawn.Y"); + double z = (double) cfg.getDouble("Spawn.Z"); + double pitch = cfg.getDouble("Spawn.Pitch"); + double yaw = cfg.getDouble("Spawn.Yaw"); + World www = Bukkit.getWorld(w); + Location loc = new Location(www, x, y, z); + loc.setPitch((float)pitch); + loc.setYaw((float) yaw); + p.teleport(loc); + + } + return false; + } +} diff --git a/src/main/java/xyz/tronax/zalmiklobby/listeners/BuildListener.java b/src/main/java/xyz/tronax/zalmiklobby/listeners/BuildListener.java new file mode 100644 index 0000000..8ec335d --- /dev/null +++ b/src/main/java/xyz/tronax/zalmiklobby/listeners/BuildListener.java @@ -0,0 +1,51 @@ +package xyz.tronax.zalmiklobby.listeners; + +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.EventPriority; +import org.bukkit.event.Listener; +import org.bukkit.event.block.BlockBreakEvent; +import org.bukkit.event.block.BlockPlaceEvent; +import xyz.tronax.zalmiklobby.Main; + +public class BuildListener implements Listener { + int breaki = 0; + int placei = 0; + + @EventHandler(priority = EventPriority.HIGHEST) + public void onBreak(BlockBreakEvent e) { + Player p = (Player) e.getPlayer(); + if(Main.build.contains(p.getName())) { + e.setCancelled(false); + } else { + e.setCancelled(true); + if(breaki == 0) { + p.sendMessage(Main.prefix + " §cDu kannst keine Blöcke abbauen."); + breaki++; + } else if(breaki == 10){ + breaki = 0; + } else { + breaki++; + } + } + } + + + @EventHandler(priority = EventPriority.HIGHEST) + public void onBuild(BlockPlaceEvent e) { + Player p = (Player) e.getPlayer(); + if(Main.build.contains(p.getName())) { + e.setCancelled(false); + } else { + e.setCancelled(true); + if(placei == 0) { + p.sendMessage(Main.prefix + " §cDu kannst keine Blöcke setzen."); + placei++; + } else if(placei == 10){ + placei = 0; + } else { + placei++; + } + } + } +} diff --git a/src/main/java/xyz/tronax/zalmiklobby/listeners/DamageListener.java b/src/main/java/xyz/tronax/zalmiklobby/listeners/DamageListener.java new file mode 100644 index 0000000..6a8a164 --- /dev/null +++ b/src/main/java/xyz/tronax/zalmiklobby/listeners/DamageListener.java @@ -0,0 +1,20 @@ +package xyz.tronax.zalmiklobby.listeners; + +import org.bukkit.entity.EntityType; +import org.bukkit.event.EventHandler; +import org.bukkit.event.EventPriority; +import org.bukkit.event.Listener; +import org.bukkit.event.entity.EntityDamageEvent; + +public class DamageListener implements Listener { + + @EventHandler(priority = EventPriority.HIGHEST) + public void onDamage(EntityDamageEvent e) { + if(e.getEntityType() == EntityType.PLAYER) { + e.setCancelled(true); + } else { + e.setCancelled(false); + } + } + +} diff --git a/src/main/java/xyz/tronax/zalmiklobby/listeners/DropListener.java b/src/main/java/xyz/tronax/zalmiklobby/listeners/DropListener.java new file mode 100644 index 0000000..9e48189 --- /dev/null +++ b/src/main/java/xyz/tronax/zalmiklobby/listeners/DropListener.java @@ -0,0 +1,32 @@ +package xyz.tronax.zalmiklobby.listeners; + +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.PlayerDropItemEvent; +import xyz.tronax.zalmiklobby.Main; + +public class DropListener implements Listener { + + int i = 0; + + @EventHandler(priority = EventPriority.HIGHEST) + public void onDrop(PlayerDropItemEvent e) { + Player p = (Player) e.getPlayer(); + if(Main.build.contains(p.getName())) { + e.setCancelled(false); + } else { + e.setCancelled(true); + if(i == 0) { + p.sendMessage(Main.prefix + " §cDu kannst keine Items droppen."); + i++; + } else if(i == 10){ + i = 0; + } else { + i++; + } + } + } + +} diff --git a/src/main/java/xyz/tronax/zalmiklobby/listeners/HungerListener.java b/src/main/java/xyz/tronax/zalmiklobby/listeners/HungerListener.java new file mode 100644 index 0000000..19034ff --- /dev/null +++ b/src/main/java/xyz/tronax/zalmiklobby/listeners/HungerListener.java @@ -0,0 +1,17 @@ +package xyz.tronax.zalmiklobby.listeners; + +import org.bukkit.entity.EntityType; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.entity.FoodLevelChangeEvent; + +public class HungerListener implements Listener { + @EventHandler + public void onHunger(FoodLevelChangeEvent e) { + if(e.getEntityType() == EntityType.PLAYER) { + e.setCancelled(true); + } else { + e.setCancelled(false); + } + } +} diff --git a/src/main/java/xyz/tronax/zalmiklobby/listeners/JoinItemListener.java b/src/main/java/xyz/tronax/zalmiklobby/listeners/JoinItemListener.java new file mode 100644 index 0000000..6bddbc1 --- /dev/null +++ b/src/main/java/xyz/tronax/zalmiklobby/listeners/JoinItemListener.java @@ -0,0 +1,121 @@ +package xyz.tronax.zalmiklobby.listeners; + +import org.bukkit.*; +import org.bukkit.configuration.file.YamlConfiguration; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.EventPriority; +import org.bukkit.event.Listener; +import org.bukkit.event.block.Action; +import org.bukkit.event.player.PlayerInteractEvent; +import org.bukkit.event.player.PlayerJoinEvent; +import org.bukkit.inventory.ItemStack; +import org.bukkit.inventory.meta.ItemMeta; +import xyz.tronax.zalmiklobby.Main; + +import java.io.File; +import java.util.ArrayList; + +public class JoinItemListener implements Listener { + + static ItemStack flyfeather = new ItemStack(Material.FEATHER, 1); + static ItemMeta flyfeathermeta = flyfeather.getItemMeta(); + static ArrayList flyfeatherlore = new ArrayList(); + + @SuppressWarnings("deprecation") + @EventHandler + public void onJoin(PlayerJoinEvent e) { + Player p = (Player) e.getPlayer(); + + e.setJoinMessage(""); + + File file = new File("plugins//Lobby//spawn.yml"); + YamlConfiguration cfg = YamlConfiguration.loadConfiguration(file); + String w = (String) cfg.getString("Spawn.world"); + double x = (double) cfg.getDouble("Spawn.X"); + double y = (double) cfg.getDouble("Spawn.Y"); + double z = (double) cfg.getDouble("Spawn.Z"); + double pitch = cfg.getDouble("Spawn.Pitch"); + double yaw = cfg.getDouble("Spawn.Yaw"); + World www = Bukkit.getWorld(w); + Location loc = new Location(www, x, y, z); + loc.setPitch((float)pitch); + loc.setYaw((float) yaw); + p.teleport(loc); + + joinitems(p); + + } + + + @EventHandler(priority = EventPriority.HIGHEST) + public void onInteract(PlayerInteractEvent e) { + Player p = (Player) e.getPlayer(); + try { + if(e.getItem().getItemMeta().getDisplayName().equalsIgnoreCase("§6§lFlugfeder")) { + e.setCancelled(true); + // Flugfeder + if(e.getAction() == Action.RIGHT_CLICK_AIR | e.getAction() == Action.RIGHT_CLICK_BLOCK) { + if(Main.flymode.contains(p.getName())) { + p.sendMessage(Main.prefix + " §cDer Flugmodus wurde deaktiviert!"); + p.setAllowFlight(false); + Main.flymode.remove(p.getName()); + } else { + p.sendMessage(Main.prefix + " §aDer Flugmodus wurde aktiviert!"); + p.setAllowFlight(true); + Main.flymode.add(p.getName()); + } + } else { + p.sendMessage(Main.prefix + " §cBitte drücke §bRechtsklick§c!"); + } + } + + } catch(Exception exception) {} + } + + + public static void joinitems(Player p) { + p.setHealth(20); + p.setMaxHealth(20); + p.setFoodLevel(20); + p.setExp(1.0F); + p.setLevel(1337); + p.setGameMode(GameMode.ADVENTURE); + + if(p.hasPermission("lobby.build")) { + if(!Main.build.contains(p.getName())) { + p.sendMessage(Main.prefix + " §cBuild-Modus deaktiviert!"); + joiniitemsi(p); + } else { + p.setGameMode(GameMode.CREATIVE); + p.getInventory().clear(); + p.sendMessage(Main.prefix + " §aBuild-Modus aktiviert!"); + + } + } else { + joiniitemsi(p); + } + + + + + } + + public static void joiniitemsi(Player p ) { + p.setGameMode(GameMode.ADVENTURE); + p.setHealth(20); + p.getInventory().clear(); + + // Flugfeder + if(p.hasPermission("lobby.fly")) { + flyfeathermeta.setDisplayName("§6§lFlugfeder"); + flyfeatherlore.add("§aDrücke §bRechtsklick"); + flyfeatherlore.add("§aum den §6Flugmodus"); + flyfeatherlore.add("§azu aktivieren."); + flyfeathermeta.setLore(flyfeatherlore); + flyfeather.setItemMeta(flyfeathermeta); + p.getInventory().setItem(1, flyfeather); + } + } + +} diff --git a/src/main/java/xyz/tronax/zalmiklobby/listeners/JoinListener.java b/src/main/java/xyz/tronax/zalmiklobby/listeners/JoinListener.java new file mode 100644 index 0000000..94e9b7f --- /dev/null +++ b/src/main/java/xyz/tronax/zalmiklobby/listeners/JoinListener.java @@ -0,0 +1,32 @@ +package xyz.tronax.zalmiklobby.listeners; + +import org.bukkit.Bukkit; +import org.bukkit.Location; +import org.bukkit.World; +import org.bukkit.configuration.file.YamlConfiguration; +import org.bukkit.entity.Player; +import org.bukkit.event.Listener; +import org.bukkit.event.player.PlayerJoinEvent; + +import java.io.File; + +public class JoinListener implements Listener { + public void onJoin(PlayerJoinEvent e) { + File file = new File("plugins//Lobby//spawn.yml"); + YamlConfiguration cfg = YamlConfiguration.loadConfiguration(file); + Player p = (Player) e.getPlayer(); + + String w = (String) cfg.get("Spawn.world"); + double x = (double) cfg.get("Spawn.X"); + double y = (double) cfg.get("Spawn.Y"); + double z = (double) cfg.get("Spawn.Z"); + float pitch = (float) cfg.get("Spawn.Pitch"); + float yaw = (float) cfg.get("Spawn.Yaw"); + + World www = Bukkit.getWorld(w); + + Location loc = new Location(www, x, y, z, pitch, yaw); + p.teleport(loc); + + } +} diff --git a/src/main/java/xyz/tronax/zalmiklobby/listeners/LeaveListener.java b/src/main/java/xyz/tronax/zalmiklobby/listeners/LeaveListener.java new file mode 100644 index 0000000..9470496 --- /dev/null +++ b/src/main/java/xyz/tronax/zalmiklobby/listeners/LeaveListener.java @@ -0,0 +1,19 @@ +package xyz.tronax.zalmiklobby.listeners; + +import org.bukkit.event.EventHandler; +import org.bukkit.event.EventPriority; +import org.bukkit.event.Listener; +import org.bukkit.event.player.PlayerKickEvent; +import org.bukkit.event.player.PlayerQuitEvent; + +public class LeaveListener implements Listener { + @EventHandler(priority = EventPriority.HIGHEST) + public void onQuit(PlayerQuitEvent e) { + e.setQuitMessage(""); + } + + @EventHandler(priority = EventPriority.HIGHEST) + public void onKick(PlayerKickEvent e) { + e.setLeaveMessage(""); + } +} diff --git a/src/main/java/xyz/tronax/zalmiklobby/listeners/XPListener.java b/src/main/java/xyz/tronax/zalmiklobby/listeners/XPListener.java new file mode 100644 index 0000000..79bc96a --- /dev/null +++ b/src/main/java/xyz/tronax/zalmiklobby/listeners/XPListener.java @@ -0,0 +1,12 @@ +package xyz.tronax.zalmiklobby.listeners; + +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.player.PlayerExpChangeEvent; + +public class XPListener implements Listener { + @EventHandler + public void onXP(PlayerExpChangeEvent e) { + e.setAmount(0); + } +} diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml new file mode 100644 index 0000000..569fac1 --- /dev/null +++ b/src/main/resources/plugin.yml @@ -0,0 +1,26 @@ +name: ZalmikLobby +version: '${project.version}' +author: TronaxYT +main: xyz.tronax.zalmiklobby.Main +api-version: '1.20' +commands: + build: + description: Toggled den Build Modus. + ping: + description: Zeigt den Ping an. + ip: + description: Zeigt die IP an. + fly: + description: Toggled den Flugmodus. + aliases: + - flugmodus + - flug + clearchat: + description: Cleart den Chat. + aliases: + - cc + - chatclear + setspawn: + description: Setzt den Spawn. + spawn: + description: TP zum Spawn. diff --git a/target/ZalmikLobby-1.0-SNAPSHOT.jar b/target/ZalmikLobby-1.0-SNAPSHOT.jar new file mode 100644 index 0000000..d1c26b4 Binary files /dev/null and b/target/ZalmikLobby-1.0-SNAPSHOT.jar differ diff --git a/target/classes/plugin.yml b/target/classes/plugin.yml new file mode 100644 index 0000000..3a521a4 --- /dev/null +++ b/target/classes/plugin.yml @@ -0,0 +1,4 @@ +name: ZalmikLobby +version: '1.0-SNAPSHOT' +main: xyz.tronax.zalmiklobby.Main +api-version: '1.20' diff --git a/target/classes/xyz/tronax/zalmiklobby/Main.class b/target/classes/xyz/tronax/zalmiklobby/Main.class new file mode 100644 index 0000000..dde3153 Binary files /dev/null and b/target/classes/xyz/tronax/zalmiklobby/Main.class differ diff --git a/target/classes/xyz/tronax/zalmiklobby/commands/CMD_build.class b/target/classes/xyz/tronax/zalmiklobby/commands/CMD_build.class new file mode 100644 index 0000000..76de53a Binary files /dev/null and b/target/classes/xyz/tronax/zalmiklobby/commands/CMD_build.class differ diff --git a/target/classes/xyz/tronax/zalmiklobby/commands/CMD_chatclear.class b/target/classes/xyz/tronax/zalmiklobby/commands/CMD_chatclear.class new file mode 100644 index 0000000..382cd8d Binary files /dev/null and b/target/classes/xyz/tronax/zalmiklobby/commands/CMD_chatclear.class differ diff --git a/target/classes/xyz/tronax/zalmiklobby/commands/CMD_fly.class b/target/classes/xyz/tronax/zalmiklobby/commands/CMD_fly.class new file mode 100644 index 0000000..e2b1cfb Binary files /dev/null and b/target/classes/xyz/tronax/zalmiklobby/commands/CMD_fly.class differ diff --git a/target/classes/xyz/tronax/zalmiklobby/commands/CMD_ping.class b/target/classes/xyz/tronax/zalmiklobby/commands/CMD_ping.class new file mode 100644 index 0000000..236382e Binary files /dev/null and b/target/classes/xyz/tronax/zalmiklobby/commands/CMD_ping.class differ diff --git a/target/classes/xyz/tronax/zalmiklobby/commands/CMD_setspawn.class b/target/classes/xyz/tronax/zalmiklobby/commands/CMD_setspawn.class new file mode 100644 index 0000000..b52d41b Binary files /dev/null and b/target/classes/xyz/tronax/zalmiklobby/commands/CMD_setspawn.class differ diff --git a/target/classes/xyz/tronax/zalmiklobby/commands/CMD_spawn.class b/target/classes/xyz/tronax/zalmiklobby/commands/CMD_spawn.class new file mode 100644 index 0000000..e0d0ee4 Binary files /dev/null and b/target/classes/xyz/tronax/zalmiklobby/commands/CMD_spawn.class differ diff --git a/target/classes/xyz/tronax/zalmiklobby/listeners/BuildListener.class b/target/classes/xyz/tronax/zalmiklobby/listeners/BuildListener.class new file mode 100644 index 0000000..dda75fd Binary files /dev/null and b/target/classes/xyz/tronax/zalmiklobby/listeners/BuildListener.class differ diff --git a/target/classes/xyz/tronax/zalmiklobby/listeners/DamageListener.class b/target/classes/xyz/tronax/zalmiklobby/listeners/DamageListener.class new file mode 100644 index 0000000..55fe0a5 Binary files /dev/null and b/target/classes/xyz/tronax/zalmiklobby/listeners/DamageListener.class differ diff --git a/target/classes/xyz/tronax/zalmiklobby/listeners/DropListener.class b/target/classes/xyz/tronax/zalmiklobby/listeners/DropListener.class new file mode 100644 index 0000000..91dbd54 Binary files /dev/null and b/target/classes/xyz/tronax/zalmiklobby/listeners/DropListener.class differ diff --git a/target/classes/xyz/tronax/zalmiklobby/listeners/HungerListener.class b/target/classes/xyz/tronax/zalmiklobby/listeners/HungerListener.class new file mode 100644 index 0000000..f5419ee Binary files /dev/null and b/target/classes/xyz/tronax/zalmiklobby/listeners/HungerListener.class differ diff --git a/target/classes/xyz/tronax/zalmiklobby/listeners/JoinItemListener.class b/target/classes/xyz/tronax/zalmiklobby/listeners/JoinItemListener.class new file mode 100644 index 0000000..3f0621a Binary files /dev/null and b/target/classes/xyz/tronax/zalmiklobby/listeners/JoinItemListener.class differ diff --git a/target/classes/xyz/tronax/zalmiklobby/listeners/JoinListener.class b/target/classes/xyz/tronax/zalmiklobby/listeners/JoinListener.class new file mode 100644 index 0000000..6055b89 Binary files /dev/null and b/target/classes/xyz/tronax/zalmiklobby/listeners/JoinListener.class differ diff --git a/target/classes/xyz/tronax/zalmiklobby/listeners/LeaveListener.class b/target/classes/xyz/tronax/zalmiklobby/listeners/LeaveListener.class new file mode 100644 index 0000000..9b9c75c Binary files /dev/null and b/target/classes/xyz/tronax/zalmiklobby/listeners/LeaveListener.class differ diff --git a/target/classes/xyz/tronax/zalmiklobby/listeners/XPListener.class b/target/classes/xyz/tronax/zalmiklobby/listeners/XPListener.class new file mode 100644 index 0000000..268922c Binary files /dev/null and b/target/classes/xyz/tronax/zalmiklobby/listeners/XPListener.class differ diff --git a/target/maven-archiver/pom.properties b/target/maven-archiver/pom.properties new file mode 100644 index 0000000..95ed1b7 --- /dev/null +++ b/target/maven-archiver/pom.properties @@ -0,0 +1,3 @@ +artifactId=ZalmikLobby +groupId=xyz.tronax +version=1.0-SNAPSHOT diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst new file mode 100644 index 0000000..c84cbc4 --- /dev/null +++ b/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst @@ -0,0 +1,15 @@ +xyz\tronax\zalmiklobby\commands\CMD_chatclear.class +xyz\tronax\zalmiklobby\listeners\DropListener.class +xyz\tronax\zalmiklobby\commands\CMD_ping.class +xyz\tronax\zalmiklobby\listeners\DamageListener.class +xyz\tronax\zalmiklobby\commands\CMD_fly.class +xyz\tronax\zalmiklobby\commands\CMD_spawn.class +xyz\tronax\zalmiklobby\listeners\BuildListener.class +xyz\tronax\zalmiklobby\listeners\JoinListener.class +xyz\tronax\zalmiklobby\listeners\LeaveListener.class +xyz\tronax\zalmiklobby\commands\CMD_build.class +xyz\tronax\zalmiklobby\commands\CMD_setspawn.class +xyz\tronax\zalmiklobby\listeners\JoinItemListener.class +xyz\tronax\zalmiklobby\Main.class +xyz\tronax\zalmiklobby\listeners\HungerListener.class +xyz\tronax\zalmiklobby\listeners\XPListener.class diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst new file mode 100644 index 0000000..f5fb19a --- /dev/null +++ b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst @@ -0,0 +1,15 @@ +Z:\Coding\IntelliJ-IdeaProjects\ZalmikLobby\src\main\java\xyz\tronax\zalmiklobby\commands\CMD_setspawn.java +Z:\Coding\IntelliJ-IdeaProjects\ZalmikLobby\src\main\java\xyz\tronax\zalmiklobby\listeners\BuildListener.java +Z:\Coding\IntelliJ-IdeaProjects\ZalmikLobby\src\main\java\xyz\tronax\zalmiklobby\Main.java +Z:\Coding\IntelliJ-IdeaProjects\ZalmikLobby\src\main\java\xyz\tronax\zalmiklobby\listeners\XPListener.java +Z:\Coding\IntelliJ-IdeaProjects\ZalmikLobby\src\main\java\xyz\tronax\zalmiklobby\listeners\HungerListener.java +Z:\Coding\IntelliJ-IdeaProjects\ZalmikLobby\src\main\java\xyz\tronax\zalmiklobby\listeners\LeaveListener.java +Z:\Coding\IntelliJ-IdeaProjects\ZalmikLobby\src\main\java\xyz\tronax\zalmiklobby\commands\CMD_chatclear.java +Z:\Coding\IntelliJ-IdeaProjects\ZalmikLobby\src\main\java\xyz\tronax\zalmiklobby\commands\CMD_ping.java +Z:\Coding\IntelliJ-IdeaProjects\ZalmikLobby\src\main\java\xyz\tronax\zalmiklobby\listeners\JoinItemListener.java +Z:\Coding\IntelliJ-IdeaProjects\ZalmikLobby\src\main\java\xyz\tronax\zalmiklobby\listeners\DropListener.java +Z:\Coding\IntelliJ-IdeaProjects\ZalmikLobby\src\main\java\xyz\tronax\zalmiklobby\listeners\JoinListener.java +Z:\Coding\IntelliJ-IdeaProjects\ZalmikLobby\src\main\java\xyz\tronax\zalmiklobby\commands\CMD_build.java +Z:\Coding\IntelliJ-IdeaProjects\ZalmikLobby\src\main\java\xyz\tronax\zalmiklobby\listeners\DamageListener.java +Z:\Coding\IntelliJ-IdeaProjects\ZalmikLobby\src\main\java\xyz\tronax\zalmiklobby\commands\CMD_spawn.java +Z:\Coding\IntelliJ-IdeaProjects\ZalmikLobby\src\main\java\xyz\tronax\zalmiklobby\commands\CMD_fly.java diff --git a/target/original-ZalmikLobby-1.0-SNAPSHOT.jar b/target/original-ZalmikLobby-1.0-SNAPSHOT.jar new file mode 100644 index 0000000..fe99b69 Binary files /dev/null and b/target/original-ZalmikLobby-1.0-SNAPSHOT.jar differ