de.pewpewproject.lasertag.networking.client.callbacks.PlayerDeactivatedStatusChangedCallback   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 19
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 12
dl 0
loc 19
rs 10
c 0
b 0
f 0
wmc 2

1 Method

Rating   Name   Duplication   Size   Complexity  
A receive(MinecraftClient,ClientPlayNetworkHandler,PacketByteBuf,PacketSender) 0 18 2
1
package de.pewpewproject.lasertag.networking.client.callbacks;
2
3
import de.pewpewproject.lasertag.LasertagMod;
4
import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking;
5
import net.fabricmc.fabric.api.networking.v1.PacketSender;
6
import net.minecraft.client.MinecraftClient;
7
import net.minecraft.client.network.ClientPlayNetworkHandler;
8
import net.minecraft.network.PacketByteBuf;
9
10
/**
11
 * Callback to handle the player deactivation status changed network event
12
 *
13
 * @author Étienne Muser
14
 */
15
public class PlayerDeactivatedStatusChangedCallback implements ClientPlayNetworking.PlayChannelHandler {
16
    @Override
17
    public void receive(MinecraftClient client, ClientPlayNetworkHandler handler, PacketByteBuf buf, PacketSender responseSender) {
18
19
        try {
20
21
            // Get the game managers
22
            var gameManager = client.world.getClientLasertagManager();
23
            var activationManager = gameManager.getActivationManager();
24
25
            // Read from buffer
26
            var uuid = buf.readUuid();
27
            var deactivated = buf.readBoolean();
28
29
            // Set deactivated status
30
            activationManager.setDeactivated(uuid, deactivated);
31
        } catch (Exception ex) {
32
            LasertagMod.LOGGER.error("Error in PlayerDeactivatedStatusChangedCallback", ex);
33
            throw ex;
34
        }
35
    }
36
}
37