Search Unity

Toggle animations - if 2 are activated - open door

Discussion in 'Animation' started by pfisher1, Feb 11, 2015.

  1. pfisher1

    pfisher1

    Joined:
    Sep 10, 2012
    Posts:
    2
    I am trying to play a door opening animation when two levers are pressed up. Right now it will only play the down pressed animation (lever1down lever2down) when I hit "Fire 1" and never the up animation. I have added both of the animations to each gameobject and they are both set to legacy. Can you let me know what I am doing wrong? I am new to writing code like this..
    1. Code (JavaScript):
      1.  var lever1 : GameObject;
      2. var lever2 : GameObject;
      3. var elevator1 : GameObject;
      4. private var lever1Pos = false;
      5. private var lever2Pos = false;
      6. function Update () {
      7.     if (Input.GetButtonDown ("Fire1"))  // if left button pressed...
      8.       {
      9.          var ray : Ray = camera.ViewportPointToRay (Vector3(0.5,0.5,0));
      10.          // Do a raycast
      11.          var hit : RaycastHit;
      12.          if (Physics.Raycast (ray, hit))
      13.              {
      14.                  if (hit.transform.name == "Lever1" && lever1Pos == false)
      15.                  {
      16.                      lever1.GetComponent.<Animation>().Play("Lever1up");
      17.                      lever1Pos = true;
      18.                  }
      19.                  if (hit.transform.name == "Lever1" && lever1Pos == true)
      20.                  {
      21.                      lever1.GetComponent.<Animation>().Play("Lever1down");
      22.                      lever1Pos = false;
      23.                  }
      24.                  if (hit.transform.name == "Lever2" && lever2Pos == false)
      25.                  {
      26.                      lever2.GetComponent.<Animation>().Play("Lever2up");
      27.                      lever2Pos = true;
      28.                  }
      29.                  if (hit.transform.name == "Lever2" && lever2Pos == true)
      30.                  {
      31.                      lever2.GetComponent.<Animation>().Play("Lever2down");
      32.                      lever2Pos = false;
      33.                  }
      34.              }
      35.      }
      36.      if (lever1Pos && lever2Pos)
      37.      {
      38.      elevator1.GetComponent.<Animation>().Play("Elevator1");
      39.      }
      40. }