The script works fine to open/close the door when I press “E”. It also works in that I have to be a certain distance from the door and looking at it. The problem I’m having is that the other doors in my scene with similar scripts all open/close whenever any of them is interacted with:
using UnityEngine;
using System.Collections;
public class GeneralDoor : MonoBehaviour {
// Use this for initialization
public Animation anim;
bool open;
Ray ray;
RaycastHit hit;
public float distance = 8.0f;
void Start () {
anim = GetComponent<Animation> ();
anim ["GenDoorOpen"].speed = -1.0f;
open = true;
}
// Update is called once per frame
void Update ()
{
if (Input.GetKeyDown(KeyCode.E)) {
ray = Camera.main.ScreenPointToRay(Input.mousePosition);
if (Physics.Raycast (ray, out hit, distance)) {
if (!anim.isPlaying) {
open = !open;
anim ["GenDoorOpen"].speed = anim ["GenDoorOpen"].speed * -1.0f;
if (open) {
anim ["GenDoorOpen"].time = anim ["GenDoorOpen"].length;
} else {
anim ["GenDoorOpen"].time = 0.0f;
}
} else {
open = !open;
anim ["GenDoorOpen"].speed = anim ["GenDoorOpen"].speed * -1.0f;
}
anim.Play ("GenDoorOpen");
}
}
}
}
Let me know if you see something I don’t… Thanks is advance.