A 2D Farming RPG
This is just a simple 2D farming RPG game
Loading...
Searching...
No Matches
SceneTeleport.cs
Go to the documentation of this file.
1using System.Collections;
2using System.Collections.Generic;
3using UnityEngine;
4
5[RequireComponent(typeof(BoxCollider2D))]
6public class SceneTeleport : MonoBehaviour
7{
8
9 [SerializeField] private SceneName m_SceneNameGoTo = SceneName.Scene1_Farm;
10 [SerializeField] private Vector3 m_ScenePositionGoTo = new Vector3();
11
16 private void OnTriggerStay2D( Collider2D collision )
17 {
18 Player player = collision.GetComponent<Player>();
19
20 if( player != null )
21 {
22 // Calculate the player's new position
23 float xPosition = Mathf.Approximately( m_ScenePositionGoTo.x, 0f ) ? player.transform.position.x : m_ScenePositionGoTo.x;
24
25 float yPosition = Mathf.Approximately(m_ScenePositionGoTo.y, 0f) ? player.transform.position.y : m_ScenePositionGoTo.y;
26
27 float zPosition = 0f;
28
29 // Teleport to new scene.
30 SceneControllerManager.Instance.FadeAndLoadScene( m_SceneNameGoTo.ToString(), new Vector3( xPosition, yPosition, zPosition ) );
31
32 }
33 }
34}
SceneName
Describes different scenes.
Definition: Enums.cs:118
This class has all the things related to player
Definition: Player.cs:8
Manage the transition between scenes
void OnTriggerStay2D(Collider2D collision)
If the collision happened with player, then teleport it to next scene.
SceneName m_SceneNameGoTo
Definition: SceneTeleport.cs:9
Vector3 m_ScenePositionGoTo