51 lines
1.6 KiB
Java
51 lines
1.6 KiB
Java
package cn.hamster3.service.velocity;
|
|
|
|
import cn.hamster3.mc.plugin.ball.common.api.BallAPI;
|
|
import cn.hamster3.service.common.util.ServiceLogUtils;
|
|
import cn.hamster3.service.velocity.listener.BridgeListener;
|
|
import cn.hamster3.service.velocity.listener.ServiceMainListener;
|
|
import com.google.inject.Inject;
|
|
import com.velocitypowered.api.event.Subscribe;
|
|
import com.velocitypowered.api.event.proxy.ProxyInitializeEvent;
|
|
import com.velocitypowered.api.plugin.Dependency;
|
|
import com.velocitypowered.api.plugin.Plugin;
|
|
import com.velocitypowered.api.proxy.ProxyServer;
|
|
|
|
import java.util.logging.Logger;
|
|
|
|
@Plugin(
|
|
id = "hamster-service",
|
|
name = "HamsterService",
|
|
version = BuildConstants.VERSION,
|
|
description = BuildConstants.DESCRIPTION,
|
|
authors = {"MiniDay"},
|
|
dependencies = @Dependency(id = "hamster-ball")
|
|
)
|
|
public class BallBridgePlugin {
|
|
private static BallBridgePlugin instance;
|
|
private final ProxyServer proxyServer;
|
|
|
|
@Inject
|
|
public BallBridgePlugin(ProxyServer proxyServer) {
|
|
this.proxyServer = proxyServer;
|
|
instance = this;
|
|
ServiceLogUtils.setLogger(Logger.getLogger("HamsterService"));
|
|
}
|
|
|
|
public static BallBridgePlugin getInstance() {
|
|
return instance;
|
|
}
|
|
|
|
public ProxyServer getProxyServer() {
|
|
return proxyServer;
|
|
}
|
|
|
|
|
|
@Subscribe(priority = 0)
|
|
public void onProxyInitialization(ProxyInitializeEvent event) {
|
|
BallAPI.getInstance().subscribeRaw("HamsterService");
|
|
BallAPI.getInstance().getEventBus().register(BridgeListener.INSTANCE);
|
|
proxyServer.getEventManager().register(this, ServiceMainListener.INSTANCE);
|
|
}
|
|
}
|