Jump to content

Cleverpanda

Members
  • Posts

    107
  • Joined

  • Last visited

Everything posted by Cleverpanda

  1. Bump. Still cannot figure it out.
  2. So I've made some corn and I'm trying to get it to generate as a Village field. I basically copied what happens in net.minecraft.world.gen.structure.StructureVillagePieces#Field2 since it will be exactly the same except for replacing the crop. The field base generates fine but everything I try to get my corn generated does not work. It generates an empty field. It looks to me through some testing that I'm either getting a block state wrong to spawn but It could be that I've missed something in my actual block class that messes with calling a block state of corn externally. I get no relevant console output during init or village generation. Can anyone help? If this is an issue with the forge version i'm using (1.8-11.14.4.1563), let me know that too... BlockCorn: http://pastebin.com/0f49NDuS ComponentCornField: http://pastebin.com/sTTHZtSE CornWorldGen: http://pastebin.com/Pu3u2PJs In my main class I've added the lines MapGenStructureIO.registerStructureComponent(ComponentCornField.class, "Vicf"); VillagerRegistry.instance().registerVillageCreationHandler(new CornWorldGen());
  3. Ah I see. That's why all of my textures are sort of pushed towards the north. Removing uvlock fixed the issue.
  4. Does anyone know whats happening here? Blockstates file { "variants": { "facing=north": { "model": "minefantasy2:anvilbronze" }, "facing=south": { "model": "minefantasy2:anvilbronze", "y": 180, "uvlock": true }, "facing=east": { "model": "minefantasy2:anvilbronze", "y": 90, "uvlock": true }, "facing=west": { "model": "minefantasy2:anvilbronze", "y": 270, "uvlock": true } } } Model file: { "__comment": "Designed by Cleverpanda with BDcraft Cubik PRO 0.76 Beta - http://bdcraft.net", "textures": { "texture": "minefantasy2:models/tileentity/anvilBronze" }, "elements": [ { "from": [ 4, 0, 4 ], "to": [ 12, 3, 12 ], "__comment": "floor", "faces": { "down": { "uv": [ 7.5, 5.25, 9.5, 7.25 ], "texture": "#texture" }, "up": { "uv": [ 5.5, 5.25, 7.5, 7.25 ], "texture": "#texture" }, "north": { "uv": [ 3.5, 7.25, 5.5, 8 ], "texture": "#texture" }, "south": { "uv": [ 7.5, 7.25, 9.5, 8 ], "texture": "#texture" }, "west": { "uv": [ 5.5, 7.25, 7.5, 8 ], "texture": "#texture" }, "east": { "uv": [ 9.5, 7.25, 11.5, 8 ], "texture": "#texture" } } }, { "from": [ 5, 3, 5 ], "to": [ 11, 5, 11 ], "__comment": "bottom", "faces": { "up": { "uv": [ 1.5, 0, 3, 2 ], "texture": "#texture" }, "north": { "uv": [ 1.5, 1.5, 3, 2 ], "texture": "#texture" }, "south": { "uv": [ 3, 1.5, 4.5, 2 ], "texture": "#texture" }, "west": { "uv": [ 0, 1.5, 1.5, 2 ], "texture": "#texture" }, "east": { "uv": [ 4.5, 1.5, 6, 2 ], "texture": "#texture" } } }, { "from": [ 6, 5, 6 ], "to": [ 10, 9, 10 ], "__comment": "post", "faces": { "north": { "uv": [ 13, 7, 14, 8 ], "texture": "#texture" }, "south": { "uv": [ 14, 7, 15, 8 ], "texture": "#texture" }, "west": { "uv": [ 15, 7, 16, 8 ], "texture": "#texture" }, "east": { "uv": [ 12, 7, 13, 8 ], "texture": "#texture" } } }, { "from": [ 3, 9, 5 ], "to": [ 13, 13, 11 ], "__comment": "body", "faces": { "down": { "uv": [ 12, 0, 14.5, 1.5 ], "texture": "#texture" }, "up": { "uv": [ 9.5, 0, 12, 1.5 ], "texture": "#texture" }, "north": { "uv": [ 9.5, 1.5, 12, 2.5 ], "texture": "#texture" }, "south": { "uv": [ 13.5, 1.5, 16, 2.5 ], "texture": "#texture" }, "west": { "uv": [ 8, 1.5, 9.5, 2.5 ], "texture": "#texture" }, "east": { "uv": [ 12, 1.5, 13.5, 2.5 ], "texture": "#texture" } } }, { "from": [ 13, 10, 7 ], "to": [ 16, 12, 9 ], "__comment": "tip", "faces": { "down": { "uv": [ 1.25, 2.5, 2, 3 ], "texture": "#texture" }, "up": { "uv": [ 0.5, 2.5, 1.25, 3 ], "texture": "#texture" }, "north": { "uv": [ 0.5, 3, 1.25, 3.5 ], "texture": "#texture" }, "south": { "uv": [ 1.25, 3, 2, 3.5 ], "texture": "#texture" }, "east": { "uv": [ 0, 3, 0.5, 3.5 ], "texture": "#texture" } } }, { "from": [ 1, 9, 7 ], "to": [ 3, 12, 9 ], "__comment": "back", "faces": { "down": { "uv": [ 0.5, 4.75, 1, 5.25 ], "texture": "#texture" }, "up": { "uv": [ 1, 4.75, 1.5, 5.25 ], "texture": "#texture" }, "north": { "uv": [ 0, 5.25, 0.5, 6 ], "texture": "#texture" }, "south": { "uv": [ 1, 5.25, 1.5, 6 ], "texture": "#texture" } } }, { "from": [ -2, 9, 6 ], "to": [ 1, 13, 10 ], "__comment": "end", "faces": { "down": { "uv": [ 14, 7, 15, 6 ], "texture": "#texture" }, "up": { "uv": [ 13, 6, 14, 7 ], "texture": "#texture" }, "north": { "uv": [ 12, 7, 13, 8 ], "texture": "#texture" }, "south": { "uv": [ 14, 7, 15, 8 ], "texture": "#texture" }, "west": { "uv": [ 13, 7, 14, 8 ], "texture": "#texture" }, "east": { "uv": [ 15, 7, 16, 8 ], "texture": "#texture" } } } ] }
  5. That solved it! Now to transfer the other things I did to my main project.
  6. My Items are missing their models and I cannot figure out why. I've posted a similar topic before, but I've isolated and thinned out a lot of code to just look at 2 items as closely as possible. @Mod(modid = MineFantasyII.MODID, name = MineFantasyII.NAME, version = MineFantasyII.VERSION) public class MineFantasyII { public static final String MODID = "minefantasy2"; public static final String NAME = "MineFantasyII"; public static final String VERSION = "Test_2.0.0"; public static final Item bandage_wool = new bandage("bandage_wool", 8F).setUnlocalizedName("bandage_wool"); public static final Item bluepick = new itempick("bluesteel_pick",BaseMaterial.bluesteel.getToolConversion()).setUnlocalizedName("bluesteel_pick"); @Instance(MODID) public static MineFantasyII instance; @EventHandler public void preInit(FMLPreInitializationEvent event) { toollist.preinit(event); GameRegistry.registerItem(MineFantasyII.bluepick, "bluesteel_pick", MODID); } @EventHandler public void Init(FMLInitializationEvent event) { toollist.init(event); if(event.getSide() == Side.CLIENT) { RenderItem renderItem = Minecraft.getMinecraft().getRenderItem(); renderItem.getItemModelMesher().register(MineFantasyII.bluepick, 0, new ModelResourceLocation(MODID + ":" + "bluesteel_pick", "inventory")); } } @EventHandler public void load(FMLInitializationEvent evt) { MinecraftForge.EVENT_BUS.register(this); } } bandage_wool.json { "parent": "items/iron_pickaxe", "textures": { "layer0": "minefantasy2:items/bandage_wool" }, "display": { "thirdperson": { "rotation": [ 0, 90, -35 ], "translation": [ 0, 1.25, -3.5 ], "scale": [ 0.85, 0.85, 0.85 ] }, "firstperson": { "rotation": [ 0, -135, 25 ], "translation": [ 0, 4, 2 ], "scale": [ 1.7, 1.7, 1.7 ] } } } bluesteel_pick.json { "parent": "items/iron_pickaxe", "textures": { "layer0": "minefantasy2:items/bluesteel_pick" }, "display": { "thirdperson": { "rotation": [ 0, 90, -35 ], "translation": [ 0, 1.25, -3.5 ], "scale": [ 0.85, 0.85, 0.85 ] }, "firstperson": { "rotation": [ 0, -135, 25 ], "translation": [ 0, 4, 2 ], "scale": [ 1.7, 1.7, 1.7 ] } } } I'm getting absolutely no errors in the console.
  7. Thanks guys, I managed to figure it out though. I changed the way I registered my block by initializing corn in a public variable o I could access it in another class and referenced that in the seeds class. public static final Block corn = new BlockCorn(); corn.setUnlocalizedName("corn") GameRegistry.registerBlock(corn, "corn"); And I did use the debugger, It just told me my block was null where you said. I did not understand why. I started off using reeds because the corn was a multiblock plant, so I specifically wanted to see how it handled updating itself for block breaks and growing. I did clean up my code and ended up extending BlockBush and implementing IGrowable instead though. I chose this because my crop is so different from the way the other crops work, that If I had extended BlockCrops, I would've overridden almost all of the methods, So I just started from higher up.
  8. I started off basing corn on the way reeds worked, and reeds didn't use it.
  9. When I try to plant my seed item, the game crashes due to a null pointer exception. My blocks are registered before my items, So I'm pretty sure that's not it. Error log: http://pastebin.com/5CMq5U6V Seed Item: public class ItemKernels extends ItemSeeds{ public ItemKernels() { super(GameRegistry.findBlock(Corn.MODID, "corn"), Blocks.farmland); } } Registration: @EventHandler public void preInit(FMLPreInitializationEvent event) { Block corn = new BlockCorn().setUnlocalizedName("corn"); GameRegistry.registerBlock(corn, "corn"); Item itemkernels = (Item)(new ItemKernels().setUnlocalizedName("kernels")); GameRegistry.registerItem(itemkernels, "kernels"); } @EventHandler public void Init(FMLInitializationEvent event) { if(event.getSide() == Side.CLIENT) { Item corn = GameRegistry.findItem(MODID, "corn"); ModelResourceLocation itemModelResourceLocation = new ModelResourceLocation("corn:corn", "inventory"); Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(corn, 0, itemModelResourceLocation); Item ItemKernels = GameRegistry.findItem(MODID, "kernels"); itemModelResourceLocation = new ModelResourceLocation("corn:kernels", "inventory"); Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(ItemKernels,0, itemModelResourceLocation); } } Crop Block: ( yes, I know its messy right now) http://pastebin.com/RNSb5yPH
  10. Yeah, I really can't figure this out. I really thing it has something to do with "Item entity ### has no item?!" though. But I can't find any solutions for that
  11. I set the breakpoint at ItemModelMesher Item is : 1xitem.copper_pick@0 and ibakedmodel is set to: net.minecraftforge.client.model.IFlexibleBakedModel$Wrapper@49e84b0a I don't think the model is correct..
  12. So I added that breakpoint at the method. Nothing happened. It didn't even stop.... I'm confused
  13. Youre going to want something like this in your blockstates file: { "variants": { "facing=north": { "model": "anvilsteel" }, "facing=south": { "model": "anvilsteel", "y": 180, "uvlock": true }, "facing=east": { "model": "anvilsteel", "y": 90, "uvlock": true }, "facing=west": { "model": "anvilsteel", "y": 270, "uvlock": true } } } and you need to add a EnumFacing property to your block to set the different states. The code I use for this is public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase user, ItemStack stack) { super.onBlockPlacedBy(world, pos, state, user,stack); int dir = user.getHorizontalFacing().getHorizontalIndex(); world.setBlockState(pos, getStateFromMeta(dir), 2); } If you want say, 8 different rotation positions, I'd apply the same concept but with NorthEast, SouthWest etc as well or use int values. to get where they plater is facing this time, try using getLook or getlookvec
  14. @delpi Okay results: (I totally forgot to refresh...) Still not working however, I'm now getting a "Model definition for location minefantasy2:bluesteel_pick#inventory not found" error in the log and I /did/ change the location in the json file to lowercase and refreshed the project. Aditionally, I noticed that when I drop the Item, I get a "Item entity ##### has no item?!" error. Manually specifying as much as possible: I changed the line to ItemPickMF bpick = new ItemPickMF("bluesteel_pick", BaseMaterialMF.bluesteel.getToolConversion(), 0); renderItem.getItemModelMesher().register(bpick, 0, new ModelResourceLocation(MODID + ":" + "bluesteel_pick", "inventory")); "Model definition for location minefantasy2:bluesteel_pick#inventory not found" "Item entity ##### has no item?!"
  15. That is essentially the same thing. But I tried it anyway, And nothing new happened.
  16. All of my items and blocks are rendering as blocks with the "missing texture" texture. I read that when Items do this, it's a model issue but I cant see anything. I'm going to focus on one item and see if you guys can see anything I've missed. My item model is in src/main/resources/assets.minefantasy2.models.item/bluesteel_pick.json It contains: { "parent": "items/iron_pickaxe", "textures": { "layer0": "minefantasy2:items/Tool/bluesteel_pick" } } The texture is in src/main/resources/assets.minefantasy2.textures.items.Tool/bluesteel_pick.png Both of these packages and files show up in my package window in eclipse. Inside the class that registers tools in Init(): http://pastebin.com/w576pEC2 Item class: http://pastebin.com/ntyGpFct My log doesn't have any "Model definition for location X not found" errors or "domain" Texture errors for this. What It looks like in-game: I've been trying to figure this out for days now, please help guys!
  17. I figured it out, since EnumHelper.addArmorMaterial() was just a dummy, I just replaced it with ArmorMaterial.IRON to work as a base.
  18. Ytt, Because the armour system adds more properties and mechanics I believe. (I did not originally write this code,I'm joined the author in updating from 1.7.10 to 1. ItemArmourMFBase: http://pastebin.com/fGZvfikC Ok, I see the error is line 38. I read somewhere that this should be added in preinit() before armors are registered. But here, the only use for it is just a dummy material that needed to be passed through to keep the system working. So I'm not sure how to change it.
  19. Sorry, thought I had it: http://pastebin.com/3P1SDnfL
  20. I'm getting an Initialization error that I don't understand and doesn't say what kind of error it is in my Init() It happens on my armor registering, which uses custom code, not vanilla's. This is the error: [16:07:17] [Client thread/ERROR] [FML]: Caught exception from minefantasy2 java.lang.ExceptionInInitializerError at minefantasy.mf2.item.list.ArmourListMF.init(ArmourListMF.java:67) ~[bin/:?] at minefantasy.mf2.item.list.ToolListMF.init(ToolListMF.java:195) ~[bin/:?] at minefantasy.mf2.MineFantasyII.Init(MineFantasyII.java:111) ~[bin/:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_51] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_51] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_51] at net.minecraftforge.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:537) ~[forgeSrc-1.8-11.14.3.1450.jar:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_51] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_51] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_51] at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[guava-17.0.jar:?] at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[guava-17.0.jar:?] at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:212) ~[forgeSrc-1.8-11.14.3.1450.jar:?] at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:190) ~[forgeSrc-1.8-11.14.3.1450.jar:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_51] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_51] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_51] at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[guava-17.0.jar:?] at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[guava-17.0.jar:?] at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:119) [LoadController.class:?] at net.minecraftforge.fml.common.Loader.initializeMods(Loader.java:731) [Loader.class:?] at net.minecraftforge.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:315) [FMLClientHandler.class:?] at net.minecraft.client.Minecraft.startGame(Minecraft.java:528) [Minecraft.class:?] at net.minecraft.client.Minecraft.run(Minecraft.java:356) [Minecraft.class:?] at net.minecraft.client.main.Main.main(Main.java:117) [Main.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_51] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_51] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_51] at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.11.jar:?] at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.11.jar:?] at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source) [start/:?] at GradleStart.main(Unknown Source) [start/:?] Caused by: java.lang.NullPointerException at minefantasy.mf2.api.armour.ItemArmourMFBase.<clinit>(ItemArmourMFBase.java:38) ~[itemArmourMFBase.class:?] ... 42 more [16:07:17] [Client thread/INFO] [sTDOUT]: [net.minecraft.init.Bootstrap:printToSYSOUT:663]: ---- Minecraft Crash Report ---- // Don't be sad, have a hug! <3 Time: 8/3/15 4:07 PM Description: There was a severe problem during mod loading that has caused the game to fail net.minecraftforge.fml.common.LoaderException: java.lang.ExceptionInInitializerError at net.minecraftforge.fml.common.LoadController.transition(LoadController.java:163) at net.minecraftforge.fml.common.Loader.initializeMods(Loader.java:733) at net.minecraftforge.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:315) at net.minecraft.client.Minecraft.startGame(Minecraft.java:528) at net.minecraft.client.Minecraft.run(Minecraft.java:356) at net.minecraft.client.main.Main.main(Main.java:117) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) at net.minecraft.launchwrapper.Launch.main(Launch.java:28) at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source) at GradleStart.main(Unknown Source) Caused by: java.lang.ExceptionInInitializerError at minefantasy.mf2.item.list.ArmourListMF.init(ArmourListMF.java:67) at minefantasy.mf2.item.list.ToolListMF.init(ToolListMF.java:195) at minefantasy.mf2.MineFantasyII.Init(MineFantasyII.java:111) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at net.minecraftforge.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:537) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) at com.google.common.eventbus.EventBus.post(EventBus.java:275) at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:212) at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:190) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) at com.google.common.eventbus.EventBus.post(EventBus.java:275) at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:119) at net.minecraftforge.fml.common.Loader.initializeMods(Loader.java:731) ... 12 more Caused by: java.lang.NullPointerException at minefantasy.mf2.api.armour.ItemArmourMFBase.<clinit>(ItemArmourMFBase.java:38) ... 42 more This is ArmorListMF: http://pastebin.com/MaDkwizt Can anyone help?
  21. I need to render an Item that will have two layers but layer 0 will not be known until the item is used. ISmartItemModel looks like how to do it , but I just don't understand how. I've already checked out TheGreyGhost's github examples 11 ans 15, And I don't see how to use them for this purpose. Essentially, what I want, Is if I have the first texture as my item, and the second texture is the texture of something like this.helditem(), I want the game to render it as the last texture. I also need to do something similar for a bow that needs to render different arrow types. How can I do this? Thanks.
  22. Thanks guys! A combination of both of those seems to have fixed the jumping problem. And my hit box lines up in the Y direction. I guess that method is for rigid bodies that are supposed to be affected when they collide. My only problem now is that arrows bounce off the sides when I shoot at it and get stuck in the top and do the glitchy dance.
×
×
  • Create New...

Important Information

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