- Home /
Animation Question Open Container
Hey guys i have the container with door. I have 2 questions: 1: I have script, script attached to prefab of container. Container have 2 part. Box and Door. When i put only 1 prefab with container to scene that works ok. opening and close. But if i duplicate that container and when i opening it and than i opening another it's playing close animation. I have private variable on script _Activated = true when opened false when it's close. What should i do to do that script working correctly for duplicated objects? 2: How can i control my animations? I mean when playing my animation on open i can't activate object one more time until it's complete.
I am new to unity. Thank you for answers guys.
 class AnimateObject extends MonoBehaviour 
 {
 public var playerCam : Camera;
 public var obj : String;
 public var HighLightColor : Color;
 
 private var currentObj : GameObject;
 static var firstAnim : boolean= false;
 static var secondAnim : boolean= false;
 private var _Activated : boolean= false;
 private var _secondAnim : boolean= false;
 
 public var anim1 : String;
 public var anim2 : String;
 
 var Anim1Sound : AudioClip;
 var Anim2Sound : AudioClip;
 
 function AnimateThatObj(obj,anim1 : String,anim2 : String)
 {
     var hit : RaycastHit;
     var ray : Ray = playerCam.ScreenPointToRay(new Vector3(Screen.width * 0.5, Screen.height * 0.5, 0)); // Луч
 
         if (Input.GetButtonDown("Fire1") ){
 
                 if(Physics.Raycast(ray.origin, ray.direction,hit, 5.0)){
                 
                         if(hit.collider.gameObject.tag==obj && _Activated  == false){
                                 currentObj = hit.collider.gameObject;
                                 ObjectControl(Anim1Sound,true,anim1,currentObj);
                                 
                         }
                         else if(hit.collider.gameObject.tag==obj && _Activated == true)
                         {
                                 currentObj = hit.collider.gameObject;
                                 ObjectControl(Anim2Sound,false,anim2,currentObj);
                         }
 
 
                 }
 
         }//Input.GetButtonDown
 
 
 }
 }
 
 function Update () {
 
 AnimateThatObj(obj,anim1,anim2);
 Debug.Log(_Activated);
 }
 
 function ObjectControl(aClip : AudioClip, ActivatedCheck : boolean, animName : String, thisObj : GameObject)
 {
 audio.PlayOneShot(aClip);
 _Activated  = ActivatedCheck;
 thisObj.animation.Play(animName);
 //thisObj.renderer.material.color = HighLightColor;
 
 }
Your answer
 
 
             Follow this Question
Related Questions
how to open two classic double door and windows 0 Answers
Help touch button 1 Answer
How to run an animation mouse click. 2 Answers
 koobas.hobune.stream
koobas.hobune.stream 
                       
                
                       
			     
			 
                