- Home /
 
 
               Question by 
               Davidflynn · Oct 29, 2011 at 09:48 AM · 
                 
              
 
              Rest postion after animation plays
I have code on my grave stones this one below then the one below that I have on an empty game object what I need to do is rest the position of the grave stones after the animation plays so if they got it wrong they can try again.
  var currentGrave : GameObject;
  var controller: GameObject;  
  var pushed : boolean = false;
 
 
 
 function OnTriggerStay(other : Collider) 
 
 {
 
     //if (pushed != true)
 
     //{
 
         if (Input.GetKeyDown (KeyCode.R))
 
         {
 
             print ("R key was pressed");
 
             
 
             switch (this.gameObject.tag)
 
             {
 
                 case "grave1":
 
                     controller.GetComponent(GraveHandler).pushgrave1 = true;
 
                     this.animation.Play();
 
                     break;
 
                 
 
                 case "grave2":
 
                     controller.GetComponent(GraveHandler).pushgrave2 = true;
 
                     this.animation.Play();
 
                     break;
 
                     
 
                 case "grave3":
 
                     controller.GetComponent(GraveHandler).pushgrave3 = true;
 
                     this.animation.Play();
 
                     break;
 
                     
 
                 default:
 
                     print ("Grave error");
 
                     break;
 
                 
 
                 //pulled = true;
 
             }
 
         }
 //}
 
               }
And This one An empty Object in the game.
 var pushgrave1 : boolean;
 
 var pushgrave2 : boolean;
 
 var pushgrave3 : boolean;
 
 
 
 var pushedgrave1 : boolean;
 
 var pushedgrave2 : boolean;
 
 var pushedgrave3 : boolean;
 
 
 
 var numberOfGravePushed : int = 0;
 
 
 
 var firstNum : int = 0;
 
 var secondNum : int = 0;
 
 var thirdNum : int = 0;
 
 
 
 var gate : GameObject;
 
 
 
 function Update () 
 
 {
 
     if (pushgrave1 && pushedgrave1 == false)
 
     {
 
         print ("push grave 1");
 
         numberOfGravePushed++;
 
         pushedgrave1 = true;
 
         
 
         if (firstNum == 0)
 
         {
 
             firstNum = 1;
 
         }
 
         else if (secondNum == 0)
 
         {
 
             secondNum = 1;
 
         }
 
         else if (thirdNum == 0)
 
         {
 
             thirdNum = 1;
 
         }
 
         
 
     }
 
     if (pushgrave2 && pushedgrave2 == false)
 
     {
 
         print ("push grave 2");
 
         numberOfGravePushed++;
 
         pushedgrave2 = true;
 
         
 
         if (firstNum == 0)
 
         {
 
             firstNum = 2;
 
         }
 
         else if (secondNum == 0)
 
         {
 
             secondNum = 2;
 
         }
 
         else if (thirdNum == 0)
 
         {
 
             thirdNum = 2;
 
         }
 
     }
 
     if (pushgrave3 && pushedgrave3 == false)
 
     {
 
         print ("push grave 3");
 
         numberOfGravePushed++;
 
         pushedgrave3 = true;
 
         
 
         if (firstNum == 0)
 
         {
 
             firstNum = 3;
 
         }
 
         else if (secondNum == 0)
 
         {
 
             secondNum = 3;
 
         }
 
         else if (thirdNum == 0)
 
         {
 
             thirdNum = 3;
 
         }
 
     }
 
     
 
     if (firstNum != 0 && secondNum != 0 && thirdNum != 0)
 
     {
 
         checkMath(firstNum,secondNum,thirdNum);
 
     }
 
     
 
 }
 
 
 
 // Assign numbers in order to submit to checkMath
 
 
 
 
 
 function checkMath (num1 : double, num2 : double, num3 : double)
 
 {
 
     var result : double = 0.0d;
 
     
 
     result = num1 * num2 / num3;
 
     
 
     if ( result == 1.5d )
 
     {
 
         print ("CORRECT");
 
         gate.animation.Play();
 
     }
 
     else
 
     {
 
         print ("INCORRECT");
 
         resetGrave();
 
     }
 
 }
 
 
 
 function resetGrave ()
 
 {
 
     numberOfGravePushed = 0;
 
     pushgrave1 = false;
 
     pushgrave2 = false;
 
     pushgrave3 = false;
 
     
 
     pushedgrave1 = false;
 
     pushedgrave2 = false;
 
     pushedgrave3 = false;
 
     
 
     firstNum = 0;
 
     secondNum = 0;
 
     thirdNum = 0;
 
 }
 
              
               Comment
              
 
               
              Your answer
 
             Follow this Question
Related Questions
Multiple Cars not working 1 Answer
Problem with forcing objects to a 2D plane 1 Answer
Audio not playing [Fixed] 1 Answer
JS to C# Translation? 2 Answers
Targeting retical that changes color 1 Answer