Exemplo n.º 1
0
    IEnumerator delayBullet3()
    {
        int   count = 20;
        float angle = -10 / 2f * 10f;

        for (int i = 0; i < count; i++)
        {
            GameObject obj    = GameObject.Instantiate(ultimateBullet);
            PosBullet1 bullet = obj.GetComponent <PosBullet1>();
            bullet.player    = transform;
            bullet.startPos  = transform.position + new Vector3(0f, 0.01f, 0f);
            bullet.tarPos    = MathUtil1.calcTargetPosByRotation(transform, angle + i * 10f, 10f);
            bullet.effectObj = damageEffect1;
            bullet.bulleting();
            yield return(new WaitForSeconds(0.015f));

            if (i % 6 == 0)
            {
                AttackedController1 c = GameObject.Find("bigzhangjiao (1)").GetComponent <AttackedController1>();
                c.attacked();
                if (damageEffect2 != null)
                {
                    GameObject       obj1   = GameObject.Instantiate(damageEffect2);
                    ParticlesEffect1 effect = obj1.AddComponent <ParticlesEffect1>();
                    Transform        target = GameObject.Find("bigzhangjiao (1)").transform;
                    effect.transform.position = MathUtil1.findChild(target, "attackedPivot").position;
                    effect.play();
                }
            }
        }
    }
Exemplo n.º 2
0
        private async void DelayBullet3()
        {
            const int   count = 20;
            const float angle = -10 / 2f * 10f;

            for (var i = 0; i < count; i++)
            {
                var bullet = Instantiate(_ultimateBullet);
                bullet.player    = transform;
                bullet.startPos  = transform.position + new Vector3(0f, 0.01f, 0f);
                bullet.tarPos    = MathUtil1.calcTargetPosByRotation(transform, angle + i * 10f, 10f);
                bullet.effectObj = _damageEffect1;
                bullet.bulleting();
                await UniTask.Delay(1);

                if (i % 6 != 0)
                {
                    continue;
                }
                if (_damageEffect2 == null)
                {
                    continue;
                }
                var effect = Instantiate(_damageEffect2);
                effect.transform.position = MathUtil1.findChild(_target, "attackedPivot").position;
                effect.play();
            }
        }