void RayCastCamera() { RaycastHit hit; Ray ray = camera.ScreenPointToRay(Input.mousePosition); if (Physics.Raycast(ray, out hit, 20.0f)) { //Debug.Log(hit.collider.tag); switch (hit.collider.tag) { case "Door": LatchOpenDoor latch = hit.collider.GetComponentInParent <LatchOpenDoor>(); if (latch.open != true) { prompt = pressKeyToOpen; showPrompt = true; if (Input.GetKeyDown(KeyCode.E)) { showPrompt = false; latch.OpenDoor(); //Debug.Log(hit.collider.gameObject.GetComponent<TeleportPlayer>()); if (hit.collider.gameObject.GetComponent <TeleportPlayer>() != null) { TeleportPlayer teleport = hit.collider.GetComponent <TeleportPlayer>(); teleport.TeleportPlayerTo(); } } } else { showPrompt = false; } break; case "Battery": prompt = pressKeyToBattery; showPrompt = true; if (Input.GetKeyDown(KeyCode.E)) { battery.batteryLife += 5; Destroy(hit.collider.gameObject); } break; case "Toy": prompt = pressToPickup; showPrompt = true; if (Input.GetKeyDown(KeyCode.E)) { level.ToysCollected++; Destroy(hit.collider.gameObject); } break; } //Debug.DrawRay(ray.origin, ray.direction*20, Color.red); } }
void OnTriggerEnter(Collider collider) { if (collider.gameObject != player) { return; } currentTeleporter = this; }
void OnTriggerExit(Collider collider) { if (collider.gameObject != player) { return; } if (currentTeleporter == this) { currentTeleporter = null; } }
// Start is called before the first frame update void Start() { m_TeleportPlayer = GetComponent <TeleportPlayer>(); m_TypeBullets = GameObject.FindGameObjectsWithTag("Proyectil"); OrderBullet(m_WhatIsTouchT, k_typeBullet, k_dmgNBullet, k_Speed, k_LifeTime, false); }
public static void removeTeleportListener(TeleportPlayer method) { teleportPlayer -= method; }
//teleport public static void addTeleportListener(TeleportPlayer method) { teleportPlayer += method; }
public static void KillPlayer(TeleportPlayer player) { Destroy(player.gameObject); gm.StartCoroutine(gm.RespawnPlayer()); //Has to call the method like this if its an IEnumerator method }
// Start is called before the first frame update void Start() { aiFollower = GetComponent <NavMeshAgent>(); player = GameObject.FindGameObjectWithTag("Player").GetComponent <PlayerController>(); teleport = GameObject.Find("Player_Sender").GetComponent <TeleportPlayer>(); }
private void Awake() { Instance = this; gameManager = Gamestate.Instance; SaveLoadManager.LoadGameState(gameManager); }
private void Update() { teleportinstance = GameObject.Find("SpawnPoints").GetComponent <TeleportPlayer>(); }