mirk
Members-
Posts
37 -
Joined
-
Last visited
Everything posted by mirk
-
[1.12.2] Correctly adding EntityAI tasks to EntityAnimals [SOLVED]
mirk replied to mirk's topic in Modder Support
It is indeed called, at game load, as it looks like the task list is saved at game exit, then loaded on game load, so the EntityAIPet task persists in the task list, and it tries to add another copy of the task as the EntityAnimal spawns in, so addPettingTask = false (sorry, I'm not familiar with the forum formatting options yet) does get set. -
[1.12.2] Correctly adding EntityAI tasks to EntityAnimals [SOLVED]
mirk replied to mirk's topic in Modder Support
Yeah, I just refined it a bit and I'm coming back to report that it's a success! Here's the refined code for anyone looking to do a similar thing: Sorry if the formatting is a bit off, it's not cooperating with me. -
Hello again! I'm wondering what the best way to add a custom EntityAI thing to all EntityAnimals would be? I'm currently doing it on LivingSpawnEvent, but that feels a bit hacky, and I don't know how to check if the EntityAnimals already have the task. Would the best way to do this be at registration? Here's where I'm doing it: The EntityAIPet class is basically an AI task that allows the player to pet the animal for a small amount of XP every now and then. I can post the code if need be.
-
[1.12.2] Getting brewing recipe to only target certain potion types? [SOLVED]
mirk replied to mirk's topic in Modder Support
Thanks for this! That worked perfectly. -
[1.12.2] Getting brewing recipe to only target certain potion types? [SOLVED]
mirk replied to mirk's topic in Modder Support
Just a quick bump. Been sick for a while, so was away from the forums. Sorry about that. So I've implemented net.minecraftforge.common.brewing.BrewingRecipe instead of IBrewingRecipe, and it's having the same behaviour, where it replaces all potions in the brewing stand, regardless of what they are. Is there a way to stop this? The code for the custom recipe is very simple, as below. -
I'd love a copy of your notes, if you could PM me them or something. It looks like great advice! And yeah, I should probably get out of this thread now and let you guys do your thing, as according to the EAQ. Thanks so much!
-
Ah, excellent advice. Thank you again! I'm going to go about changing all my stuff to better fit this pattern. Is there a list of all of this advice somewhere? If not, there should be! I'd love to read it all. Who knows how many mistakes I'm making, just picking up bad habits from other modders who have tried to make my life easier.
-
Thanks for the info Cadiboo! I'm currently implementing this into my mod, as I realise I'm quite guilty of this. Just a quick question: does the class being registered have to have a default constructor? I have ItemBase and BlockBase classes, which take their names from their constructors and have no default constructor, how would I go about fitting these into the @ObjectHolder standard?
-
[1.12.2] Getting brewing recipe to only target certain potion types? [SOLVED]
mirk replied to mirk's topic in Modder Support
Well, that helped fix the second recipe that I was registering, so thank you! However, I still get the bug where Thick Potion > Ender Slime changes all other potion types in the brewing stand, for some reason. I just can't figure it out. How does vanilla Minecraft compare potions? -
I'm not sure if you're supposed to compare BlockStates. Have you taken a look at how Flint & Steel spawns its fires?
-
I've now got my Ender Pearls brewing away quite happily! It's actually the step before it that isn't so happy. Basically, it should go Water Bottle > Thick Potion > Ender Slime, but when I'm brewing the Ender Slime, it also overwrites all of the other potions in the brewing stand! For reference, I'm writing my own IBrewingRecipe handler (and it has to be a single class, because adding more than one recipe apparently doesn't work on the Forge version I'm on, which is 1.12.2-14.23.5.2768) I've gone back to the IBrewingRecipe and I'm hoping for the best, and I've tried checking against Item and PotionType. Admittedly, I know very little about potions, so I'm kind of out of my depth here. How does one compare potions? EDIT: Changing back to the separate IBrewingRecipes actually completely broke whatever recipe I decide to register second. Not sure what's happening there. Nothing in the logs about it.
-
Never mind, I just solved this: make sure you only try to put a stack size of one into the brewing stand's input slots.
-
Maybe I'm just trying to stretch Minecraft too far, but I'm trying to make it so you can brew Ender Pearls using a custom ingredient, and a custom item (not a potion bottle, just an empty Ender Pearl, which is an Item). Now, I've tried registering the recipe using these items, but it won't let me put the empty Ender Pearls into the brewing stand. I believe it should be letting me do this, because they're valid input (as specified in ContainerBrewingStand#isValidInput), as I've registered the brewing recipe, but for some reason they're just not going in. Is what I want to do not possible, or do I just need to work a little harder? Any help is appreciated!
-
[1.12.2] Cannot override getGrowthChance of BlockCrops?
mirk replied to mirk's topic in Modder Support
Well, that's a bugger. Thanks, Draco! -
I'm wondering if anyone can help me: I'm trying to @Override the BlockCrops#getGrowthChance function, but IntelliJ and Gradle keep complaining that there's nothing to override, even when I literally copy and paste the entire function into the new class. What's going on here? Here's the new class' overridden version, just for reference. @Override protected static float getGrowthChance(Block blockIn, World worldIn, BlockPos pos) { return 0.3F; }
-
Oh my word, how did I not think of this one? There's woodPlanks. I just didn't make the connection. Thank you for humouring my stupidity. I'll test it tonight.
-
I've been guessing at this for a few days now, so I'm coming for some help. Is there a reference for all of the oreDict stuff somewhere that I'm missing? Anyway, I'm looking to make a recipe that uses any log, and I just can't for the life of me find the oreDict entry for it. I've tried blockWood, blockLog and some other less obvious ones that I don't think were correct, now that I look over the docs. Can someone help me out, please? Thanks in advance!
-
Ah, thank you! That's a little confusing, but I get it now.
-
Now I'm very confused. Here's my PlayerEvent.java. It's much shorter. It looks like there is something wrong with my workspace, and I don't know why. I followed the relatively easy instructions. Oh well, thank you for the assist! I'll re-install Forge yet again.
-
So I'm trying to have my player mana capability carry over on death, I'm following a fairly standard tutorial, and I've gotten to a part where it asks you to use PlayerEvent.Clone. The only problem is, that it appears to be missing from Forge entirely. Was it removed recently or something? Am I just dumb? I've checked the source code for PlayerEvent, and it does indeed seem to be missing from there. I get the feeling it might have been split into PlayerRespawnEvent and PlayerChangedDimensionEvent, but that's just a hunch. I'm using the latest recommended version for 1.12.2, by the way, Forge version 1.12.2-14.23.4.2705.
-
I know, I'm just assuming he's trying to play with all of his mods. Maybe that's a wrong assumption, so I apologise for that.
-
I just took a good look at your client and server mod folders. You need to unify your mods, so that the client and server have the same mods, except the server doesn't need client-only mods.
-
It's in your .minecraft/mods folder. You can just copy it over.
-
You're missing Mantle on your server.
-
Yeah, I'm going to scale it down a bit, it's a bit extra at the moment. I think the missing texture is actually a problem in Blender, because I have no idea how to use it properly. Yes, that too! I was following a tutorial that was teaching about opaque cubes and stuff, so I just left it in like a dingus.