Exemplo n.º 1
0
 public void CloudFall()
 {
     if(transform.position.y > 1 && Level.Singleton.getEntity(transform.position + Vector3.down) is CloudCube){
         CloudCube cl = (CloudCube)Level.Singleton.getEntity(transform.position+Vector3.down);
         if(!CubeHelper.IsFree(new Vector3Int(cl.transform.position+Vector3.down))||cl.transform.position.y==1){
             Level.Singleton.RemoveEntity(cl.transform.position);
             Level.Singleton.RemoveEntity(cl.transform.position+Vector3.up);
             Level.Singleton.AddEntity(cl,cl.transform.position+Vector3.up);
             Level.Singleton.AddEntity(this,cl.transform.position);
             Vector3 aux =cl.transform.position;
             this.cl=cl;
             CubeAnimations.AnimateMove (gameObject, Vector3.down, aux);
             cl.renderer.enabled=false;
             //CubeControllerInput cc = cl.gameObject.GetComponent<CubeControllerInput> ();
             //cc.NotifyMoveTO (new Move (cl, new Vector3Int( cl.transform.position + Vector3.up)));
             //TODO cambiar transform por animacion
             //CubeAnimations.AnimateMove (cl.gameObject, Vector3.down, aux + Vector3.up);
             //this.transform.position = aux;
             cl.transform.position = aux + Vector3.up;
         }else if(CubeHelper.IsFree(new Vector3Int(cl.transform.position+Vector3.down))){
             Level.Singleton.RemoveEntity(transform.position);
             this.cl = cl;
             cl.renderer.enabled=false;
             Debug.Log(transform.position+Vector3.down+Vector3.down);
             //transform.position = cl.transform.position + Vector3.down;
             Level.Singleton.AddEntity(this,transform.position+Vector3.down+Vector3.down);
             //CubeAnimations.AnimateMove (gameObject, Vector3.down, cl.transform.position + Vector3.down);
             Gravity(new Vector3Int(transform.position+Vector3.down+Vector3.down));
             //CloudFall();
         }
     }
 }
Exemplo n.º 2
0
 public void CloudFall()
 {
     if(transform.position.y > 1 && Level.Singleton.getEntity(transform.position + Vector3.down) is CloudCube){
         CloudCube cl = (CloudCube)Level.Singleton.getEntity(transform.position+Vector3.down);
         if(!CubeHelper.IsFree(new Vector3Int(cl.transform.position+Vector3.down))||cl.transform.position.y==1){
             Level.Singleton.RemoveEntity(cl.transform.position);
             Level.Singleton.RemoveEntity(cl.transform.position+Vector3.up);
             Level.Singleton.AddEntity(cl,cl.transform.position+Vector3.up);
             Level.Singleton.AddEntity(this,cl.transform.position);
             Vector3 aux =cl.transform.position;
             this.cl=cl;
             CubeAnimations.AnimateMove (gameObject, Vector3.down, aux);
             cl.renderer.enabled=false;
             cl.transform.position = aux + Vector3.up;
         }else if(CubeHelper.IsFree(new Vector3Int(cl.transform.position+Vector3.down))){
             Level.Singleton.RemoveEntity(transform.position);
             this.cl = cl;
             cl.renderer.enabled=false;
             Debug.Log(transform.position+Vector3.down+Vector3.down);
             //transform.position = cl.transform.position + Vector3.down;
             Level.Singleton.AddEntity(this,transform.position+Vector3.down+Vector3.down);
             //CubeAnimations.AnimateMove (gameObject, Vector3.down, cl.transform.position + Vector3.down);
             Gravity(new Vector3Int(transform.position+Vector3.down+Vector3.down));
             //CloudFall();
         }
     }
 }
Exemplo n.º 3
0
 public override void OnEndExecution()
 {
     if (cl != null)
     {
         cl.renderer.enabled = true;
         cl = null;
     }
     CloudFall();
     IceBreak();
     PlayMovement();
 }
Exemplo n.º 4
0
 public void CloudFall()
 {
     if (transform.position.y > 1 && Level.Singleton.getEntity(transform.position + Vector3.down) is CloudCube)
     {
         CloudCube cl = (CloudCube)Level.Singleton.getEntity(transform.position + Vector3.down);
         if (!CubeHelper.IsFree(new Vector3Int(cl.transform.position + Vector3.down)) || cl.transform.position.y == 1)
         {
             Level.Singleton.RemoveEntity(cl.transform.position);
             Level.Singleton.RemoveEntity(cl.transform.position + Vector3.up);
             Level.Singleton.AddEntity(cl, cl.transform.position + Vector3.up);
             Level.Singleton.AddEntity(this, cl.transform.position);
             Vector3 aux = cl.transform.position;
             this.cl = cl;
             CubeAnimations.AnimateMove(gameObject, Vector3.down, aux);
             cl.renderer.enabled = false;
             //CubeControllerInput cc = cl.gameObject.GetComponent<CubeControllerInput> ();
             //cc.NotifyMoveTO (new Move (cl, new Vector3Int( cl.transform.position + Vector3.up)));
             //TODO cambiar transform por animacion
             //CubeAnimations.AnimateMove (cl.gameObject, Vector3.down, aux + Vector3.up);
             //this.transform.position = aux;
             cl.transform.position = aux + Vector3.up;
         }
         else if (CubeHelper.IsFree(new Vector3Int(cl.transform.position + Vector3.down)))
         {
             Level.Singleton.RemoveEntity(transform.position);
             this.cl             = cl;
             cl.renderer.enabled = false;
             Debug.Log(transform.position + Vector3.down + Vector3.down);
             //transform.position = cl.transform.position + Vector3.down;
             Level.Singleton.AddEntity(this, transform.position + Vector3.down + Vector3.down);
             //CubeAnimations.AnimateMove (gameObject, Vector3.down, cl.transform.position + Vector3.down);
             Gravity(new Vector3Int(transform.position + Vector3.down + Vector3.down));
             //CloudFall();
         }
     }
 }
Exemplo n.º 5
0
 public Hang(CloudCube receiver, Vector3 endPosition) : base(receiver, endPosition)
 {
 }
Exemplo n.º 6
0
 public Hang(CloudCube receiver, Vector3 endPosition)
     : base(receiver, endPosition)
 {
 }
Exemplo n.º 7
0
 public override void OnEndExecution()
 {
     if(cl!=null){
         cl.renderer.enabled = true;
         cl = null;
     }
     CloudFall();
     IceBreak();
     PlayMovement();
 }