Jump to content

Animefan8888

Forge Modder
  • Posts

    6157
  • Joined

  • Last visited

  • Days Won

    59

Everything posted by Animefan8888

  1. The damage based enchantments in Minecraft control their effect through their class directly. IE Enchantment::calcDamageByCreature. However it can't be used to make Bane of Arthropods deal damage to Endermen. In order to do that you will need to use LivingDamageEvent however that might not work how you expect it to because
  2. The map itself is Immutable. The easiest way would be to just use the Block::onBlockActivated method. However if you really don't want to do that with a simple copy-paste and reformat then here's what you have to do. Use Reflection to get access to AxeItem::BLOCK_STRIPPING_MAP store it's contents in another map. Then use Reflection to change it's value to your map. You will use ObfuscationReflectionHelper.getPrivateValue and ObfuscationReflectionHelper.setPrivateValue
  3. Even listening to all of those events won't stop other mods from having the vanilla enchants. IE if a tool or sword comes with an enchantment on it when crafted or dropped. What CHEESEBOT means is the enchantments will still exist within the game. If you can get away with overriding the registry to change their function do that. Honestly just saying you want to replace the vanilla enchantments isn't really enough information to help you. Which ones do you want to replace? And what do you hope to achieve by replacing them?
  4. If you want your Item's to point to a subpackge the easiest way of accomplishing that is to put it in your registry name IE. new Item(...).setRegistryName("modid", "/folder/filename")
  5. @KidKoderMod033109 Also you register the class with @EventBusSubscriber but your methods are not static.
  6. Minecraft code is obfuscated. You can't just decompile it and get readable human names.
  7. If you aren't already you need to make sure your event only runs on the client, because otherwise that will crash the dedicated server.
  8. I assume there's one on the client and one on the server. The one on the client likely doesn't know what ticksLifeTime is because it is initialized in the constructor, but when it spawns on the client it doesn't use that constructor use the EntityDataManager field in the Entity class to store your lifetime and alive count.
  9. That post shows no proof of a switch, but I'll give you a hint check out the other ResourceLocations you have made and the ones made by Minecraft for the same purpose.
  10. 1.12 is no longer supported on this forum. Please update to a modern version of Minecraft to receive support. For more information read the LTS at the top of the page.
  11. Yes the VoxelShape methods are what you use for this. I just checked in my version it is.
  12. You do not have Java installed install 64 bit Java 8.
  13. I believe you do this via Block.Properties::notSolid or something similar.
  14. 1.12 is no longer supported on this forum. Please update to a modern version of Minecraft to receive support. For more information please read the LTS at the top of the page.
  15. What does ENTITY_TYPE equal? And why doesn't your SpriteRenderer have a generic IE SpriteRenderer<MyTridentEntity> instead of SpriteRenderer<>
  16. This has nothing to do with rendering. This is registering your EntityType. Please define "does not work". Nothing renders? A purple elephant in a minecart renders? Show what you have tried specifically where you register a RenderFactory for your entity.
  17. Have you tried running your built mod without any other mods? And have you tried building it again?
  18. Actually I'm crazy sleep deprived, they aren't being registered twice. But commenting out the registry event does fix the problem. And honestly I don't have the brain capacity to see what exactly is happening but I'm gonna say the problem is your Items are getting a different version of the Block than what is actually registered. As such the Block to Item mapping is returning an air Block.
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.