diff --git a/config.yml b/config.yml index 7fc7486..1dbc12b 100644 --- a/config.yml +++ b/config.yml @@ -5,7 +5,6 @@ Times: SpectatorDuration: 0 Arena: - WorldName: worldName Schemsize: x: 0 y: 0 @@ -37,6 +36,7 @@ WinConditions: AllDead: boolean CaptainDead: boolean PercentSystem: boolean + Entern: boolean WinConditionParams: TimeoutTime: 0 @@ -44,7 +44,6 @@ WinConditionParams: PercentWin: 0 Fight: - Entern: boolean OnlyPublicSchematics: boolean Money: diff --git a/out/artifacts/production/Diamant-ix FightSystem/me/yaruma/fightsystem/FightSystem.class b/out/artifacts/production/Diamant-ix FightSystem/me/yaruma/fightsystem/FightSystem.class index 53ee456..b027582 100644 Binary files a/out/artifacts/production/Diamant-ix FightSystem/me/yaruma/fightsystem/FightSystem.class and b/out/artifacts/production/Diamant-ix FightSystem/me/yaruma/fightsystem/FightSystem.class differ diff --git a/out/artifacts/production/Diamant-ix FightSystem/me/yaruma/fightsystem/fight/WaterRemover.class b/out/artifacts/production/Diamant-ix FightSystem/me/yaruma/fightsystem/fight/WaterRemover.class index c876a08..cb1d93f 100644 Binary files a/out/artifacts/production/Diamant-ix FightSystem/me/yaruma/fightsystem/fight/WaterRemover.class and b/out/artifacts/production/Diamant-ix FightSystem/me/yaruma/fightsystem/fight/WaterRemover.class differ diff --git a/out/artifacts/production/Diamant-ix FightSystem/me/yaruma/fightsystem/listener/EntityExplodeListener.class b/out/artifacts/production/Diamant-ix FightSystem/me/yaruma/fightsystem/listener/EntityExplodeListener.class index 5c44c73..630da96 100644 Binary files a/out/artifacts/production/Diamant-ix FightSystem/me/yaruma/fightsystem/listener/EntityExplodeListener.class and b/out/artifacts/production/Diamant-ix FightSystem/me/yaruma/fightsystem/listener/EntityExplodeListener.class differ diff --git a/out/artifacts/production/Diamant-ix FightSystem/me/yaruma/fightsystem/utils/countdown/Countdown.class b/out/artifacts/production/Diamant-ix FightSystem/me/yaruma/fightsystem/utils/countdown/Countdown.class index 7a330d3..3e2e330 100644 Binary files a/out/artifacts/production/Diamant-ix FightSystem/me/yaruma/fightsystem/utils/countdown/Countdown.class and b/out/artifacts/production/Diamant-ix FightSystem/me/yaruma/fightsystem/utils/countdown/Countdown.class differ diff --git a/out/artifacts/production/Diamant-ix FightSystem/me/yaruma/fightsystem/winconditions/WinconditionPercentSystem.class b/out/artifacts/production/Diamant-ix FightSystem/me/yaruma/fightsystem/winconditions/WinconditionPercentSystem.class index 4813b2d..3477b66 100644 Binary files a/out/artifacts/production/Diamant-ix FightSystem/me/yaruma/fightsystem/winconditions/WinconditionPercentSystem.class and b/out/artifacts/production/Diamant-ix FightSystem/me/yaruma/fightsystem/winconditions/WinconditionPercentSystem.class differ diff --git a/src/me/yaruma/fightsystem/FightSystem.java b/src/me/yaruma/fightsystem/FightSystem.java index a8b4ff0..b70d886 100644 --- a/src/me/yaruma/fightsystem/FightSystem.java +++ b/src/me/yaruma/fightsystem/FightSystem.java @@ -10,9 +10,7 @@ import me.yaruma.fightsystem.manager.FileManager; import me.yaruma.fightsystem.utils.WorldEdit; import me.yaruma.fightsystem.utils.countdown.*; import me.yaruma.fightsystem.utils.scoreboard.Scoreboard; -import me.yaruma.fightsystem.winconditions.WinconditionAllDead; -import me.yaruma.fightsystem.winconditions.WinconditionCaptainDead; -import me.yaruma.fightsystem.winconditions.WinconditionPercentSystem; +import me.yaruma.fightsystem.winconditions.*; import org.bukkit.Bukkit; import org.bukkit.GameMode; import org.bukkit.Location; @@ -110,7 +108,7 @@ public class FightSystem extends JavaPlugin { int schem2BorderX = fileManager.getIntegerFromConfig("Arena.Schem2Border.x"); int schem2BorderZ = fileManager.getIntegerFromConfig("Arena.Schem2Border.z"); - World world = Bukkit.getWorld(fileManager.getStringFromConfig("Arena.WorldName")); + World world = Bukkit.getWorlds().get(0); underArenaBorder = fileManager.getIntegerFromConfig("Arena.underArenaBorder"); @@ -298,13 +296,8 @@ public class FightSystem extends JavaPlugin { setAllPlayersGM(GameMode.SURVIVAL); if(fileManager.getBooleanFromConfig("WinConditions.Timeout")) { - int timeTimeOver = fileManager.getIntegerFromConfig("WinConditionParams.TimeoutTime"); - Countdown countdownTimeOver = new Countdown(timeTimeOver, new FinishTimeOver()); - countdownTimeOver.startTimer(plugin); - - int timeNoEntern = fileManager.getIntegerFromConfig("WinConditionParams.EnterPhaseBegin"); - Countdown countdownTimeNoEntern = new Countdown(timeNoEntern, new FinishNoneEntern()); - countdownTimeNoEntern.startTimer(plugin); + WinconditionTimeout.timeout(); + WinconditionEntern.entern(); } Bukkit.broadcastMessage("§aArena freigegeben!"); } diff --git a/src/me/yaruma/fightsystem/fight/FightManager.java b/src/me/yaruma/fightsystem/fight/FightManager.java index cc16442..6846937 100644 --- a/src/me/yaruma/fightsystem/fight/FightManager.java +++ b/src/me/yaruma/fightsystem/fight/FightManager.java @@ -27,11 +27,11 @@ public class FightManager { } public Location getBlueTeleportLocation() { - return FightSystem.getPlugin().getTeam1SpawnLoc(); + return FightSystem.getPlugin().getTeam2SpawnLoc(); } public Location getRedTeleportLocation() { - return FightSystem.getPlugin().getTeam2SpawnLoc(); + return FightSystem.getPlugin().getTeam1SpawnLoc(); } public Location getBlueTeamPasteLocation() { diff --git a/src/me/yaruma/fightsystem/fight/FightTeam.java b/src/me/yaruma/fightsystem/fight/FightTeam.java index 4d6ff23..1f67fe2 100644 --- a/src/me/yaruma/fightsystem/fight/FightTeam.java +++ b/src/me/yaruma/fightsystem/fight/FightTeam.java @@ -2,9 +2,6 @@ package me.yaruma.fightsystem.fight; import me.yaruma.fightsystem.FightSystem; import me.yaruma.fightsystem.utils.ItemBuilder; -import me.yaruma.fightsystem.utils.WorldEdit; -import me.yaruma.fightsystem.utils.countdown.Countdown; -import me.yaruma.fightsystem.utils.countdown.FinishPreRunning; import org.bukkit.Material; import org.bukkit.enchantments.Enchantment; import org.bukkit.entity.Player; diff --git a/src/me/yaruma/fightsystem/kit/KitManager.java b/src/me/yaruma/fightsystem/kit/KitManager.java index ae1e3ae..66f1b30 100644 --- a/src/me/yaruma/fightsystem/kit/KitManager.java +++ b/src/me/yaruma/fightsystem/kit/KitManager.java @@ -6,7 +6,6 @@ import org.bukkit.inventory.ItemStack; import java.io.File; import java.io.IOException; -import java.nio.file.Path; import java.util.List; public class KitManager { diff --git a/src/me/yaruma/fightsystem/listener/PlayerInteractListener.java b/src/me/yaruma/fightsystem/listener/PlayerInteractListener.java index 6e3cbb7..8377c9d 100644 --- a/src/me/yaruma/fightsystem/listener/PlayerInteractListener.java +++ b/src/me/yaruma/fightsystem/listener/PlayerInteractListener.java @@ -6,14 +6,10 @@ import me.yaruma.fightsystem.fight.FightPlayer; import me.yaruma.fightsystem.fight.FightState; import me.yaruma.fightsystem.fight.FightTeam; import me.yaruma.fightsystem.manager.FileManager; -import me.yaruma.fightsystem.utils.ItemBuilder; -import me.yaruma.fightsystem.utils.WorldEdit; import me.yaruma.fightsystem.utils.countdown.Countdown; import me.yaruma.fightsystem.utils.countdown.FinishNoPlayersOnline; -import me.yaruma.fightsystem.utils.countdown.FinishPreRunning; import org.bukkit.Bukkit; import org.bukkit.Material; -import org.bukkit.enchantments.Enchantment; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; diff --git a/src/me/yaruma/fightsystem/listener/PlayerJoinListener.java b/src/me/yaruma/fightsystem/listener/PlayerJoinListener.java index 6296a3c..45c4c8c 100644 --- a/src/me/yaruma/fightsystem/listener/PlayerJoinListener.java +++ b/src/me/yaruma/fightsystem/listener/PlayerJoinListener.java @@ -43,6 +43,7 @@ public class PlayerJoinListener implements Listener { player.setGameMode(GameMode.SPECTATOR); player.teleport(instance.getSpecSpawnLoc()); } + return; } FightTeam fightTeam = Fight.getPlayerTeam(player); @@ -51,9 +52,9 @@ public class PlayerJoinListener implements Listener { FightPlayer fightPlayer = fightTeam.getFightPlayer(player); if(instance.getFightState() == FightState.SETUP) { - if(fightTeam == Fight.redTeam) + if(fightTeam == Fight.redTeam) { player.teleport(instance.getFightManager().getRedTeleportLocation()); - else + } else player.teleport(instance.getFightManager().getBlueTeleportLocation()); player.setGameMode(GameMode.ADVENTURE); diff --git a/src/me/yaruma/fightsystem/manager/FileManager.java b/src/me/yaruma/fightsystem/manager/FileManager.java index a0aa5f4..5dd0cef 100644 --- a/src/me/yaruma/fightsystem/manager/FileManager.java +++ b/src/me/yaruma/fightsystem/manager/FileManager.java @@ -63,15 +63,4 @@ public class FileManager e.printStackTrace(); } } - - public Location getLocationFormConfig(String path) { - - World world = Bukkit.getWorld(getStringFromConfig(path + ".world")); - int x = getIntegerFromConfig(path + ".x"); - int y = getIntegerFromConfig(path + ".y"); - int z = getIntegerFromConfig(path + ".z"); - - Location location = new Location(world, x, y, z); - return location; - } } \ No newline at end of file diff --git a/src/me/yaruma/fightsystem/utils/countdown/Countdown.java b/src/me/yaruma/fightsystem/utils/countdown/Countdown.java index 23bfc61..ad45978 100644 --- a/src/me/yaruma/fightsystem/utils/countdown/Countdown.java +++ b/src/me/yaruma/fightsystem/utils/countdown/Countdown.java @@ -19,7 +19,7 @@ public class Countdown { this.countdownCallback = countdownCallback; countdowns.add(this); - if(countdownCallback == new FinishTimeOver()) FightSystem.getPlugin().fightTime = time; + if(countdownCallback instanceof FinishTimeOver) FightSystem.getPlugin().fightTime = time; } @@ -40,6 +40,7 @@ public class Countdown { Bukkit.broadcastMessage("§6Noch §aeine §6Sekunde " + countdownCallback.countdownCounting()); break; case 0: + cancelTimer(); countdownCallback.countdownFinished(); break; } diff --git a/src/me/yaruma/fightsystem/winconditions/WinconditionAllDead.java b/src/me/yaruma/fightsystem/winconditions/WinconditionAllDead.java index fc48a09..00a9c2d 100644 --- a/src/me/yaruma/fightsystem/winconditions/WinconditionAllDead.java +++ b/src/me/yaruma/fightsystem/winconditions/WinconditionAllDead.java @@ -2,7 +2,6 @@ package me.yaruma.fightsystem.winconditions; import me.yaruma.fightsystem.FightSystem; import me.yaruma.fightsystem.fight.Fight; -import me.yaruma.fightsystem.fight.FightPlayer; import me.yaruma.fightsystem.fight.FightTeam; import org.bukkit.Bukkit; import org.bukkit.entity.Player; diff --git a/src/me/yaruma/fightsystem/winconditions/WinconditionEntern.java b/src/me/yaruma/fightsystem/winconditions/WinconditionEntern.java new file mode 100644 index 0000000..35930d2 --- /dev/null +++ b/src/me/yaruma/fightsystem/winconditions/WinconditionEntern.java @@ -0,0 +1,22 @@ +package me.yaruma.fightsystem.winconditions; + +import me.yaruma.fightsystem.FightSystem; +import me.yaruma.fightsystem.manager.FileManager; +import me.yaruma.fightsystem.utils.countdown.Countdown; +import me.yaruma.fightsystem.utils.countdown.FinishTimeOver; + +public class WinconditionEntern { + + private static FightSystem instance = FightSystem.getPlugin(); + private static FileManager fileManager = instance.getFileManager(); + + public static void entern() { + if(!Methods.isEnabled("WinConditions.Entern")) return; + + int timeTimeOver = fileManager.getIntegerFromConfig("WinConditionParams.EnterPhaseBegin"); + Countdown countdownTimeOver = new Countdown(timeTimeOver, new FinishTimeOver()); + countdownTimeOver.startTimer(instance); + } + + +} diff --git a/src/me/yaruma/fightsystem/winconditions/WinconditionTimeout.java b/src/me/yaruma/fightsystem/winconditions/WinconditionTimeout.java index 5e81ccb..10a0da4 100644 --- a/src/me/yaruma/fightsystem/winconditions/WinconditionTimeout.java +++ b/src/me/yaruma/fightsystem/winconditions/WinconditionTimeout.java @@ -1,6 +1,22 @@ package me.yaruma.fightsystem.winconditions; +import me.yaruma.fightsystem.FightSystem; +import me.yaruma.fightsystem.manager.FileManager; +import me.yaruma.fightsystem.utils.countdown.Countdown; +import me.yaruma.fightsystem.utils.countdown.FinishTimeOver; + public class WinconditionTimeout { + private static FightSystem instance = FightSystem.getPlugin(); + private static FileManager fileManager = instance.getFileManager(); + + public static void timeout() { + if(!Methods.isEnabled("WinConditions.Timeout")) return; + + int timeTimeOver = fileManager.getIntegerFromConfig("WinConditionParams.TimeoutTime"); + Countdown countdownTimeOver = new Countdown(timeTimeOver, new FinishTimeOver()); + countdownTimeOver.startTimer(instance); + } + }