diff --git a/FightSystem_12/pom.xml b/FightSystem_12/pom.xml
new file mode 100644
index 0000000..950fc3d
--- /dev/null
+++ b/FightSystem_12/pom.xml
@@ -0,0 +1,42 @@
+
+
+ 4.0.0
+
+
+ steamwar
+ FightSystem
+ 1.0
+
+
+ FightSystem_12
+ 1.0
+
+
+ src
+
+
+ src
+
+ **/*.java
+ **/*.kt
+
+
+
+
+
+
+
+ steamwar
+ FightSystem_8
+ 1.0
+
+
+ steamwar
+ Spigot
+ 1.12
+ provided
+
+
+
\ No newline at end of file
diff --git a/FightSystem_12/src/de/steamwar/fightsystem/countdown/Countdown_12.java b/FightSystem_12/src/de/steamwar/fightsystem/countdown/Countdown_12.java
new file mode 100644
index 0000000..8601fd1
--- /dev/null
+++ b/FightSystem_12/src/de/steamwar/fightsystem/countdown/Countdown_12.java
@@ -0,0 +1,11 @@
+package de.steamwar.fightsystem.countdown;
+
+import org.bukkit.Sound;
+
+class Countdown_12 {
+ private Countdown_12(){}
+
+ static Sound getSound(String sound){
+ return Sound.valueOf(sound);
+ }
+}
diff --git a/FightSystem_12/src/de/steamwar/fightsystem/fight/FightTeam_12.java b/FightSystem_12/src/de/steamwar/fightsystem/fight/FightTeam_12.java
new file mode 100644
index 0000000..6a11df1
--- /dev/null
+++ b/FightSystem_12/src/de/steamwar/fightsystem/fight/FightTeam_12.java
@@ -0,0 +1,45 @@
+package de.steamwar.fightsystem.fight;
+
+import com.sk89q.worldedit.EditSession;
+import com.sk89q.worldedit.MaxChangedBlocksException;
+import com.sk89q.worldedit.blocks.BaseBlock;
+import com.sk89q.worldedit.regions.CuboidRegion;
+import org.bukkit.ChatColor;
+import org.bukkit.DyeColor;
+import org.bukkit.Material;
+import org.bukkit.scoreboard.Team;
+
+import java.util.Collections;
+import java.util.Set;
+
+public class FightTeam_12 {
+ private FightTeam_12(){}
+
+ @SuppressWarnings("deprecation")
+ private static final int COLOR_TO_REPLACE = DyeColor.PINK.getWoolData();
+
+ @SuppressWarnings("deprecation")
+ private static final BaseBlock CONCRETE = new BaseBlock(Material.CONCRETE.getId(), COLOR_TO_REPLACE);
+ @SuppressWarnings("deprecation")
+ private static final BaseBlock CONCRETE_POWDER = new BaseBlock(Material.CONCRETE_POWDER.getId(), COLOR_TO_REPLACE);
+
+ private static final Set CONCRETE_SET = Collections.singleton(CONCRETE);
+ private static final Set CONCRETE_POWDER_SET = Collections.singleton(CONCRETE_POWDER);
+
+ static void setTeamColor(Team team, ChatColor color){
+ team.setColor(color);
+ team.setOption(Team.Option.NAME_TAG_VISIBILITY, Team.OptionStatus.FOR_OWN_TEAM);
+ }
+
+
+ @SuppressWarnings("deprecation")
+ static void replaceTeamColor(EditSession e, DyeColor c, CuboidRegion region){
+ FightTeam_8.replaceTeamColor(e, c, region);
+ try {
+ e.replaceBlocks(region, CONCRETE_SET, new BaseBlock(CONCRETE.getId(), c.getWoolData()));
+ e.replaceBlocks(region, CONCRETE_POWDER_SET, new BaseBlock(CONCRETE_POWDER.getId(), c.getWoolData()));
+ } catch (MaxChangedBlocksException ex) {
+ // ignore, will never occur
+ }
+ }
+}
diff --git a/FightSystem_12/src/de/steamwar/fightsystem/listener/BasicListener_12.java b/FightSystem_12/src/de/steamwar/fightsystem/listener/BasicListener_12.java
new file mode 100644
index 0000000..0137e62
--- /dev/null
+++ b/FightSystem_12/src/de/steamwar/fightsystem/listener/BasicListener_12.java
@@ -0,0 +1,20 @@
+package de.steamwar.fightsystem.listener;
+
+import net.md_5.bungee.api.ChatMessageType;
+import net.md_5.bungee.api.chat.BaseComponent;
+import org.bukkit.attribute.Attribute;
+import org.bukkit.attribute.AttributeInstance;
+import org.bukkit.entity.Player;
+
+class BasicListener_12 {
+ private BasicListener_12(){}
+
+ static void toActionbar(Player player, BaseComponent... components){
+ player.spigot().sendMessage(ChatMessageType.ACTION_BAR, components);
+ }
+
+ static void setAttackSpeed(Player player){
+ AttributeInstance attribute = player.getAttribute(Attribute.GENERIC_ATTACK_SPEED);
+ attribute.setBaseValue(16);
+ }
+}
diff --git a/FightSystem_12/src/de/steamwar/fightsystem/utils/TechHider_v12.java b/FightSystem_12/src/de/steamwar/fightsystem/utils/TechHider_v12.java
new file mode 100644
index 0000000..a81959a
--- /dev/null
+++ b/FightSystem_12/src/de/steamwar/fightsystem/utils/TechHider_v12.java
@@ -0,0 +1,15 @@
+package de.steamwar.fightsystem.utils;
+
+import javafx.util.Pair;
+import net.minecraft.server.v1_12_R1.PacketPlayOutMapChunk;
+import org.bukkit.craftbukkit.v1_12_R1.CraftChunk;
+import org.bukkit.craftbukkit.v1_12_R1.entity.CraftPlayer;
+import org.bukkit.entity.Player;
+
+class TechHider_v12 {
+ private TechHider_v12(){}
+
+ static void reloadChunk(Player p, Pair chunk){
+ ((CraftPlayer)p).getHandle().playerConnection.sendPacket(new PacketPlayOutMapChunk(((CraftChunk)p.getWorld().getChunkAt(chunk.getKey(), chunk.getValue())).getHandle(), 65535));
+ }
+}
diff --git a/FightSystem_8/pom.xml b/FightSystem_8/pom.xml
new file mode 100644
index 0000000..61bf1a3
--- /dev/null
+++ b/FightSystem_8/pom.xml
@@ -0,0 +1,37 @@
+
+
+ 4.0.0
+
+
+ steamwar
+ FightSystem
+ 1.0
+
+
+ FightSystem_8
+ 1.0
+
+
+ src
+
+
+ src
+
+ **/*.java
+ **/*.kt
+
+
+
+
+
+
+
+ steamwar
+ Spigot
+ 1.8
+ provided
+
+
+
\ No newline at end of file
diff --git a/FightSystem_8/src/de/steamwar/fightsystem/countdown/Countdown_8.java b/FightSystem_8/src/de/steamwar/fightsystem/countdown/Countdown_8.java
new file mode 100644
index 0000000..baf48fa
--- /dev/null
+++ b/FightSystem_8/src/de/steamwar/fightsystem/countdown/Countdown_8.java
@@ -0,0 +1,20 @@
+package de.steamwar.fightsystem.countdown;
+
+import org.bukkit.Sound;
+
+class Countdown_8 {
+ private Countdown_8(){}
+
+ static Sound getSound(String sound){
+ switch(sound){
+ case "ENTITY_WITHER_DEATH":
+ return Sound.WITHER_DEATH;
+ case "BLOCK_NOTE_BASS":
+ return Sound.NOTE_BASS;
+ case "BLOCK_NOTE_PLING":
+ return Sound.NOTE_PLING;
+ default:
+ return Sound.valueOf(sound);
+ }
+ }
+}
diff --git a/FightSystem_8/src/de/steamwar/fightsystem/fight/FightTeam_8.java b/FightSystem_8/src/de/steamwar/fightsystem/fight/FightTeam_8.java
new file mode 100644
index 0000000..3e6e8cc
--- /dev/null
+++ b/FightSystem_8/src/de/steamwar/fightsystem/fight/FightTeam_8.java
@@ -0,0 +1,52 @@
+package de.steamwar.fightsystem.fight;
+
+import com.sk89q.worldedit.EditSession;
+import com.sk89q.worldedit.MaxChangedBlocksException;
+import com.sk89q.worldedit.blocks.BaseBlock;
+import com.sk89q.worldedit.regions.CuboidRegion;
+import org.bukkit.ChatColor;
+import org.bukkit.DyeColor;
+import org.bukkit.Material;
+import org.bukkit.scoreboard.NameTagVisibility;
+import org.bukkit.scoreboard.Team;
+
+import java.util.Collections;
+import java.util.Set;
+
+class FightTeam_8 {
+ private FightTeam_8(){}
+
+ @SuppressWarnings("deprecation")
+ private static final int COLOR_TO_REPLACE = DyeColor.PINK.getWoolData();
+
+ @SuppressWarnings("deprecation")
+ private static final BaseBlock WOOL = new BaseBlock(Material.WOOL.getId(), COLOR_TO_REPLACE);
+ @SuppressWarnings("deprecation")
+ private static final BaseBlock GLASS = new BaseBlock(Material.STAINED_GLASS.getId(), COLOR_TO_REPLACE);
+ @SuppressWarnings("deprecation")
+ private static final BaseBlock CLAY = new BaseBlock(Material.CLAY.getId(), COLOR_TO_REPLACE);
+ @SuppressWarnings("deprecation")
+ private static final BaseBlock GLASS_PANE = new BaseBlock(Material.STAINED_GLASS_PANE.getId(), COLOR_TO_REPLACE);
+
+ private static final Set WOOL_SET = Collections.singleton(WOOL);
+ private static final Set CLAY_SET = Collections.singleton(CLAY);
+ private static final Set GLASS_SET = Collections.singleton(GLASS);
+ private static final Set GLASS_PANE_SET = Collections.singleton(GLASS_PANE);
+
+ static void setTeamColor(Team team, ChatColor color){
+ team.setPrefix("§" + color.getChar());
+ team.setNameTagVisibility(NameTagVisibility.HIDE_FOR_OTHER_TEAMS);
+ }
+
+ @SuppressWarnings("deprecation")
+ static void replaceTeamColor(EditSession e, DyeColor c, CuboidRegion region){
+ try {
+ e.replaceBlocks(region, WOOL_SET, new BaseBlock(WOOL.getId(), c.getWoolData()));
+ e.replaceBlocks(region, CLAY_SET, new BaseBlock(CLAY.getId(), c.getWoolData()));
+ e.replaceBlocks(region, GLASS_SET, new BaseBlock(GLASS.getId(), c.getWoolData()));
+ e.replaceBlocks(region, GLASS_PANE_SET, new BaseBlock(GLASS_PANE.getId(), c.getWoolData()));
+ } catch (MaxChangedBlocksException ex) {
+ // ignore, will never occur
+ }
+ }
+}
diff --git a/FightSystem_8/src/de/steamwar/fightsystem/listener/BasicListener_8.java b/FightSystem_8/src/de/steamwar/fightsystem/listener/BasicListener_8.java
new file mode 100644
index 0000000..2f42665
--- /dev/null
+++ b/FightSystem_8/src/de/steamwar/fightsystem/listener/BasicListener_8.java
@@ -0,0 +1,12 @@
+package de.steamwar.fightsystem.listener;
+
+import net.md_5.bungee.api.chat.BaseComponent;
+import org.bukkit.entity.Player;
+
+class BasicListener_8 {
+ private BasicListener_8(){}
+
+ static void toActionbar(Player player, BaseComponent... components){
+ player.spigot().sendMessage(components);
+ }
+}
diff --git a/FightSystem_8/src/de/steamwar/fightsystem/utils/TechHider_v8.java b/FightSystem_8/src/de/steamwar/fightsystem/utils/TechHider_v8.java
new file mode 100644
index 0000000..f8944b4
--- /dev/null
+++ b/FightSystem_8/src/de/steamwar/fightsystem/utils/TechHider_v8.java
@@ -0,0 +1,15 @@
+package de.steamwar.fightsystem.utils;
+
+import javafx.util.Pair;
+import net.minecraft.server.v1_8_R3.PacketPlayOutMapChunk;
+import org.bukkit.craftbukkit.v1_8_R3.CraftChunk;
+import org.bukkit.craftbukkit.v1_8_R3.entity.CraftPlayer;
+import org.bukkit.entity.Player;
+
+class TechHider_v8 {
+ private TechHider_v8(){}
+
+ static void reloadChunk(Player p, Pair chunk){
+ ((CraftPlayer)p).getHandle().playerConnection.sendPacket(new PacketPlayOutMapChunk(((CraftChunk)p.getWorld().getChunkAt(chunk.getKey(), chunk.getValue())).getHandle(), true, 65535));
+ }
+}
diff --git a/FightSystem_Main/pom.xml b/FightSystem_Main/pom.xml
new file mode 100644
index 0000000..dc08160
--- /dev/null
+++ b/FightSystem_Main/pom.xml
@@ -0,0 +1,67 @@
+
+
+ 4.0.0
+
+
+ steamwar
+ FightSystem
+ 1.0
+
+
+ FightSystem_Main
+ 1.0
+
+
+ src
+
+
+ src
+
+ **/*.java
+ **/*.kt
+
+
+
+
+
+ maven-assembly-plugin
+
+
+ package
+
+ single
+
+
+
+
+
+ jar-with-dependencies
+
+
+
+
+
+
+
+
+ steamwar
+ Spigot
+ 1.8
+ provided
+
+
+ steamwar
+ FightSystem_8
+ 1.0
+ compile
+
+
+ steamwar
+ FightSystem_12
+ 1.0
+ compile
+
+
+
\ No newline at end of file
diff --git a/src/config.yml b/FightSystem_Main/src/config.yml
similarity index 100%
rename from src/config.yml
rename to FightSystem_Main/src/config.yml
diff --git a/src/de/steamwar/fightsystem/FightSystem.java b/FightSystem_Main/src/de/steamwar/fightsystem/FightSystem.java
similarity index 100%
rename from src/de/steamwar/fightsystem/FightSystem.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/FightSystem.java
diff --git a/src/de/steamwar/fightsystem/commands/AcceptCommand.java b/FightSystem_Main/src/de/steamwar/fightsystem/commands/AcceptCommand.java
similarity index 100%
rename from src/de/steamwar/fightsystem/commands/AcceptCommand.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/commands/AcceptCommand.java
diff --git a/src/de/steamwar/fightsystem/commands/AkCommand.java b/FightSystem_Main/src/de/steamwar/fightsystem/commands/AkCommand.java
similarity index 100%
rename from src/de/steamwar/fightsystem/commands/AkCommand.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/commands/AkCommand.java
diff --git a/src/de/steamwar/fightsystem/commands/Commands.java b/FightSystem_Main/src/de/steamwar/fightsystem/commands/Commands.java
similarity index 100%
rename from src/de/steamwar/fightsystem/commands/Commands.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/commands/Commands.java
diff --git a/src/de/steamwar/fightsystem/commands/DeclineCommand.java b/FightSystem_Main/src/de/steamwar/fightsystem/commands/DeclineCommand.java
similarity index 100%
rename from src/de/steamwar/fightsystem/commands/DeclineCommand.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/commands/DeclineCommand.java
diff --git a/src/de/steamwar/fightsystem/commands/EventDummyCommand.java b/FightSystem_Main/src/de/steamwar/fightsystem/commands/EventDummyCommand.java
similarity index 100%
rename from src/de/steamwar/fightsystem/commands/EventDummyCommand.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/commands/EventDummyCommand.java
diff --git a/src/de/steamwar/fightsystem/commands/GUI.java b/FightSystem_Main/src/de/steamwar/fightsystem/commands/GUI.java
similarity index 100%
rename from src/de/steamwar/fightsystem/commands/GUI.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/commands/GUI.java
diff --git a/src/de/steamwar/fightsystem/commands/InviteCommand.java b/FightSystem_Main/src/de/steamwar/fightsystem/commands/InviteCommand.java
similarity index 100%
rename from src/de/steamwar/fightsystem/commands/InviteCommand.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/commands/InviteCommand.java
diff --git a/src/de/steamwar/fightsystem/commands/KitCommand.java b/FightSystem_Main/src/de/steamwar/fightsystem/commands/KitCommand.java
similarity index 100%
rename from src/de/steamwar/fightsystem/commands/KitCommand.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/commands/KitCommand.java
diff --git a/src/de/steamwar/fightsystem/commands/LeaderCommand.java b/FightSystem_Main/src/de/steamwar/fightsystem/commands/LeaderCommand.java
similarity index 100%
rename from src/de/steamwar/fightsystem/commands/LeaderCommand.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/commands/LeaderCommand.java
diff --git a/src/de/steamwar/fightsystem/commands/LeaveCommand.java b/FightSystem_Main/src/de/steamwar/fightsystem/commands/LeaveCommand.java
similarity index 100%
rename from src/de/steamwar/fightsystem/commands/LeaveCommand.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/commands/LeaveCommand.java
diff --git a/src/de/steamwar/fightsystem/commands/ReadyCommand.java b/FightSystem_Main/src/de/steamwar/fightsystem/commands/ReadyCommand.java
similarity index 100%
rename from src/de/steamwar/fightsystem/commands/ReadyCommand.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/commands/ReadyCommand.java
diff --git a/src/de/steamwar/fightsystem/commands/RemoveCommand.java b/FightSystem_Main/src/de/steamwar/fightsystem/commands/RemoveCommand.java
similarity index 100%
rename from src/de/steamwar/fightsystem/commands/RemoveCommand.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/commands/RemoveCommand.java
diff --git a/src/de/steamwar/fightsystem/countdown/Countdown.java b/FightSystem_Main/src/de/steamwar/fightsystem/countdown/Countdown.java
similarity index 86%
rename from src/de/steamwar/fightsystem/countdown/Countdown.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/countdown/Countdown.java
index 639565d..ee0261a 100644
--- a/src/de/steamwar/fightsystem/countdown/Countdown.java
+++ b/FightSystem_Main/src/de/steamwar/fightsystem/countdown/Countdown.java
@@ -1,5 +1,6 @@
package de.steamwar.fightsystem.countdown;
+import de.steamwar.core.Core;
import de.steamwar.fightsystem.FightSystem;
import de.steamwar.fightsystem.fight.Fight;
import org.bukkit.Bukkit;
@@ -21,9 +22,9 @@ public abstract class Countdown {
abstract String countdownCounting();
abstract void countdownFinished();
- Countdown(int time, Sound sound, boolean level) {
+ Countdown(int time, String sound, boolean level) {
this.time = time;
- this.sound = sound;
+ this.sound = getSound(sound);
this.level = level;
countdowns.add(this);
@@ -31,6 +32,18 @@ public abstract class Countdown {
this.taskID = bukkitScheduler.scheduleSyncRepeatingTask(FightSystem.getPlugin(), this::count, 0, 20);
}
+ public static Sound getSound(String sound){
+ if(sound == null)
+ return null;
+
+ switch (Core.getVersion()){
+ case 8:
+ return Countdown_8.getSound(sound);
+ default:
+ return Countdown_12.getSound(sound);
+ }
+ }
+
public static void cancelAllTimers() {
while (!countdowns.isEmpty()) {
countdowns.get(0).cancelTimer();
diff --git a/src/de/steamwar/fightsystem/countdown/EnternCountdown.java b/FightSystem_Main/src/de/steamwar/fightsystem/countdown/EnternCountdown.java
similarity index 84%
rename from src/de/steamwar/fightsystem/countdown/EnternCountdown.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/countdown/EnternCountdown.java
index 204cdca..078621e 100644
--- a/src/de/steamwar/fightsystem/countdown/EnternCountdown.java
+++ b/FightSystem_Main/src/de/steamwar/fightsystem/countdown/EnternCountdown.java
@@ -3,12 +3,11 @@ package de.steamwar.fightsystem.countdown;
import de.steamwar.fightsystem.FightSystem;
import de.steamwar.fightsystem.utils.Config;
import org.bukkit.Bukkit;
-import org.bukkit.Sound;
public class EnternCountdown extends Countdown {
public EnternCountdown() {
- super(Config.EnterPhaseBegin, Sound.BLOCK_NOTE_PLING, false);
+ super(Config.EnterPhaseBegin, "BLOCK_NOTE_PLING", false);
}
@Override
diff --git a/src/de/steamwar/fightsystem/countdown/EventStartCountdown.java b/FightSystem_Main/src/de/steamwar/fightsystem/countdown/EventStartCountdown.java
similarity index 81%
rename from src/de/steamwar/fightsystem/countdown/EventStartCountdown.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/countdown/EventStartCountdown.java
index 6eed1a1..1cd4a7b 100644
--- a/src/de/steamwar/fightsystem/countdown/EventStartCountdown.java
+++ b/FightSystem_Main/src/de/steamwar/fightsystem/countdown/EventStartCountdown.java
@@ -1,13 +1,12 @@
package de.steamwar.fightsystem.countdown;
-import de.steamwar.fightsystem.utils.Config;
import de.steamwar.fightsystem.FightSystem;
-import org.bukkit.Sound;
+import de.steamwar.fightsystem.utils.Config;
public class EventStartCountdown extends Countdown {
public EventStartCountdown() {
- super(Config.SetupDuration, Sound.BLOCK_NOTE_PLING, false);
+ super(Config.SetupDuration, "BLOCK_NOTE_PLING", false);
}
@Override
diff --git a/src/de/steamwar/fightsystem/countdown/NoPlayersOnlineCountdown.java b/FightSystem_Main/src/de/steamwar/fightsystem/countdown/NoPlayersOnlineCountdown.java
similarity index 100%
rename from src/de/steamwar/fightsystem/countdown/NoPlayersOnlineCountdown.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/countdown/NoPlayersOnlineCountdown.java
diff --git a/src/de/steamwar/fightsystem/countdown/PreRunningCountdown.java b/FightSystem_Main/src/de/steamwar/fightsystem/countdown/PreRunningCountdown.java
similarity index 82%
rename from src/de/steamwar/fightsystem/countdown/PreRunningCountdown.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/countdown/PreRunningCountdown.java
index 238b5bb..2a6f0eb 100644
--- a/src/de/steamwar/fightsystem/countdown/PreRunningCountdown.java
+++ b/FightSystem_Main/src/de/steamwar/fightsystem/countdown/PreRunningCountdown.java
@@ -2,12 +2,11 @@ package de.steamwar.fightsystem.countdown;
import de.steamwar.fightsystem.FightSystem;
import de.steamwar.fightsystem.utils.Config;
-import org.bukkit.Sound;
public class PreRunningCountdown extends Countdown {
public PreRunningCountdown() {
- super(Config.PreFightDuration, Sound.BLOCK_NOTE_PLING, true);
+ super(Config.PreFightDuration, "BLOCK_NOTE_PLING", true);
}
@Override
diff --git a/src/de/steamwar/fightsystem/countdown/SetupOverCountdown.java b/FightSystem_Main/src/de/steamwar/fightsystem/countdown/SetupOverCountdown.java
similarity index 100%
rename from src/de/steamwar/fightsystem/countdown/SetupOverCountdown.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/countdown/SetupOverCountdown.java
diff --git a/src/de/steamwar/fightsystem/countdown/SpectateOverCountdown.java b/FightSystem_Main/src/de/steamwar/fightsystem/countdown/SpectateOverCountdown.java
similarity index 81%
rename from src/de/steamwar/fightsystem/countdown/SpectateOverCountdown.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/countdown/SpectateOverCountdown.java
index c9b1d1a..2584987 100644
--- a/src/de/steamwar/fightsystem/countdown/SpectateOverCountdown.java
+++ b/FightSystem_Main/src/de/steamwar/fightsystem/countdown/SpectateOverCountdown.java
@@ -2,12 +2,11 @@ package de.steamwar.fightsystem.countdown;
import de.steamwar.fightsystem.FightSystem;
import de.steamwar.fightsystem.utils.Config;
-import org.bukkit.Sound;
public class SpectateOverCountdown extends Countdown {
public SpectateOverCountdown() {
- super(Config.SpectatorDuration, Sound.BLOCK_NOTE_PLING, false);
+ super(Config.SpectatorDuration, "BLOCK_NOTE_PLING", false);
}
@Override
diff --git a/src/de/steamwar/fightsystem/countdown/TechKOCountdown.java b/FightSystem_Main/src/de/steamwar/fightsystem/countdown/TechKOCountdown.java
similarity index 87%
rename from src/de/steamwar/fightsystem/countdown/TechKOCountdown.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/countdown/TechKOCountdown.java
index ec347a2..b70a0b9 100644
--- a/src/de/steamwar/fightsystem/countdown/TechKOCountdown.java
+++ b/FightSystem_Main/src/de/steamwar/fightsystem/countdown/TechKOCountdown.java
@@ -5,14 +5,13 @@ import de.steamwar.fightsystem.fight.Fight;
import de.steamwar.fightsystem.fight.FightTeam;
import de.steamwar.fightsystem.winconditions.WinconditionTechKO;
import org.bukkit.Bukkit;
-import org.bukkit.Sound;
public class TechKOCountdown extends Countdown {
private final FightTeam team;
public TechKOCountdown(FightTeam team) {
- super(WinconditionTechKO.TECH_KO_COUNTDOWN_TIME, Sound.BLOCK_NOTE_PLING, false);
+ super(WinconditionTechKO.TECH_KO_COUNTDOWN_TIME, "BLOCK_NOTE_PLING", false);
this.team = team;
}
diff --git a/src/de/steamwar/fightsystem/countdown/TimeOverCountdown.java b/FightSystem_Main/src/de/steamwar/fightsystem/countdown/TimeOverCountdown.java
similarity index 87%
rename from src/de/steamwar/fightsystem/countdown/TimeOverCountdown.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/countdown/TimeOverCountdown.java
index 582e1c4..1df0fd9 100644
--- a/src/de/steamwar/fightsystem/countdown/TimeOverCountdown.java
+++ b/FightSystem_Main/src/de/steamwar/fightsystem/countdown/TimeOverCountdown.java
@@ -3,12 +3,11 @@ package de.steamwar.fightsystem.countdown;
import de.steamwar.fightsystem.FightSystem;
import de.steamwar.fightsystem.utils.Config;
import org.bukkit.Bukkit;
-import org.bukkit.Sound;
public class TimeOverCountdown extends Countdown {
public TimeOverCountdown() {
- super(Config.TimeoutTime, Sound.BLOCK_NOTE_BASS, false);
+ super(Config.TimeoutTime, "BLOCK_NOTE_BASS", false);
}
@Override
diff --git a/src/de/steamwar/fightsystem/fight/Fight.java b/FightSystem_Main/src/de/steamwar/fightsystem/fight/Fight.java
similarity index 100%
rename from src/de/steamwar/fightsystem/fight/Fight.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/fight/Fight.java
diff --git a/src/de/steamwar/fightsystem/fight/FightPlayer.java b/FightSystem_Main/src/de/steamwar/fightsystem/fight/FightPlayer.java
similarity index 100%
rename from src/de/steamwar/fightsystem/fight/FightPlayer.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/fight/FightPlayer.java
diff --git a/src/de/steamwar/fightsystem/fight/FightState.java b/FightSystem_Main/src/de/steamwar/fightsystem/fight/FightState.java
similarity index 100%
rename from src/de/steamwar/fightsystem/fight/FightState.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/fight/FightState.java
diff --git a/src/de/steamwar/fightsystem/fight/FightTeam.java b/FightSystem_Main/src/de/steamwar/fightsystem/fight/FightTeam.java
similarity index 81%
rename from src/de/steamwar/fightsystem/fight/FightTeam.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/fight/FightTeam.java
index d3b4a60..671998d 100644
--- a/src/de/steamwar/fightsystem/fight/FightTeam.java
+++ b/FightSystem_Main/src/de/steamwar/fightsystem/fight/FightTeam.java
@@ -2,13 +2,12 @@ package de.steamwar.fightsystem.fight;
import com.boydti.fawe.FaweAPI;
import com.sk89q.worldedit.EditSession;
-import com.sk89q.worldedit.MaxChangedBlocksException;
import com.sk89q.worldedit.Vector;
-import com.sk89q.worldedit.blocks.BaseBlock;
import com.sk89q.worldedit.bukkit.BukkitWorld;
import com.sk89q.worldedit.math.transform.AffineTransform;
import com.sk89q.worldedit.regions.CuboidRegion;
import com.sk89q.worldedit.world.World;
+import de.steamwar.core.Core;
import de.steamwar.fightsystem.FightSystem;
import de.steamwar.fightsystem.kit.KitManager;
import de.steamwar.fightsystem.utils.*;
@@ -23,35 +22,15 @@ import org.bukkit.scoreboard.Team;
import java.io.File;
import java.io.IOException;
-import java.util.*;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+import java.util.UUID;
import java.util.logging.Level;
public class FightTeam {
- @SuppressWarnings("deprecation")
- private static final int COLOR_TO_REPLACE = DyeColor.PINK.getWoolData();
-
- @SuppressWarnings("deprecation")
- private static final BaseBlock WOOL = new BaseBlock(Material.WOOL.getId(), COLOR_TO_REPLACE);
- @SuppressWarnings("deprecation")
- private static final BaseBlock GLASS = new BaseBlock(Material.STAINED_GLASS.getId(), COLOR_TO_REPLACE);
- @SuppressWarnings("deprecation")
- private static final BaseBlock CLAY = new BaseBlock(Material.CLAY.getId(), COLOR_TO_REPLACE);
- @SuppressWarnings("deprecation")
- private static final BaseBlock GLASS_PANE = new BaseBlock(Material.STAINED_GLASS_PANE.getId(), COLOR_TO_REPLACE);
- @SuppressWarnings("deprecation")
- private static final BaseBlock CONCRETE = new BaseBlock(Material.CONCRETE.getId(), COLOR_TO_REPLACE);
- @SuppressWarnings("deprecation")
- private static final BaseBlock CONCRETE_POWDER = new BaseBlock(Material.CONCRETE_POWDER.getId(), COLOR_TO_REPLACE);
-
- private static final Set WOOL_SET = Collections.singleton(WOOL);
- private static final Set CONCRETE_SET = Collections.singleton(CONCRETE);
- private static final Set CLAY_SET = Collections.singleton(CLAY);
- private static final Set GLASS_SET = Collections.singleton(GLASS);
- private static final Set GLASS_PANE_SET = Collections.singleton(GLASS_PANE);
- private static final Set CONCRETE_POWDER_SET = Collections.singleton(CONCRETE_POWDER);
-
private FightPlayer leader;
private final UUID designatedLeader;
private final Set players = new HashSet<>();
@@ -84,9 +63,18 @@ public class FightTeam {
team = FightScoreboard.getScoreboard().registerNewTeam(name);
else
team = FightScoreboard.getScoreboard().getTeam(name);
- team.setColor(color);
+ setTeamColor(team, color);
team.setAllowFriendlyFire(false);
- team.setOption(Team.Option.NAME_TAG_VISIBILITY, Team.OptionStatus.FOR_OWN_TEAM);
+ }
+
+ private void setTeamColor(Team team, ChatColor color){
+ switch(Core.getVersion()){
+ case 8:
+ FightTeam_8.setTeamColor(team, color);
+ break;
+ default:
+ FightTeam_12.setTeamColor(team, color);
+ }
}
public boolean canbeLeader(Player p){
@@ -256,21 +244,16 @@ public class FightTeam {
Bukkit.getScheduler().runTaskLater(FightSystem.getPlugin(), this::teleportToSpawn,40);
}
- @SuppressWarnings("deprecation")
private void replaceTeamColor(EditSession e){
CuboidRegion region = new CuboidRegion(corner, corner.add(Config.Schemsize));
-
DyeColor c = ColorConverter.chat2dye(color);
- try {
- e.replaceBlocks(region, WOOL_SET, new BaseBlock(WOOL.getId(), c.getWoolData()));
- e.replaceBlocks(region, CONCRETE_SET, new BaseBlock(CONCRETE.getId(), c.getWoolData()));
- e.replaceBlocks(region, CONCRETE_POWDER_SET, new BaseBlock(CONCRETE_POWDER.getId(), c.getWoolData()));
- e.replaceBlocks(region, CLAY_SET, new BaseBlock(CLAY.getId(), c.getWoolData()));
- e.replaceBlocks(region, GLASS_SET, new BaseBlock(GLASS.getId(), c.getWoolData()));
- e.replaceBlocks(region, GLASS_PANE_SET, new BaseBlock(GLASS_PANE.getId(), c.getWoolData()));
- } catch (MaxChangedBlocksException ex) {
- // ignore, will never occur
+ switch(Core.getVersion()){
+ case 8:
+ FightTeam_8.replaceTeamColor(e, c, region);
+ break;
+ default:
+ FightTeam_12.replaceTeamColor(e, c, region);
}
e.flushQueue();
diff --git a/src/de/steamwar/fightsystem/kit/Kit.java b/FightSystem_Main/src/de/steamwar/fightsystem/kit/Kit.java
similarity index 100%
rename from src/de/steamwar/fightsystem/kit/Kit.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/kit/Kit.java
diff --git a/src/de/steamwar/fightsystem/kit/KitManager.java b/FightSystem_Main/src/de/steamwar/fightsystem/kit/KitManager.java
similarity index 100%
rename from src/de/steamwar/fightsystem/kit/KitManager.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/kit/KitManager.java
diff --git a/src/de/steamwar/fightsystem/listener/BasicListener.java b/FightSystem_Main/src/de/steamwar/fightsystem/listener/BasicListener.java
similarity index 66%
rename from src/de/steamwar/fightsystem/listener/BasicListener.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/listener/BasicListener.java
index 522b5d7..67e6660 100644
--- a/src/de/steamwar/fightsystem/listener/BasicListener.java
+++ b/FightSystem_Main/src/de/steamwar/fightsystem/listener/BasicListener.java
@@ -1,8 +1,10 @@
package de.steamwar.fightsystem.listener;
+import de.steamwar.core.Core;
import de.steamwar.fightsystem.FightSystem;
import de.steamwar.fightsystem.fight.Fight;
import de.steamwar.fightsystem.fight.FightState;
+import net.md_5.bungee.api.chat.BaseComponent;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.event.HandlerList;
@@ -42,4 +44,23 @@ public abstract class BasicListener implements Listener {
HandlerList.unregisterAll(this);
listeners.remove(this);
}
+
+ void toActionbar(Player player, BaseComponent... components){
+ switch(Core.getVersion()){
+ case 8:
+ BasicListener_8.toActionbar(player, components);
+ break;
+ default:
+ BasicListener_12.toActionbar(player, components);
+ }
+ }
+
+ void setAttackSpeed(Player player){
+ switch(Core.getVersion()){
+ case 8:
+ break;
+ default:
+ BasicListener_12.setAttackSpeed(player);
+ }
+ }
}
diff --git a/src/de/steamwar/fightsystem/listener/BlockListener.java b/FightSystem_Main/src/de/steamwar/fightsystem/listener/BlockListener.java
similarity index 68%
rename from src/de/steamwar/fightsystem/listener/BlockListener.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/listener/BlockListener.java
index 96e80d3..5c55204 100644
--- a/src/de/steamwar/fightsystem/listener/BlockListener.java
+++ b/FightSystem_Main/src/de/steamwar/fightsystem/listener/BlockListener.java
@@ -1,6 +1,5 @@
package de.steamwar.fightsystem.listener;
-import net.md_5.bungee.api.ChatMessageType;
import net.md_5.bungee.api.chat.TextComponent;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
@@ -15,7 +14,7 @@ public class BlockListener extends BasicListener {
if(notRunning() || notFighting(player)){
event.setCancelled(true);
- player.spigot().sendMessage(ChatMessageType.ACTION_BAR, TextComponent.fromLegacyText("§cDu darfst erst nach Fightbeginn Blöcke abbauen!"));
+ toActionbar(player, TextComponent.fromLegacyText("§cDu darfst erst nach Fightbeginn Blöcke abbauen!"));
}
}
@@ -25,7 +24,7 @@ public class BlockListener extends BasicListener {
if(notRunning() || notFighting(player)) {
event.setCancelled(true);
- player.spigot().sendMessage(ChatMessageType.ACTION_BAR, TextComponent.fromLegacyText("§cDu darfst erst nach Fightbeginn Blöcke setzen!"));
+ toActionbar(player, TextComponent.fromLegacyText("§cDu darfst erst nach Fightbeginn Blöcke setzen!"));
}
}
}
diff --git a/src/de/steamwar/fightsystem/listener/EntityDamageListener.java b/FightSystem_Main/src/de/steamwar/fightsystem/listener/EntityDamageListener.java
similarity index 90%
rename from src/de/steamwar/fightsystem/listener/EntityDamageListener.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/listener/EntityDamageListener.java
index 8fc6b01..94b012e 100644
--- a/src/de/steamwar/fightsystem/listener/EntityDamageListener.java
+++ b/FightSystem_Main/src/de/steamwar/fightsystem/listener/EntityDamageListener.java
@@ -1,7 +1,6 @@
package de.steamwar.fightsystem.listener;
import de.steamwar.fightsystem.fight.Fight;
-import net.md_5.bungee.api.ChatMessageType;
import net.md_5.bungee.api.chat.TextComponent;
import org.bukkit.entity.Arrow;
import org.bukkit.entity.Player;
@@ -63,7 +62,7 @@ public class EntityDamageListener extends BasicListener {
if(Fight.getPlayerTeam(player) == Fight.getPlayerTeam(damager)) {
event.setCancelled(true);
- damager.spigot().sendMessage(ChatMessageType.ACTION_BAR, TextComponent.fromLegacyText("§cDu darfst deinen Teamkollegen keinen Schaden zufügen!"));
+ toActionbar(damager, TextComponent.fromLegacyText("§cDu darfst deinen Teamkollegen keinen Schaden zufügen!"));
}
}
}
diff --git a/src/de/steamwar/fightsystem/listener/EntityExplodeListener.java b/FightSystem_Main/src/de/steamwar/fightsystem/listener/EntityExplodeListener.java
similarity index 100%
rename from src/de/steamwar/fightsystem/listener/EntityExplodeListener.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/listener/EntityExplodeListener.java
diff --git a/src/de/steamwar/fightsystem/listener/EventJoinListener.java b/FightSystem_Main/src/de/steamwar/fightsystem/listener/EventJoinListener.java
similarity index 100%
rename from src/de/steamwar/fightsystem/listener/EventJoinListener.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/listener/EventJoinListener.java
diff --git a/src/de/steamwar/fightsystem/listener/FoodLevelChangeListener.java b/FightSystem_Main/src/de/steamwar/fightsystem/listener/FoodLevelChangeListener.java
similarity index 65%
rename from src/de/steamwar/fightsystem/listener/FoodLevelChangeListener.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/listener/FoodLevelChangeListener.java
index 0bd866b..10121d1 100644
--- a/src/de/steamwar/fightsystem/listener/FoodLevelChangeListener.java
+++ b/FightSystem_Main/src/de/steamwar/fightsystem/listener/FoodLevelChangeListener.java
@@ -2,6 +2,7 @@ package de.steamwar.fightsystem.listener;
import org.bukkit.event.EventHandler;
import org.bukkit.event.entity.FoodLevelChangeEvent;
+import org.bukkit.event.weather.WeatherChangeEvent;
public class FoodLevelChangeListener extends BasicListener {
@@ -10,5 +11,8 @@ public class FoodLevelChangeListener extends BasicListener {
event.setCancelled(true);
}
-
+ @EventHandler
+ public void onWeatherChange(WeatherChangeEvent event){
+ event.setCancelled(true);
+ }
}
diff --git a/src/de/steamwar/fightsystem/listener/HotbarGUIListener.java b/FightSystem_Main/src/de/steamwar/fightsystem/listener/HotbarGUIListener.java
similarity index 100%
rename from src/de/steamwar/fightsystem/listener/HotbarGUIListener.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/listener/HotbarGUIListener.java
diff --git a/src/de/steamwar/fightsystem/listener/InventoryListener.java b/FightSystem_Main/src/de/steamwar/fightsystem/listener/InventoryListener.java
similarity index 100%
rename from src/de/steamwar/fightsystem/listener/InventoryListener.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/listener/InventoryListener.java
diff --git a/src/de/steamwar/fightsystem/listener/NormalJoinListener.java b/FightSystem_Main/src/de/steamwar/fightsystem/listener/NormalJoinListener.java
similarity index 100%
rename from src/de/steamwar/fightsystem/listener/NormalJoinListener.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/listener/NormalJoinListener.java
diff --git a/src/de/steamwar/fightsystem/listener/PistonListener.java b/FightSystem_Main/src/de/steamwar/fightsystem/listener/PistonListener.java
similarity index 100%
rename from src/de/steamwar/fightsystem/listener/PistonListener.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/listener/PistonListener.java
diff --git a/src/de/steamwar/fightsystem/listener/PlayerChatListener.java b/FightSystem_Main/src/de/steamwar/fightsystem/listener/PlayerChatListener.java
similarity index 100%
rename from src/de/steamwar/fightsystem/listener/PlayerChatListener.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/listener/PlayerChatListener.java
diff --git a/src/de/steamwar/fightsystem/listener/PlayerConnectionListener.java b/FightSystem_Main/src/de/steamwar/fightsystem/listener/PlayerConnectionListener.java
similarity index 91%
rename from src/de/steamwar/fightsystem/listener/PlayerConnectionListener.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/listener/PlayerConnectionListener.java
index 19c13a8..60fa765 100644
--- a/src/de/steamwar/fightsystem/listener/PlayerConnectionListener.java
+++ b/FightSystem_Main/src/de/steamwar/fightsystem/listener/PlayerConnectionListener.java
@@ -8,8 +8,6 @@ import de.steamwar.fightsystem.fight.FightTeam;
import de.steamwar.fightsystem.utils.Config;
import org.bukkit.Bukkit;
import org.bukkit.GameMode;
-import org.bukkit.attribute.Attribute;
-import org.bukkit.attribute.AttributeInstance;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
@@ -25,8 +23,7 @@ public class PlayerConnectionListener extends BasicListener{
Player player = event.getPlayer();
player.setHealth(20);
player.setFoodLevel(20);
- AttributeInstance attribute = player.getAttribute(Attribute.GENERIC_ATTACK_SPEED);
- attribute.setBaseValue(16);
+ setAttackSpeed(player);
FightTeam fightTeam = Fight.getPlayerTeam(player);
diff --git a/src/de/steamwar/fightsystem/listener/PlayerDeathListener.java b/FightSystem_Main/src/de/steamwar/fightsystem/listener/PlayerDeathListener.java
similarity index 88%
rename from src/de/steamwar/fightsystem/listener/PlayerDeathListener.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/listener/PlayerDeathListener.java
index 0005e36..7ea2fb8 100644
--- a/src/de/steamwar/fightsystem/listener/PlayerDeathListener.java
+++ b/FightSystem_Main/src/de/steamwar/fightsystem/listener/PlayerDeathListener.java
@@ -1,11 +1,11 @@
package de.steamwar.fightsystem.listener;
import de.steamwar.fightsystem.FightSystem;
+import de.steamwar.fightsystem.countdown.Countdown;
import de.steamwar.fightsystem.fight.Fight;
import de.steamwar.fightsystem.fight.FightTeam;
import org.bukkit.Bukkit;
import org.bukkit.GameMode;
-import org.bukkit.Sound;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
@@ -26,6 +26,6 @@ public class PlayerDeathListener extends BasicListener {
fightTeam.getFightPlayer(player).setOut();
player.setGameMode(GameMode.SPECTATOR);
player.teleport(fightTeam.getSpawn());
- Fight.playSound(Sound.ENTITY_WITHER_DEATH, 100.0F, 1.0F);
+ Fight.playSound(Countdown.getSound("ENTITY_WITHER_DEATH"), 100.0F, 1.0F);
}
}
diff --git a/src/de/steamwar/fightsystem/listener/PlayerMoveListener.java b/FightSystem_Main/src/de/steamwar/fightsystem/listener/PlayerMoveListener.java
similarity index 95%
rename from src/de/steamwar/fightsystem/listener/PlayerMoveListener.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/listener/PlayerMoveListener.java
index 064b9d5..68905b3 100644
--- a/src/de/steamwar/fightsystem/listener/PlayerMoveListener.java
+++ b/FightSystem_Main/src/de/steamwar/fightsystem/listener/PlayerMoveListener.java
@@ -6,7 +6,6 @@ import de.steamwar.fightsystem.fight.FightState;
import de.steamwar.fightsystem.fight.FightTeam;
import de.steamwar.fightsystem.utils.Config;
import de.steamwar.fightsystem.utils.Region;
-import net.md_5.bungee.api.ChatMessageType;
import net.md_5.bungee.api.chat.TextComponent;
import org.bukkit.GameMode;
import org.bukkit.Location;
@@ -74,6 +73,6 @@ public class PlayerMoveListener extends BasicListener {
private void reset(PlayerMoveEvent event, String message){
Player player = event.getPlayer();
player.teleport(event.getFrom());
- player.spigot().sendMessage(ChatMessageType.ACTION_BAR, TextComponent.fromLegacyText(message));
+ toActionbar(player, TextComponent.fromLegacyText(message));
}
}
diff --git a/src/de/steamwar/fightsystem/listener/PlayerRespawnListener.java b/FightSystem_Main/src/de/steamwar/fightsystem/listener/PlayerRespawnListener.java
similarity index 100%
rename from src/de/steamwar/fightsystem/listener/PlayerRespawnListener.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/listener/PlayerRespawnListener.java
diff --git a/src/de/steamwar/fightsystem/listener/PlayerTeleportListener.java b/FightSystem_Main/src/de/steamwar/fightsystem/listener/PlayerTeleportListener.java
similarity index 67%
rename from src/de/steamwar/fightsystem/listener/PlayerTeleportListener.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/listener/PlayerTeleportListener.java
index 66cf3b9..519d61c 100644
--- a/src/de/steamwar/fightsystem/listener/PlayerTeleportListener.java
+++ b/FightSystem_Main/src/de/steamwar/fightsystem/listener/PlayerTeleportListener.java
@@ -1,6 +1,5 @@
package de.steamwar.fightsystem.listener;
-import net.md_5.bungee.api.ChatMessageType;
import net.md_5.bungee.api.chat.TextComponent;
import org.bukkit.event.EventHandler;
import org.bukkit.event.player.PlayerTeleportEvent;
@@ -11,7 +10,7 @@ public class PlayerTeleportListener extends BasicListener {
public void onTpGM3(PlayerTeleportEvent e) {
if (e.getCause() == PlayerTeleportEvent.TeleportCause.SPECTATE) {
e.setCancelled(true);
- e.getPlayer().spigot().sendMessage(ChatMessageType.ACTION_BAR, TextComponent.fromLegacyText("§cDu darfst diese Teleportfunktion nicht benutzen!"));
+ toActionbar(e.getPlayer(), TextComponent.fromLegacyText("§cDu darfst diese Teleportfunktion nicht benutzen!"));
}
}
}
diff --git a/src/de/steamwar/fightsystem/listener/ProjectileLaunchListener.java b/FightSystem_Main/src/de/steamwar/fightsystem/listener/ProjectileLaunchListener.java
similarity index 78%
rename from src/de/steamwar/fightsystem/listener/ProjectileLaunchListener.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/listener/ProjectileLaunchListener.java
index 7bd857f..bb3df17 100644
--- a/src/de/steamwar/fightsystem/listener/ProjectileLaunchListener.java
+++ b/FightSystem_Main/src/de/steamwar/fightsystem/listener/ProjectileLaunchListener.java
@@ -2,7 +2,6 @@ package de.steamwar.fightsystem.listener;
import de.steamwar.fightsystem.FightSystem;
import de.steamwar.fightsystem.fight.FightState;
-import net.md_5.bungee.api.ChatMessageType;
import net.md_5.bungee.api.chat.TextComponent;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
@@ -16,7 +15,7 @@ public class ProjectileLaunchListener extends BasicListener {
event.setCancelled(true);
if(event.getEntity().getShooter() instanceof Player){
Player player = (Player) event.getEntity().getShooter();
- player.spigot().sendMessage(ChatMessageType.ACTION_BAR, TextComponent.fromLegacyText("§cDu darfst den Bogen erst nach Fightbeginn nutzen!"));
+ toActionbar(player, TextComponent.fromLegacyText("§cDu darfst den Bogen erst nach Fightbeginn nutzen!"));
}
}
}
diff --git a/src/de/steamwar/fightsystem/listener/TestListener.java b/FightSystem_Main/src/de/steamwar/fightsystem/listener/TestListener.java
similarity index 100%
rename from src/de/steamwar/fightsystem/listener/TestListener.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/listener/TestListener.java
diff --git a/src/de/steamwar/fightsystem/utils/ColorConverter.java b/FightSystem_Main/src/de/steamwar/fightsystem/utils/ColorConverter.java
similarity index 100%
rename from src/de/steamwar/fightsystem/utils/ColorConverter.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/utils/ColorConverter.java
diff --git a/src/de/steamwar/fightsystem/utils/Config.java b/FightSystem_Main/src/de/steamwar/fightsystem/utils/Config.java
similarity index 100%
rename from src/de/steamwar/fightsystem/utils/Config.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/utils/Config.java
diff --git a/src/de/steamwar/fightsystem/utils/FightScoreboard.java b/FightSystem_Main/src/de/steamwar/fightsystem/utils/FightScoreboard.java
similarity index 100%
rename from src/de/steamwar/fightsystem/utils/FightScoreboard.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/utils/FightScoreboard.java
diff --git a/src/de/steamwar/fightsystem/utils/ItemBuilder.java b/FightSystem_Main/src/de/steamwar/fightsystem/utils/ItemBuilder.java
similarity index 100%
rename from src/de/steamwar/fightsystem/utils/ItemBuilder.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/utils/ItemBuilder.java
diff --git a/src/de/steamwar/fightsystem/utils/Region.java b/FightSystem_Main/src/de/steamwar/fightsystem/utils/Region.java
similarity index 100%
rename from src/de/steamwar/fightsystem/utils/Region.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/utils/Region.java
diff --git a/src/de/steamwar/fightsystem/utils/TechHider.java b/FightSystem_Main/src/de/steamwar/fightsystem/utils/TechHider.java
similarity index 95%
rename from src/de/steamwar/fightsystem/utils/TechHider.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/utils/TechHider.java
index 84b134e..e808c25 100644
--- a/src/de/steamwar/fightsystem/utils/TechHider.java
+++ b/FightSystem_Main/src/de/steamwar/fightsystem/utils/TechHider.java
@@ -13,18 +13,16 @@ import com.comphenix.protocol.wrappers.WrappedBlockData;
import com.comphenix.protocol.wrappers.nbt.NbtCompound;
import com.comphenix.protocol.wrappers.nbt.NbtFactory;
import com.google.common.primitives.Bytes;
+import de.steamwar.core.Core;
import de.steamwar.fightsystem.FightSystem;
import de.steamwar.fightsystem.fight.Fight;
import de.steamwar.fightsystem.fight.FightTeam;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.UnpooledByteBufAllocator;
import javafx.util.Pair;
-import net.minecraft.server.v1_12_R1.PacketPlayOutMapChunk;
import org.bukkit.Bukkit;
import org.bukkit.GameMode;
import org.bukkit.Material;
-import org.bukkit.craftbukkit.v1_12_R1.CraftChunk;
-import org.bukkit.craftbukkit.v1_12_R1.entity.CraftPlayer;
import org.bukkit.entity.Player;
import java.util.*;
@@ -77,16 +75,18 @@ public class TechHider {
if(Config.event())
threadMultiplier = 4;
- ProtocolLibrary.getProtocolManager().addPacketListener(new PacketAdapter(FightSystem.getPlugin(), PacketType.Play.Client.USE_ITEM) {
- @Override
- public void onPacketReceiving(PacketEvent e) {
- Player p = e.getPlayer();
+ if(Core.getVersion() > 8){
+ ProtocolLibrary.getProtocolManager().addPacketListener(new PacketAdapter(FightSystem.getPlugin(), PacketType.Play.Client.USE_ITEM) {
+ @Override
+ public void onPacketReceiving(PacketEvent e) {
+ Player p = e.getPlayer();
- if(p.getGameMode() == GameMode.SPECTATOR){
- e.setCancelled(true);
+ if(p.getGameMode() == GameMode.SPECTATOR){
+ e.setCancelled(true);
+ }
}
- }
- });
+ });
+ }
ProtocolLibrary.getProtocolManager().addPacketListener(new PacketAdapter(FightSystem.getPlugin(), PacketType.Play.Client.USE_ENTITY) {
@Override
public void onPacketReceiving(PacketEvent e) {
@@ -360,11 +360,21 @@ public class TechHider {
Bukkit.getScheduler().runTaskLater(FightSystem.getPlugin(), () -> {
for(Pair chunk : chunksToReload){
if(bypass(p, chunk.getKey(), chunk.getValue()))
- ((CraftPlayer)p).getHandle().playerConnection.sendPacket(new PacketPlayOutMapChunk(((CraftChunk)p.getWorld().getChunkAt(chunk.getKey(), chunk.getValue())).getHandle(), 65535));
+ reloadChunk(p, chunk);
}
}, 40);
}
+ private static void reloadChunk(Player p, Pair chunk){
+ switch(Core.getVersion()){
+ case 8:
+ TechHider_v8.reloadChunk(p, chunk);
+ break;
+ default:
+ TechHider_v12.reloadChunk(p, chunk);
+ }
+ }
+
private static boolean disabled(){
return Config.event() && Config.OnlyPublicSchematics;
}
diff --git a/src/de/steamwar/fightsystem/utils/WaterRemover.java b/FightSystem_Main/src/de/steamwar/fightsystem/utils/WaterRemover.java
similarity index 100%
rename from src/de/steamwar/fightsystem/utils/WaterRemover.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/utils/WaterRemover.java
diff --git a/src/de/steamwar/fightsystem/winconditions/EventTeamOffWincondition.java b/FightSystem_Main/src/de/steamwar/fightsystem/winconditions/EventTeamOffWincondition.java
similarity index 100%
rename from src/de/steamwar/fightsystem/winconditions/EventTeamOffWincondition.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/winconditions/EventTeamOffWincondition.java
diff --git a/src/de/steamwar/fightsystem/winconditions/ListenerWincondition.java b/FightSystem_Main/src/de/steamwar/fightsystem/winconditions/ListenerWincondition.java
similarity index 100%
rename from src/de/steamwar/fightsystem/winconditions/ListenerWincondition.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/winconditions/ListenerWincondition.java
diff --git a/src/de/steamwar/fightsystem/winconditions/PlayerWincondition.java b/FightSystem_Main/src/de/steamwar/fightsystem/winconditions/PlayerWincondition.java
similarity index 100%
rename from src/de/steamwar/fightsystem/winconditions/PlayerWincondition.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/winconditions/PlayerWincondition.java
diff --git a/src/de/steamwar/fightsystem/winconditions/WinconditionAllDead.java b/FightSystem_Main/src/de/steamwar/fightsystem/winconditions/WinconditionAllDead.java
similarity index 100%
rename from src/de/steamwar/fightsystem/winconditions/WinconditionAllDead.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/winconditions/WinconditionAllDead.java
diff --git a/src/de/steamwar/fightsystem/winconditions/WinconditionCaptainDead.java b/FightSystem_Main/src/de/steamwar/fightsystem/winconditions/WinconditionCaptainDead.java
similarity index 100%
rename from src/de/steamwar/fightsystem/winconditions/WinconditionCaptainDead.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/winconditions/WinconditionCaptainDead.java
diff --git a/src/de/steamwar/fightsystem/winconditions/WinconditionEntern.java b/FightSystem_Main/src/de/steamwar/fightsystem/winconditions/WinconditionEntern.java
similarity index 100%
rename from src/de/steamwar/fightsystem/winconditions/WinconditionEntern.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/winconditions/WinconditionEntern.java
diff --git a/src/de/steamwar/fightsystem/winconditions/WinconditionPercentSystem.java b/FightSystem_Main/src/de/steamwar/fightsystem/winconditions/WinconditionPercentSystem.java
similarity index 100%
rename from src/de/steamwar/fightsystem/winconditions/WinconditionPercentSystem.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/winconditions/WinconditionPercentSystem.java
diff --git a/src/de/steamwar/fightsystem/winconditions/WinconditionTechKO.java b/FightSystem_Main/src/de/steamwar/fightsystem/winconditions/WinconditionTechKO.java
similarity index 100%
rename from src/de/steamwar/fightsystem/winconditions/WinconditionTechKO.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/winconditions/WinconditionTechKO.java
diff --git a/src/de/steamwar/fightsystem/winconditions/WinconditionTimeout.java b/FightSystem_Main/src/de/steamwar/fightsystem/winconditions/WinconditionTimeout.java
similarity index 100%
rename from src/de/steamwar/fightsystem/winconditions/WinconditionTimeout.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/winconditions/WinconditionTimeout.java
diff --git a/src/de/steamwar/fightsystem/winconditions/WinconditionWaterTechKO.java b/FightSystem_Main/src/de/steamwar/fightsystem/winconditions/WinconditionWaterTechKO.java
similarity index 100%
rename from src/de/steamwar/fightsystem/winconditions/WinconditionWaterTechKO.java
rename to FightSystem_Main/src/de/steamwar/fightsystem/winconditions/WinconditionWaterTechKO.java
diff --git a/src/plugin.yml b/FightSystem_Main/src/plugin.yml
similarity index 100%
rename from src/plugin.yml
rename to FightSystem_Main/src/plugin.yml
diff --git a/pom.xml b/pom.xml
index 62edf11..a329df0 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,11 +4,11 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0
- de.steamwar
+ steamwar
FightSystem
1.0
- jar
https://maven.apache.org
+ pom
UTF-8
@@ -22,35 +22,26 @@
- src
-
-
- src
-
- **/*.java
- **/*.kt
-
-
-
org.apache.maven.plugins
maven-compiler-plugin
+ 3.6.1
-
- 8
+
+ 1.8
+
+ FightSystem_8
+ FightSystem_12
+ FightSystem_Main
+
+
-
- steamwar
- Spigot
- 1.0
- provided
-
steamwar
SpigotCore