Jump to content

How to check what dimension the player is in


Mew

Recommended Posts

I am trying to have a GUI show that only gets shown when the player enters the new dimension I have. I can find multiple places where the GUI shows for a split second then disappears, but is there an event, or a special way of tracking what dimension the player is in, and when he changes dimension?

 

-Mew

I am Mew. The Legendary Psychic. I behave oddly and am always playing practical jokes.

 

I have also found that I really love making extremely long and extremely but sometimes not so descriptive variables. Sort of like what I just did there xD

Link to comment
Share on other sites

Bump. I really need to know!!! Is diesieben07 online to help?

I am Mew. The Legendary Psychic. I behave oddly and am always playing practical jokes.

 

I have also found that I really love making extremely long and extremely but sometimes not so descriptive variables. Sort of like what I just did there xD

Link to comment
Share on other sites

you could get the worldObj from the player. so it would look i little like

player.worldObj.provider.dimensionId

 

Yup, I use this a lot actually. :P

Namely for packet sending (as I haven't figured out how to convert an EntityPlayer into a Player for use with sendPacketToPlayer, so I use sendPacketToNearby).

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.

Link to comment
Share on other sites

you could get the worldObj from the player. so it would look i little like

player.worldObj.provider.dimensionId

 

Yup, I use this a lot actually. :P

Namely for packet sending (as I haven't figured out how to convert an EntityPlayer into a Player for use with sendPacketToPlayer, so I use sendPacketToNearby).

 

You just cast the EntityPlayer to the Player: (Player)entityPlayer

like you would do it the other way around when receiving the packet: (EntityPlayer)player

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.

Link to comment
Share on other sites

you could get the worldObj from the player. so it would look i little like

player.worldObj.provider.dimensionId

 

YAY!!!! Half of what I am looking for...

 

Now I know what to call to check if the player is in a certain dimension, but how do I know WHEN the player changes dimension? Thats what I really want to know :/

I am Mew. The Legendary Psychic. I behave oddly and am always playing practical jokes.

 

I have also found that I really love making extremely long and extremely but sometimes not so descriptive variables. Sort of like what I just did there xD

Link to comment
Share on other sites

implement a class implementing IPlayerTracker (register it with GameRegistry.registerPlayerTracker) and when a player changes dimension it will run onPlayerChangedDimension method in your class ;).

mnn.getNativeLang() != English

If I helped you please click on the "thank you" button.

Link to comment
Share on other sites

implement a class implementing IPlayerTracker (register it with GameRegistry.registerPlayerTracker) and when a player changes dimension it will run onPlayerChangedDimension method in your class ;).

 

Hmm.. Ill retry with this new way of finding the players dimension...

I tried before and it didn't work :/

 

you could save the dimension in a variable, and then look at it again later and see if they are the same. I did something like that for my energy-esque network.

 

Not really needed I would think xD

I am Mew. The Legendary Psychic. I behave oddly and am always playing practical jokes.

 

I have also found that I really love making extremely long and extremely but sometimes not so descriptive variables. Sort of like what I just did there xD

Link to comment
Share on other sites

It's possible that it's only server-side. But you can easily implement a custom packet to trigger something on a client (if it's really server-side only).

mnn.getNativeLang() != English

If I helped you please click on the "thank you" button.

Link to comment
Share on other sites

It's possible that it's only server-side. But you can easily implement a custom packet to trigger something on a client (if it's really server-side only).

 

Great. Now I have to create a Packet system for an otherwise simple test.... Haha, nothings ever as simple as it seems to be xD

I am Mew. The Legendary Psychic. I behave oddly and am always playing practical jokes.

 

I have also found that I really love making extremely long and extremely but sometimes not so descriptive variables. Sort of like what I just did there xD

Link to comment
Share on other sites

Apparently I'm not allowed to reply to posts any more.  The forum whines that I either submitted another post too recently or already submitted that post.

The hell I did.

 

entityPlayer.dimension

 

All entities have a reference to the dimension that they're in.  No need for listeners or accessing the world object.

 

You just cast the EntityPlayer to the Player: (Player)entityPlayer

like you would do it the other way around when receiving the packet: (EntityPlayer)player

 

Apparently I gave up without actually trying that. xD

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.

Link to comment
Share on other sites

I tried the entityPlayer.dimension but it didn't work... So ill try any new way that comes to me :P

I am Mew. The Legendary Psychic. I behave oddly and am always playing practical jokes.

 

I have also found that I really love making extremely long and extremely but sometimes not so descriptive variables. Sort of like what I just did there xD

Link to comment
Share on other sites

I am Mew. The Legendary Psychic. I behave oddly and am always playing practical jokes.

 

I have also found that I really love making extremely long and extremely but sometimes not so descriptive variables. Sort of like what I just did there xD

Link to comment
Share on other sites

Your welcome mate :D

I am Mew. The Legendary Psychic. I behave oddly and am always playing practical jokes.

 

I have also found that I really love making extremely long and extremely but sometimes not so descriptive variables. Sort of like what I just did there xD

Link to comment
Share on other sites

I don't have a portal lighter for that... It was just the dimension xD

 

To do that, just look at Wuppy29's 1.4.7 tutorials and look at the portal placer tutorial. That is probably a good way f doing it.

I am Mew. The Legendary Psychic. I behave oddly and am always playing practical jokes.

 

I have also found that I really love making extremely long and extremely but sometimes not so descriptive variables. Sort of like what I just did there xD

Link to comment
Share on other sites

  • 7 years later...
On 5/22/2013 at 4:49 PM, endershadow said:

you could get the worldObj from the player. so it would look i little like

player.worldObj.provider.dimensionId

i am new to forge, i m making a mod, it needs to know if player is in end dimension, i used this code

 

public void playerlocation (){

       if (player.worldObj.provider.dimensionId = 1) {
    }

but it highlights the player as red color, what am i missing

 

 

 

my full code + its in a new java class

 

package com.example;
import net.minecraft.entity.Entity;
import net.minecraft.entity.*;
public class Listeners {



    public void playerlocation (){

       if (player.worldObj.provider.dimensionId = 1) {
    }
}

 

Link to comment
Share on other sites

  • Guest locked this topic
Guest
This topic is now closed to further replies.

Announcements



×
×
  • Create New...

Important Information

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