forked from SteamWar/SteamWar
Allow @Linked on fields
The value of a @Linked field of a linked class is linked like a linked class itself, e.g. registered as listener, and unlinked again on unlink. The field has to be initialised when linking. HullHiderCommand and TPSSystem use it instead of registering their listeners by hand.
This commit is contained in:
+1
-1
@@ -57,10 +57,10 @@ public class HullHiderCommand extends SWCommand implements Listener {
|
||||
public HullHiderCommand() {
|
||||
super("hullhider");
|
||||
|
||||
Bukkit.getPluginManager().registerEvents(hullHider, BauSystem.getInstance());
|
||||
Bukkit.getScheduler().runTaskTimer(BauSystem.getInstance(), this::onTick, 1, 1);
|
||||
}
|
||||
|
||||
@Linked
|
||||
private final HullHider<Region> hullHider = new HullHider<>();
|
||||
// Read on netty threads by the BauTechHider
|
||||
private final Map<Region, HiddenHull> hulls = new ConcurrentHashMap<>();
|
||||
|
||||
@@ -50,6 +50,9 @@ import java.util.Arrays;
|
||||
@Linked
|
||||
public class TPSSystem implements Listener {
|
||||
|
||||
@Linked
|
||||
private final TickManager tickManager = TickManager.impl;
|
||||
|
||||
public TPSSystem() {
|
||||
if (TickManager.impl.canFreeze()) {
|
||||
new TPSFreezeCommand();
|
||||
@@ -68,7 +71,6 @@ public class TPSSystem implements Listener {
|
||||
new TickDefaultCommand();
|
||||
new TPSBaseCommand();
|
||||
new TickBaseCommand();
|
||||
Bukkit.getPluginManager().registerEvents(TickManager.impl, BauSystem.getInstance());
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
|
||||
Reference in New Issue
Block a user