diff --git a/pom.xml b/pom.xml
index b7669fe..4bc0684 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,7 +4,7 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0
- de.warking
+ de.steamwar
BauSystem
1.0
@@ -34,10 +34,9 @@
org.apache.maven.plugins
maven-compiler-plugin
- 3.6.1
-
- 1.8
+
+ 7
@@ -62,22 +61,11 @@
1.0
provided
-
- steamwar
- WorldGuard
- 1.0
- provided
-
steamwar
FAWE
1.0
provided
-
- commons-io
- commons-io
- 2.6
-
\ No newline at end of file
diff --git a/src/de/steamwar/bausystem/BauSystem.java b/src/de/steamwar/bausystem/BauSystem.java
index 510ae06..33dcdff 100644
--- a/src/de/steamwar/bausystem/BauSystem.java
+++ b/src/de/steamwar/bausystem/BauSystem.java
@@ -1,16 +1,25 @@
package de.steamwar.bausystem;
import de.steamwar.bausystem.commands.*;
-import de.warking.hunjy.MySQL.Bauwelt;
+import de.steamwar.bausystem.sql.Bauwelt;
+import de.steamwar.bausystem.world.ArenaSection;
+import de.steamwar.bausystem.world.RegionListener;
+import de.steamwar.bausystem.world.TNTTracer;
+import de.warking.hunjy.MySQL.WarkingUser;
import org.bukkit.Bukkit;
+import org.bukkit.configuration.InvalidConfigurationException;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.entity.PlayerDeathEvent;
import org.bukkit.event.player.PlayerJoinEvent;
+import org.bukkit.event.player.PlayerQuitEvent;
import org.bukkit.permissions.PermissionAttachment;
import org.bukkit.plugin.java.JavaPlugin;
+import java.io.File;
+import java.io.IOException;
+import java.util.List;
import java.util.UUID;
public class BauSystem extends JavaPlugin implements Listener {
@@ -18,7 +27,9 @@ public class BauSystem extends JavaPlugin implements Listener {
private static UUID owner;
private static Bauwelt welt;
private static TNTTracer tracer;
+ private static List sections;
public static final String PREFIX = "§eBauSystem§8» §7";
+ public static final String SECTION_PATH = "";
@Override
public void onEnable() {
@@ -47,6 +58,14 @@ public class BauSystem extends JavaPlugin implements Listener {
return;
}
+ try {
+ sections = ArenaSection.loadFromFile(new File(Bukkit.getWorldContainer().getPath() + '/' + owner.toString() + "/sections.yml"));
+ } catch (IOException | InvalidConfigurationException e) {
+ e.printStackTrace();
+ Bukkit.shutdown();
+ return;
+ }
+
getCommand("trace").setExecutor(new CommandTrace());
getCommand("nightvision").setExecutor(new CommandNV());
getCommand("reset").setExecutor(new CommandReset());
@@ -54,6 +73,7 @@ public class BauSystem extends JavaPlugin implements Listener {
getCommand("tnt").setExecutor(new CommandTNT());
getCommand("fire").setExecutor(new CommandFire());
getCommand("testblock").setExecutor(new CommandTestblock());
+ getCommand("bau").setExecutor(new CommandBau());
Bukkit.getPluginManager().registerEvents(this, this);
Bukkit.getPluginManager().registerEvents(new RegionListener(), this);
@@ -71,6 +91,12 @@ public class BauSystem extends JavaPlugin implements Listener {
public static TNTTracer getTracer(){
return tracer;
}
+ public static List getSections(){
+ return sections;
+ }
+ public static int getOwnerID(){
+ return WarkingUser.get(owner).getId();
+ }
@EventHandler
public void onDeath(PlayerDeathEvent e) {
@@ -86,4 +112,10 @@ public class BauSystem extends JavaPlugin implements Listener {
attachment.setPermission("worldedit.navigation.jumpto.tool", true);
attachment.setPermission("worldedit.navigation.thru.tool", true);
}
+
+ @EventHandler
+ public void onLeave(PlayerQuitEvent e){
+ if(Bukkit.getOnlinePlayers().isEmpty())
+ Bukkit.shutdown();
+ }
}
diff --git a/src/de/steamwar/bausystem/Region.java b/src/de/steamwar/bausystem/Region.java
deleted file mode 100644
index 93bfe74..0000000
--- a/src/de/steamwar/bausystem/Region.java
+++ /dev/null
@@ -1,20 +0,0 @@
-package de.steamwar.bausystem;
-
-public class Region {
-
- int SchemsizeX;
- int SchemsizeY;
- int SchemsizeZ;
-
- int MinX;
- int MinY;
- int MinZ;
-
- int MaxX;
- int MaxY;
- int MaxZ;
-
- boolean TestblockSouth;
-
- //TODO: ADD MORE
-}
diff --git a/src/de/steamwar/bausystem/commands/CommandBau.java b/src/de/steamwar/bausystem/commands/CommandBau.java
index 0434022..37e329e 100644
--- a/src/de/steamwar/bausystem/commands/CommandBau.java
+++ b/src/de/steamwar/bausystem/commands/CommandBau.java
@@ -1,11 +1,21 @@
package de.steamwar.bausystem.commands;
-public class CommandBau {
+import de.steamwar.bausystem.BauSystem;
+import de.steamwar.bausystem.sql.BauweltMember;
+import de.steamwar.bausystem.world.Welt;
+import de.warking.hunjy.MySQL.WarkingUser;
+import org.bukkit.command.Command;
+import org.bukkit.command.CommandExecutor;
+import org.bukkit.command.CommandSender;
+import org.bukkit.entity.Player;
+
+import java.util.UUID;
+
+public class CommandBau implements CommandExecutor {
//TODO: Move to BungeeCore
- /*
- @Command(name = "bau", aliases = {"bau.help", "gs", "gs.help"}, inGameOnly = true)
+ /*@Command(name = "bau", aliases = {"bau.help", "gs", "gs.help"}, inGameOnly = true)
public void onHelp(CommandArgs args) {
Player p = args.getPlayer();
p.sendMessage(BauSystem.PREFIX + "Hilfeseite 1 von 2:");
@@ -43,7 +53,7 @@ public class CommandBau {
if (Bukkit.getWorld(p.getUniqueId().toString()) == null){
p.sendMessage(BauSystem.PREFIX + "§aEinen Moment bitte... Deine Welt wird vorbereitet");
try {
- BauWorld.loadWorld(p.getUniqueId());
+ Welt.loadWorld(p.getUniqueId());
} catch (IOException e) {
p.sendMessage(BauSystem.PREFIX + "§cBeim Laden der Welt ist ein Fehler aufgetreten");
e.printStackTrace();
@@ -64,7 +74,7 @@ public class CommandBau {
}
UUID worldOwner = WarkingUser.get(args.getArgs(0)).getUUID();
- if (!BauWorld.hasPermission(worldOwner, p, Permission.member)){
+ if (!Welt.hasPermission(worldOwner, p, Permission.member)){
p.sendMessage(BauSystem.PREFIX + "§cDu darfst dich nicht auf diese Welt teleportieren");
return;
}
@@ -72,7 +82,7 @@ public class CommandBau {
if (Bukkit.getWorld(worldOwner.toString()) == null){
p.sendMessage(BauSystem.PREFIX + "§aEinen Moment bitte... Die Welt wird vorbereitet");
try {
- BauWorld.loadWorld(worldOwner);
+ Welt.loadWorld(worldOwner);
} catch (IOException e) {
p.sendMessage(BauSystem.PREFIX + "§cBeim Laden der Welt ist ein Fehler aufgetreten");
e.printStackTrace();
@@ -109,136 +119,72 @@ public class CommandBau {
Player z = Bukkit.getPlayer(id);
if(z != null)
z.sendMessage(BauSystem.PREFIX + "§aDu wurdest zu der Welt von §6" + p.getName() + " §ahinzugefügt");
- }
+ }*/
- @Command(name = "bau.delmember", aliases = "gs.delmember", inGameOnly = true)
- public void onDel(CommandArgs args) {
- Player p = args.getPlayer();
- if (args.length() == 0) {
+ private void onDel(Player p, String arg) {
+ /*if (args.length() == 0) {
p.sendMessage(BauSystem.PREFIX + "/bau delmember ");
return;
- }
+ }*/
- UUID id = WarkingUser.get(args.getArgs(0)).getUUID();
- if(!toggleCheck(args, p, id)){
+ UUID id = WarkingUser.get(arg).getUUID();
+ if(!toggleCheck(p, id)){
return;
}
- BauweltMember target = BauweltMember.getBauMember(p.getUniqueId(), id);
- BauWorld.removePlayer(p, target);
+ BauweltMember target = BauweltMember.getBauMember(id);
+ Welt.removePlayer(p, target);
}
- @Command(name = "bau.togglebuild", aliases = "gs.togglebuild", inGameOnly = true)
- public void onToggleBD(CommandArgs args) {
- Player p = args.getPlayer();
- if (args.length() == 0) {
+ private void onToggleBD(Player p, String arg) {
+ /*if (args.length() == 0) {
p.sendMessage(BauSystem.PREFIX + "/bau togglebuild ");
return;
- }
+ }*/
- UUID id = WarkingUser.get(args.getArgs(0)).getUUID();
- if(!toggleCheck(args, p, id)){
+ UUID id = WarkingUser.get(arg).getUUID();
+ if(!toggleCheck(p, id)){
return;
}
- BauweltMember target = BauweltMember.getBauMember(p.getUniqueId(), id);
- BauWorld.toggleBuild(p, target);
+ BauweltMember target = BauweltMember.getBauMember(id);
+ Welt.toggleBuild(p, target);
}
- @Command(name = "bau.togglewe", aliases = "gs.togglewe", inGameOnly = true)
- public void onToggleWE(CommandArgs args) {
- Player p = args.getPlayer();
- if (args.length() == 0) {
+ private void onToggleWE(Player p, String arg) {
+ /*if (args.length() == 0) {
p.sendMessage(BauSystem.PREFIX + "/bau togglewe ");
return;
- }
+ }*/
- UUID id = WarkingUser.get(args.getArgs(0)).getUUID();
- if(!toggleCheck(args, p, id)){
+ UUID id = WarkingUser.get(arg).getUUID();
+ if(!toggleCheck(p, id)){
return;
}
- BauweltMember target = BauweltMember.getBauMember(p.getUniqueId(), id);
- BauWorld.toggleWE(p, target);
+ BauweltMember target = BauweltMember.getBauMember(id);
+ Welt.toggleWE(p, target);
}
- @Command(name = "bau.toggleworld", aliases = "gs.toggleworld", inGameOnly = true)
- public void onToggleTestblock(CommandArgs args) {
- Player p = args.getPlayer();
- if (args.length() == 0) {
+ private void onToggleWorld(Player p, String arg) {
+ /*if (args.length() == 0) {
p.sendMessage(BauSystem.PREFIX + "/bau toggleworld ");
return;
- }
+ }*/
- UUID id = WarkingUser.get(args.getArgs(0)).getUUID();
- if(!toggleCheck(args, p, id)){
+ UUID id = WarkingUser.get(arg).getUUID();
+ if(!toggleCheck(p, id)){
return;
}
- BauweltMember target = BauweltMember.getBauMember(p.getUniqueId(), id);
- BauWorld.toggleTestblock(p, target);
+ BauweltMember target = BauweltMember.getBauMember(id);
+ Welt.toggleTestblock(p, target);
}
- @Command(name = "bau.testblock", aliases = {"gs.testblock", "testblock"}, inGameOnly = true)
- public void onTestblock(CommandArgs args) {
- final Player p = args.getPlayer();
-
- UUID worldOwner = BauWorld.getWorldUUID(p.getWorld());
- if (!BauWorld.hasPermission(worldOwner, p, Permission.worldedit)){
- p.sendMessage(BauSystem.PREFIX + "§cDu darfst hier nicht den Testblock erneuern");
- return;
- }
-
- Location playerLocation = p.getLocation();
- World playerWorld = p.getWorld();
-
- for (ProtectedRegion rg : BauSystem.getWorldGuard().getRegionManager(playerWorld).getApplicableRegions(playerLocation)) {
-
- String rgID = rg.getId();
-
- if(rgID.equalsIgnoreCase("resetall"))
- continue;
-
- Vector position = new Vector(Integer.parseInt(BauSystem.getPlugin().getRegionData.getString("regions." + rgID + ".position.X")), Integer.parseInt(BauSystem.getPlugin().getRegionData.getString("regions." + rgID + ".position.Y")), Integer.parseInt(BauSystem.getPlugin().getRegionData.getString("regions." + rgID + ".position.Z")));
- File file = new File(BauSystem.getPlugin().getRegionData.getString("regions." + rgID + ".schematic.testblock"));
-
- pasteSchematic(p, file, position);
- p.sendMessage(BauSystem.PREFIX + "§aTestblock erneuert");
- }
- }
-
- @Command(name = "bau.reset", aliases = {"gs.reset", "reset"}, inGameOnly = true)
- public void onReset(CommandArgs args) {
- final Player p = args.getPlayer();
-
- UUID worldOwner = BauWorld.getWorldUUID(p.getWorld());
- if (!BauWorld.hasPermission(worldOwner, p, Permission.world)){
- p.sendMessage(BauSystem.PREFIX + "§cDu darfst hier keine Regionen erneuern");
- return;
- }
-
- Location playerLocation = p.getLocation();
- World playerWorld = p.getWorld();
-
- for (ProtectedRegion rg : BauSystem.getWorldGuard().getRegionManager(playerWorld).getApplicableRegions(playerLocation)) {
- String rgID = rg.getId();
-
- if(rgID.equalsIgnoreCase("resetall"))
- continue;
-
- Vector position = new Vector(Integer.parseInt(BauSystem.getPlugin().getRegionData.getString("regions." + rgID + ".position.X")), Integer.parseInt(BauSystem.getPlugin().getRegionData.getString("regions." + rgID + ".position.Y")), Integer.parseInt(BauSystem.getPlugin().getRegionData.getString("regions." + rgID + ".position.Z")));
- File file = new File(BauSystem.getPlugin().getRegionData.getString("regions." + rgID + ".schematic.reset"));
-
- pasteSchematic(p, file, position);
- p.sendMessage(BauSystem.PREFIX + "§aRegion " + rgID + " wurde erneuert");
- }
- }
-
- @Command(name = "bau.resetall", aliases = "gs.resetall", inGameOnly = true)
- public void onResetAll(CommandArgs args) {
+ /*public void onResetAll(CommandArgs args) {
final Player p = args.getPlayer();
p.sendMessage(BauSystem.PREFIX + "§aDeine Welt wird zurückgesetzt. Einen Moment bitte");
- BauWorld.unloadWorld(p.getUniqueId());
+ Welt.unloadWorld(p.getUniqueId());
File directory = new File("plugins/BauSystem/worlds/" + p.getUniqueId().toString());
del(directory);
File directory1 = new File("plugins/WorldGuard/worlds/" + p.getUniqueId().toString());
@@ -246,171 +192,6 @@ public class CommandBau {
Bukkit.getScheduler().scheduleSyncDelayedTask(BauSystem.getInstance(), () -> onHome(args),20L);
}
- @Command(name = "bau.replace", aliases = "gs.replace", inGameOnly = true)
- public void onReplace(CommandArgs args) {
- final Player p = args.getPlayer();
- UUID worldOwner = BauWorld.getWorldUUID(p.getWorld());
- if (!BauWorld.hasPermission(worldOwner, p, Permission.worldedit)){
- p.sendMessage(BauSystem.PREFIX + "§cDu darfst hier nicht Obsidian und Grundgestein ersetzen");
- return;
- }
-
- World world = p.getWorld();
- for(ProtectedRegion rg : BauSystem.getWorldGuard().getRegionManager(world).getApplicableRegions(p.getLocation())) {
- String rgID = rg.getId();
-
- if(rgID.equalsIgnoreCase("resetall"))
- continue;
-
- EditSession editSession = BauSystem.getWorldEdit().getWorldEdit().getEditSessionFactory().getEditSession(new BukkitWorld(p.getWorld()), Integer.MAX_VALUE);
- CuboidSelection selection = new CuboidSelection(p.getWorld(), new Location(p.getWorld(), rg.getMinimumPoint().getBlockX(), rg.getMinimumPoint().getBlockY(), rg.getMinimumPoint().getBlockZ()), new Location(p.getWorld(), rg.getMaximumPoint().getBlockX(), rg.getMaximumPoint().getBlockY(), rg.getMaximumPoint().getBlockZ()));
-
- Set targetObsidian = new HashSet<>();
- targetObsidian.add(new BaseBlock(49));
- Set targetBedrock = new HashSet<>();
- targetBedrock.add(new BaseBlock(7));
- try {
-
- int tnt = editSession.replaceBlocks(selection.getRegionSelector().getRegion(), targetObsidian, new BaseBlock(46));
- int slime = editSession.replaceBlocks(selection.getRegionSelector().getRegion(), targetBedrock, new BaseBlock(165));
- editSession.flushQueue();
-
- p.sendMessage(BauSystem.PREFIX + "§aEs wurden " + (tnt + slime) + " Obsidian und Grundgestein ersetzt");
-
- } catch(Exception ex) { ex.printStackTrace(); }
- }
- }
-
- @Command(name = "bau.info", aliases = "gs.info", inGameOnly = true)
- public void onInfo(CommandArgs args) {
- final Player p = args.getPlayer();
- UUID worldOwner = BauWorld.getWorldUUID(p.getWorld());
-
- if(worldOwner == null){
- p.sendMessage(BauSystem.PREFIX + "§cDu bist auf keiner Bauwelt");
- return;
- }
-
- Bukkit.getScheduler().runTaskAsynchronously(BauSystem.getInstance(), () -> {
- Bauwelt welt = Bauwelt.getBauwelt(worldOwner);
- p.sendMessage("§6Besitzer§8: §6" + WarkingUser.get(welt.getUserID()).getUserName());
-
- if(welt.isTNTDmg())
- p.sendMessage("§6TNT-Schaden§8: §aerlaubt");
- else
- p.sendMessage("§6TNT-Schaden§8: §cverboten");
- if(welt.isFireDmg())
- p.sendMessage("§6Feuer-Schaden§8: §aerlaubt");
- else
- p.sendMessage("§6Feuer-Schaden§8: §cverboten");
-
- List memberList = BauweltMember.getMembers(worldOwner);
- if(!memberList.isEmpty()){
- StringBuilder members = new StringBuilder();
- members.append("Mitglieder§8: ");
-
- for(BauweltMember member : memberList){
- members.append("§6");
- members.append(WarkingUser.get(member.getMemberID()).getUserName());
- members.append("§8, ");
- }
- p.sendMessage(members.toString());
- }
- });
- }
-
- @Command(name = "bau.tntdmg", aliases = {"gs.tntdmg", "bau.tnt", "gs.tnt", "tnt"}, inGameOnly = true)
- public void onTntdmg(CommandArgs args){
- BauWorld.switchTNT(args.getPlayer());
- }
-
- @Command(name = "bau.firedmg", aliases = {"gs.firedmg", "bau.fire", "gs.fire", "fire"}, inGameOnly = true)
- public void onFiredmg(CommandArgs args) {
- BauWorld.switchFire(args.getPlayer());
- }
-
- @Command(name = "bau.speed", aliases = {"gs.speed", "speed"}, inGameOnly = true)
- public void onSpeed(CommandArgs args){
- final Player player = args.getPlayer();
- if (args.length() == 0){
- player.sendMessage(BauSystem.PREFIX + "/speed [Geschwindigkeit]");
- return;
- }
-
- float speed;
- try{
- speed = Float.valueOf(args.getArgs(0));
- }catch(NumberFormatException e){
- player.sendMessage(BauSystem.PREFIX + "§cBitte gib eine Zahl zwischen 0 und 10 an");
- return;
- }
- if (speed < 0 || speed > 10) {
- player.sendMessage(BauSystem.PREFIX + "§cBitte gib eine Zahl zwischen 0 und 10 an");
- return;
- }
-
- player.sendMessage("§aGeschwindigkeit wurde auf §6" + speed + " §agesetzt");
- if(speed == 1.0f){
- speed = 1.25f;
- }
- player.setFlySpeed(speed / 10);
- player.setWalkSpeed(speed / 10);
-
- }
-
- @Command(name = "bau.time", inGameOnly = true)
- public void onTime(CommandArgs args){
- Player p = args.getPlayer();
- if(args.length() == 0){
- p.sendMessage(BauSystem.PREFIX + "/time ");
- return;
- }
-
- UUID worldOwner = BauWorld.getWorldUUID(p.getWorld());
- if (!BauWorld.hasPermission(worldOwner, p, Permission.world)){
- p.sendMessage(BauSystem.PREFIX + "§cDu darfst hier nicht die Zeit ändern");
- return;
- }
-
- int time;
- try{
- time = Integer.valueOf(args.getArgs(0));
- }catch(NumberFormatException e){
- p.sendMessage(BauSystem.PREFIX + "§cBitte gib eine Zahl zwischen 0 und 24000 an");
- return;
- }
- if (time < 0 || time > 24000) {
- p.sendMessage(BauSystem.PREFIX + "§cBitte gib eine Zahl zwischen 0 und 24000 an");
- return;
- }
-
- p.getWorld().setTime(time);
- }
-
- private void pasteSchematic(Player player, File schematic, Vector position) {
-
- int count = 0;
-
- World world = player.getWorld();
-
- for(ProtectedRegion rg: BauSystem.getWorldGuard().getRegionManager(world).getApplicableRegions(player.getLocation())) {
- count++;
- if(count != 0) {
-
- EditSession session = BauSystem.getWorldEdit().getWorldEdit().getEditSessionFactory().getEditSession(new BukkitWorld(world), Integer.MAX_VALUE);
- try {
-
- CuboidClipboard format = MCEditSchematicFormat.getFormat(schematic).load(schematic);
- format.paste(session, position, false);
-
- } catch (Exception ex) {
- player.sendMessage(ex.getMessage());
- ex.printStackTrace();
- }
- }
- }
- }
-
private void del(File dir){
if (dir.isDirectory()){
String[] entries = dir.list();
@@ -431,24 +212,37 @@ public class CommandBau {
return false;
}
return true;
- }
-
- private boolean toggleCheck(CommandArgs args, Player p, UUID id){
- if (!hasWorld(p)) {
- //p.sendMessage(BauSystem.PREFIX + "§cDu hast noch keine Bauwelt");
- return false;
- }
+ }*/
+ private boolean toggleCheck(Player p, UUID id){
if (id == null) {
p.sendMessage(BauSystem.PREFIX + "§cUnbekannter Spieler");
return false;
}
- BauweltMember target = BauweltMember.getBauMember(p.getUniqueId(), id);
+ BauweltMember target = BauweltMember.getBauMember(id);
if (target == null) {
- p.sendMessage(BauSystem.PREFIX + "§cDer Spieler ist kein Mitglied deiner Welt");
+ p.sendMessage(BauSystem.PREFIX + "§cDer Spieler ist kein Mitglied deiner Welt!");
return false;
}
return true;
- }*/
+ }
+
+ @Override
+ public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
+ if(!(sender instanceof Player))
+ return false;
+ Player player = (Player) sender;
+
+ if(args[0].equalsIgnoreCase("delmember")){
+ onDel(player, args[1]);
+ }else if(args[0].equalsIgnoreCase("togglebuild")){
+ onToggleBD(player, args[1]);
+ }else if(args[0].equalsIgnoreCase("togglewe")){
+ onToggleWE(player, args[1]);
+ }else if(args[0].equalsIgnoreCase("toggleworld")){
+ onToggleWorld(player, args[1]);
+ }
+ return false;
+ }
}
diff --git a/src/de/steamwar/bausystem/commands/CommandFire.java b/src/de/steamwar/bausystem/commands/CommandFire.java
index 9f36045..9dce0f9 100644
--- a/src/de/steamwar/bausystem/commands/CommandFire.java
+++ b/src/de/steamwar/bausystem/commands/CommandFire.java
@@ -1,5 +1,6 @@
package de.steamwar.bausystem.commands;
+import de.steamwar.bausystem.world.Welt;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
diff --git a/src/de/steamwar/bausystem/CommandRemover.java b/src/de/steamwar/bausystem/commands/CommandRemover.java
similarity index 96%
rename from src/de/steamwar/bausystem/CommandRemover.java
rename to src/de/steamwar/bausystem/commands/CommandRemover.java
index 7aabdef..54e56f4 100644
--- a/src/de/steamwar/bausystem/CommandRemover.java
+++ b/src/de/steamwar/bausystem/commands/CommandRemover.java
@@ -1,4 +1,4 @@
-package de.steamwar.bausystem;
+package de.steamwar.bausystem.commands;
import org.bukkit.Bukkit;
import org.bukkit.command.Command;
@@ -7,7 +7,7 @@ import org.bukkit.command.SimpleCommandMap;
import java.lang.reflect.Field;
import java.util.Map;
-class CommandRemover {
+public class CommandRemover {
private CommandRemover(){}
diff --git a/src/de/steamwar/bausystem/commands/CommandReset.java b/src/de/steamwar/bausystem/commands/CommandReset.java
index 2bccd5a..0dc1e53 100644
--- a/src/de/steamwar/bausystem/commands/CommandReset.java
+++ b/src/de/steamwar/bausystem/commands/CommandReset.java
@@ -1,5 +1,9 @@
package de.steamwar.bausystem.commands;
+import de.steamwar.bausystem.BauSystem;
+import de.steamwar.bausystem.Permission;
+import de.steamwar.bausystem.world.ArenaSection;
+import de.steamwar.bausystem.world.Welt;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
@@ -13,7 +17,19 @@ public class CommandReset implements CommandExecutor {
return false;
Player player = (Player) sender;
+ if(!Welt.hasPermission(player, Permission.world)){
+ player.sendMessage(BauSystem.PREFIX + "§cDu darfst hier nicht die Region zurücksetzen");
+ return false;
+ }
+ for(ArenaSection section : BauSystem.getSections()){
+ if(section.inRegion(player.getLocation())){
+ section.reset();
+ return false;
+ }
+ }
+
+ player.sendMessage(BauSystem.PREFIX + "§cDu befindest dich derzeit in keiner Region");
return false;
}
}
diff --git a/src/de/steamwar/bausystem/commands/CommandTNT.java b/src/de/steamwar/bausystem/commands/CommandTNT.java
index 27178ae..d75baa8 100644
--- a/src/de/steamwar/bausystem/commands/CommandTNT.java
+++ b/src/de/steamwar/bausystem/commands/CommandTNT.java
@@ -1,5 +1,6 @@
package de.steamwar.bausystem.commands;
+import de.steamwar.bausystem.world.Welt;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
diff --git a/src/de/steamwar/bausystem/commands/CommandTestblock.java b/src/de/steamwar/bausystem/commands/CommandTestblock.java
index 3906671..9549b87 100644
--- a/src/de/steamwar/bausystem/commands/CommandTestblock.java
+++ b/src/de/steamwar/bausystem/commands/CommandTestblock.java
@@ -1,5 +1,9 @@
package de.steamwar.bausystem.commands;
+import de.steamwar.bausystem.BauSystem;
+import de.steamwar.bausystem.Permission;
+import de.steamwar.bausystem.world.ArenaSection;
+import de.steamwar.bausystem.world.Welt;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
@@ -13,7 +17,19 @@ public class CommandTestblock implements CommandExecutor {
return false;
Player player = (Player) sender;
+ if(!Welt.hasPermission(player, Permission.worldedit)){
+ player.sendMessage(BauSystem.PREFIX + "§cDu darfst hier nicht den Testblock zurücksetzen");
+ return false;
+ }
+ for(ArenaSection section : BauSystem.getSections()){
+ if(section.inRegion(player.getLocation())){
+ section.getTestblock().reset();
+ return false;
+ }
+ }
+
+ player.sendMessage(BauSystem.PREFIX + "§cDu befindest dich derzeit in keiner Region");
return false;
}
}
diff --git a/src/de/steamwar/bausystem/commands/CommandTime.java b/src/de/steamwar/bausystem/commands/CommandTime.java
index cf54ccb..331897b 100644
--- a/src/de/steamwar/bausystem/commands/CommandTime.java
+++ b/src/de/steamwar/bausystem/commands/CommandTime.java
@@ -2,6 +2,7 @@ package de.steamwar.bausystem.commands;
import de.steamwar.bausystem.BauSystem;
import de.steamwar.bausystem.Permission;
+import de.steamwar.bausystem.world.Welt;
import org.bukkit.Bukkit;
import org.bukkit.command.CommandSender;
import org.bukkit.command.defaults.BukkitCommand;
diff --git a/src/de/steamwar/bausystem/commands/CommandTrace.java b/src/de/steamwar/bausystem/commands/CommandTrace.java
index 4830d1f..7af3691 100644
--- a/src/de/steamwar/bausystem/commands/CommandTrace.java
+++ b/src/de/steamwar/bausystem/commands/CommandTrace.java
@@ -2,7 +2,7 @@ package de.steamwar.bausystem.commands;
import de.steamwar.bausystem.BauSystem;
import de.steamwar.bausystem.Permission;
-import de.steamwar.bausystem.TNTTracer;
+import de.steamwar.bausystem.world.Welt;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
@@ -10,6 +10,8 @@ import org.bukkit.entity.Player;
public class CommandTrace implements CommandExecutor {
+ private static final String DENY_MESSAGE = "§cDu darfst hier nicht den TNT-Tracer nutzen";
+
private void help(Player player){
player.sendMessage("§8/§etrace start §7- Startet die Aufnahme aller TNT-Positionen");
player.sendMessage("§8/§etrace show §7- Zeigt alle TNT-Positionen");
@@ -19,7 +21,7 @@ public class CommandTrace implements CommandExecutor {
private void start(Player p){
if(!Welt.hasPermission(p, Permission.world)){
- p.sendMessage(BauSystem.PREFIX + "§cDu darfst hier nicht den TNT-Tracer nutzen");
+ p.sendMessage(BauSystem.PREFIX + DENY_MESSAGE);
return;
}
@@ -29,7 +31,7 @@ public class CommandTrace implements CommandExecutor {
private void stop(Player p){
if(!Welt.hasPermission(p, Permission.world)){
- p.sendMessage(BauSystem.PREFIX + "§cDu darfst hier nicht den TNT-Tracer nutzen");
+ p.sendMessage(BauSystem.PREFIX + DENY_MESSAGE);
return;
}
@@ -44,7 +46,7 @@ public class CommandTrace implements CommandExecutor {
private void show(Player p){
if(!Welt.hasPermission(p, Permission.world)){
- p.sendMessage(BauSystem.PREFIX + "§cDu darfst hier nicht den TNT-Tracer nutzen");
+ p.sendMessage(BauSystem.PREFIX + DENY_MESSAGE);
return;
}
@@ -59,7 +61,7 @@ public class CommandTrace implements CommandExecutor {
private void hide(Player p){
if(!Welt.hasPermission(p, Permission.world)){
- p.sendMessage(BauSystem.PREFIX + "§cDu darfst hier nicht den TNT-Tracer nutzen");
+ p.sendMessage(BauSystem.PREFIX + DENY_MESSAGE);
return;
}
diff --git a/src/de/steamwar/bausystem/sql/Bauwelt.java b/src/de/steamwar/bausystem/sql/Bauwelt.java
new file mode 100644
index 0000000..4559390
--- /dev/null
+++ b/src/de/steamwar/bausystem/sql/Bauwelt.java
@@ -0,0 +1,87 @@
+package de.steamwar.bausystem.sql;
+
+import de.warking.hunjy.MySQL.MySQL;
+import de.warking.hunjy.MySQL.WarkingUser;
+
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.util.UUID;
+
+import static de.warking.hunjy.Core.sql;
+
+public class Bauwelt {
+
+ private final int UserID;
+ private boolean TNTDmg;
+ private boolean FireDmg;
+
+ private Bauwelt(int userID, boolean tntDmg, boolean fireDmg, boolean updateDB){
+ UserID = userID;
+ TNTDmg = tntDmg;
+ FireDmg = fireDmg;
+ if(updateDB)
+ updateDB();
+ }
+
+ public Bauwelt(int userID, boolean tntDmg, boolean fireDmg){
+ this(userID, tntDmg, fireDmg, true);
+ }
+
+ public Bauwelt(UUID userID, boolean tntDmg, boolean fireDmg){
+ this(WarkingUser.get(userID).getId(), tntDmg, fireDmg, true);
+ }
+
+ private void updateDB(){
+ sql.update("INSERT INTO Bauwelt" +
+ " (UserID, TNTDmg, FireDmg)" +
+ " VALUES" +
+ " ('" + UserID + "', '" + MySQL.booleanToInt(TNTDmg) + "', '" + MySQL.booleanToInt(FireDmg) + "')" +
+ " ON DUPLICATE KEY UPDATE" +
+ " TNTDmg = VALUES(TNTDmg), FireDmg = VALUES(FireDmg)");
+ }
+
+ public static Bauwelt getBauwelt(UUID user){
+ return getBauwelt(WarkingUser.get(user).getId());
+ }
+
+ public static Bauwelt getBauwelt(int userId){
+ ResultSet bauwelt = sql.select("SELECT * FROM Bauwelt WHERE UserID = '" + userId + "'");
+ try {
+ if(bauwelt == null || !bauwelt.next()){
+ return null;
+ }
+ boolean tntDmg = bauwelt.getBoolean("TNTDmg");
+ boolean fireDmg = bauwelt.getBoolean("FireDmg");
+ return new Bauwelt(userId, tntDmg, fireDmg, false);
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ public int getUserID() {
+ return UserID;
+ }
+
+ public UUID getUUID(){
+ return WarkingUser.get(UserID).getUUID();
+ }
+
+ public boolean isTNTDmg() {
+ return TNTDmg;
+ }
+
+ public void setTNTDmg(boolean TNTDmg) {
+ this.TNTDmg = TNTDmg;
+ updateDB();
+ }
+
+ public boolean isFireDmg() {
+ return FireDmg;
+ }
+
+ public void setFireDmg(boolean fireDmg) {
+ FireDmg = fireDmg;
+ updateDB();
+ }
+}
\ No newline at end of file
diff --git a/src/de/steamwar/bausystem/sql/BauweltMember.java b/src/de/steamwar/bausystem/sql/BauweltMember.java
new file mode 100644
index 0000000..dbcb1f3
--- /dev/null
+++ b/src/de/steamwar/bausystem/sql/BauweltMember.java
@@ -0,0 +1,162 @@
+package de.steamwar.bausystem.sql;
+
+import de.steamwar.bausystem.BauSystem;
+import de.warking.hunjy.MySQL.MySQL;
+import de.warking.hunjy.MySQL.WarkingUser;
+
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.UUID;
+
+import static de.warking.hunjy.Core.sql;
+
+public class BauweltMember{
+ private final int BauweltID;
+ private final int MemberID;
+ private boolean Build;
+ private boolean ChangeGM;
+ private boolean Teleport;
+ private boolean WorldEdit;
+ private boolean Testblock;
+
+ private static final List members = new ArrayList<>();
+
+ private BauweltMember(int memberID, boolean build, boolean changeGM, boolean teleport, boolean worldEdit, boolean testblock, boolean updateDB){
+ BauweltID = BauSystem.getOwnerID();
+ MemberID = memberID;
+ Build = build;
+ ChangeGM = changeGM;
+ Teleport = teleport;
+ WorldEdit = worldEdit;
+ Testblock = testblock;
+ if(updateDB)
+ updateDB();
+ members.add(this);
+ }
+
+ public BauweltMember(int memberID, boolean build, boolean changeGM, boolean teleport, boolean worldEdit, boolean testblock){
+ this(memberID, build, changeGM, teleport, worldEdit, testblock, true);
+ }
+
+ public BauweltMember(UUID memberID, boolean build, boolean changeGM, boolean teleport, boolean worldEdit, boolean testblock){
+ this(WarkingUser.get(memberID).getId(), build, changeGM, teleport, worldEdit, testblock, true);
+ }
+
+ public void remove(){
+ sql.update("DELETE FROM BauweltMember WHERE BauweltID = " + BauweltID + " AND MemberID = " + MemberID);
+ members.remove(this);
+ }
+
+ private void updateDB(){
+ sql.update("INSERT INTO BauweltMember" +
+ " (BauweltID, MemberID, Build, ChangeGM, Teleport, WorldEdit, Testblock)" +
+ " VALUES" +
+ " ('" + BauweltID + "', '" + MemberID + "', '" + MySQL.booleanToInt(Build) + "', '" + MySQL.booleanToInt(ChangeGM) + "', '" + sql.booleanToInt(Teleport) + "', '" + sql.booleanToInt(WorldEdit) + "', '" + sql.booleanToInt(Testblock) + "')" +
+ " ON DUPLICATE KEY UPDATE" +
+ " Build = VALUES(Build), ChangeGM = VALUES(ChangeGM), Teleport = VALUES(Teleport), WorldEdit = VALUES(WorldEdit), Testblock = VALUES(Testblock)");
+ }
+
+ public static BauweltMember getBauMember(UUID memberID){
+ return getBauMember(WarkingUser.get(memberID).getId());
+ }
+
+ public static BauweltMember getBauMember(int memberID){
+ for(BauweltMember member : members)
+ if(member.MemberID == memberID)
+ return member;
+ ResultSet member = sql.select("SELECT * FROM BauweltMember WHERE BauweltID = '" + BauSystem.getOwnerID() + "' AND MemberID = '" + memberID + "'");
+ try {
+ if(member == null || !member.next()){
+ return null;
+ }
+ boolean build = member.getBoolean("Build");
+ boolean changeGM = member.getBoolean("ChangeGM");
+ boolean teleport = member.getBoolean("Teleport");
+ boolean worldEdit = member.getBoolean("WorldEdit");
+ boolean testblock = member.getBoolean("Testblock");
+ return new BauweltMember(memberID, build, changeGM, teleport, worldEdit, testblock, false);
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ public static List getMembers(UUID bauweltID){
+ return getMembers(WarkingUser.get(bauweltID).getId());
+ }
+
+ public static List getMembers(int bauweltID){
+ try{
+ ResultSet memberlist = sql.select("SELECT * FROM BauweltMember WHERE BauweltID = '" + bauweltID + "'");
+ List members = new ArrayList<>();
+ while(memberlist.next()){
+ int memberID = memberlist.getInt("MemberID");
+ boolean build = memberlist.getBoolean("Build");
+ boolean changeGM = memberlist.getBoolean("ChangeGM");
+ boolean teleport = memberlist.getBoolean("Teleport");
+ boolean worldEdit = memberlist.getBoolean("WorldEdit");
+ boolean testblock = memberlist.getBoolean("Testblock");
+ members.add(new BauweltMember(memberID, build, changeGM, teleport, worldEdit, testblock, false));
+ }
+ return members;
+ }catch(SQLException e){
+ e.printStackTrace();
+ }
+ return new ArrayList<>();
+ }
+
+ public int getBauweltID() {
+ return BauweltID;
+ }
+
+ public int getMemberID() {
+ return MemberID;
+ }
+
+ public boolean isBuild() {
+ return Build;
+ }
+
+ public void setBuild(boolean build) {
+ Build = build;
+ updateDB();
+ }
+
+ public boolean isChangeGM() {
+ return ChangeGM;
+ }
+
+ public void setChangeGM(boolean changeGM) {
+ ChangeGM = changeGM;
+ updateDB();
+ }
+
+ public boolean isTeleport() {
+ return Teleport;
+ }
+
+ public void setTeleport(boolean teleport) {
+ Teleport = teleport;
+ updateDB();
+ }
+
+ public boolean isWorldEdit() {
+ return WorldEdit;
+ }
+
+ public void setWorldEdit(boolean worldEdit) {
+ WorldEdit = worldEdit;
+ updateDB();
+ }
+
+ public boolean isTestblock() {
+ return Testblock;
+ }
+
+ public void setTestblock(boolean testblock) {
+ Testblock = testblock;
+ updateDB();
+ }
+}
\ No newline at end of file
diff --git a/src/de/steamwar/bausystem/world/ArenaSection.java b/src/de/steamwar/bausystem/world/ArenaSection.java
new file mode 100644
index 0000000..beee7b7
--- /dev/null
+++ b/src/de/steamwar/bausystem/world/ArenaSection.java
@@ -0,0 +1,42 @@
+package de.steamwar.bausystem.world;
+
+import org.bukkit.configuration.ConfigurationSection;
+import org.bukkit.configuration.InvalidConfigurationException;
+import org.bukkit.configuration.file.YamlConfiguration;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+public class ArenaSection extends Region {
+
+ private final Region testblock;
+
+ private ArenaSection(ConfigurationSection config) {
+ super(config);
+ testblock = new Region(config.getConfigurationSection("testblock"));
+ }
+
+ public Region getTestblock(){
+ return testblock;
+ }
+
+ @Override
+ public Map serialize() {
+ Map section = super.serialize();
+ for(Map.Entry subsection : testblock.serialize().entrySet())
+ section.put("testblock." + subsection.getKey(), subsection.getValue());
+ return section;
+ }
+
+ public static List loadFromFile(File file) throws IOException, InvalidConfigurationException {
+ YamlConfiguration config = new YamlConfiguration();
+ config.load(file);
+ List list = new ArrayList<>();
+ for(String section : config.getKeys(false))
+ list.add(new ArenaSection(config.getConfigurationSection(section)));
+ return list;
+ }
+}
diff --git a/src/de/steamwar/bausystem/world/Region.java b/src/de/steamwar/bausystem/world/Region.java
new file mode 100644
index 0000000..e707e29
--- /dev/null
+++ b/src/de/steamwar/bausystem/world/Region.java
@@ -0,0 +1,86 @@
+package de.steamwar.bausystem.world;
+
+import com.boydti.fawe.FaweAPI;
+import com.sk89q.worldedit.Vector;
+import com.sk89q.worldedit.bukkit.BukkitWorld;
+import com.sk89q.worldedit.math.transform.AffineTransform;
+import com.sk89q.worldedit.world.World;
+import de.steamwar.bausystem.BauSystem;
+import org.bukkit.Bukkit;
+import org.bukkit.Location;
+import org.bukkit.configuration.ConfigurationSection;
+import org.bukkit.configuration.serialization.ConfigurationSerializable;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.Map;
+
+public class Region implements ConfigurationSerializable {
+ private final int sizeX;
+ private final int sizeY;
+ private final int sizeZ;
+
+ private final int minX;
+ private final int minY;
+ private final int minZ;
+
+ private final String schematic;
+ private final boolean rotate;
+
+ Region(ConfigurationSection config){
+ Region rg = config.getSerializable("region", this.getClass());
+ sizeX = rg.sizeX;
+ sizeY = rg.sizeY;
+ sizeZ = rg.sizeZ;
+ minX = rg.minX;
+ minY = rg.minY;
+ minZ = rg.minZ;
+ schematic = rg.schematic;
+ rotate = rg.rotate;
+ }
+
+ public boolean inRegion(Location l){
+ return inRange(l.getX(), minX, sizeX) && inRange(l.getY(), minY, sizeY) && inRange(l.getZ(), minZ, sizeZ);
+ }
+
+ private boolean inRange(double l, int min, int size){
+ return min <= l && l <= min + size;
+ }
+
+ public void reset(){
+ File file = new File(BauSystem.SECTION_PATH + schematic);
+ com.boydti.fawe.object.schematic.Schematic schem;
+ try {
+ schem = FaweAPI.load(file);
+ }catch(IOException e){
+ e.printStackTrace();
+ return;
+ }
+ World w = new BukkitWorld(Bukkit.getWorlds().get(0));
+ Vector dimensions = schem.getClipboard().getDimensions();
+ Vector v = new Vector(minX + sizeX/2, minY, minZ + sizeZ/2);
+ Vector offset = new Vector(schem.getClipboard().getRegion().getMinimumPoint()).subtract(schem.getClipboard().getOrigin());
+ AffineTransform aT = new AffineTransform();
+ if(rotate){
+ aT = aT.rotateY(180);
+ v = v.add(dimensions.getX()/2 + dimensions.getX()%2, 0, dimensions.getZ()/2 + dimensions.getZ()%2).subtract(offset.multiply(-1, 1, -1)).subtract(1, 0, 1);
+ }else{
+ v = v.subtract(dimensions.getX()/2 - dimensions.getX()%2, 0, dimensions.getZ()/2 - dimensions.getZ()%2).subtract(offset);
+ }
+ schem.paste(w, v, false, true, aT).flushQueue();
+ }
+
+ public Map serialize() {
+ Map map = new HashMap<>();
+ map.put("sizeX", sizeX);
+ map.put("sizeY", sizeY);
+ map.put("sizeZ", sizeZ);
+ map.put("minX", minX);
+ map.put("minY", minY);
+ map.put("minZ", minZ);
+ map.put("schematic", schematic);
+ map.put("rotate", rotate);
+ return map;
+ }
+}
diff --git a/src/de/steamwar/bausystem/RegionListener.java b/src/de/steamwar/bausystem/world/RegionListener.java
similarity index 95%
rename from src/de/steamwar/bausystem/RegionListener.java
rename to src/de/steamwar/bausystem/world/RegionListener.java
index 980b172..c06dbcd 100644
--- a/src/de/steamwar/bausystem/RegionListener.java
+++ b/src/de/steamwar/bausystem/world/RegionListener.java
@@ -1,8 +1,9 @@
-package de.steamwar.bausystem;
+package de.steamwar.bausystem.world;
import com.sk89q.worldedit.bukkit.WorldEditPlugin;
-import de.steamwar.bausystem.commands.Welt;
+import de.steamwar.bausystem.BauSystem;
+import de.steamwar.bausystem.Permission;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
diff --git a/src/de/steamwar/bausystem/TNTTracer.java b/src/de/steamwar/bausystem/world/TNTTracer.java
similarity index 91%
rename from src/de/steamwar/bausystem/TNTTracer.java
rename to src/de/steamwar/bausystem/world/TNTTracer.java
index d09de56..a4833fa 100644
--- a/src/de/steamwar/bausystem/TNTTracer.java
+++ b/src/de/steamwar/bausystem/world/TNTTracer.java
@@ -1,5 +1,6 @@
-package de.steamwar.bausystem;
+package de.steamwar.bausystem.world;
+import de.steamwar.bausystem.BauSystem;
import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.Material;
@@ -20,8 +21,8 @@ public class TNTTracer implements Runnable {
private boolean printed;
private boolean active;
- TNTTracer(){
- this.locations = new HashSet<>();
+ public TNTTracer(){
+ this.locations = new HashSet();
this.printed = false;
this.active = false;
}
@@ -53,7 +54,7 @@ public class TNTTracer implements Runnable {
public void show(){
end();
printed = true;
- Set unsetLoc = new HashSet<>();
+ Set unsetLoc = new HashSet();
World world = Bukkit.getWorlds().get(0);
for(Location l : locations){
Block b = world.getBlockAt(l);
@@ -81,7 +82,6 @@ public class TNTTracer implements Runnable {
stop();
}
- @Override
public void run() {
if(locations.size() < 20000){
World world = Bukkit.getWorlds().get(0);
diff --git a/src/de/steamwar/bausystem/commands/Welt.java b/src/de/steamwar/bausystem/world/Welt.java
similarity index 93%
rename from src/de/steamwar/bausystem/commands/Welt.java
rename to src/de/steamwar/bausystem/world/Welt.java
index 11fa210..3ebff7f 100644
--- a/src/de/steamwar/bausystem/commands/Welt.java
+++ b/src/de/steamwar/bausystem/world/Welt.java
@@ -1,9 +1,10 @@
-package de.steamwar.bausystem.commands;
+package de.steamwar.bausystem.world;
import de.steamwar.bausystem.BauSystem;
import de.steamwar.bausystem.Permission;
-import de.warking.hunjy.MySQL.Bauwelt;
-import de.warking.hunjy.MySQL.BauweltMember;
+import de.steamwar.bausystem.sql.Bauwelt;
+import de.steamwar.bausystem.sql.BauweltMember;
+import de.warking.hunjy.MySQL.WarkingUser;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
@@ -15,7 +16,7 @@ public class Welt {
if(member.getUniqueId().equals(BauSystem.getOwner()))
return true;
- BauweltMember member1 = BauweltMember.getBauMember(BauSystem.getOwner(), member.getUniqueId());
+ BauweltMember member1 = BauweltMember.getBauMember(member.getUniqueId());
if(member1 == null)
return false;
@@ -61,9 +62,8 @@ public class Welt {
Bukkit.broadcastMessage(BauSystem.PREFIX + "§cFeuer-Schaden verboten");
}
- //TODO: To BungeeCore
- /*public static void toggleBuild(Player p, BauweltMember target){
+ public static void toggleBuild(Player p, BauweltMember target){
target.setBuild(!target.isBuild());
Player z = Bukkit.getPlayer(WarkingUser.get(target.getMemberID()).getUUID());
if (z != null) {
@@ -121,5 +121,5 @@ public class Welt {
z.kickPlayer(BauSystem.PREFIX + "§cDu wurdest von der Welt von §6" + p.getName() + " §centfernt");
}
p.sendMessage(BauSystem.PREFIX + "§cDer Spieler wurde entfernt");
- }*/
+ }
}
diff --git a/src/plugin.yml b/src/plugin.yml
index 29ec693..07d5ff8 100644
--- a/src/plugin.yml
+++ b/src/plugin.yml
@@ -10,6 +10,7 @@ commands:
trace:
testblock:
reset:
+ bau:
speed:
nightvision:
aliases: nv
\ No newline at end of file