de.pewpewproject.lasertag.networking.server.callbacks.ClientTriggerLoadPresetCallback   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 17
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 11
dl 0
loc 17
rs 10
c 0
b 0
f 0
wmc 2

1 Method

Rating   Name   Duplication   Size   Complexity  
A receive(MinecraftServer,ServerPlayerEntity,ServerPlayNetworkHandler,PacketByteBuf,PacketSender) 0 16 2
1
package de.pewpewproject.lasertag.networking.server.callbacks;
2
3
import de.pewpewproject.lasertag.LasertagMod;
4
import net.fabricmc.fabric.api.networking.v1.PacketSender;
5
import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking;
6
import net.minecraft.network.PacketByteBuf;
7
import net.minecraft.server.MinecraftServer;
8
import net.minecraft.server.network.ServerPlayNetworkHandler;
9
import net.minecraft.server.network.ServerPlayerEntity;
10
11
/**
12
 * Callback for the client trigger load settings preset network event
13
 *
14
 * @author Étienne Muser
15
 */
16
public class ClientTriggerLoadPresetCallback implements ServerPlayNetworking.PlayChannelHandler {
17
    @Override
18
    public void receive(MinecraftServer server, ServerPlayerEntity player, ServerPlayNetworkHandler handler, PacketByteBuf buf, PacketSender responseSender) {
19
20
        try {
21
22
            // Get the game managers
23
            var gameManager = server.getOverworld().getServerLasertagManager();
24
            var settingsPresetsManager = gameManager.getSettingsPresetsManager();
25
26
            // Get the preset name
27
            var presetName = buf.readString();
28
29
            settingsPresetsManager.loadPreset(presetName);
30
        } catch (Exception ex) {
31
            LasertagMod.LOGGER.error("Error in ClientTriggerLoadPresetCallback", ex);
32
            throw ex;
33
        }
34
    }
35
}
36