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

  • Author

Think about what you're doing for a minute, then stop being an idiot.

He is not checking equality.

 

Ah, you are correct.  But yes, still nonsense.

I am not sure what I am doing wrong. It works fine in-game.

The name of your method (PmsEnabled) sounds like a getter method. IE it should just return PMs, but instead it switches the value and returns the new value.

Yeah I have two of them, PmsEnabled and PmsInfo, I actually want it to be like that :)

public static boolean PMs;
public static boolean PMsEnabled(){
    return (PMs = !PMs);
}
public static boolean PMsInfo(){
    return (PMs);
}

I still don't know what to do with

Because it's only in Local Scope.

So how can I make it work?

 

Make your config variable exist outside local scope.

Ok so that is what I have right now:

protected void actionPerformed(GuiButton button) throws IOException {
	if(button == GUI.GUI.button2) {
		Minecraft.getMinecraft().displayGuiScreen(new GUI2());
		Property prop = config1.get("Booleans", "PMs", false);
		boolean PMs = prop.getBoolean();
		prop.set(!PMs);;
		config1.save();
	}
}

What to do now? Also how can I make that

public static boolean PMs;
public static boolean PMsEnabled(){
    return (PMs = !PMs);
}

get it's state from the config?

now anyway :(.
  • Replies 90
  • Views 44.1k
  • Created
  • Last Reply

Top Posters In This Topic

  • Author

Think about what you're doing for a minute, then stop being an idiot.

He is not checking equality.

 

Ah, you are correct.  But yes, still nonsense.

I am not sure what I am doing wrong. It works fine in-game.

The name of your method (PmsEnabled) sounds like a getter method. IE it should just return PMs, but instead it switches the value and returns the new value.

So is there anything wrong with my method?

PmsEnabled

would be better named

togglePMs

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

  • Author

PmsEnabled

would be better named

togglePMs

I know but it is only the name so I don't think I should care about it too much. Can you help me with the config itself? I still don't know what to change and how to change from property to boolean

PmsEnabled

would be better named

togglePMs

I know but it is only the name so I don't think I should care about it too much. Can you help me with the config itself? I still don't know what to change and how to change from property to boolean

...Looks at code in earlier post...

boolean PMs = prop.getBoolean();

Also remembers...

Make your config variable exist outside local scope.

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

  • Author

PmsEnabled

would be better named

togglePMs

I know but it is only the name so I don't think I should care about it too much. Can you help me with the config itself? I still don't know what to change and how to change from property to boolean

...Looks at code in earlier post...

boolean PMs = prop.getBoolean();

Also remembers...

Make your config variable exist outside local scope.

But where do I put which boolean I want it to get?

This isn't that hard. You have the piece you want to use and you have a place you want to use it.

Stick Tab A into Slot B.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

  • Author

In the class where you have your config loading.

Like that:

protected void actionPerformed(GuiButton button) throws IOException {
	if(button == GUI.GUI.button2) {
		Minecraft.getMinecraft().displayGuiScreen(new GUI2());
		Property prop = config1.get("Booleans", "PMs", false);
		boolean PMs = prop.getBoolean();
		prop.set(!PMs);;
		config1.save();
	}
}

?

  • Author

This isn't that hard. You have the piece you want to use and you have a place you want to use it.

Stick Tab A into Slot B.

Like that:

protected void actionPerformed(GuiButton button) throws IOException {
	if(button == GUI.GUI.button2) {
		Minecraft.getMinecraft().displayGuiScreen(new GUI2());
		Property prop = config1.get("Booleans", "PMs", false);
		boolean PMs = prop.getBoolean();
		prop.set(!PMs);;
		config1.save();
	}
}

?

Uh huh.  So what's wrong?

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

  • Author

Uh huh.  So what's wrong?

It can't convert from Porperty to Boolean and if I make the boolean a Property it can neither return it nor return !it

Property#getBoolean()

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

  • Author

Property#getBoolean()

That is what I have:

{

	Configuration config1= new Configuration(event.getSuggestedConfigurationFile());
	config1.load();
	Property PMs = config1.get("Booleans", "PMs", false);
                config1.save();

and

public static boolean PMs;
public static boolean PMsEnabled(){
    return (PMs = !PMs);
}

. Also the boolean in the config isn't changing when I use the button

prop.png

 

How does the value of #1 get into #2?

 

Hint:

It doesn't

 

 

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

  • Author

prop.png

 

How does the value of #1 get into #2?

 

Hint:

It doesn't

 

 

But Property =/= boolean

prop.png

 

How does the value of #1 get into #2?

 

Hint:

It doesn't

 

 

But Property =/= boolean

 

Property#getBoolean()

  • Author

prop.png

 

How does the value of #1 get into #2?

 

Hint:

It doesn't

 

 

But Property =/= boolean

 

Property#getBoolean()

Property#getBoolean()

Like

Boolean PMs = config1.getBoolean("Booleans", "PMs", false, "");

?

This line gets the property from the config:

Property PMs = config1.get("Booleans", "PMs", false);

 

The property contains the boolean value you want. So you 'get' the boolean from the property like this:

PMs.getBoolean()

 

And assign that value to your stored field. You can do it all in one line like this:

PMs = config1.get("Booleans", "PMs", false).getBoolean();

  • Author

This line gets the property from the config:

Property PMs = config1.get("Booleans", "PMs", false);

 

The property contains the boolean value you want. So you 'get' the boolean from the property like this:

PMs.getBoolean()

 

And assign that value to your stored field. You can do it all in one line like this:

PMs = config1.get("Booleans", "PMs", false).getBoolean();

After doing everything I got this error:

Time: 31.12.16 11:17

Description: Updating screen events

 

java.lang.NullPointerException: Updating screen events

at net.minecraftforge.common.config.Configuration.save(Configuration.java:1064)

at GUI.GUI.actionPerformed(GUI.java:202)

at net.minecraft.client.gui.GuiScreen.mouseClicked(GuiScreen.java:509)

at GUI.GUI.mouseClicked(GUI.java:76)

at net.minecraft.client.gui.GuiScreen.handleMouseInput(GuiScreen.java:621)

at net.minecraft.client.gui.GuiScreen.handleInput(GuiScreen.java:587)

at net.minecraft.client.Minecraft.runTick(Minecraft.java:1761)

at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1080)

at net.minecraft.client.Minecraft.run(Minecraft.java:380)

at net.minecraft.client.main.Main.main(Main.java:116)

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 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.gradle.GradleStartCommon.launch(GradleStartCommon.java:97)

at GradleStart.main(GradleStart.java:26)

 

 

A detailed walkthrough of the error, its code path and all known details is as follows:

---------------------------------------------------------------------------------------

 

-- Head --

Stacktrace:

at net.minecraftforge.common.config.Configuration.save(Configuration.java:1064)

at GUI.GUI.actionPerformed(GUI.java:202)

at net.minecraft.client.gui.GuiScreen.mouseClicked(GuiScreen.java:509)

at GUI.GUI.mouseClicked(GUI.java:76)

at net.minecraft.client.gui.GuiScreen.handleMouseInput(GuiScreen.java:621)

at net.minecraft.client.gui.GuiScreen.handleInput(GuiScreen.java:587)

 

-- Affected screen --

Details:

Screen name: GUI.GUI

 

-- Affected level --

Details:

Level name: MpServer

All players: 1 total; [EntityPlayerSP['Player371'/275, l='MpServer', x=-190,40, y=65,00, z=236,70]]

Chunk stats: MultiplayerChunkCache: 625, 625

Level seed: 0

Level generator: ID 00 - default, ver 1. Features enabled: false

Level generator options:

Level spawn location: -184,00,64,00,236,00 - World: (-184,64,236), Chunk: (at 8,4,12 in -12,14; contains blocks -192,0,224 to -177,255,239), Region: (-1,0; contains chunks -32,0 to -1,31, blocks -512,0,0 to -1,255,511)

Level time: 151760 game time, 34476 day time

Level dimension: 0

Level storage version: 0x00000 - Unknown?

Level weather: Rain time: 0 (now: false), thunder time: 0 (now: false)

Level game mode: Game mode: creative (ID 1). Hardcore: false. Cheats: false

Forced entities: 76 total; [EntitySquid['Squid'/128, l='MpServer', x=-168,47, y=62,00, z=289,47], EntitySheep['Sheep'/129, l='MpServer', x=-164,28, y=65,53, z=299,53], EntitySheep['Sheep'/138, l='MpServer', x=-149,00, y=70,00, z=192,53], EntitySkeleton['Skeleton'/139, l='MpServer', x=-159,22, y=40,00, z=235,44], EntityZombie['Zombie'/140, l='MpServer', x=-158,16, y=46,00, z=240,66], EntityBat['Bat'/141, l='MpServer', x=-147,19, y=37,78, z=240,06], EntitySheep['Sheep'/142, l='MpServer', x=-144,56, y=64,00, z=243,66], EntityCreeper['Creeper'/145, l='MpServer', x=-142,50, y=22,00, z=169,97], EntitySheep['Sheep'/146, l='MpServer', x=-138,38, y=75,00, z=167,84], EntitySkeleton['Skeleton'/147, l='MpServer', x=-142,81, y=30,00, z=178,59], EntitySkeleton['Skeleton'/148, l='MpServer', x=-132,88, y=47,00, z=175,47], EntitySkeleton['Skeleton'/149, l='MpServer', x=-132,38, y=30,00, z=202,09], EntitySpider['Spider'/150, l='MpServer', x=-136,78, y=32,00, z=220,69], EntitySpider['Spider'/151, l='MpServer', x=-142,31, y=34,03, z=220,69], EntityZombie['Zombie'/152, l='MpServer', x=-138,09, y=32,00, z=220,66], EntityPlayerSP['Player371'/275, l='MpServer', x=-190,40, y=65,00, z=236,70], EntitySpider['Spider'/153, l='MpServer', x=-141,25, y=12,00, z=234,59], EntityCreeper['Creeper'/154, l='MpServer', x=-137,72, y=14,00, z=237,69], EntitySheep['Sheep'/155, l='MpServer', x=-137,50, y=63,00, z=238,97], EntityBat['Bat'/156, l='MpServer', x=-129,66, y=55,10, z=234,25], EntitySheep['Sheep'/157, l='MpServer', x=-141,44, y=63,00, z=282,19], EntityZombie['Zombie'/158, l='MpServer', x=-132,31, y=64,00, z=293,59], EntityBat['Bat'/159, l='MpServer', x=-141,47, y=23,31, z=314,44], EntityCreeper['Creeper'/167, l='MpServer', x=-125,72, y=30,19, z=158,69], EntitySpider['Spider'/170, l='MpServer', x=-123,50, y=28,00, z=171,50], EntityZombie['Zombie'/171, l='MpServer', x=-116,50, y=53,00, z=164,06], EntityBat['Bat'/172, l='MpServer', x=-110,56, y=55,00, z=160,75], EntitySheep['Sheep'/173, l='MpServer', x=-115,53, y=69,00, z=172,28], EntityRabbit['Rabbit'/174, l='MpServer', x=-122,19, y=70,00, z=175,28], EntityWitch['Witch'/175, l='MpServer', x=-122,50, y=27,00, z=176,84], EntityZombie['Zombie'/176, l='MpServer', x=-120,16, y=25,00, z=187,38], EntityCreeper['Creeper'/177, l='MpServer', x=-115,44, y=23,00, z=182,97], EntityBat['Bat'/178, l='MpServer', x=-116,38, y=25,63, z=187,47], EntitySheep['Sheep'/180, l='MpServer', x=-112,56, y=69,00, z=187,31], EntityBat['Bat'/181, l='MpServer', x=-124,63, y=30,10, z=192,75], EntityZombie['Zombie'/182, l='MpServer', x=-123,50, y=17,00, z=205,50], EntityCreeper['Creeper'/183, l='MpServer', x=-124,50, y=40,00, z=201,00], EntitySpider['Spider'/184, l='MpServer', x=-126,75, y=32,09, z=210,28], EntityCreeper['Creeper'/185, l='MpServer', x=-128,00, y=59,00, z=209,56], EntitySheep['Sheep'/186, l='MpServer', x=-122,75, y=69,00, z=222,91], EntitySheep['Sheep'/187, l='MpServer', x=-127,34, y=63,00, z=244,81], EntitySheep['Sheep'/188, l='MpServer', x=-122,59, y=69,00, z=247,44], EntityRabbit['Rabbit'/66, l='MpServer', x=-261,22, y=65,00, z=160,44], EntityRabbit['Rabbit'/67, l='MpServer', x=-262,47, y=67,00, z=178,03], EntityRabbit['Rabbit'/68, l='MpServer', x=-261,28, y=67,31, z=179,88], EntityRabbit['Rabbit'/69, l='MpServer', x=-260,91, y=67,00, z=181,38], EntityRabbit['Rabbit'/71, l='MpServer', x=-263,31, y=63,00, z=234,16], EntityBat['Bat'/73, l='MpServer', x=-270,75, y=13,10, z=270,47], EntityRabbit['Rabbit'/75, l='MpServer', x=-246,06, y=67,00, z=205,50], EntityRabbit['Rabbit'/76, l='MpServer', x=-249,88, y=68,00, z=290,03], EntityBat['Bat'/77, l='MpServer', x=-243,69, y=39,10, z=307,59], EntityZombie['Zombie'/209, l='MpServer', x=-111,00, y=22,28, z=213,69], EntityRabbit['Rabbit'/83, l='MpServer', x=-228,44, y=70,00, z=215,75], EntityRabbit['Rabbit'/84, l='MpServer', x=-232,53, y=71,00, z=250,88], EntityRabbit['Rabbit'/85, l='MpServer', x=-224,41, y=69,00, z=291,25], EntityRabbit['Rabbit'/95, l='MpServer', x=-220,41, y=69,97, z=296,44], EntityCreeper['Creeper'/99, l='MpServer', x=-204,97, y=18,00, z=171,47], EntityZombie['Zombie'/100, l='MpServer', x=-206,50, y=18,00, z=170,28], EntityRabbit['Rabbit'/101, l='MpServer', x=-193,25, y=68,00, z=204,06], EntityBat['Bat'/102, l='MpServer', x=-207,44, y=40,00, z=254,75], EntityRabbit['Rabbit'/106, l='MpServer', x=-187,91, y=68,00, z=168,03], EntityRabbit['Rabbit'/107, l='MpServer', x=-177,28, y=69,13, z=178,56], EntitySkeleton['Skeleton'/108, l='MpServer', x=-177,34, y=37,00, z=258,28], EntitySquid['Squid'/109, l='MpServer', x=-175,63, y=61,52, z=281,47], EntityWitch['Witch'/110, l='MpServer', x=-176,81, y=17,00, z=308,81], EntitySheep['Sheep'/111, l='MpServer', x=-180,69, y=71,00, z=315,19], EntityRabbit['Rabbit'/118, l='MpServer', x=-162,34, y=72,00, z=176,41], EntitySquid['Squid'/119, l='MpServer', x=-170,47, y=61,13, z=204,53], EntityRabbit['Rabbit'/120, l='MpServer', x=-168,85, y=63,13, z=194,54], EntityZombie['Zombie'/121, l='MpServer', x=-160,66, y=40,00, z=239,91], EntityZombie['Zombie'/122, l='MpServer', x=-169,06, y=42,00, z=246,66], EntitySkeleton['Skeleton'/123, l='MpServer', x=-171,73, y=38,01, z=262,01], EntitySkeleton['Skeleton'/124, l='MpServer', x=-166,03, y=41,00, z=258,47], EntityZombie['Zombie'/125, l='MpServer', x=-175,00, y=37,00, z=270,56], EntitySheep['Sheep'/126, l='MpServer', x=-176,28, y=64,00, z=263,19], EntityPig['Pig'/127, l='MpServer', x=-175,22, y=63,00, z=300,72]]

Retry entities: 0 total; []

Server brand: fml,forge

Server type: Integrated singleplayer server

Stacktrace:

at net.minecraft.client.multiplayer.WorldClient.addWorldInfoToCrashReport(WorldClient.java:383)

at net.minecraft.client.Minecraft.addGraphicsAndWorldToCrashReport(Minecraft.java:2645)

at net.minecraft.client.Minecraft.run(Minecraft.java:401)

at net.minecraft.client.main.Main.main(Main.java:116)

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 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.gradle.GradleStartCommon.launch(GradleStartCommon.java:97)

at GradleStart.main(GradleStart.java:26)

 

 

Code:

Button:

if(button == button25) {
            boolean State3 = FastExamples.NotResetVariables.PMsEnabled();
            Minecraft.getMinecraft().displayGuiScreen(new GUI());
            Property prop = Clean.Coins.CC.config1.get("Booleans", "PMs", false);
		boolean PMs = prop.getBoolean();
		prop.set(!PMs);
		Clean.Coins.CC.config1.save();
        }

preInit:

Configuration config1= new Configuration(event.getSuggestedConfigurationFile());
	config1.load();
	FastExamples.NotResetVariables.PMs = config1.get("Booleans", "PMs", false).getBoolean();
                config1.save();

It's a

NullPointerException

, so use your debugger (or printlns) to find out which variable is null at the affected line.

  • Author

It's a

NullPointerException

, so use your debugger (or printlns) to find out which variable is null at the affected line.

Yes, I checked that but the line that makes the error is

Clean.Coins.CC.config1.save();

and Clean.Coins.CC.config1 != null

  • Author

I've also tried checking for null before it activates but it is still crashing

if(Clean.Coins.CC.config1 != null){
    Clean.Coins.CC.config1.save();
}

Also, just a random question, does anyone know why

String[] splittedMessage = msg.split(")");

isn't working when it is ")" but is working when it is something different?

  • Author

split

takes a regex, not a literal String. ")" is not a valid regex. Use Guava's

Splitter

.

Any idea what to do about the config error?

  • Author

Line 1064 in

Configuration

is a brace in 1.8. A brace does not deference a null pointer. Please tell us the actual forge version you are using.

1.8.9

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.