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

Complexity

Total Complexity 2

Size/Duplication

Total Lines 18
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 13
dl 0
loc 18
rs 10
c 0
b 0
f 0
wmc 2

1 Method

Rating   Name   Duplication   Size   Complexity  
A receive(MinecraftClient,ClientPlayNetworkHandler,PacketByteBuf,PacketSender) 0 17 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 team eliminated network event
12
 *
13
 * @author Étienne Muser
14
 */
15
public class TeamEliminatedCallback implements ClientPlayNetworking.PlayChannelHandler {
16
    @Override
17
    public void receive(MinecraftClient client, ClientPlayNetworkHandler handler, PacketByteBuf buf, PacketSender responseSender) {
18
19
        try {
20
            // Get the game managers
21
            var gameManager = client.world.getClientLasertagManager();
22
            var eliminationManager = gameManager.getEliminationManager();
23
24
            // Get the values from the buffer
25
            var teamId = buf.readInt();
26
            var teamSurviveTime = buf.readLong();
27
28
            eliminationManager.setTeamEliminated(teamId);
29
            eliminationManager.setTeamSurviveTime(teamId, teamSurviveTime);
30
        } catch (Exception ex) {
31
            LasertagMod.LOGGER.error("Error in TeamEliminatedCallback", ex);
32
            throw ex;
33
        }
34
    }
35
}
36