Esempio n. 1
0
    public override IEnumerator PatternFramework(Pattern prevPattern)
    {
        PatternCircle pattern = prevPattern as PatternCircle;

        if (pattern == null)
        {
            yield break;
        }

        for (int i = 0; i < pattern.spawnedBulletList.Count; ++i)
        {
            if (pattern.spawnedBulletList[i] == null)
            {
                break;
            }

            Vector2 myPosition     = pattern.spawnedBulletList[i].transform.position; // owner.transform.position; //
            Vector2 targetPosition = PlayerScript.player.transform.position;

            pattern.spawnedBulletList[i].direction = MyMath.GetDirection(myPosition, targetPosition);

            Boss1Bullet2 bullet = pattern.spawnedBulletList[i] as Boss1Bullet2;

            float speedWeight = Random.Range(0.5f, 1.5f);

            bullet.speed = bullet.originSpeed * speedWeight;
        }
    }
Esempio n. 2
0
    private PatternTimeStamp InitPatternTimeStamp(float delay, float directionRatio)
    {
        PatternCircle circle = new PatternCircle();

        circle.bulletPrefab   = bulletPrefab;
        circle.position       = owner.transform.position;
        circle.count          = 16;
        circle.angle          = 360f;
        circle.directionRatio = directionRatio;

        return(new PatternTimeStamp(delay, circle));
    }
Esempio n. 3
0
    void InitCircleSignal()
    {
        PatternCircle circle = new PatternCircle();

        circle.bulletPrefab = bulletPrefab;
        circle.position     = owner.transform.position;
        circle.count        = 16;
        circle.angle        = 360f;
        circle.distance     = 2f;
        circle.delay        = 0.03f;
        circle.bulletSpeed  = 8f;

        patternTimeStamps.Add(new PatternTimeStamp(0f, circle));

        PatternSignal signal = new PatternSignal();

        signal.owner = owner;

        // circle 패턴의 탄막이 모두 생성된 후 0.1 초 뒤에 발사
        patternTimeStamps.Add(new PatternTimeStamp(circle.count * circle.delay + 0.5f, signal));
    }