Jump to content

Recommended Posts

Posted

Hello all! I'm new to Forge (obviously) and recently switched over from ModLoader.

 

Anyways, my mod removes a lot of the vanilla mobs and adds a few new ones, but the addSpawn and removeSpawn methods in EntityRegistry don't seem to be working for me... There are no errors, yet they don't... Work.

 

Some code:

EntityRegistry.removeSpawn(EntityPig.class, EnumCreatureType.creature, WorldType.base12Biomes);
EntityRegistry.addSpawn(EntityWalker.class, 50, 5, 20, EnumCreatureType.monster);

 

Would really appreciate some help with this, thanks! :)

Posted

Is it in your @Init method?

 

The removes are in a separate method that is called in the init method, so I can keep it less cluttered. The addSpawns are still inside the init method, though. Neither work. :( When I was using the ModLoader versions they seemed to work somewhat. Though monsters still spawned in dark places... Hence I tried switching to the EntityRegistry methods to see if they would fix that, but they didn't work at all... xD

 

EDIT: Thanks for the response, by the way. :)

Posted

Got it sorted out. Turns out the mobs were just spawning in the biomes that the "basic 12 biomes" didn't cover, and I used the ModLoader addSpawn to make the new mobs spawn... And everything works! :)

Guest
This topic is now closed to further replies.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • Hello , when I try to launch the forge installer it just crash with a message for 0,5 secondes. I'm using java 17 to launch it. Here's the link of the error :https://cdn.corenexis.com/view/?img=d/ma24/qs7u4U.jpg  
    • You will find the crash-report or log in your minecraft directory (crash-report or logs folder)
    • Use a modpack which is using these 2 mods as working base:   https://www.curseforge.com/minecraft/modpacks/life-in-the-village-3
    • inicie un mundo donde instale Croptopia y Farmer's Delight, entonces instale el addon Croptopia Delight pero no funciona. es la version 1.18.2
    • Hello all. I'm currently grappling with the updateShape method in a custom class extending Block.  My code currently looks like this: The conditionals in CheckState are there to switch blockstate properties, which is working fine, as it functions correctly every time in getStateForPlacement.  The problem I'm running into is that when I update a state, the blocks seem to call CheckState with the position of the block which was changed updated last.  If I build a wall I can see the same change propagate across. My question thus is this: is updateShape sending its return to the neighbouring block?  Is each block not independently executing the updateShape method, thus inserting its own current position?  The first statement appears to be true, and the second false (each block is not independently executing the method). I have tried to fix this by saving the block's own position to a variable myPos at inception, and then feeding this in as CheckState(myPos) but this causes a worse outcome, where all blocks take the update of the first modified block, rather than just their neighbour.  This raises more questions than it answers, obviously: how is a different instance's variable propagating here?  I also tried changing it so that CheckState did not take a BlockPos, but had myPos built into the body - same problem. I have previously looked at neighbourUpdate and onNeighbourUpdate, but could not find a way to get this to work at all.  One post on here about updatePostPlacement and other methods has proven itself long superceded.  All other sources on the net seem to be out of date. Many thanks in advance for any help you might offer me, it's been several days now of trying to get this work and several weeks of generally trying to get round this roadblock.  - Sandermall
  • Topics

×
×
  • Create New...

Important Information

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