Fist Build

This commit is contained in:
BuildTools 2024-01-15 17:43:19 +01:00
commit 6da37ac201
47 changed files with 922 additions and 0 deletions

3
.idea/.gitignore generated vendored Normal file
View file

@ -0,0 +1,3 @@
# Default ignored files
/shelf/
/workspace.xml

13
.idea/compiler.xml generated Normal file
View file

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<annotationProcessing>
<profile name="Maven default annotation processors profile" enabled="true">
<sourceOutputDir name="target/generated-sources/annotations" />
<sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
<outputRelativeToContentRoot value="true" />
<module name="ZalmikLobby" />
</profile>
</annotationProcessing>
</component>
</project>

7
.idea/encodings.xml generated Normal file
View file

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding">
<file url="file://$PROJECT_DIR$/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/src/main/resources" charset="UTF-8" />
</component>
</project>

30
.idea/jarRepositories.xml generated Normal file
View file

@ -0,0 +1,30 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RemoteRepositoriesConfiguration">
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Central Repository" />
<option name="url" value="https://repo.maven.apache.org/maven2" />
</remote-repository>
<remote-repository>
<option name="id" value="sonatype" />
<option name="name" value="sonatype" />
<option name="url" value="https://oss.sonatype.org/content/groups/public/" />
</remote-repository>
<remote-repository>
<option name="id" value="spigotmc-repo" />
<option name="name" value="spigotmc-repo" />
<option name="url" value="https://hub.spigotmc.org/nexus/content/repositories/snapshots/" />
</remote-repository>
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Maven Central repository" />
<option name="url" value="https://repo1.maven.org/maven2" />
</remote-repository>
<remote-repository>
<option name="id" value="jboss.community" />
<option name="name" value="JBoss Community repository" />
<option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" />
</remote-repository>
</component>
</project>

15
.idea/misc.xml generated Normal file
View file

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ExternalStorageConfigurationManager" enabled="true" />
<component name="MavenProjectsManager">
<option name="originalFiles">
<list>
<option value="$PROJECT_DIR$/pom.xml" />
</list>
</option>
<option name="workspaceImportForciblyTurnedOn" value="true" />
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_19" default="true" project-jdk-name="19" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>

8
.idea/modules.xml generated Normal file
View file

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/ZalmikLobby.iml" filepath="$PROJECT_DIR$/ZalmikLobby.iml" />
</modules>
</component>
</project>

6
.idea/vcs.xml generated Normal file
View file

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$" vcs="Git" />
</component>
</project>

16
ZalmikLobby.iml Normal file
View file

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<module version="4">
<component name="FacetManager">
<facet type="minecraft" name="Minecraft">
<configuration>
<autoDetectTypes>
<platformType>SPIGOT</platformType>
</autoDetectTypes>
<projectReimportVersion>1</projectReimportVersion>
</configuration>
</facet>
</component>
<component name="McpModuleSettings">
<option name="srgType" value="SRG" />
</component>
</module>

View file

@ -0,0 +1,60 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>xyz.tronax</groupId>
<artifactId>ZalmikLobby</artifactId>
<name>ZalmikLobby</name>
<version>1.0-SNAPSHOT</version>
<build>
<resources>
<resource>
<filtering>true</filtering>
<directory>src/main/resources</directory>
</resource>
</resources>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>${java.version}</source>
<target>${java.version}</target>
</configuration>
</plugin>
<plugin>
<artifactId>maven-shade-plugin</artifactId>
<version>3.2.4</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<repositories>
<repository>
<id>spigotmc-repo</id>
<url>https://hub.spigotmc.org/nexus/content/repositories/snapshots/</url>
</repository>
<repository>
<id>sonatype</id>
<url>https://oss.sonatype.org/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>org.spigotmc</groupId>
<artifactId>spigot-api</artifactId>
<version>1.20.4-R0.1-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
</dependencies>
<properties>
<java.version>1.8</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
</project>

76
pom.xml Normal file
View file

@ -0,0 +1,76 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>xyz.tronax</groupId>
<artifactId>ZalmikLobby</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>ZalmikLobby</name>
<properties>
<java.version>1.8</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>${java.version}</source>
<target>${java.version}</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.2.4</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
</build>
<repositories>
<repository>
<id>spigotmc-repo</id>
<url>https://hub.spigotmc.org/nexus/content/repositories/snapshots/</url>
</repository>
<repository>
<id>sonatype</id>
<url>https://oss.sonatype.org/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>org.spigotmc</groupId>
<artifactId>spigot-api</artifactId>
<version>1.20.4-R0.1-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.spigotmc</groupId>
<artifactId>spigot</artifactId>
<version>1.20.4-R0.1-SNAPSHOT</version>
</dependency>
</dependencies>
</project>

View file

@ -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<String> build = new ArrayList<String>();
public static ArrayList<String> flymode = new ArrayList<String>();
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);
}
}

View file

@ -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;
}
}

View file

@ -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;
}
}

View file

@ -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;
}
}

View file

@ -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;
}
}

View file

@ -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;
}
}

View file

@ -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;
}
}

View file

@ -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++;
}
}
}
}

View file

@ -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);
}
}
}

View file

@ -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++;
}
}
}
}

View file

@ -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);
}
}
}

View file

@ -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<String> flyfeatherlore = new ArrayList<String>();
@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);
}
}
}

View file

@ -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);
}
}

View file

@ -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("");
}
}

View file

@ -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);
}
}

View file

@ -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.

Binary file not shown.

View file

@ -0,0 +1,4 @@
name: ZalmikLobby
version: '1.0-SNAPSHOT'
main: xyz.tronax.zalmiklobby.Main
api-version: '1.20'

Binary file not shown.

View file

@ -0,0 +1,3 @@
artifactId=ZalmikLobby
groupId=xyz.tronax
version=1.0-SNAPSHOT

View file

@ -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

View file

@ -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

Binary file not shown.