- 8
- 0
Здравствуйте!
Я работаю с forge (31.2.50) для создания модов и использую библиотеку geckolib3 для создания анимации существа в blockbench.Проблема следующая: все необходимые файлы для анимации я создал(файлы geo,animation и png), вставил все ссылки и нужные функции в код как написано в инструкции к geckolib (Model Classes -), но она почему-то не работает т.е. игра нормально запускается, никаких крашей нет, но при попытке вызова существа через команду /summon пишет "Не удалось создать сущность". Подскажите пожалуйста, что я делаю не так. Заранее спасибо за ответ!
Версия библиотеки geckolib: 3.0.32
Я прикрепил файлы с моими классами существа, его модели и рендера, а также мой ClientListener.Ещё посмотрел debug.log и нашёл там текст по поводу существа (не знаю может пригодится) тоже помещу его в краш-логе.
P.S. Я новичок в создании модификаций и многих вещей ещё не знаю.
Я работаю с forge (31.2.50) для создания модов и использую библиотеку geckolib3 для создания анимации существа в blockbench.Проблема следующая: все необходимые файлы для анимации я создал(файлы geo,animation и png), вставил все ссылки и нужные функции в код как написано в инструкции к geckolib (Model Classes -), но она почему-то не работает т.е. игра нормально запускается, никаких крашей нет, но при попытке вызова существа через команду /summon пишет "Не удалось создать сущность". Подскажите пожалуйста, что я делаю не так. Заранее спасибо за ответ!
Версия библиотеки geckolib: 3.0.32
Я прикрепил файлы с моими классами существа, его модели и рендера, а также мой ClientListener.Ещё посмотрел debug.log и нашёл там текст по поводу существа (не знаю может пригодится) тоже помещу его в краш-логе.
P.S. Я новичок в создании модификаций и многих вещей ещё не знаю.
- Краш-лог
-
[m[32m[10:54:06] [Render thread/INFO] [minecraft/NewChatGui]: [CHAT] Не удалось создать сущность
[m[1;31m[10:54:12] [Server thread/FATAL] [minecraft/ThreadTaskExecutor]: Error executing task on Server
java.lang.NullPointerException: null
at com.ed.testmod.entities.GhostKnightEntity.registerAttributes(GhostKnightEntity.java:97) ~[?:?] {re:classloading}
at net.minecraft.entity.LivingEntity.<init>(LivingEntity.java:201) ~[?:?] {re:classloading}
at net.minecraft.entity.MobEntity.<init>(MobEntity.java:99) ~[?:?] {re:classloading,pl:accesstransformer:B}
at net.minecraft.entity.CreatureEntity.<init>(CreatureEntity.java:13) ~[?:?] {re:classloading}
at net.minecraft.entity.monster.MonsterEntity.<init>(MonsterEntity.java:26) ~[?:?] {re:classloading}
at com.ed.testmod.entities.GhostKnightEntity.<init>(GhostKnightEntity.java:31) ~[?:?] {re:classloading}
at net.minecraft.entity.EntityType.create(EntityType.java:421) ~[?:?] {re:classloading}
at net.minecraft.entity.EntityType.create(EntityType.java:311) ~[?:?] {re:classloading}
at net.minecraft.entity.EntityType.spawn(EntityType.java:303) ~[?:?] {re:classloading}
at net.minecraft.entity.EntityType.spawn(EntityType.java:298) ~[?:?] {re:classloading}
at net.minecraft.item.SpawnEggItem.onItemUse(SpawnEggItem.java:80) ~[?:?] {re:classloading}
at net.minecraftforge.common.ForgeHooks.onPlaceItemIntoWorld(ForgeHooks.java:611) ~[?:?] {re:classloading}
at net.minecraft.item.ItemStack.onItemUse(ItemStack.java:173) ~[?:?] {re:classloading}
at net.minecraft.server.management.PlayerInteractionManager.func_219441_a(PlayerInteractionManager.java:353) ~[?:?] {re:classloading}
at net.minecraft.network.play.ServerPlayNetHandler.processTryUseItemOnBlock(ServerPlayNetHandler.java:881) ~[?:?] {re:classloading}
at net.minecraft.network.play.client.CPlayerTryUseItemOnBlockPacket.processPacket(CPlayerTryUseItemOnBlockPacket.java:45) ~[?:?] {re:classloading}
at net.minecraft.network.play.client.CPlayerTryUseItemOnBlockPacket.processPacket(CPlayerTryUseItemOnBlockPacket.java:12) ~[?:?] {re:classloading}
at net.minecraft.network.PacketThreadUtil.lambda$checkThreadAndEnqueue$0(PacketThreadUtil.java:19) ~[?:?] {re:classloading}
at net.minecraft.util.concurrent.TickDelayedTask.run(TickDelayedTask.java:20) ~[?:?] {re:classloading}
at net.minecraft.util.concurrent.ThreadTaskExecutor.run(ThreadTaskExecutor.java:140) [?:?] {re:classloading,pl:accesstransformer:B}
at net.minecraft.util.concurrent.RecursiveEventLoop.run(RecursiveEventLoop.java:22) [?:?] {re:classloading}
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:759) [?:?] {re:classloading,pl:accesstransformer:B}
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:141) [?:?] {re:classloading,pl:accesstransformer:B}
at net.minecraft.util.concurrent.ThreadTaskExecutor.driveOne(ThreadTaskExecutor.java:110) [?:?] {re:classloading,pl:accesstransformer:B}
at net.minecraft.server.MinecraftServer.driveOneInternal(MinecraftServer.java:742) [?:?] {re:classloading,pl:accesstransformer:B}
at net.minecraft.server.MinecraftServer.driveOne(MinecraftServer.java:736) [?:?] {re:classloading,pl:accesstransformer:B}
at net.minecraft.util.concurrent.ThreadTaskExecutor.driveUntil(ThreadTaskExecutor.java:123) [?:?] {re:classloading,pl:accesstransformer:B}
at net.minecraft.server.MinecraftServer.runScheduledTasks(MinecraftServer.java:722) [?:?] {re:classloading,pl:accesstransformer:B}
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:666) [?:?] {re:classloading,pl:accesstransformer:B}
at java.lang.Thread.run(Unknown Source) [?:1.8.0_291] {}
Краш-лог:
[m[32m[10:54:06] [Render thread/INFO] [minecraft/NewChatGui]: [CHAT] Не удалось создать сущность
[m[1;31m[10:54:12] [Server thread/FATAL] [minecraft/ThreadTaskExecutor]: Error executing task on Server
java.lang.NullPointerException: null
at com.ed.testmod.entities.GhostKnightEntity.registerAttributes(GhostKnightEntity.java:97) ~[?:?] {re:classloading}
at net.minecraft.entity.LivingEntity.<init>(LivingEntity.java:201) ~[?:?] {re:classloading}
at net.minecraft.entity.MobEntity.<init>(MobEntity.java:99) ~[?:?] {re:classloading,pl:accesstransformer:B}
at net.minecraft.entity.CreatureEntity.<init>(CreatureEntity.java:13) ~[?:?] {re:classloading}
at net.minecraft.entity.monster.MonsterEntity.<init>(MonsterEntity.java:26) ~[?:?] {re:classloading}
at com.ed.testmod.entities.GhostKnightEntity.<init>(GhostKnightEntity.java:31) ~[?:?] {re:classloading}
at net.minecraft.entity.EntityType.create(EntityType.java:421) ~[?:?] {re:classloading}
at net.minecraft.entity.EntityType.create(EntityType.java:311) ~[?:?] {re:classloading}
at net.minecraft.entity.EntityType.spawn(EntityType.java:303) ~[?:?] {re:classloading}
at net.minecraft.entity.EntityType.spawn(EntityType.java:298) ~[?:?] {re:classloading}
at net.minecraft.item.SpawnEggItem.onItemUse(SpawnEggItem.java:80) ~[?:?] {re:classloading}
at net.minecraftforge.common.ForgeHooks.onPlaceItemIntoWorld(ForgeHooks.java:611) ~[?:?] {re:classloading}
at net.minecraft.item.ItemStack.onItemUse(ItemStack.java:173) ~[?:?] {re:classloading}
at net.minecraft.server.management.PlayerInteractionManager.func_219441_a(PlayerInteractionManager.java:353) ~[?:?] {re:classloading}
at net.minecraft.network.play.ServerPlayNetHandler.processTryUseItemOnBlock(ServerPlayNetHandler.java:881) ~[?:?] {re:classloading}
at net.minecraft.network.play.client.CPlayerTryUseItemOnBlockPacket.processPacket(CPlayerTryUseItemOnBlockPacket.java:45) ~[?:?] {re:classloading}
at net.minecraft.network.play.client.CPlayerTryUseItemOnBlockPacket.processPacket(CPlayerTryUseItemOnBlockPacket.java:12) ~[?:?] {re:classloading}
at net.minecraft.network.PacketThreadUtil.lambda$checkThreadAndEnqueue$0(PacketThreadUtil.java:19) ~[?:?] {re:classloading}
at net.minecraft.util.concurrent.TickDelayedTask.run(TickDelayedTask.java:20) ~[?:?] {re:classloading}
at net.minecraft.util.concurrent.ThreadTaskExecutor.run(ThreadTaskExecutor.java:140) [?:?] {re:classloading,pl:accesstransformer:B}
at net.minecraft.util.concurrent.RecursiveEventLoop.run(RecursiveEventLoop.java:22) [?:?] {re:classloading}
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:759) [?:?] {re:classloading,pl:accesstransformer:B}
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:141) [?:?] {re:classloading,pl:accesstransformer:B}
at net.minecraft.util.concurrent.ThreadTaskExecutor.driveOne(ThreadTaskExecutor.java:110) [?:?] {re:classloading,pl:accesstransformer:B}
at net.minecraft.server.MinecraftServer.driveOneInternal(MinecraftServer.java:742) [?:?] {re:classloading,pl:accesstransformer:B}
at net.minecraft.server.MinecraftServer.driveOne(MinecraftServer.java:736) [?:?] {re:classloading,pl:accesstransformer:B}
at net.minecraft.util.concurrent.ThreadTaskExecutor.driveUntil(ThreadTaskExecutor.java:123) [?:?] {re:classloading,pl:accesstransformer:B}
at net.minecraft.server.MinecraftServer.runScheduledTasks(MinecraftServer.java:722) [?:?] {re:classloading,pl:accesstransformer:B}
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:666) [?:?] {re:classloading,pl:accesstransformer:B}
at java.lang.Thread.run(Unknown Source) [?:1.8.0_291] {}