Posted March 16, 201411 yr i am making a simple item and trying to make a config for ids thats follows the mod. but when i load the mod the id of the item is set to 0 (256 for items) and i have been trying diffrent approches on the problem. but cant seem to find the problem. here is the entire class: http://pastebin.com/90vGpE0i thanks for the help in addvance
March 16, 201411 yr Author a) Why are your EventHandlers static? b) You create the Item before you load the config. c) You should do all your Item creation and stuffs in preInit. yea i can tell you none of that makes any diffrence. that was the first i tryied and did not work. i have made the event handlers not static anymore. but what ever the place i but the item creation it will not get the id from the config file
March 17, 201411 yr Maybe it's different in 1.6.4, but in my version (1.7.2) Configuration does not have the signature you used. It doesn't even have that method. Code you use: config.getItem("Talisman core id", 6244, "determens the id of the core").getInt(6244); The code I found: public Property get(String category, String key, int defaultValue, String comment) So, get vs getItem, and the argument order and types differ. -S- (if I helped, please click Thank and applaud) http://6upnqa.dm2301.livefilestore.com/y2mtf-vG7Tqq1TiiVpIm53KWj7294NDPoHfSHHb4PzZiMAUfRCfK0UY0MwOu7Q3zTBNVTKqWjr2-xgBfFRpQT5p-QivtvknPpoABMNUw9br9WuZcBFkjePhnAbW500gVm-P/sequiturian.png[/img]
March 17, 201411 yr Author Show your new code. here is what the code looks like right now: http://pastebin.com/JGSzCxAg Maybe it's different in 1.6.4, but in my version (1.7.2) Configuration does not have the signature you used. It doesn't even have that method. Code you use: config.getItem("Talisman core id", 6244, "determens the id of the core").getInt(6244); The code I found: public Property get(String category, String key, int defaultValue, String comment) So, get vs getItem, and the argument order and types differ. there is a get(String category, String key, int defaultValue) in 1.6.4 but i found the getItem method and that takes one less parameter than get, and that is the category
March 17, 201411 yr public static Item talismancore; public static int talibaseID; PRE INT: Configuration config = new Configuration(event.getSuggestedConfigurationFile()); config.load(); talibaseID = config.get("Item", "Talisman core ID", theid).getInt(); config.save(); LOAD: talismancore = new talismancore(talismancoreID - 256).setUnlocalizedName("talismancore"); Thats it!
March 18, 201411 yr It works fine for me on 1.6.4! Don't know why he have to create items in preInit!
March 19, 201411 yr Author It works fine for me on 1.6.4! Don't know why he have to create items in preInit! Yea i know right. I have a mod were i have done the same but have no config file. Is it the config that makes me need the preinit? And i did not have the time yesterday to try it out, i will today when i get home.
March 19, 201411 yr It works fine for me on 1.6.4! Don't know why he have to create items in preInit! Yea i know right. I have a mod were i have done the same but have no config file. Is it the config that makes me need the preinit? And i did not have the time yesterday to try it out, i will today when i get home. look here why you should register your items / blocks in preinit: http://greyminecraftcoder.blogspot.de/2013/11/how-forge-starts-up-your-code.html Don't ask for support per PM! They'll get ignored! | If a post helped you, click the "Thank You" button at the top right corner of said post! | mah twitter This thread makes me sad because people just post copy-paste-ready code when it's obvious that the OP has little to no programming experience. This is not how learning works.
March 19, 201411 yr Author well what happens when i put my item constructor inside preinit it make an error in init where i register my item. [spoiler=Code not working] public static int talismancoreID; @EventHandler public void modconfig(FMLPreInitializationEvent event){ Item talismancore = new talismancore(talibase.talismancoreID).setUnlocalizedName("talismancore"); Configuration config = new Configuration(event.getSuggestedConfigurationFile()); config.load(); talibase.talismancoreID = talibase.talismancoreID + config.getItem("Talisman core id", 6244, "determens the id of the core").getInt(6244); config.save(); } @EventHandler public void Load(FMLInitializationEvent event){ Item talismancore; // <-- eclipse wants that there //GameRegistry GameRegistry.registerItem(talismancore, "talismancore"); //LanguageRegistry LanguageRegistry.addName(talismancore, "Talisman Core"); } and it does't want to be a public constructor. so what do i do now???
March 19, 201411 yr Author Please learn basic java before modding. trust me, i would have learned it if i havent been stuck in a totaly stupid school system where i need 5 more years of school before i can actualy do anysort of programing, and i am only 17 . but can someone tell me so i can learn from my failiure and hopefully get on with evrybodys lifes?
March 19, 201411 yr SanAndreasP:I know what order the forge uses to load up the mod. demand12:CTRL+C and CTRL+V my code and you are basically done!
March 20, 201411 yr Author SanAndreasP:I know what order the forge uses to load up the mod. demand12:CTRL+C and CTRL+V my code and you are basically done! i am sorry, i have scrolled past your code since you posted it, i have been scrolling to fast to see it . but i tried your code, AND IT WORKS!!! thank you very much good sir
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.