Skip to content

Commit d54df07

Browse files
Pablete1234twizmwazin
authored andcommitted
Add AbstractListenerModule
1 parent 0e84ca8 commit d54df07

File tree

9 files changed

+45
-76
lines changed

9 files changed

+45
-76
lines changed

src/main/java/in/twizmwaz/cardinal/module/itemremove/ItemRemoveModuleListener.java renamed to src/main/java/in/twizmwaz/cardinal/module/AbstractListenerModule.java

+4-26
Original file line numberDiff line numberDiff line change
@@ -23,37 +23,15 @@
2323
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
2424
*/
2525

26-
package in.twizmwaz.cardinal.module.itemremove;
26+
package in.twizmwaz.cardinal.module;
2727

2828
import in.twizmwaz.cardinal.Cardinal;
29-
import in.twizmwaz.cardinal.match.Match;
30-
import in.twizmwaz.cardinal.util.MaterialType;
31-
import lombok.AllArgsConstructor;
32-
import org.bukkit.event.EventHandler;
3329
import org.bukkit.event.Listener;
34-
import org.bukkit.event.entity.ItemSpawnEvent;
35-
import org.bukkit.material.MaterialData;
3630

37-
@AllArgsConstructor
38-
public class ItemRemoveModuleListener implements Listener {
31+
public class AbstractListenerModule extends AbstractModule implements Listener {
3932

40-
ItemRemoveModule itemRemoveModule;
41-
42-
/**
43-
* Prevent items from spawning if they are in the item-remove tag in XML.
44-
*
45-
* @param event The event.
46-
*/
47-
@EventHandler(ignoreCancelled = true)
48-
public void onItemSpawn(ItemSpawnEvent event) {
49-
Match match = Cardinal.getMatch(event.getWorld());
50-
MaterialData data = event.getEntity().getItemStack().getData();
51-
for (MaterialType type : itemRemoveModule.getMaterials().get(match)) {
52-
if (type.isType(data)) {
53-
event.setCancelled(true);
54-
break;
55-
}
56-
}
33+
public AbstractListenerModule() {
34+
Cardinal.registerEvents(this);
5735
}
5836

5937
}

src/main/java/in/twizmwaz/cardinal/module/connection/ConnectionModule.java

+2-7
Original file line numberDiff line numberDiff line change
@@ -27,22 +27,17 @@
2727

2828
import in.twizmwaz.cardinal.Cardinal;
2929
import in.twizmwaz.cardinal.match.MatchThread;
30-
import in.twizmwaz.cardinal.module.AbstractModule;
30+
import in.twizmwaz.cardinal.module.AbstractListenerModule;
3131
import in.twizmwaz.cardinal.module.ModuleEntry;
3232
import in.twizmwaz.cardinal.playercontainer.Containers;
3333
import in.twizmwaz.cardinal.playercontainer.PlayerContainerData;
3434
import org.bukkit.event.EventHandler;
3535
import org.bukkit.event.EventPriority;
36-
import org.bukkit.event.Listener;
3736
import org.bukkit.event.player.PlayerInitialSpawnEvent;
3837
import org.bukkit.event.player.PlayerQuitEvent;
3938

4039
@ModuleEntry
41-
public class ConnectionModule extends AbstractModule implements Listener {
42-
43-
public ConnectionModule() {
44-
Cardinal.registerEvents(this);
45-
}
40+
public class ConnectionModule extends AbstractListenerModule {
4641

4742
/**
4843
* Handles new container data when the player initially joins the server.

src/main/java/in/twizmwaz/cardinal/module/countdown/CountdownModule.java

+2-7
Original file line numberDiff line numberDiff line change
@@ -29,25 +29,20 @@
2929
import in.twizmwaz.cardinal.Cardinal;
3030
import in.twizmwaz.cardinal.match.Match;
3131
import in.twizmwaz.cardinal.match.MatchThread;
32-
import in.twizmwaz.cardinal.module.AbstractModule;
32+
import in.twizmwaz.cardinal.module.AbstractListenerModule;
3333
import in.twizmwaz.cardinal.module.ModuleEntry;
3434
import in.twizmwaz.cardinal.module.event.ModuleLoadCompleteEvent;
3535
import lombok.NonNull;
3636
import org.bukkit.event.EventHandler;
37-
import org.bukkit.event.Listener;
3837

3938
import java.util.Map;
4039

4140
@ModuleEntry
42-
public class CountdownModule extends AbstractModule implements Listener {
41+
public class CountdownModule extends AbstractListenerModule {
4342

4443
private Map<MatchThread, CycleCountdown> cycleCountdowns = Maps.newHashMap();
4544
private Map<Match, StartCountdown> startCountdowns = Maps.newHashMap();
4645

47-
public CountdownModule() {
48-
Cardinal.registerEvents(this);
49-
}
50-
5146
@EventHandler
5247
public void onModuleLoadComplete(ModuleLoadCompleteEvent event) {
5348
Cardinal.getInstance().getMatchThreads().forEach(matchThread ->

src/main/java/in/twizmwaz/cardinal/module/cycle/CycleModule.java

+2-7
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
import in.twizmwaz.cardinal.event.matchthread.MatchThreadMakeEvent;
3232
import in.twizmwaz.cardinal.match.Match;
3333
import in.twizmwaz.cardinal.match.MatchThread;
34-
import in.twizmwaz.cardinal.module.AbstractModule;
34+
import in.twizmwaz.cardinal.module.AbstractListenerModule;
3535
import in.twizmwaz.cardinal.module.ModuleEntry;
3636
import in.twizmwaz.cardinal.module.event.ModuleLoadCompleteEvent;
3737
import in.twizmwaz.cardinal.module.repository.LoadedMap;
@@ -44,21 +44,16 @@
4444
import org.bukkit.World;
4545
import org.bukkit.event.EventHandler;
4646
import org.bukkit.event.EventPriority;
47-
import org.bukkit.event.Listener;
4847

4948
import java.util.Map;
5049
import java.util.UUID;
5150

5251
@ModuleEntry(depends = {RotationModule.class})
53-
public final class CycleModule extends AbstractModule implements Listener {
52+
public final class CycleModule extends AbstractListenerModule {
5453

5554
@Getter
5655
private final Map<MatchThread, CycleRunnable> nextCycle = Maps.newHashMap();
5756

58-
public CycleModule() {
59-
Cardinal.registerEvents(this);
60-
}
61-
6257
/**
6358
* Creates a new cycle object for the initial server cycle.
6459
*

src/main/java/in/twizmwaz/cardinal/module/interact/InteractModule.java

+2-7
Original file line numberDiff line numberDiff line change
@@ -28,14 +28,13 @@
2828
import in.twizmwaz.cardinal.Cardinal;
2929
import in.twizmwaz.cardinal.match.Match;
3030
import in.twizmwaz.cardinal.match.MatchThread;
31-
import in.twizmwaz.cardinal.module.AbstractModule;
31+
import in.twizmwaz.cardinal.module.AbstractListenerModule;
3232
import in.twizmwaz.cardinal.module.ModuleEntry;
3333
import in.twizmwaz.cardinal.module.spawn.SpawnModule;
3434
import in.twizmwaz.cardinal.util.ListUtil;
3535
import lombok.NonNull;
3636
import org.bukkit.entity.Player;
3737
import org.bukkit.event.EventHandler;
38-
import org.bukkit.event.Listener;
3938
import org.bukkit.event.block.BlockBreakEvent;
4039
import org.bukkit.event.block.BlockPlaceEvent;
4140
import org.bukkit.event.entity.EntityCombustByBlockEvent;
@@ -55,11 +54,7 @@
5554
import org.bukkit.event.vehicle.VehicleExitEvent;
5655

5756
@ModuleEntry
58-
public class InteractModule extends AbstractModule implements Listener {
59-
60-
public InteractModule() {
61-
Cardinal.registerEvents(this);
62-
}
57+
public class InteractModule extends AbstractListenerModule {
6358

6459
private boolean canInteract(@NonNull Player player) {
6560
MatchThread thread = Cardinal.getMatchThread(player);

src/main/java/in/twizmwaz/cardinal/module/itemremove/ItemRemoveModule.java

+22-6
Original file line numberDiff line numberDiff line change
@@ -27,13 +27,16 @@
2727

2828
import in.twizmwaz.cardinal.Cardinal;
2929
import in.twizmwaz.cardinal.match.Match;
30-
import in.twizmwaz.cardinal.module.AbstractModule;
30+
import in.twizmwaz.cardinal.module.AbstractListenerModule;
3131
import in.twizmwaz.cardinal.module.ModuleEntry;
3232
import in.twizmwaz.cardinal.module.ModuleError;
3333
import in.twizmwaz.cardinal.module.repository.LoadedMap;
3434
import in.twizmwaz.cardinal.util.MaterialType;
3535
import lombok.Getter;
3636
import lombok.NonNull;
37+
import org.bukkit.event.EventHandler;
38+
import org.bukkit.event.entity.ItemSpawnEvent;
39+
import org.bukkit.material.MaterialData;
3740
import org.jdom2.Element;
3841
import org.jdom2.located.Located;
3942

@@ -43,15 +46,11 @@
4346
import java.util.Map;
4447

4548
@ModuleEntry
46-
public class ItemRemoveModule extends AbstractModule {
49+
public class ItemRemoveModule extends AbstractListenerModule {
4750

4851
@Getter
4952
private final Map<Match, List<MaterialType>> materials = new HashMap<>();
5053

51-
public ItemRemoveModule() {
52-
Cardinal.registerEvents(new ItemRemoveModuleListener(this));
53-
}
54-
5554
@Override
5655
public boolean loadMatch(@NonNull Match match) {
5756
List<MaterialType> types = new ArrayList<>();
@@ -85,4 +84,21 @@ public void clearMatch(@NonNull Match match) {
8584
materials.remove(match);
8685
}
8786

87+
/**
88+
* Prevent items from spawning if they are in the item-remove tag in XML.
89+
*
90+
* @param event The event.
91+
*/
92+
@EventHandler(ignoreCancelled = true)
93+
public void onItemSpawn(ItemSpawnEvent event) {
94+
Match match = Cardinal.getMatch(event.getWorld());
95+
MaterialData data = event.getEntity().getItemStack().getData();
96+
for (MaterialType type : materials.get(match)) {
97+
if (type.isType(data)) {
98+
event.setCancelled(true);
99+
break;
100+
}
101+
}
102+
}
103+
88104
}

src/main/java/in/twizmwaz/cardinal/module/kit/KitModule.java

+7
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,8 @@
3434
import in.twizmwaz.cardinal.module.ModuleEntry;
3535
import in.twizmwaz.cardinal.module.filter.Filter;
3636
import in.twizmwaz.cardinal.module.filter.FilterModule;
37+
import in.twizmwaz.cardinal.module.kit.listener.DoubleJumpListener;
38+
import in.twizmwaz.cardinal.module.kit.listener.ShieldListener;
3739
import in.twizmwaz.cardinal.module.kit.type.KitArmor;
3840
import in.twizmwaz.cardinal.module.kit.type.KitAttribute;
3941
import in.twizmwaz.cardinal.module.kit.type.KitClear;
@@ -70,6 +72,11 @@ public class KitModule extends AbstractModule {
7072
@Getter
7173
private final Map<Match, Map<String, Kit>> kits = Maps.newHashMap();
7274

75+
public KitModule() {
76+
Cardinal.registerEvents(new DoubleJumpListener());
77+
Cardinal.registerEvents(new ShieldListener());
78+
}
79+
7380
@Override
7481
public boolean loadMatch(Match match) {
7582
kits.put(match, Maps.newHashMap());

src/main/java/in/twizmwaz/cardinal/module/rotation/RotationModule.java

+2-6
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
import in.twizmwaz.cardinal.Cardinal;
3131
import in.twizmwaz.cardinal.event.matchthread.MatchThreadMakeEvent;
3232
import in.twizmwaz.cardinal.match.MatchThread;
33-
import in.twizmwaz.cardinal.module.AbstractModule;
33+
import in.twizmwaz.cardinal.module.AbstractListenerModule;
3434
import in.twizmwaz.cardinal.module.ModuleEntry;
3535
import in.twizmwaz.cardinal.module.event.ModuleLoadCompleteEvent;
3636
import in.twizmwaz.cardinal.module.repository.LoadedMap;
@@ -44,15 +44,11 @@
4444
import java.util.Map;
4545

4646
@ModuleEntry(depends = {RepositoryModule.class})
47-
public class RotationModule extends AbstractModule implements Listener {
47+
public class RotationModule extends AbstractListenerModule implements Listener {
4848

4949
@Getter
5050
private final Map<MatchThread, Rotation> rotations = Maps.newHashMap();
5151

52-
public RotationModule() {
53-
Cardinal.registerEvents(this);
54-
}
55-
5652
/**
5753
* Creates a temporary rotation.
5854
*

src/main/java/in/twizmwaz/cardinal/module/spawn/SpawnModule.java

+2-10
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
import in.twizmwaz.cardinal.event.player.PlayerContainerChangeStateEvent;
3535
import in.twizmwaz.cardinal.match.Match;
3636
import in.twizmwaz.cardinal.match.MatchState;
37-
import in.twizmwaz.cardinal.module.AbstractModule;
37+
import in.twizmwaz.cardinal.module.AbstractListenerModule;
3838
import in.twizmwaz.cardinal.module.ModuleEntry;
3939
import in.twizmwaz.cardinal.module.ModuleError;
4040
import in.twizmwaz.cardinal.module.region.Region;
@@ -52,7 +52,6 @@
5252
import org.bukkit.entity.Player;
5353
import org.bukkit.event.EventHandler;
5454
import org.bukkit.event.EventPriority;
55-
import org.bukkit.event.Listener;
5655
import org.bukkit.event.player.PlayerInitialSpawnEvent;
5756
import org.bukkit.event.player.PlayerJoinEvent;
5857
import org.bukkit.util.Vector;
@@ -65,17 +64,10 @@
6564
import java.util.stream.Collectors;
6665

6766
@ModuleEntry(depends = {TeamModule.class/*, KitModule.class, FilterModule.class*/, RegionModule.class})
68-
public class SpawnModule extends AbstractModule implements Listener {
67+
public class SpawnModule extends AbstractListenerModule {
6968

7069
private Map<Match, List<Spawn>> spawns = Maps.newHashMap();
7170

72-
/**
73-
* Default constructor to create the module.
74-
*/
75-
public SpawnModule() {
76-
Cardinal.registerEvents(this);
77-
}
78-
7971
@Override
8072
public boolean loadMatch(@NonNull Match match) {
8173
List<Spawn> spawns = Lists.newArrayList();

0 commit comments

Comments
 (0)