Example #1
0
 void FixedUpdate()
 {
     if (!shouldGrow)
     {
         transform.localPosition += Vector3.right * speed * Time.deltaTime;
         StartCoroutine(Lifetime());
         transform.parent.parent = null;
     }
     else
     {
         if (growingTimer > 0)
         {
             growingTimer -= Time.deltaTime;
             //transform.localScale += 5 * Vector3.one * Time.deltaTime / 6;
             //for (int i = 0; i < transform.childCount; i++)
             //    transform.GetChild(i).transform.localScale += Vector3.one * Time.deltaTime / 2000;
             //for (int i = 0; i < transform.GetComponentsInChildren<Particle>().Length; i++)
             //    transform.GetComponentsInChildren<Particle>()[i].size += 5 * Time.deltaTime / 6;
         }
         shouldGrow = owner.GetComponent <Attack>().ReleaseFireball();
         if (!shouldGrow)
         {
             damage *= 0.5f + ((maxGrowingTime - growingTimer) / maxGrowingTime) / 2;
             DragonMovement DG = owner.GetComponent <DragonMovement>();
             damage *= DG.velocityMag / DG.terminalVelocity;
             transform.GetChild(0).gameObject.SetActive(true);
             if (owner.GetComponent <DragonMain>().isPlayer)
             {
                 CameraShaker.Shake(3);
             }
         }
     }
 }
Example #2
0
 void Start()
 {
     dragon   = GetComponent <DragonMain>();
     movement = GetComponent <DragonMovement>();
     attack   = GetComponent <Attack>();
     updateWandering();
     StartCoroutine(wanderUpdater());
 }
Example #3
0
        public bool IsFindNode(MOVEMENTTYPE Type)
        {
            NodeManager NodesPath = DragonMovement.GetNodeManager(Type);

            if (!NodesPath.IsRotation)
            {
                if (NodesPath.IsStick)
                {
                    Vector3 forward = (transform.position - NodesPath.transform.position).normalized;

                    Vector3 changePos = new Vector3(transform.position.x, NodesPath.transform.position.y, transform.position.z);

                    NodesPath.transform.position = changePos;
                    NodesPath.transform.rotation = transform.rotation;

                    Debug.Log("NodePath Find");
                    return(true);
                }
            }
            Debug.Log("NodePath No Find");
            return(false);
        }
Example #4
0
    IEnumerator spawnAnimation()
    {
        if (this.gameObject.tag == "skeleton")
        {
            SkeletonMovement moveComponent = this.gameObject.GetComponent <SkeletonMovement>();
            moveComponent.canMove = false;
        }
        if (this.gameObject.tag == "boomerang")
        {
            BoomerangMovement moveComponent = this.gameObject.GetComponent <BoomerangMovement>();
            moveComponent.canMove = false;
        }
        if (this.gameObject.tag == "bat")
        {
            BatMovement moveComponent = this.gameObject.GetComponent <BatMovement>();
            moveComponent.canMove = false;
        }
        if (this.gameObject.tag == "gel")
        {
            GelMovement moveComponent = this.gameObject.GetComponent <GelMovement>();
            moveComponent.canMove = false;
        }
        if (this.gameObject.tag == "hand")
        {
            HandMovement moveComponent = this.gameObject.GetComponent <HandMovement>();
            moveComponent.canMove = false;
        }
        if (this.gameObject.tag == "dragon")
        {
            DragonMovement moveComponent = this.gameObject.GetComponent <DragonMovement>();
            moveComponent.canMove = false;
        }
        Animator hold = GetComponent <Animator>();

        if (hold != null)
        {
            hold.enabled = false;
        }
        GetComponent <Rigidbody>().velocity = new Vector3(0.0f, 0.0f, 0.0f);

        GetComponent <SpriteRenderer>().sprite = GameController.instance.explosionOne;
        yield return(new WaitForSeconds(0.2f));

        GetComponent <SpriteRenderer>().sprite = GameController.instance.explosionTwo;
        yield return(new WaitForSeconds(0.2f));

        GetComponent <SpriteRenderer>().sprite = startingSprite;

        if (this.gameObject.tag == "skeleton")
        {
            SkeletonMovement moveComponent = this.gameObject.GetComponent <SkeletonMovement>();
            moveComponent.canMove = true;
        }
        if (this.gameObject.tag == "boomerang")
        {
            BoomerangMovement moveComponent = this.gameObject.GetComponent <BoomerangMovement>();
            moveComponent.canMove = true;
        }
        if (this.gameObject.tag == "bat")
        {
            BatMovement moveComponent = this.gameObject.GetComponent <BatMovement>();
            moveComponent.canMove = true;
        }
        if (this.gameObject.tag == "gel")
        {
            GelMovement moveComponent = this.gameObject.GetComponent <GelMovement>();
            moveComponent.canMove = true;
        }
        if (this.gameObject.tag == "hand")
        {
            HandMovement moveComponent = this.gameObject.GetComponent <HandMovement>();
            moveComponent.canMove = true;
        }
        if (this.gameObject.tag == "dragon")
        {
            DragonMovement moveComponent = this.gameObject.GetComponent <DragonMovement>();
            moveComponent.canMove = true;
        }
        if (hold != null)
        {
            hold.enabled = true;
        }
    }