Esempio n. 1
0
    void SpawnBasic(ShipSettings setts, Vector3 initialPos, Vector2 bounds)
    {
        GameObject newEnemy = Pool2.GetGameObjectFromPool();

        if (newEnemy)
        {
            EnemyBasic enemy = newEnemy.GetComponent <EnemyBasic>();
            if (!enemy)
            {
                enemy = newEnemy.AddComponent <EnemyBasic>();
            }
            BulletSettings bSetts = new BulletSettings();
            bSetts.Damage          = 10;
            bSetts.Speed           = 5;
            bSetts.Type            = BulletType.LINEAR;
            setts.Bullet           = bullet;
            setts.BulletParameters = bSetts;
            setts.HitPoints        = 10;
            setts.MovementSpeed    = 10;
            setts.RateOfFire       = 0.5f;

            enemy.InitializeCurve(initialPos, bounds);
            enemy.Initialize(setts);
        }
    }
Esempio n. 2
0
 public void Initialize(BulletSettings settings)
 {
     Settings      = new BulletSettings();
     Settings      = settings;
     LifeSpanClock = 0;
     if (GetComponent <Rigidbody>())
     {
         GetComponent <Rigidbody>().velocity        = Vector3.zero;
         GetComponent <Rigidbody>().angularVelocity = Vector3.zero;
     }
 }
Esempio n. 3
0
    void FixedUpdate()
    {
        Clock += Time.deltaTime;
        if (Clock >= SpawnRate)
        {
            float scale = 10000;
            median = Analyser.GetMedianOfSpectrum() * scale;
            foreach (float frequency in FrequencyList)
            {
                ShipSettings setts = new ShipSettings();
                //lows
                float   currentFreq = frequency;
                Vector3 initial     = GetARandomTreePos();
                initial.x    = Analyser.GetFrequencyVolume(frequency) * scale / 10;
                frequencyNow = initial.x;
                if (initial.x > 15)
                {
                    BulletSettings bSetts = new BulletSettings();
                    bSetts.Damage          = 5;
                    bSetts.Speed           = 3;
                    bSetts.Type            = BulletType.LINEAR;
                    setts.Bullet           = bullet;
                    setts.BulletParameters = bSetts;
                    setts.HitPoints        = 50;
                    setts.MovementSpeed    = 1;
                    setts.RateOfFire       = 0.5f;
                    SpawnBasic(setts, initial, GetEmiterBounds());
                }
                //mids
                currentFreq *= 3;
                setts        = new ShipSettings();
                initial      = GetARandomTreePos();
                initial.x    = Analyser.GetFrequencyVolume(frequency) * scale / 10;
                if (initial.x > 30)
                {
                    BulletSettings bSetts = new BulletSettings();
                    bSetts.Damage          = 5;
                    bSetts.Speed           = 3;
                    bSetts.Type            = BulletType.LINEAR;
                    setts.Bullet           = bullet;
                    setts.BulletParameters = bSetts;
                    setts.HitPoints        = 10;
                    setts.MovementSpeed    = 15;
                    setts.RateOfFire       = 0.5f;
                    SpawnBasic(setts, initial, GetEmiterBounds());
                }
            }

            Clock = 0;
        }
    }