forked from SteamWar/SteamWar
Implement Linkage for MissileWars
This commit is contained in:
@@ -19,6 +19,7 @@
|
||||
|
||||
package de.steamwar.misslewars;
|
||||
|
||||
import de.steamwar.linkage.Linked;
|
||||
import de.steamwar.scoreboard.SWScoreboard;
|
||||
import de.steamwar.scoreboard.ScoreboardCallback;
|
||||
import org.bukkit.Bukkit;
|
||||
@@ -37,6 +38,7 @@ import java.util.Objects;
|
||||
/**
|
||||
* Modified Version of the Fight-System Scoreboard
|
||||
*/
|
||||
@Linked
|
||||
class FightScoreboard implements Listener {
|
||||
|
||||
public FightScoreboard() {
|
||||
|
||||
@@ -19,18 +19,10 @@
|
||||
|
||||
package de.steamwar.misslewars;
|
||||
|
||||
import de.steamwar.misslewars.commands.AcceptCommand;
|
||||
import de.steamwar.misslewars.commands.DeclineCommand;
|
||||
import de.steamwar.misslewars.commands.InviteCommand;
|
||||
import de.steamwar.misslewars.commands.SpectateCommand;
|
||||
import de.steamwar.misslewars.countdowns.EndCountdown;
|
||||
import de.steamwar.misslewars.countdowns.ItemCountdown;
|
||||
import de.steamwar.misslewars.countdowns.WaitingCountdown;
|
||||
import de.steamwar.linkage.AbstractLinker;
|
||||
import de.steamwar.linkage.SpigotLinker;
|
||||
import de.steamwar.misslewars.items.CustomItem;
|
||||
import de.steamwar.misslewars.items.Missile;
|
||||
import de.steamwar.misslewars.listener.*;
|
||||
import de.steamwar.misslewars.listener.special.BarrierListener;
|
||||
import de.steamwar.misslewars.listener.special.SpaceListener;
|
||||
import de.steamwar.misslewars.slowmo.SlowMoRunner;
|
||||
import de.steamwar.network.NetworkSender;
|
||||
import de.steamwar.network.packets.common.FightEndsPacket;
|
||||
@@ -63,37 +55,26 @@ public class MissileWars extends JavaPlugin {
|
||||
public void onEnable() {
|
||||
redTeam = new MWTeam(Config.TeamRedColor, Config.RedSpawn, Config.TeamRedName, Config.RedPortalZ);
|
||||
blueTeam = new MWTeam(Config.TeamBlueColor, Config.BlueSpawn, Config.TeamBlueName, Config.BluePortalZ);
|
||||
new BreakListener();
|
||||
new DeathListener();
|
||||
new ItemListener();
|
||||
new ArenaListener();
|
||||
new ConnectionListener();
|
||||
new JoinListener();
|
||||
new EndListener();
|
||||
new PortalDestructListener();
|
||||
new WaitingListener();
|
||||
new FightListener();
|
||||
new ChatListener();
|
||||
new SpectateCommand();
|
||||
|
||||
// Invitation Commands
|
||||
new InviteCommand();
|
||||
new AcceptCommand();
|
||||
new DeclineCommand();
|
||||
SpigotLinker spigotLinker = new SpigotLinker(this, null) {
|
||||
@Override
|
||||
protected void linkObject(Object any) {
|
||||
// No Init needed for MissileWars!
|
||||
}
|
||||
};
|
||||
try {
|
||||
spigotLinker.link();
|
||||
} catch (AbstractLinker.LinkException e) {
|
||||
e.printStackTrace();
|
||||
Bukkit.shutdown();
|
||||
return;
|
||||
}
|
||||
|
||||
new WaitingCountdown();
|
||||
new ItemCountdown();
|
||||
new EndCountdown();
|
||||
|
||||
new FightScoreboard();
|
||||
Missile.init();
|
||||
Missile.init();
|
||||
CustomItem.init();
|
||||
|
||||
StateDependent.setupState(fightState);
|
||||
|
||||
new BarrierListener();
|
||||
new SpaceListener();
|
||||
|
||||
Bukkit.getScheduler().runTaskTimer(this, new FightInfoPacketSender(), 20, 20);
|
||||
|
||||
Bukkit.getWorlds().forEach(world -> {
|
||||
|
||||
@@ -22,12 +22,14 @@ package de.steamwar.misslewars.commands;
|
||||
|
||||
import de.steamwar.command.SWCommand;
|
||||
import de.steamwar.command.TypeValidator;
|
||||
import de.steamwar.linkage.Linked;
|
||||
import de.steamwar.misslewars.Config;
|
||||
import de.steamwar.misslewars.MWTeam;
|
||||
import de.steamwar.misslewars.MissileWars;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
@Linked
|
||||
public class AcceptCommand extends SWCommand {
|
||||
|
||||
public AcceptCommand() {
|
||||
|
||||
@@ -22,12 +22,14 @@ package de.steamwar.misslewars.commands;
|
||||
|
||||
import de.steamwar.command.SWCommand;
|
||||
import de.steamwar.command.TypeValidator;
|
||||
import de.steamwar.linkage.Linked;
|
||||
import de.steamwar.misslewars.Config;
|
||||
import de.steamwar.misslewars.MWTeam;
|
||||
import de.steamwar.misslewars.MissileWars;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
@Linked
|
||||
public class DeclineCommand extends SWCommand {
|
||||
|
||||
public DeclineCommand() {
|
||||
|
||||
@@ -24,6 +24,7 @@ import de.steamwar.command.PreviousArguments;
|
||||
import de.steamwar.command.SWCommand;
|
||||
import de.steamwar.command.TypeMapper;
|
||||
import de.steamwar.command.TypeValidator;
|
||||
import de.steamwar.linkage.Linked;
|
||||
import de.steamwar.misslewars.Config;
|
||||
import de.steamwar.misslewars.MWTeam;
|
||||
import de.steamwar.misslewars.MissileWars;
|
||||
@@ -34,6 +35,7 @@ import org.bukkit.entity.Player;
|
||||
import java.util.Collection;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Linked
|
||||
public class InviteCommand extends SWCommand {
|
||||
|
||||
public InviteCommand() {
|
||||
|
||||
@@ -22,6 +22,7 @@ package de.steamwar.misslewars.commands;
|
||||
|
||||
import de.steamwar.command.SWCommand;
|
||||
import de.steamwar.command.TypeValidator;
|
||||
import de.steamwar.linkage.Linked;
|
||||
import de.steamwar.misslewars.Config;
|
||||
import de.steamwar.misslewars.MWTeam;
|
||||
import de.steamwar.misslewars.MissileWars;
|
||||
@@ -29,6 +30,7 @@ import org.bukkit.GameMode;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
@Linked
|
||||
public class SpectateCommand extends SWCommand {
|
||||
|
||||
public SpectateCommand() {
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
|
||||
package de.steamwar.misslewars.countdowns;
|
||||
|
||||
import de.steamwar.linkage.Linked;
|
||||
import de.steamwar.misslewars.*;
|
||||
import de.steamwar.misslewars.listener.JoinListener;
|
||||
import org.bukkit.Bukkit;
|
||||
@@ -26,6 +27,7 @@ import org.bukkit.scheduler.BukkitTask;
|
||||
|
||||
import java.util.EnumSet;
|
||||
|
||||
@Linked
|
||||
public class EndCountdown extends StateDependent {
|
||||
|
||||
private BukkitTask task;
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
|
||||
package de.steamwar.misslewars.countdowns;
|
||||
|
||||
import de.steamwar.linkage.Linked;
|
||||
import de.steamwar.misslewars.Config;
|
||||
import de.steamwar.misslewars.FightState;
|
||||
import de.steamwar.misslewars.MissileWars;
|
||||
@@ -30,6 +31,7 @@ import org.bukkit.scheduler.BukkitTask;
|
||||
|
||||
import java.util.EnumSet;
|
||||
|
||||
@Linked
|
||||
public class ItemCountdown extends StateDependent {
|
||||
|
||||
private BukkitTask task;
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
|
||||
package de.steamwar.misslewars.countdowns;
|
||||
|
||||
import de.steamwar.linkage.Linked;
|
||||
import de.steamwar.misslewars.Config;
|
||||
import de.steamwar.misslewars.FightState;
|
||||
import de.steamwar.misslewars.MissileWars;
|
||||
@@ -28,6 +29,7 @@ import org.bukkit.scheduler.BukkitTask;
|
||||
|
||||
import java.util.EnumSet;
|
||||
|
||||
@Linked
|
||||
public class WaitingCountdown extends StateDependent {
|
||||
|
||||
private BukkitTask task;
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
|
||||
package de.steamwar.misslewars.listener;
|
||||
|
||||
import de.steamwar.linkage.Linked;
|
||||
import de.steamwar.misslewars.Config;
|
||||
import de.steamwar.misslewars.FightState;
|
||||
import de.steamwar.misslewars.MWTeam;
|
||||
@@ -40,6 +41,7 @@ import java.util.EnumSet;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
|
||||
@Linked
|
||||
public class ArenaListener extends BasicListener {
|
||||
|
||||
public ArenaListener() {
|
||||
|
||||
@@ -21,12 +21,14 @@
|
||||
|
||||
package de.steamwar.misslewars.listener;
|
||||
|
||||
import de.steamwar.linkage.Linked;
|
||||
import de.steamwar.misslewars.FightState;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.block.BlockBreakEvent;
|
||||
|
||||
import java.util.EnumSet;
|
||||
|
||||
@Linked
|
||||
public class BreakListener extends BasicListener {
|
||||
|
||||
public BreakListener() {
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
|
||||
package de.steamwar.misslewars.listener;
|
||||
|
||||
import de.steamwar.linkage.Linked;
|
||||
import de.steamwar.misslewars.FightState;
|
||||
import de.steamwar.misslewars.MWTeam;
|
||||
import de.steamwar.misslewars.MissileWars;
|
||||
@@ -29,6 +30,7 @@ import org.bukkit.event.player.AsyncPlayerChatEvent;
|
||||
|
||||
import java.util.EnumSet;
|
||||
|
||||
@Linked
|
||||
public class ChatListener extends BasicListener {
|
||||
|
||||
public ChatListener() {
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
|
||||
package de.steamwar.misslewars.listener;
|
||||
|
||||
import de.steamwar.linkage.Linked;
|
||||
import de.steamwar.misslewars.Config;
|
||||
import de.steamwar.misslewars.FightState;
|
||||
import de.steamwar.misslewars.MWTeam;
|
||||
@@ -32,6 +33,7 @@ import org.bukkit.event.player.PlayerQuitEvent;
|
||||
|
||||
import java.util.EnumSet;
|
||||
|
||||
@Linked
|
||||
public class ConnectionListener extends BasicListener{
|
||||
|
||||
public ConnectionListener(){
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
|
||||
package de.steamwar.misslewars.listener;
|
||||
|
||||
import de.steamwar.linkage.Linked;
|
||||
import de.steamwar.misslewars.FightState;
|
||||
import de.steamwar.misslewars.MWTeam;
|
||||
import de.steamwar.misslewars.MissileWars;
|
||||
@@ -38,6 +39,7 @@ import java.util.EnumSet;
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
||||
@Linked
|
||||
public class DeathListener extends BasicListener {
|
||||
|
||||
private static final Vector ZERO = new Vector(0, 0, 0);
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
|
||||
package de.steamwar.misslewars.listener;
|
||||
|
||||
import de.steamwar.linkage.Linked;
|
||||
import de.steamwar.misslewars.FightState;
|
||||
import org.bukkit.GameMode;
|
||||
import org.bukkit.event.EventHandler;
|
||||
@@ -26,6 +27,7 @@ import org.bukkit.event.player.PlayerJoinEvent;
|
||||
|
||||
import java.util.EnumSet;
|
||||
|
||||
@Linked
|
||||
public class EndListener extends BasicListener {
|
||||
|
||||
public EndListener(){
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
|
||||
package de.steamwar.misslewars.listener;
|
||||
|
||||
import de.steamwar.linkage.Linked;
|
||||
import de.steamwar.misslewars.FightState;
|
||||
import de.steamwar.misslewars.MissileWars;
|
||||
import org.bukkit.entity.Player;
|
||||
@@ -27,6 +28,7 @@ import org.bukkit.event.entity.EntityDamageByEntityEvent;
|
||||
|
||||
import java.util.EnumSet;
|
||||
|
||||
@Linked
|
||||
public class FightListener extends BasicListener {
|
||||
|
||||
public FightListener() {
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
|
||||
package de.steamwar.misslewars.listener;
|
||||
|
||||
import de.steamwar.linkage.Linked;
|
||||
import de.steamwar.misslewars.FightState;
|
||||
import de.steamwar.misslewars.MWTeam;
|
||||
import de.steamwar.misslewars.MissileWars;
|
||||
@@ -39,6 +40,7 @@ import java.util.EnumSet;
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
||||
@Linked
|
||||
public class ItemListener extends BasicListener {
|
||||
|
||||
private Set<Integer> RED_ITEMS = new HashSet<>();
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
|
||||
package de.steamwar.misslewars.listener;
|
||||
|
||||
import de.steamwar.linkage.Linked;
|
||||
import de.steamwar.misslewars.Config;
|
||||
import de.steamwar.misslewars.FightState;
|
||||
import de.steamwar.misslewars.MissileWars;
|
||||
@@ -30,6 +31,7 @@ import org.bukkit.event.player.PlayerJoinEvent;
|
||||
|
||||
import java.util.EnumSet;
|
||||
|
||||
@Linked
|
||||
public class JoinListener extends BasicListener {
|
||||
|
||||
public JoinListener(){
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
|
||||
package de.steamwar.misslewars.listener;
|
||||
|
||||
import de.steamwar.linkage.Linked;
|
||||
import de.steamwar.misslewars.Config;
|
||||
import de.steamwar.misslewars.FightState;
|
||||
import de.steamwar.misslewars.MissileWars;
|
||||
@@ -31,6 +32,7 @@ import org.bukkit.event.entity.EntityExplodeEvent;
|
||||
|
||||
import java.util.EnumSet;
|
||||
|
||||
@Linked
|
||||
public class PortalDestructListener extends BasicListener {
|
||||
|
||||
public PortalDestructListener(){
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
|
||||
package de.steamwar.misslewars.listener;
|
||||
|
||||
import de.steamwar.linkage.Linked;
|
||||
import de.steamwar.misslewars.FightState;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.event.EventHandler;
|
||||
@@ -27,6 +28,7 @@ import org.bukkit.event.player.PlayerQuitEvent;
|
||||
|
||||
import java.util.EnumSet;
|
||||
|
||||
@Linked
|
||||
public class WaitingListener extends BasicListener {
|
||||
public WaitingListener() {
|
||||
super(EnumSet.of(FightState.WAITING));
|
||||
|
||||
@@ -21,6 +21,7 @@
|
||||
|
||||
package de.steamwar.misslewars.listener.special;
|
||||
|
||||
import de.steamwar.linkage.Linked;
|
||||
import de.steamwar.misslewars.Config;
|
||||
import de.steamwar.misslewars.FightState;
|
||||
import de.steamwar.misslewars.listener.BasicListener;
|
||||
@@ -31,6 +32,7 @@ import org.bukkit.event.block.BlockPhysicsEvent;
|
||||
|
||||
import java.util.EnumSet;
|
||||
|
||||
@Linked
|
||||
public class BarrierListener extends BasicListener {
|
||||
|
||||
public BarrierListener() {
|
||||
|
||||
@@ -21,6 +21,7 @@
|
||||
|
||||
package de.steamwar.misslewars.listener.special;
|
||||
|
||||
import de.steamwar.linkage.Linked;
|
||||
import de.steamwar.misslewars.Config;
|
||||
import de.steamwar.misslewars.FightState;
|
||||
import de.steamwar.misslewars.MissileWars;
|
||||
@@ -38,6 +39,7 @@ import org.bukkit.util.Vector;
|
||||
|
||||
import java.util.EnumSet;
|
||||
|
||||
@Linked
|
||||
public class SpaceListener extends BasicListener {
|
||||
|
||||
public SpaceListener() {
|
||||
|
||||
Reference in New Issue
Block a user