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

Both The IF and ELSE statements Fire.

Checked the NBT Data After Logging off of server

Shows my NBT Tag and Data However Gets Overwrote / Blanked (TAG is present but data inside is empty)

after login.

most likely due to the ELSE statement firing which creates and formats the tag.

Please Help! Class Below

 

public class ManaHandler {

EntityPlayer player;
Integer Timer;

    @SubscribeEvent
    @SideOnly(Side.CLIENT)
    public void playerData (EntityJoinWorldEvent event)
    {
        if(event.getEntity() instanceof EntityPlayer) {
            player = (EntityPlayer) event.getEntity();
            if(player.getEntityData().hasKey(player.PERSISTED_NBT_TAG)) {
                System.out.println("Player has NBT");
                persistTag = player.getEntityData().getCompoundTag(player.PERSISTED_NBT_TAG);
            }else{
                System.out.println("Player Does not have NBT");
                persistTag = new NBTTagCompound();
                player.getEntityData().setTag(player.PERSISTED_NBT_TAG, persistTag);
            }
            Timer = 0;
            if (persistTag.hasKey("SMM")){
                modTag = persistTag.getCompoundTag("SMM");
            }else{
                modTag = new NBTTagCompound();
                persistTag.setTag("SMM", modTag);
            }

        }


    }

  • Author

Sorry i left that in after Testing.

the was no side only tag on the the original code.

(I thought maybe the 2 responses where from the code executing on client and server side, so i through in client only to see if that made a difference)

I've been tinkering with this for a bit now, I'll read through that link. Thank you so much ! :D

 

If you really thought Java was broken enough to execute both branches of an if-else statement, you should have stepped through it in the debugger to see what was really happening. You could have become famous throughout the Java programming community for being the first to discover this major bug!

 

Most likely, the server is clobbering whatever data your client is trying to save. Things will clear up after you have wrapped your head around client-server architecture: Client is for I/O, server holds the authoritative data of the world and makes decisions. Another way to look at it is that each client is one player's perception, and the server is "reality".

The debugger is a powerful and necessary tool in any IDE, so learn how to use it. You'll be able to tell us more and get better help here if you investigate your runtime problems in the debugger before posting.

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.