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've three integers with different names. When the player does something one of them goes up and gives the player buffs and debuffs.

But whenever I shutdown minecraft complety it doesn't save the integers and I know for a fact that you can use NBT to save them but I don't know how.

VampZ modder

  • Author

Thanks Ernio

But there's still one problem: Whenever I create a new world the stuff is saved from the previous world.

I fixed it with an event which removes the levels when the world is created, but is there a better way to do it?

VampZ modder

  • Author

if you know what static means then you know where ur issues come from.

If you know why I use static then you wouldn't have said this, if I remove it I'll get 12 more bugs

VampZ modder

if I remove it I'll get 12 more bugs

 

I may disagree with how diesieben07 comes across, but he is right.

 

It is fine to access information from outside of this class but just as a rule of thumb, never use public variables.

It is ALWAYS better to use a private variable with getters and setters.

 

The only "variables" that should ever be public are const, and static final.

 

 

If you read through the link that ernio gave earlier you can see that he uses a private variable and later on he goes through how to use it.

 

SideNote: if you want help fixing up your github let me know.

 

Current Project: Armerger 

Planned mods: Light Drafter  | Ore Swords

Looking for help getting a mod off the ground? Coding  | Textures

I understand the frustration with learning OOP, but if each player is to have their OWN set of variables, you need to remove the static keyword from playerHuman, playerVampire, playerWerwolf inside your ExtendedPlayer class.  Removing the static keyword will make those variables owned by the object and not the class.

 

Alright, so now you have many errors.  Most of those errors are probably trying to acquire playerHuman, playerVamp, and playerWerewolf variables.  What you were previously doing was trying to obtain the class variables, so now you need to obtain the object's variables.

 

To obtain the Object:

So you already have the getter for the object.

public static final ExtendedPlayer get(EntityPlayer player){
return (ExtendedPlayer) player.getExtendedProperties(EXT_PROP_VZPLAYER);
}

Which is great.  This will be used.

 

Inside your public class "PlayerTransformed" and right before that first if statement, add this.

ExtendedPlayer extended_player = ExtendedPlayer.get(event.player);

 

We make use of the get method you have.

That obtains the instance from your class and you can now play with the variables inside using the ExtendedPlayer object, extended_player.

 

Hopefully this will solve the errors you are having.  As for saving, we wont know until this is done.

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.