因此,我一直在尝试,尝试和努力弄清楚如何使项目变得可互作用,我知道一个项目具有hitbox,所以我的一部分想知道我是否可以使用它,但是我偶然发现了两个问题,一个问题,一个问题,您不能使用订阅互动事件时使用诸如命中的命中率,并且可以使用命中bock的方式。并将这些VSLUE设置为它,我认为我有代码可以使用,但我不知道,我尝试了我能想到的一切,供参考,这是我到目前为止的代码:
player eye postition
一旦游戏启动,我就会遇到的错误:
NoClassDefFoundError
,因为
PlayerInteractEvent
属于福格(forge)事件总线,而不是mod巴士。对于删除项目的交互,您可以使用
PlayerInteractEvent.EntityInteract
(或.EntityInteractSpecific
),并检查目标是否为ItemEntity
。
例如:
@Mod.EventBusSubscriber(modid = MagicalCraft.MODID, bus = Mod.EventBusSubscriber.Bus.FORGE)
public class ModEventBusEvents {
@SubscribeEvent
public static void onItemEntityInteract(PlayerInteractEvent.EntityInteract event) {
if (event.getTarget() instanceof ItemEntity item) {
// Replace the item or run custom logic here
}
}
}
bus = Mod.EventBusSubscriber.Bus.FORGE
.
puse正确的事件:
PlayerInteractEvent.EntityInteract
检查您的Forge版本:如果不支持事件类,您将获得
NoClassDefFoundError
当播放器右键单击丢弃的项目时,您的代码将在启动时不会崩溃。