- Home /
How to Load a Level at a specific location in a scene
Hello everybody,
I am hobbyist and have a basic question. I am progressing scene to scene and am looking for a way to have the player enter room2 from room1 and then return to room1 on the logical side of the door that led to room2. I have no issues loading levels using colliders. I'm just wondering how I reference the XYZ coordinates into a load.level script. Sorry for such an easy question and sorry if I phrased things really poorly.
@Bentoon, I believe you have familiarity with this and might be able to help. Again, sorry for anything in this post that comes off stupid or rude on my part.
Probably use some sort of GameObject with DontDestroyOnLoad
to move data from one scene to another
Thank you for the suggestion. Why use DontDestroyOnLoad
? Is there a way to store the coordinates received when the collision occurs? Even with that, I'd want the player to face 180 on the Y axis when returning to a room. There would likely be an enteringRoom
factor vs. exitingRoom
but that's just me thinking out loud right now.
again, as always, I really appreciate the ideas and the help!
You have a script that looks like
public class Data : $$anonymous$$onoBehaviour
{
public Vector3 PlayerLocation;
private void Start()
{
DontDestroyOnLoad(gameObject);
}
}
attached to a GameObject called "Data".
Whenever you exit a scene via a door, before loading, you do GameObject.Find("Data").GetComponent<Data>().PlayerLocation = [YOUR VECTOR]
and after loading, you do player.transform.position = GameObject.Find("Data").GetComponent<Data>().PlayerLocation;
Your answer
Follow this Question
Related Questions
Increment doesnt increment after the first increment 2 Answers
Load Next scene in Build Settings with collision 2 Answers
Loading new level after killing enemies 3 Answers
Collision not working after Loadlevel 0 Answers
raycast with events 1 Answer