- Home /
open/close a animated door
Hi everyone i have a problem with my script...
var DoorGameObject : Transform; // This is a reference to the door GameObject that has your animation
private var HasTriggerBeenUsed : boolean = true; // This is to make sure that the button is not repeatedly pressed.
private var setTrigger : boolean = true;
function OnTriggerStay() {
if (Input.GetKeyDown("e") && !HasTriggerBeenUsed) {
DoorGameObject.animation.Play("Take 001");
setTrigger = true;
}
else if (Input.GetKeyDown("e") && HasTriggerBeenUsed) {
DoorGameObject.animation.Play("close door"); // Insert name of DoorClose animation instead of that
setTrigger = true;
}
if (setTrigger) { HasTriggerBeenUsed = !HasTriggerBeenUsed; }
}
i have a animation to open and close a door, i put both on animation tag of my door et put the right name of the animations on the script but that doesn't work very well :s I open the door easily but the probleme it's to close. Sometimes it's work sometimes not I have a probleme on the script but don't know where =s Can you help me? Thank you in advance
Answer by Jake.OConnor · Jul 12, 2013 at 04:24 PM
First of all your "setTrigger" flag is never reset, which means that during each frame where the triggers are overlapping "HasTriggerBeenUsed" gets flipped. That could account for the door sometimes working, as sometimes the "HasTriggerBeenUsed" flag is set properly and sometimes it is not.
thx for your answer ;) i put my project by side for a moment but now i m back ;)
i notice i have the same probleme for the openning animation. Sometimes one hit one "E" is enought sometimes i need to hit it 3times. I guess it's the same problem :s
How can i fix it? how can i reset my "setTrigger". I try to understand the js but it's pretty hard for me ^^
$$anonymous$$aybe there is a easier script to do the same (launch a animation with a key when im in a trigger)
thanks in advance Saudius