Exemplo n.º 1
0
        void OnJumpEnd()
        {
            jumping--;
            Unit player = BoardManager.instance.player;

            player.renderer.enabled    = true;
            player.followable.isFollow = true;
            for (LinkedListNode <Unit> i = player.followable.Followers.First; i != null; i = i.Next)
            {
                i.Value.cachedTransform.localScale = Vector3.one;
                i.Value.cachedTransform.position   = player.cachedTransform.position;
            }

            Transform shadowTransform = player.shadow.transform;

            shadowTransform.localScale = Vector3.one;
            shadowTransform.SetParent(player.cachedTransform);
            player.shadow.enabled          = true;
            player.rigid.velocity          = Vector2.zero;
            player.collider.enabled        = true;
            player.autoMoveable.enabled    = true;
            player.attackable.enabled      = true;
            player.targetable.IsTargetable = true;

            for (int i = 0; i < 20; i++)
            {
                DeathEffect effect = DeathEffectManager.instance.pool.DequeueObjectPool().GetComponent <DeathEffect>();

                effect.Init((Vector2)player.cachedTransform.position + Random.insideUnitCircle * 0.25f, player.cachedTransform.position, 1.5f);
                //effect.cachedTransform.position = (Vector2)player.cachedTransform.position + Random.insideUnitCircle.normalized * 1.3f;
            }
        }
    public void Play(Unit unit)
    {
        //StartCoroutine(PlayCorou(trans));
        int rnd = Random.Range(3, 6);

        for (int i = 0; i < rnd; i++)
        {
            Vector2     offset = new Vector2(Random.Range(-0.25f, 0.25f), Random.Range(-0.25f, 0.25f));
            DeathEffect ef     = pool.DequeueObjectPool().GetComponent <DeathEffect>();
            //if (i == 0)
            //    ef.animator.SetBool("isSmall", false);
            //else
            //    ef.animator.SetBool("isSmall", true);

            ef.Init(unit.cachedTransform.position + (Vector3)offset, unit.cachedTransform.position, 0.3f, unit);
            //yield return new WaitForSeconds(0.1f);
        }
    }