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.InteractionManager;
import com.minelittlepony.unicopia.ability.data.tree.TreeTypeLoader; import com.minelittlepony.unicopia.ability.data.tree.TreeTypeLoader;
import com.minelittlepony.unicopia.ability.magic.spell.trait.SpellTraits; 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.container.SpellbookChapterLoader;
import com.minelittlepony.unicopia.util.network.Packet; 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.entity.player.PlayerEntity;
import net.minecraft.network.PacketByteBuf; import net.minecraft.network.PacketByteBuf;
import net.minecraft.util.Identifier; import net.minecraft.util.Identifier;
@ -26,10 +23,9 @@ public class MsgServerResources implements Packet<PlayerEntity> {
treeTypes = TreeTypeLoader.INSTANCE.getEntries(); treeTypes = TreeTypeLoader.INSTANCE.getEntries();
} }
@Environment(EnvType.CLIENT)
public MsgServerResources(PacketByteBuf buffer) { public MsgServerResources(PacketByteBuf buffer) {
traits = buffer.readMap(PacketByteBuf::readIdentifier, SpellTraits::fromPacket); 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); treeTypes = buffer.readMap(PacketByteBuf::readIdentifier, TreeTypeLoader.TreeTypeDef::new);
} }

View file

@ -1,7 +1,12 @@
package com.minelittlepony.unicopia.network.handler; package com.minelittlepony.unicopia.network.handler;
import java.util.Map;
import com.minelittlepony.unicopia.network.*; import com.minelittlepony.unicopia.network.*;
import net.minecraft.network.PacketByteBuf;
import net.minecraft.util.Identifier;
public interface ClientNetworkHandler { public interface ClientNetworkHandler {
void handleTribeScreen(MsgTribeSelect packet); void handleTribeScreen(MsgTribeSelect packet);
@ -15,4 +20,6 @@ public interface ClientNetworkHandler {
void handleUnlockTraits(MsgUnlockTraits packet); void handleUnlockTraits(MsgUnlockTraits packet);
void handleServerResources(MsgServerResources 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.MinecraftClient;
import net.minecraft.client.world.ClientWorld; import net.minecraft.client.world.ClientWorld;
import net.minecraft.entity.Entity; import net.minecraft.entity.Entity;
import net.minecraft.network.PacketByteBuf;
import net.minecraft.util.Identifier; import net.minecraft.util.Identifier;
public class ClientNetworkHandlerImpl implements ClientNetworkHandler { 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") @SuppressWarnings("unchecked")
@Override @Override
public void handleServerResources(MsgServerResources packet) { public void handleServerResources(MsgServerResources packet) {

View file

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