Fixed server crash. Fixes #61

This commit is contained in:
Sollace 2022-09-22 12:13:36 +02:00
parent 534a9d000a
commit 2e14403f93
4 changed files with 16 additions and 7 deletions

View file

@ -5,12 +5,9 @@ import java.util.*;
import com.minelittlepony.unicopia.InteractionManager;
import com.minelittlepony.unicopia.ability.data.tree.TreeTypeLoader;
import com.minelittlepony.unicopia.ability.magic.spell.trait.SpellTraits;
import com.minelittlepony.unicopia.client.gui.spellbook.ClientChapters;
import com.minelittlepony.unicopia.container.SpellbookChapterLoader;
import com.minelittlepony.unicopia.util.network.Packet;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.network.PacketByteBuf;
import net.minecraft.util.Identifier;
@ -26,10 +23,9 @@ public class MsgServerResources implements Packet<PlayerEntity> {
treeTypes = TreeTypeLoader.INSTANCE.getEntries();
}
@Environment(EnvType.CLIENT)
public MsgServerResources(PacketByteBuf buffer) {
traits = buffer.readMap(PacketByteBuf::readIdentifier, SpellTraits::fromPacket);
chapters = buffer.readMap(PacketByteBuf::readIdentifier, ClientChapters::loadChapter);
chapters = InteractionManager.instance().getClientNetworkHandler().readChapters(buffer);
treeTypes = buffer.readMap(PacketByteBuf::readIdentifier, TreeTypeLoader.TreeTypeDef::new);
}

View file

@ -1,7 +1,12 @@
package com.minelittlepony.unicopia.network.handler;
import java.util.Map;
import com.minelittlepony.unicopia.network.*;
import net.minecraft.network.PacketByteBuf;
import net.minecraft.util.Identifier;
public interface ClientNetworkHandler {
void handleTribeScreen(MsgTribeSelect packet);
@ -15,4 +20,6 @@ public interface ClientNetworkHandler {
void handleUnlockTraits(MsgUnlockTraits packet);
void handleServerResources(MsgServerResources packet);
Map<Identifier, ?> readChapters(PacketByteBuf buf);
}

View file

@ -20,6 +20,7 @@ import com.minelittlepony.unicopia.network.*;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.world.ClientWorld;
import net.minecraft.entity.Entity;
import net.minecraft.network.PacketByteBuf;
import net.minecraft.util.Identifier;
public class ClientNetworkHandlerImpl implements ClientNetworkHandler {
@ -78,6 +79,11 @@ public class ClientNetworkHandlerImpl implements ClientNetworkHandler {
}
}
@Override
public Map<Identifier, ?> readChapters(PacketByteBuf buffer) {
return buffer.readMap(PacketByteBuf::readIdentifier, ClientChapters::loadChapter);
}
@SuppressWarnings("unchecked")
@Override
public void handleServerResources(MsgServerResources packet) {

View file

@ -35,7 +35,6 @@
"MixinWorld",
"MixinWorldChunk",
"trinkets.MixinTrinketSurvivalSlot",
"trinkets.MixinTrinketCreativeSlot",
"trinkets.MixinTrinketItem",
"trinkets.MixinTrinketInventory",
"trinkets.MixinScreenHandler"
@ -57,7 +56,8 @@
"client.MixinPlayerEntityRenderer",
"client.MixinTooltipComponent",
"client.MixinWorldRenderer",
"client.sodium.MixinSodiumWorldRenderer"
"client.sodium.MixinSodiumWorldRenderer",
"trinkets.MixinTrinketCreativeSlot"
],
"injectors": {
"defaultRequire": 1