diff --git a/FightSystem_10/src/de/steamwar/fightsystem/utils/CraftbukkitWrapper10.java b/FightSystem_10/src/de/steamwar/fightsystem/utils/CraftbukkitWrapper10.java index e6b9dc8..78dd79a 100644 --- a/FightSystem_10/src/de/steamwar/fightsystem/utils/CraftbukkitWrapper10.java +++ b/FightSystem_10/src/de/steamwar/fightsystem/utils/CraftbukkitWrapper10.java @@ -39,7 +39,7 @@ public class CraftbukkitWrapper10 implements CraftbukkitWrapper { System.arraycopy(backupChunk.getSections(), 0, chunk.getSections(), 0, chunk.getSections().length); System.arraycopy(backupChunk.heightMap, 0, chunk.heightMap, 0, chunk.heightMap.length); w.tileEntityListTick.removeAll(chunk.tileEntities.values()); - if (!FightWorld.isPaper()) { + if (!FightWorld.isPAPER()) { w.tileEntityList.removeAll(chunk.tileEntities.values()); } chunk.tileEntities.clear(); diff --git a/FightSystem_12/src/de/steamwar/fightsystem/utils/CraftbukkitWrapper12.java b/FightSystem_12/src/de/steamwar/fightsystem/utils/CraftbukkitWrapper12.java index 36fd0ab..f8e843b 100644 --- a/FightSystem_12/src/de/steamwar/fightsystem/utils/CraftbukkitWrapper12.java +++ b/FightSystem_12/src/de/steamwar/fightsystem/utils/CraftbukkitWrapper12.java @@ -39,7 +39,7 @@ public class CraftbukkitWrapper12 implements CraftbukkitWrapper { System.arraycopy(backupChunk.getSections(), 0, chunk.getSections(), 0, chunk.getSections().length); System.arraycopy(backupChunk.heightMap, 0, chunk.heightMap, 0, chunk.heightMap.length); w.tileEntityListTick.removeAll(chunk.tileEntities.values()); - if (!FightWorld.isPaper()) { + if (!FightWorld.isPAPER()) { w.tileEntityList.removeAll(chunk.tileEntities.values()); } chunk.tileEntities.clear(); diff --git a/FightSystem_14/src/de/steamwar/fightsystem/utils/CraftbukkitWrapper14.java b/FightSystem_14/src/de/steamwar/fightsystem/utils/CraftbukkitWrapper14.java index 7528fcf..07c525d 100644 --- a/FightSystem_14/src/de/steamwar/fightsystem/utils/CraftbukkitWrapper14.java +++ b/FightSystem_14/src/de/steamwar/fightsystem/utils/CraftbukkitWrapper14.java @@ -38,7 +38,7 @@ public class CraftbukkitWrapper14 implements CraftbukkitWrapper { System.arraycopy(backupChunk.getSections(), 0, chunk.getSections(), 0, chunk.getSections().length); w.tileEntityListTick.removeAll(chunk.tileEntities.values()); - if (!FightWorld.isPaper()) { + if (!FightWorld.isPAPER()) { w.tileEntityList.removeAll(chunk.tileEntities.values()); } chunk.tileEntities.clear(); diff --git a/FightSystem_15/src/de/steamwar/fightsystem/utils/CraftbukkitWrapper15.java b/FightSystem_15/src/de/steamwar/fightsystem/utils/CraftbukkitWrapper15.java index f06902b..70d9e8c 100644 --- a/FightSystem_15/src/de/steamwar/fightsystem/utils/CraftbukkitWrapper15.java +++ b/FightSystem_15/src/de/steamwar/fightsystem/utils/CraftbukkitWrapper15.java @@ -38,7 +38,7 @@ public class CraftbukkitWrapper15 implements CraftbukkitWrapper { System.arraycopy(backupChunk.getSections(), 0, chunk.getSections(), 0, chunk.getSections().length); w.tileEntityListTick.removeAll(chunk.tileEntities.values()); - if (!FightWorld.isPaper()) { + if (!FightWorld.isPAPER()) { w.tileEntityList.removeAll(chunk.tileEntities.values()); } chunk.tileEntities.clear(); diff --git a/FightSystem_9/src/de/steamwar/fightsystem/utils/CraftbukkitWrapper9.java b/FightSystem_9/src/de/steamwar/fightsystem/utils/CraftbukkitWrapper9.java index a0ddcd9..54281ed 100644 --- a/FightSystem_9/src/de/steamwar/fightsystem/utils/CraftbukkitWrapper9.java +++ b/FightSystem_9/src/de/steamwar/fightsystem/utils/CraftbukkitWrapper9.java @@ -39,7 +39,7 @@ public class CraftbukkitWrapper9 implements CraftbukkitWrapper { System.arraycopy(backupChunk.getSections(), 0, chunk.getSections(), 0, chunk.getSections().length); System.arraycopy(backupChunk.heightMap, 0, chunk.heightMap, 0, chunk.heightMap.length); w.tileEntityListTick.removeAll(chunk.tileEntities.values()); - if (!FightWorld.isPaper()) { + if (!FightWorld.isPAPER()) { w.tileEntityList.removeAll(chunk.tileEntities.values()); } chunk.tileEntities.clear(); diff --git a/FightSystem_Core/src/de/steamwar/fightsystem/FightSystem.java b/FightSystem_Core/src/de/steamwar/fightsystem/FightSystem.java index 0b17349..6e6b1c4 100644 --- a/FightSystem_Core/src/de/steamwar/fightsystem/FightSystem.java +++ b/FightSystem_Core/src/de/steamwar/fightsystem/FightSystem.java @@ -39,15 +39,18 @@ import de.steamwar.fightsystem.record.GlobalRecorder; import de.steamwar.fightsystem.record.LiveRecorder; import de.steamwar.fightsystem.states.FightState; import de.steamwar.fightsystem.states.OneShotStateDependent; +import de.steamwar.fightsystem.states.StateDependentListener; import de.steamwar.fightsystem.utils.*; import de.steamwar.fightsystem.winconditions.*; import de.steamwar.message.Message; import de.steamwar.sql.SchematicNode; +import lombok.Getter; import org.bukkit.Bukkit; import org.bukkit.plugin.java.JavaPlugin; public class FightSystem extends JavaPlugin { + @Getter private static FightSystem plugin; private Message message; @@ -97,7 +100,7 @@ public class FightSystem extends JavaPlugin { new RunningWorldInteraction(); new PersonalKitCreator(); new ArrowStopper(); - new ArrowPickup(); + new StateDependentListener(ArenaMode.All, FightState.All, BountifulWrapper.impl.newDenyArrowPickupListener()); new BlockFadeListener(); new LeaveableArena(); new ClickAnalyzer(); @@ -194,15 +197,6 @@ public class FightSystem extends JavaPlugin { FightState.setFightState(FightState.SPECTATE); } - public static FightSystem getPlugin() { - return plugin; - } - - public static void broadcast(String msg, Object... params) { - getMessage().broadcast(msg, params); - GlobalRecorder.getInstance().system(msg, params); - } - public static Message getMessage() { return plugin.message; } diff --git a/FightSystem_Core/src/de/steamwar/fightsystem/commands/CommandInjector.java b/FightSystem_Core/src/de/steamwar/fightsystem/commands/CommandInjector.java deleted file mode 100644 index 2c69fde..0000000 --- a/FightSystem_Core/src/de/steamwar/fightsystem/commands/CommandInjector.java +++ /dev/null @@ -1,42 +0,0 @@ -/* - This file is a part of the SteamWar software. - - Copyright (C) 2020 SteamWar.de-Serverteam - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with this program. If not, see . -*/ - -package de.steamwar.fightsystem.commands; - -import org.bukkit.Bukkit; -import org.bukkit.command.Command; -import org.bukkit.command.SimpleCommandMap; - -import java.lang.reflect.Field; - -public class CommandInjector { - - private CommandInjector(){} - - private static final String PACKAGE_NAME = Bukkit.getServer().getClass().getPackage().getName(); - private static final String VERSION = PACKAGE_NAME.substring(PACKAGE_NAME.lastIndexOf('.') + 1); - - public static void injectCommand(Command cmd) throws Exception { - Class serverClass = Class.forName("org.bukkit.craftbukkit." + VERSION + ".CraftServer"); - Field f1 = serverClass.getDeclaredField("commandMap"); - f1.setAccessible(true); - SimpleCommandMap commandMap = (SimpleCommandMap) f1.get(Bukkit.getServer()); - commandMap.register("BauSystem", cmd); - } -} diff --git a/FightSystem_Core/src/de/steamwar/fightsystem/commands/Commands.java b/FightSystem_Core/src/de/steamwar/fightsystem/commands/Commands.java index 6102728..b880fa6 100644 --- a/FightSystem_Core/src/de/steamwar/fightsystem/commands/Commands.java +++ b/FightSystem_Core/src/de/steamwar/fightsystem/commands/Commands.java @@ -19,6 +19,7 @@ package de.steamwar.fightsystem.commands; +import com.comphenix.tinyprotocol.Reflection; import de.steamwar.fightsystem.Config; import de.steamwar.fightsystem.FightSystem; import de.steamwar.fightsystem.fight.Fight; @@ -28,12 +29,20 @@ import de.steamwar.fightsystem.fight.Kit; import de.steamwar.fightsystem.states.FightState; import de.steamwar.sql.PersonalKit; import de.steamwar.sql.SteamwarUser; +import lombok.experimental.UtilityClass; import net.md_5.bungee.api.ChatMessageType; import org.bukkit.Bukkit; +import org.bukkit.command.Command; +import org.bukkit.command.SimpleCommandMap; import org.bukkit.entity.Player; +@UtilityClass public class Commands { - private Commands(){} + + private static final Reflection.FieldAccessor commandMap = Reflection.getField("{obc}.CraftServer", "commandMap", SimpleCommandMap.class); + public static void injectCommand(Command cmd) { + commandMap.get(Bukkit.getServer()).register("FightSystem", cmd); + } private static void errNoTeam(Player p){ FightSystem.getMessage().sendPrefixless("NO_TEAM", p, ChatMessageType.ACTION_BAR); diff --git a/FightSystem_Core/src/de/steamwar/fightsystem/commands/GamemodeCommand.java b/FightSystem_Core/src/de/steamwar/fightsystem/commands/GamemodeCommand.java index 0cde5ac..5c56626 100644 --- a/FightSystem_Core/src/de/steamwar/fightsystem/commands/GamemodeCommand.java +++ b/FightSystem_Core/src/de/steamwar/fightsystem/commands/GamemodeCommand.java @@ -47,10 +47,10 @@ public class GamemodeCommand extends BukkitCommand { try { CommandRemover.removeAll("gamemode"); - CommandInjector.injectCommand(this); } catch (Exception e) { FightSystem.getPlugin().getLogger().log(Level.SEVERE, "Failed to replace commands", e); } + Commands.injectCommand(this); } @Override diff --git a/FightSystem_Core/src/de/steamwar/fightsystem/fight/Fight.java b/FightSystem_Core/src/de/steamwar/fightsystem/fight/Fight.java index 9d59a0b..cd7a232 100644 --- a/FightSystem_Core/src/de/steamwar/fightsystem/fight/Fight.java +++ b/FightSystem_Core/src/de/steamwar/fightsystem/fight/Fight.java @@ -27,6 +27,7 @@ import de.steamwar.fightsystem.ArenaMode; import de.steamwar.fightsystem.Config; import de.steamwar.fightsystem.FightSystem; import de.steamwar.fightsystem.record.GlobalRecorder; +import lombok.Getter; import org.bukkit.Bukkit; import org.bukkit.GameMode; import org.bukkit.Sound; @@ -39,7 +40,9 @@ import java.util.HashSet; public class Fight { private Fight(){} + @Getter private static final FightTeam redTeam = new FightTeam(Config.TeamRedName, Config.TeamRedColor, Config.TeamRedSpawn, Config.RedPasteRegion, Config.RedExtendRegion, Config.RedRotate, false, Config.RedLeader); + @Getter private static final FightTeam blueTeam = new FightTeam(Config.TeamBlueName, Config.TeamBlueColor, Config.TeamBlueSpawn, Config.BluePasteRegion, Config.BlueExtendRegion, Config.BlueRotate, true, Config.BlueLeader); private static final Collection teams = new HashSet<>(); static { @@ -76,14 +79,6 @@ public class Fight { return getPlayerTeam(player) != null; } - public static FightTeam getRedTeam() { - return redTeam; - } - - public static FightTeam getBlueTeam() { - return blueTeam; - } - public static Collection teams() { return teams; } diff --git a/FightSystem_Core/src/de/steamwar/fightsystem/fight/FightPlayer.java b/FightSystem_Core/src/de/steamwar/fightsystem/fight/FightPlayer.java index f28c039..763bd6f 100644 --- a/FightSystem_Core/src/de/steamwar/fightsystem/fight/FightPlayer.java +++ b/FightSystem_Core/src/de/steamwar/fightsystem/fight/FightPlayer.java @@ -26,6 +26,8 @@ import de.steamwar.fightsystem.countdown.EnternCountdown; import de.steamwar.fightsystem.events.TeamDeathEvent; import de.steamwar.sql.PersonalKit; import de.steamwar.sql.SteamwarUser; +import lombok.Getter; +import lombok.Setter; import org.bukkit.Bukkit; import org.bukkit.entity.LivingEntity; import org.bukkit.entity.Player; @@ -36,9 +38,13 @@ public class FightPlayer { private final int id; private LivingEntity entity; + @Getter private final FightTeam team; private boolean isOut; + @Setter + @Getter private Kit kit; + @Getter private int kills; private EnternCountdown enternCountdown = null; @@ -113,22 +119,6 @@ public class FightPlayer { return leader != null && leader.getEntity() == entity; } - public Kit getKit() { - return kit; - } - - public void setKit(Kit kit) { - this.kit = kit; - } - - public FightTeam getTeam(){ - return team; - } - - public int getKills(){ - return kills; - } - public void addKill(){ kills++; } diff --git a/FightSystem_Core/src/de/steamwar/fightsystem/fight/FightTeam.java b/FightSystem_Core/src/de/steamwar/fightsystem/fight/FightTeam.java index a8dfbca..544be31 100644 --- a/FightSystem_Core/src/de/steamwar/fightsystem/fight/FightTeam.java +++ b/FightSystem_Core/src/de/steamwar/fightsystem/fight/FightTeam.java @@ -44,7 +44,6 @@ import de.steamwar.techhider.ProtocolUtils; import lombok.Getter; import net.md_5.bungee.api.ChatMessageType; import org.bukkit.*; -import org.bukkit.enchantments.Enchantment; import org.bukkit.entity.LivingEntity; import org.bukkit.entity.Player; import org.bukkit.scoreboard.NameTagVisibility; @@ -58,7 +57,7 @@ public class FightTeam { private static void setKitButton(HotbarKit kit, boolean leader) { if (Kit.getAvailableKits(leader).size() > 1 || Config.PersonalKits) - kit.setItem(1, "CHOOSE_KIT", new ItemBuilder(Material.LEATHER_CHESTPLATE).removeAllAttributes().addEnchantment(Enchantment.DURABILITY, 1).build(), player -> GUI.kitSelection(player, "")); + kit.setItem(1, "CHOOSE_KIT", new ItemBuilder(Material.LEATHER_CHESTPLATE).enchant().build(), player -> GUI.kitSelection(player, "")); else kit.setItem(1, null, null, null); } @@ -66,30 +65,30 @@ public class FightTeam { private static final HotbarKit memberKit = new HotbarKit(); static { setKitButton(memberKit, false); - memberKit.setItem(7, "RESPAWN", new ItemBuilder(Material.BEACON).removeAllAttributes().build(), player -> player.teleport(Objects.requireNonNull(Fight.getPlayerTeam(player)).getSpawn())); + memberKit.setItem(7, "RESPAWN", new ItemBuilder(Material.BEACON).build(), player -> player.teleport(Objects.requireNonNull(Fight.getPlayerTeam(player)).getSpawn())); } private static final HotbarKit notReadyKit = new HotbarKit(memberKit); static { setKitButton(notReadyKit, true); if(!ArenaMode.RankedEvent.contains(Config.mode)){ - notReadyKit.setItem(2, "REQUESTS", new ItemBuilder(Material.PAPER).removeAllAttributes().build(), GUI::chooseJoinRequests); - notReadyKit.setItem(3, "REMOVE_PLAYERS", new ItemBuilder(SWItem.getMaterial("FIREWORK_CHARGE")).removeAllAttributes().build(), GUI::chooseRemove); + notReadyKit.setItem(2, "REQUESTS", new ItemBuilder(Material.PAPER).build(), GUI::chooseJoinRequests); + notReadyKit.setItem(3, "REMOVE_PLAYERS", new ItemBuilder(SWItem.getMaterial("FIREWORK_CHARGE")).build(), GUI::chooseRemove); } if(Config.test()) - notReadyKit.setItem(5, "CHOOSE_SCHEMATIC", new ItemBuilder(SWItem.getMaterial("CAULDRON_ITEM")).removeAllAttributes().addEnchantment(Enchantment.DURABILITY, 1).build(), GUI::preSchemDialog); + notReadyKit.setItem(5, "CHOOSE_SCHEMATIC", new ItemBuilder(SWItem.getMaterial("CAULDRON_ITEM")).enchant().build(), GUI::preSchemDialog); - notReadyKit.setItem(4, "TEAM_NOT_READY", new ItemBuilder(SWItem.getDye(10), (short) 10).removeAllAttributes().addEnchantment(Enchantment.DURABILITY, 1).build(), player -> Objects.requireNonNull(Fight.getPlayerTeam(player)).setReady(true)); + notReadyKit.setItem(4, "TEAM_NOT_READY", new ItemBuilder(SWItem.getDye(10), (short) 10).enchant().build(), player -> Objects.requireNonNull(Fight.getPlayerTeam(player)).setReady(true)); } private static final HotbarKit chooseSchemKit = new HotbarKit(notReadyKit); static { - chooseSchemKit.setItem(4, "CHOOSE_SCHEMATIC", new ItemBuilder(SWItem.getMaterial("CAULDRON_ITEM")).removeAllAttributes().addEnchantment(Enchantment.DURABILITY, 1).build(), GUI::preSchemDialog); + chooseSchemKit.setItem(4, "CHOOSE_SCHEMATIC", new ItemBuilder(SWItem.getMaterial("CAULDRON_ITEM")).enchant().build(), GUI::preSchemDialog); } private static final HotbarKit readyKit = new HotbarKit(memberKit); static { readyKit.setItem(1, null, null, null); - readyKit.setItem(4, "TEAM_READY", new ItemBuilder(SWItem.getDye(8), (short) 8).removeAllAttributes().addEnchantment(Enchantment.DURABILITY,1 ).build(), player -> Objects.requireNonNull(Fight.getPlayerTeam(player)).setReady(false)); + readyKit.setItem(4, "TEAM_READY", new ItemBuilder(SWItem.getDye(8), (short) 8).enchant().build(), player -> Objects.requireNonNull(Fight.getPlayerTeam(player)).setReady(false)); } @Getter diff --git a/FightSystem_Core/src/de/steamwar/fightsystem/fight/FightWorld.java b/FightSystem_Core/src/de/steamwar/fightsystem/fight/FightWorld.java index 9e246da..6527e51 100644 --- a/FightSystem_Core/src/de/steamwar/fightsystem/fight/FightWorld.java +++ b/FightSystem_Core/src/de/steamwar/fightsystem/fight/FightWorld.java @@ -26,6 +26,7 @@ import de.steamwar.fightsystem.states.FightState; import de.steamwar.fightsystem.states.StateDependent; import de.steamwar.fightsystem.utils.CraftbukkitWrapper; import de.steamwar.fightsystem.utils.FlatteningWrapper; +import lombok.Getter; import org.bukkit.Bukkit; import org.bukkit.World; import org.bukkit.WorldCreator; @@ -39,11 +40,8 @@ import java.util.Objects; public class FightWorld extends StateDependent { - private static final boolean paper = Bukkit.getVersion().contains("git-Paper"); - - public static boolean isPaper(){ - return paper; - } + @Getter + private static final boolean PAPER = Bukkit.getVersion().contains("git-Paper"); public FightWorld() { super(ArenaMode.Restartable.contains(Config.mode) || Config.replayserver(), FightState.Schem); diff --git a/FightSystem_Core/src/de/steamwar/fightsystem/fight/HotbarKit.java b/FightSystem_Core/src/de/steamwar/fightsystem/fight/HotbarKit.java index 8310d2c..5bc1d84 100644 --- a/FightSystem_Core/src/de/steamwar/fightsystem/fight/HotbarKit.java +++ b/FightSystem_Core/src/de/steamwar/fightsystem/fight/HotbarKit.java @@ -51,7 +51,7 @@ public class HotbarKit extends Kit { public static final HotbarKit SPECTATOR_KIT = new HotbarKit(); static { for(int i = 0; i < 9; i++) - SPECTATOR_KIT.setItem(i, "JOIN_REQUEST", new ItemBuilder(Material.PAPER).removeAllAttributes().build(), GUI::joinRequest); + SPECTATOR_KIT.setItem(i, "JOIN_REQUEST", new ItemBuilder(Material.PAPER).build(), GUI::joinRequest); } private static final int HOTBAR_SIZE = 9; diff --git a/FightSystem_Core/src/de/steamwar/fightsystem/fight/Kit.java b/FightSystem_Core/src/de/steamwar/fightsystem/fight/Kit.java index 0ba4628..e382909 100644 --- a/FightSystem_Core/src/de/steamwar/fightsystem/fight/Kit.java +++ b/FightSystem_Core/src/de/steamwar/fightsystem/fight/Kit.java @@ -30,6 +30,7 @@ import de.steamwar.inventory.SWInventory; import de.steamwar.inventory.SWItem; import de.steamwar.sql.PersonalKit; import de.steamwar.sql.SteamwarUser; +import lombok.Getter; import org.bukkit.Bukkit; import org.bukkit.Material; import org.bukkit.configuration.ConfigurationSection; @@ -69,11 +70,19 @@ public class Kit { } } + @Getter private final String name; + @Getter private final ItemStack[] inventory; + @Getter private final ItemStack[] armor; + @Getter private final Collection effects; + /* In which stage is entern allowed? */ + @Getter private final int enterStage; + /* Is this kit allowed to set/handle tnt? */ + @Getter private final boolean tnt; private final boolean leaderAllowed; private final boolean memberAllowed; @@ -140,10 +149,6 @@ public class Kit { return kits; } - public String getName() { - return name; - } - public boolean canUseKit(boolean leader){ if (leader) { return leaderAllowed; @@ -156,10 +161,6 @@ public class Kit { return !memberAllowed; } - public ItemStack[] getInventory() { - return inventory; - } - public boolean contains(ItemStack stack) { for(ItemStack i : inventory) { if(similar(i, stack)) @@ -172,24 +173,6 @@ public class Kit { return false; } - public ItemStack[] getArmor() { - return armor; - } - - public Collection getEffects() { - return effects; - } - - /* Is this kit allowed to set/handle tnt? */ - public boolean isTnt(){ - return tnt; - } - - /* In which stage is entern allowed? */ - public int getEnterStage() { - return enterStage; - } - public void toPersonalKit(PersonalKit kit) { kit.setContainer(inventory, armor); } diff --git a/FightSystem_Core/src/de/steamwar/fightsystem/listener/ArrowPickup.java b/FightSystem_Core/src/de/steamwar/fightsystem/listener/ArrowPickup.java deleted file mode 100644 index 6839a3f..0000000 --- a/FightSystem_Core/src/de/steamwar/fightsystem/listener/ArrowPickup.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - This file is a part of the SteamWar software. - - Copyright (C) 2020 SteamWar.de-Serverteam - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with this program. If not, see . -*/ - -package de.steamwar.fightsystem.listener; - -import de.steamwar.fightsystem.ArenaMode; -import de.steamwar.fightsystem.states.FightState; -import de.steamwar.fightsystem.states.StateDependentListener; -import de.steamwar.fightsystem.utils.BountifulWrapper; - -public class ArrowPickup { - - public ArrowPickup() { - new StateDependentListener(ArenaMode.All, FightState.All, BountifulWrapper.impl.newDenyArrowPickupListener()); - } -} diff --git a/FightSystem_Core/src/de/steamwar/fightsystem/record/FileRecorder.java b/FightSystem_Core/src/de/steamwar/fightsystem/record/FileRecorder.java index 67d39bc..98933dd 100644 --- a/FightSystem_Core/src/de/steamwar/fightsystem/record/FileRecorder.java +++ b/FightSystem_Core/src/de/steamwar/fightsystem/record/FileRecorder.java @@ -22,19 +22,17 @@ package de.steamwar.fightsystem.record; import de.steamwar.fightsystem.Config; import de.steamwar.fightsystem.states.FightState; import de.steamwar.fightsystem.states.StateDependent; +import lombok.Getter; import java.io.*; import java.util.zip.GZIPOutputStream; public class FileRecorder extends StateDependent implements Recorder { + @Getter private static final File file = new File(Config.world.getWorldFolder(), "recording.recording"); private DataOutputStream outputStream; - public static File getFile() { - return file; - } - public FileRecorder(){ super(Config.ReplayID == 0, FightState.Recording); register(); diff --git a/FightSystem_Core/src/de/steamwar/fightsystem/states/FightState.java b/FightSystem_Core/src/de/steamwar/fightsystem/states/FightState.java index 1a75d1a..1d5acf3 100644 --- a/FightSystem_Core/src/de/steamwar/fightsystem/states/FightState.java +++ b/FightSystem_Core/src/de/steamwar/fightsystem/states/FightState.java @@ -19,6 +19,8 @@ package de.steamwar.fightsystem.states; +import lombok.Getter; + import java.util.*; public enum FightState { @@ -48,12 +50,9 @@ public enum FightState { public static final Set AntiSpectate = Collections.unmodifiableSet(EnumSet.complementOf(EnumSet.of(SPECTATE))); private static final Map stateDependentFeatures = new HashMap<>(); + @Getter private static FightState fightState = PRE_LEADER_SETUP; - public static FightState getFightState() { - return fightState; - } - public static void registerStateDependent(IStateDependent stateDependent){ if(stateDependent.enabled().isEmpty()) return; diff --git a/FightSystem_Core/src/de/steamwar/fightsystem/utils/FightStatistics.java b/FightSystem_Core/src/de/steamwar/fightsystem/utils/FightStatistics.java index df12a82..1f46a3a 100644 --- a/FightSystem_Core/src/de/steamwar/fightsystem/utils/FightStatistics.java +++ b/FightSystem_Core/src/de/steamwar/fightsystem/utils/FightStatistics.java @@ -35,6 +35,7 @@ import de.steamwar.network.packets.common.FightEndsPacket; import de.steamwar.sql.Replay; import de.steamwar.sql.SchematicNode; import de.steamwar.sql.SteamwarUser; +import lombok.Getter; import org.bukkit.Bukkit; import java.sql.Timestamp; @@ -46,6 +47,7 @@ import static de.steamwar.sql.Fight.create; public class FightStatistics { + @Getter private static boolean unranked = false; public static void unrank() { @@ -53,10 +55,6 @@ public class FightStatistics { FightUI.addSubtitle("UI_UNRANKED"); } - public static boolean isUnranked() { - return unranked; - } - private Timestamp starttime = Timestamp.from(Instant.now()); public FightStatistics() { diff --git a/FightSystem_Core/src/de/steamwar/fightsystem/utils/FightUI.java b/FightSystem_Core/src/de/steamwar/fightsystem/utils/FightUI.java index da6df9c..122b690 100644 --- a/FightSystem_Core/src/de/steamwar/fightsystem/utils/FightUI.java +++ b/FightSystem_Core/src/de/steamwar/fightsystem/utils/FightUI.java @@ -31,6 +31,7 @@ import de.steamwar.fightsystem.states.OneShotStateDependent; import de.steamwar.fightsystem.states.StateDependentCountdown; import de.steamwar.fightsystem.states.StateDependentTask; import de.steamwar.fightsystem.winconditions.Wincondition; +import lombok.Getter; import org.bukkit.Bukkit; import org.bukkit.entity.Player; @@ -43,10 +44,8 @@ import java.util.stream.Collectors; public class FightUI { + @Getter private static FightUI instance; - public static FightUI getInstance() { - return instance; - } public FightUI() { new StateDependentTask(ArenaMode.AntiReplay, FightState.All, this::update, 20, 20); diff --git a/FightSystem_Core/src/de/steamwar/fightsystem/utils/ItemBuilder.java b/FightSystem_Core/src/de/steamwar/fightsystem/utils/ItemBuilder.java index e7bac5d..728fb92 100644 --- a/FightSystem_Core/src/de/steamwar/fightsystem/utils/ItemBuilder.java +++ b/FightSystem_Core/src/de/steamwar/fightsystem/utils/ItemBuilder.java @@ -25,51 +25,26 @@ import org.bukkit.inventory.ItemFlag; import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.ItemMeta; -import java.util.List; - public class ItemBuilder { private final ItemStack item; private final ItemMeta meta; - public ItemBuilder(Material matrial) { - item = new ItemStack(matrial); - meta = item.getItemMeta(); - } - - public ItemBuilder(Material matrial, int amount) { - item = new ItemStack(matrial, amount); + public ItemBuilder(Material material) { + item = new ItemStack(material); meta = item.getItemMeta(); + meta.addItemFlags(ItemFlag.values()); } @SuppressWarnings("deprecation") - public ItemBuilder(Material matrial, short subid) { - item = new ItemStack(matrial, 1, subid); + public ItemBuilder(Material material, short subid) { + item = new ItemStack(material, 1, subid); meta = item.getItemMeta(); + meta.addItemFlags(ItemFlag.values()); } - - public ItemBuilder removeAllAttributes() { - meta.addItemFlags(ItemFlag.HIDE_ATTRIBUTES); - meta.addItemFlags(ItemFlag.HIDE_DESTROYS); - meta.addItemFlags(ItemFlag.HIDE_UNBREAKABLE); - meta.addItemFlags(ItemFlag.HIDE_ENCHANTS); - meta.addItemFlags(ItemFlag.HIDE_PLACED_ON); - meta.addItemFlags(ItemFlag.HIDE_POTION_EFFECTS); - return this; - } - - public ItemBuilder setDisplayName(String name) { - meta.setDisplayName(name); - return this; - } - - public ItemBuilder addLore(List lore) { - meta.setLore(lore); - return this; - } - - public ItemBuilder addEnchantment(Enchantment enchantment, int level) { - meta.addEnchant(enchantment, level, true); + + public ItemBuilder enchant() { + meta.addEnchant(Enchantment.DURABILITY, 1, true); return this; } @@ -77,5 +52,4 @@ public class ItemBuilder { item.setItemMeta(meta); return item; } - } diff --git a/FightSystem_Core/src/de/steamwar/fightsystem/utils/Message.java b/FightSystem_Core/src/de/steamwar/fightsystem/utils/Message.java index a142a7e..9484b64 100644 --- a/FightSystem_Core/src/de/steamwar/fightsystem/utils/Message.java +++ b/FightSystem_Core/src/de/steamwar/fightsystem/utils/Message.java @@ -19,7 +19,11 @@ package de.steamwar.fightsystem.utils; +import lombok.Getter; + +@Getter public class Message { + private final String msg; private final Object[] params; @@ -27,12 +31,4 @@ public class Message { this.msg = msg; this.params = params; } - - public String getMsg() { - return msg; - } - - public Object[] getParams() { - return params; - } } diff --git a/FightSystem_Core/src/de/steamwar/fightsystem/winconditions/Wincondition.java b/FightSystem_Core/src/de/steamwar/fightsystem/winconditions/Wincondition.java index 3f0f58e..3b62aff 100644 --- a/FightSystem_Core/src/de/steamwar/fightsystem/winconditions/Wincondition.java +++ b/FightSystem_Core/src/de/steamwar/fightsystem/winconditions/Wincondition.java @@ -24,6 +24,7 @@ import de.steamwar.fightsystem.countdown.Countdown; import de.steamwar.fightsystem.fight.Fight; import de.steamwar.fightsystem.fight.FightTeam; import de.steamwar.fightsystem.states.StateDependentCountdown; +import lombok.Getter; import org.bukkit.entity.Entity; import org.bukkit.entity.LivingEntity; @@ -34,8 +35,10 @@ import java.util.stream.Collectors; public abstract class Wincondition { + @Getter protected static WinconditionPercent percentWincondition = null; protected static StateDependentCountdown timeOverCountdown = null; + @Getter protected static final List printableWinconditions = new ArrayList<>(); private final String windescription; @@ -61,14 +64,6 @@ public abstract class Wincondition { return Fight.getPlayerTeam((LivingEntity) player); } - public static List getPrintableWinconditions(){ - return printableWinconditions; - } - - public static WinconditionPercent getPercentWincondition() { - return percentWincondition; - } - protected void comparisonWin(ToDoubleFunction evaluate, String winMessage, String tieMessage) { double max = Fight.teams().stream().mapToDouble(evaluate).max().orElseThrow(() -> new SecurityException("No teams present")); List teams = Fight.teams().stream().filter(team -> evaluate.applyAsDouble(team) == max).collect(Collectors.toList());