Хотел реализовать механику перемещения между двумя лифтами в своей игре.
Как показано на скриншоте персонаж перемещается от 1 лифта ко 2.
Есть одна проблема чтобы переместиться между двумя лифтами нужна несколько раз нажимать клавишу E. Я хочу сделать чтобы все работало с первого раза. Как можно это исправить либо сделать по другому чтобы все работало с 1 нажатия?
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ElivatorUP : MonoBehaviour {
public GameObject elivator2;
public GameObject Player;
public GameObject Image;
public bool teleportt = false;
private void OnTriggerEnter2D(Collider2D other) {
if(other.tag == "Player"){
teleportt = !teleportt;
}
}
private void OnTriggerStay2D(Collider2D other) {
if(other.tag == "Player"){
Image.SetActive(true);
}
}
private void OnTriggerExit2D(Collider2D other) {
if(other.tag == "Player"){
Image.SetActive(false);
teleportt = !teleportt;
}
}
void Telep(){
Player.transform.position = new Vector3(elivator2.transform.position.x, elivator2.transform.position.y);
}
private void FixedUpdate() {
if(teleportt == true){
if(Player.tag == "Player"){
if(Input.GetKeyDown(KeyCode.E)){
Telep();
}
}
}
}
}