Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- using UnityEngine.UI;
- using UnityEngine.SceneManagement;
- public class Trigers : MonoBehaviour
- {
- enum triggers{Kill, RemoveObject, Teleport, Scene};
- [SerializeField] private triggers triggerType;
- [SerializeField] private string tag = "Player";
- [Space]
- [Header("Teleport")]
- public Text textToShow;
- public string textToShowText;
- public GameObject activateButton;
- public KeyCode activateKey;
- public Vector2 teleportTo;
- [Space]
- [Header("Scene")]
- public int sceneIndex;
- bool teleportActive = false;
- void OnTriggerStay2D(Collider2D collider)
- {
- if (collider.tag == tag)
- {
- switch(triggerType)
- {
- case triggers.Kill:
- SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex);
- break;
- case triggers.RemoveObject:
- Destroy(collider.gameObject);
- break;
- case triggers.Teleport:
- textToShow.text = textToShowText;
- activateButton.SetActive(true);
- print(teleportTo);
- if(teleportActive || Input.GetKeyDown(activateKey))
- {
- print(teleportTo);
- collider.gameObject.transform.position = new Vector3(teleportTo.x, teleportTo.y, collider.gameObject.transform.position.z);
- teleportActive = false;
- }
- break;
- case triggers.Scene:
- SceneManager.LoadScene(sceneIndex);
- break;
- }
- }
- }
- void OnTriggerExit2D(Collider2D collider)
- {
- textToShow.text = "";
- activateButton.SetActive(false);
- }
- public void ButtonClick()
- {
- teleportActive = true;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment