Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Animation Trigger Troubles

Discussion in 'Scripting' started by Dawnreaver, Jan 24, 2011.

  1. Dawnreaver

    Dawnreaver

    Joined:
    Oct 13, 2010
    Posts:
    131
    Hey Folks ^_^

    I'm trying to trigger an animation by using a button. Here is my code so far:

    Code (csharp):
    1.  
    2. var open_door : Animation;
    3. var open_doorr : Animation;
    4. var door : GameObject;
    5. var doorr : GameObject;
    6.  
    7. function OnTriggerEnter (hit : Collider)
    8.     {
    9.         if(hit.collider.gameObject.tag == "stone" || hit.collider.gameObject.tag == "player")
    10.         {
    11.             door.gameObject.animation.Play("open_door");
    12.             doorr.gameObject.animation.Play("open_doorr");
    13.             door.animation.wrapMode = WrapMode.Once;
    14.             doorr.animation.wrapMode = WrapMode.Once;
    15.         }
    16.     }
    17.  
    18. function OnTriggerStay (hit : Collider)
    19.     {
    20.         if(!hit.collider.gameObject.tag == "stone" || !hit.collider.gameObject.tag == "player")
    21.             {
    22.                 // code to play the animations backards
    23.                 door.gameObject.animation["open_door"].speed = -1;  //<-
    24.                 door.gameObject.animation["open_door"].time = door.gameObject.animation["open_door"].length;//<-
    25.                 door.gameObject.animation.Play("open_door");
    26.                
    27.                 doorr.gameObject.animation["open_doorr"].speed = -1;
    28.                 doorr.gameObject.animation["open_doorr"].time = doorr.gameObject.animation["open_door"].length;
    29.                 doorr.gameObject.animation.Play("open_doorr");
    30.                
    31.                 door.animation.wrapMode = WrapMode.Once;
    32.                 doorr.animation.wrapMode = WrapMode.Once;animation.wrapMode = WrapMode.Once;
    33.             }
    34.     }
    35.  
    Unfortuinately I get this error message:

    The animation state open_doorr could not be played because it couldn't be found!
    Please attach an animation clip with the name 'open_doorr' or call this function only for existing animations.
    UnityEngine.Animation:play(String)
    door_trigger:OnTriggerEnter(Collider) (at Assets/door_trigger.js:11)

    Have you got any idea where I made a mistake?

    Cheers!

    Dawnreaver