/* * Decompiled with CFR 0.152. */ package com.vinlanx.explosionoverhaul; import com.vinlanx.explosionoverhaul.client.ClientEffects; import java.util.function.Supplier; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.world.phys.Vec3; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.fml.DistExecutor; import net.minecraftforge.network.NetworkEvent; public class FlashEffectPacket { private final Vec3 explosionPos; private final float power; public FlashEffectPacket(Vec3 explosionPos, float power) { this.explosionPos = explosionPos; this.power = power; } public static void encode(FlashEffectPacket msg, FriendlyByteBuf buf) { buf.writeDouble(msg.explosionPos.f_82479_); buf.writeDouble(msg.explosionPos.f_82480_); buf.writeDouble(msg.explosionPos.f_82481_); buf.writeFloat(msg.power); } public static FlashEffectPacket decode(FriendlyByteBuf buf) { return new FlashEffectPacket(new Vec3(buf.readDouble(), buf.readDouble(), buf.readDouble()), buf.readFloat()); } public static void handle(FlashEffectPacket msg, Supplier ctx) { ctx.get().enqueueWork(() -> DistExecutor.unsafeRunWhenOn((Dist)Dist.CLIENT, () -> () -> ClientEffects.addFlashEffect(msg.explosionPos, msg.power))); ctx.get().setPacketHandled(true); } }