mirror of
https://github.com/TeamMidnightDust/MidnightControls.git
synced 2025-12-16 08:35:10 +01:00
32 lines
1.9 KiB
Java
Executable File
32 lines
1.9 KiB
Java
Executable File
package eu.midnightdust.midnightcontrols.fabric;
|
|
|
|
import eu.midnightdust.midnightcontrols.ControlsMode;
|
|
import eu.midnightdust.midnightcontrols.MidnightControls;
|
|
import eu.midnightdust.midnightcontrols.MidnightControlsFeature;
|
|
import eu.midnightdust.midnightcontrols.fabric.event.PlayerChangeControlsModeCallback;
|
|
import eu.midnightdust.midnightcontrols.packet.ControlsModePayload;
|
|
import eu.midnightdust.midnightcontrols.packet.FeaturePayload;
|
|
import eu.midnightdust.midnightcontrols.packet.HelloPayload;
|
|
import net.fabricmc.api.ModInitializer;
|
|
import net.fabricmc.fabric.api.networking.v1.PayloadTypeRegistry;
|
|
import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking;
|
|
|
|
public class MidnightControlsFabric implements ModInitializer {
|
|
@Override
|
|
public void onInitialize() {
|
|
MidnightControls.init();
|
|
PayloadTypeRegistry.playC2S().register(HelloPayload.PACKET_ID, HelloPayload.codec);
|
|
PayloadTypeRegistry.playC2S().register(ControlsModePayload.PACKET_ID, ControlsModePayload.codec);
|
|
PayloadTypeRegistry.playS2C().register(ControlsModePayload.PACKET_ID, ControlsModePayload.codec);
|
|
PayloadTypeRegistry.playS2C().register(FeaturePayload.PACKET_ID, FeaturePayload.codec);
|
|
|
|
ServerPlayNetworking.registerGlobalReceiver(HelloPayload.PACKET_ID, (payload, context) -> {
|
|
ControlsMode.byId(payload.controlsMode()).ifPresent(controlsMode -> PlayerChangeControlsModeCallback.EVENT.invoker().apply(context.player(), controlsMode));
|
|
context.responseSender().sendPacket(new FeaturePayload(MidnightControlsFeature.HORIZONTAL_REACHAROUND));
|
|
});
|
|
ServerPlayNetworking.registerGlobalReceiver(ControlsModePayload.PACKET_ID, (payload, context) -> {
|
|
ControlsMode.byId(payload.controlsMode()).ifPresent(controlsMode -> PlayerChangeControlsModeCallback.EVENT.invoker().apply(context.player(), controlsMode));
|
|
});
|
|
}
|
|
}
|