Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Featured Replies

Posted

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

  • 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 :(

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.

  • 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 :)

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!

 

 

  • 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.

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.

  • 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???

  • 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?

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!

  • 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 xD.

 

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.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

Important Information

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

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.