1
0
mirror of https://github.com/GeyserMC/Floodgate.git synced 2025-12-19 14:59:20 +00:00

Allow people to register a PacketHandler

This commit is contained in:
Tim203
2021-04-23 01:05:01 +02:00
parent c722c8e8c8
commit 2cb0162f64
2 changed files with 8 additions and 1 deletions

View File

@@ -30,11 +30,14 @@ import lombok.Getter;
import org.geysermc.floodgate.api.handshake.HandshakeHandlers;
import org.geysermc.floodgate.api.inject.PlatformInjector;
import org.geysermc.floodgate.api.link.PlayerLink;
import org.geysermc.floodgate.api.packet.PacketHandlers;
public final class InstanceHolder {
@Getter private static FloodgateApi api;
@Getter private static PlayerLink playerLink;
@Getter private static PlatformInjector injector;
@Getter private static PacketHandlers packetHandlers;
@Getter private static HandshakeHandlers handshakeHandlers;
private static UUID storedKey;
@@ -42,6 +45,7 @@ public final class InstanceHolder {
FloodgateApi floodgateApi,
PlayerLink link,
PlatformInjector platformInjector,
PacketHandlers packetHandlers,
HandshakeHandlers handshakeHandlers,
UUID key) {
@@ -56,6 +60,7 @@ public final class InstanceHolder {
api = floodgateApi;
playerLink = link;
injector = platformInjector;
InstanceHolder.packetHandlers = packetHandlers;
InstanceHolder.handshakeHandlers = handshakeHandlers;
return true;
}

View File

@@ -39,6 +39,7 @@ import org.geysermc.floodgate.api.handshake.HandshakeHandlers;
import org.geysermc.floodgate.api.inject.PlatformInjector;
import org.geysermc.floodgate.api.link.PlayerLink;
import org.geysermc.floodgate.api.logger.FloodgateLogger;
import org.geysermc.floodgate.api.packet.PacketHandlers;
import org.geysermc.floodgate.config.FloodgateConfig;
import org.geysermc.floodgate.config.FloodgateConfigHolder;
import org.geysermc.floodgate.config.loader.ConfigLoader;
@@ -75,6 +76,7 @@ public class FloodgatePlatform {
@Named("dataDirectory") Path dataDirectory,
ConfigLoader configLoader,
FloodgateConfigHolder configHolder,
PacketHandlers packetHandlers,
HandshakeHandlers handshakeHandlers) {
if (!Files.isDirectory(dataDirectory)) {
@@ -95,7 +97,7 @@ public class FloodgatePlatform {
guice = guice.createChildInjector(new ConfigLoadedModule(config));
PlayerLink link = guice.getInstance(PlayerLinkLoader.class).load();
InstanceHolder.set(api, link, this.injector, handshakeHandlers, KEY);
InstanceHolder.set(api, link, this.injector, packetHandlers, handshakeHandlers, KEY);
}
public boolean enable(Module... postInitializeModules) {