Heat And Climate

Heat And Climate

409k Downloads

HaCブロックにLevel.DestroyBlockを実行するとサーバーがクラッシュする

RedRayz opened this issue · 2 comments

commented

一部のHaCで追加されたブロックに対してLevel.DestroyBlockをアイテムドロップする設定(第二引数にtrue)で実行するとエラーでサーバーがクラッシュします。

MOD構成:
Forge 43.2.11
HeatAndClimate-1.19.2-v4-alpha5
自作mod

スタックトレースは以下の通りです。

java.lang.IllegalArgumentException: No parameter <parameter minecraft:this_entity>

TRANSFORMER/[email protected]/net.minecraft.world.level.storage.loot.LootContext$Builder.m_78970_(LootContext.java:211)
TRANSFORMER/[email protected]/defeatedcrow.hac.core.material.block.BlockDC.m_7381_(BlockDC.java:30)
TRANSFORMER/[email protected]/net.minecraft.world.level.block.state.BlockBehaviour$BlockStateBase.m_60724_(BlockBehaviour.java:710)
TRANSFORMER/[email protected]/net.minecraft.world.level.block.Block.m_49874_(Block.java:262)
TRANSFORMER/[email protected]/net.minecraft.world.level.block.Block.m_49881_(Block.java:296)
TRANSFORMER/[email protected]/net.minecraft.world.level.Level.m_7740_(Level.java:288)
TRANSFORMER/[email protected]/net.minecraft.world.level.LevelWriter.m_46953_(LevelWriter.java:27)
TRANSFORMER/[email protected]/net.minecraft.world.level.LevelWriter.m_46961_(LevelWriter.java:22)
TRANSFORMER/[email protected]/com.redrayz.orecraft.item.tool.ToolStoneMiner.m_6813_(ToolStoneMiner.java:40)※DestroyBlock(ブロック座標, true)の呼び出し
TRANSFORMER/[email protected]/net.minecraft.world.item.ItemStack.m_41686_(ItemStack.java:400)
TRANSFORMER/[email protected]/net.minecraft.server.level.ServerPlayerGameMode.m_9280_(ServerPlayerGameMode.java:250)
TRANSFORMER/[email protected]/net.minecraft.server.level.ServerPlayerGameMode.m_215116_(ServerPlayerGameMode.java:218)
TRANSFORMER/[email protected]/net.minecraft.server.level.ServerPlayerGameMode.m_214168_(ServerPlayerGameMode.java:188)
TRANSFORMER/[email protected]/net.minecraft.server.network.ServerGamePacketListenerImpl.m_7502_(ServerGamePacketListenerImpl.java:1024)
TRANSFORMER/[email protected]/net.minecraft.network.protocol.game.ServerboundPlayerActionPacket.m_5797_(ServerboundPlayerActionPacket.java:42)
TRANSFORMER/[email protected]/net.minecraft.network.protocol.game.ServerboundPlayerActionPacket.m_5797_(ServerboundPlayerActionPacket.java:8)
TRANSFORMER/[email protected]/net.minecraft.network.protocol.PacketUtils.m_131356_(PacketUtils.java:22)
TRANSFORMER/[email protected]/net.minecraft.server.TickTask.run(TickTask.java:18)
TRANSFORMER/[email protected]/net.minecraft.util.thread.BlockableEventLoop.m_6367_(BlockableEventLoop.java:157)
TRANSFORMER/[email protected]/net.minecraft.util.thread.ReentrantBlockableEventLoop.m_6367_(ReentrantBlockableEventLoop.java:23)
TRANSFORMER/[email protected]/net.minecraft.server.MinecraftServer.m_6367_(MinecraftServer.java:763)
TRANSFORMER/[email protected]/net.minecraft.server.MinecraftServer.m_6367_(MinecraftServer.java:157)
TRANSFORMER/[email protected]/net.minecraft.util.thread.BlockableEventLoop.m_7245_(BlockableEventLoop.java:131)
TRANSFORMER/[email protected]/net.minecraft.server.MinecraftServer.m_129961_(MinecraftServer.java:746)
TRANSFORMER/[email protected]/net.minecraft.server.MinecraftServer.m_7245_(MinecraftServer.java:740)
TRANSFORMER/[email protected]/net.minecraft.util.thread.BlockableEventLoop.m_18701_(BlockableEventLoop.java:140)
TRANSFORMER/[email protected]/net.minecraft.server.MinecraftServer.m_130012_(MinecraftServer.java:726)
TRANSFORMER/[email protected]/net.minecraft.server.MinecraftServer.m_130011_(MinecraftServer.java:658)
TRANSFORMER/[email protected]/net.minecraft.server.MinecraftServer.m_206580_(MinecraftServer.java:244)
java.base/java.lang.Thread.run(Thread.java:833)
commented

ご報告ありがとうございます。

builder.getParameter(LootContextParams.THIS_ENTITY);

で、Paramが空だった場合に即例外を吐くバニラのコードには釈然としないものはありますが、まぁモヤンなので仕方ないですね……
該当箇所はとりあえず修正しておきました。次回更新時に反映されていると思います。

commented

Fixed at e6d8360