Exemplo n.º 1
0
 void Start()
 {
     elapsedTime = 0;
     nextSpawnTime = 0;
     parameters = null;
     activeEnemies = new List<Transform>();
 }
Exemplo n.º 2
0
 void Start()
 {
     elapsedTime   = 0;
     nextSpawnTime = 0;
     parameters    = null;
     activeEnemies = new List <Transform>();
 }
 public static float[] ToFloat(WaveParameters[] items)
 {
     var result = new float[items.Length * 4];
     for (int i = 0; i < items.Length; i++)
     {
         result[i * 4 + 0] = items[i].speed;
         result[i * 4 + 1] = items[i].amplitude;
         result[i * 4 + 2] = items[i].wavelength;
         result[i * 4 + 3] = items[i].steepness;
     }
     return result;
 }
Exemplo n.º 4
0
 protected virtual void ClearWaveAnimator()
 {
     waveParams = null;
     if (waveAnimator != null)
     {
         waveAnimator.Clear();
         waveAnimator = null;
     }
     if (waveEmitterObject != null)
     {
         Destroy(waveEmitterObject);
         waveEmitterObject = null;
     }
     waveEmitterIndex = -1;
 }
Exemplo n.º 5
0
    public void StartWave(WaveParameters waveToStart)
    {
        List <SpawnPointEnemyCouple> enemiesToSpawn = waveToStart.enemiesToSpawn;

        remainingNumberOfTurnsToWait = waveToStart.numberOfWaitTurnAfterSpawned;

        foreach (SpawnPointEnemyCouple couple in enemiesToSpawn)
        {
            if (couple.spawnPoint != null)
            {
                couple.spawnPoint.StartSpawning(couple.enemyType, spawnedEnemiesAutoDetectPlayer, couple.attachedDiscType);
            }
        }

        EndWaveTurn();
    }
Exemplo n.º 6
0
    protected virtual void ExtractWaveAnimator(int modelIndex)
    {
        Vector3    waveEmitterLocalPosition = Vector3.zero;
        GameObject waveEmitterModel         = null;

        ClearWaveAnimator();
        if (waveEmitterModels != null)
        {
            if (waveEmitterModels.Length > modelIndex)
            {
                waveEmitterModel = waveEmitterModels[modelIndex];
                if (waveEmitterModel != null)
                {
                    waveEmitterObject = Instantiate(waveEmitterModel, Vector3.zero, Quaternion.identity) as GameObject;
                    if (waveEmitterObject != null)
                    {
                        waveAnimator = waveEmitterObject.GetComponent <SimpleAnimator>();
                        if (waveAnimator != null)
                        {
                            waveParams = waveEmitterObject.GetComponent <WaveParameters>();
                            if (waveParams != null)
                            {
                                waveEmitterObject.transform.SetParent(transform, false);
                                waveEmitterLocalPosition.z = waveEmitterExtraDepth;
                                waveEmitterObject.transform.localPosition = waveEmitterLocalPosition;
                                waveEmitterIndex = modelIndex;
                            }
                        }
                        if (waveParams == null)
                        {
                            ClearWaveAnimator();
                        }
                    }
                }
            }
        }
    }
Exemplo n.º 7
0
    protected override void Awake()
    {
        itemAnimator      = null;
        fireController    = null;
        waveEmitterIndex  = -1;
        waveEmitterObject = null;
        waveParams        = null;
        waveAnimator      = null;

        /*halmeida - set the animator to null because the Awake of the base class will call Clear(), and
         * the redefinition of Clear() in this class asks if the animator is null.*/
        base.Awake();
        triggerSourceComponent = null;
        triggerComponents      = null;
        triggeringComponents   = null;
        appearanceLevel        = APPEARANCE_LEVEL_FIRST;
        itemCollider           = GetComponent <Collider2D>();
        ExtractAnimators();
        originalScale = gameObject.transform.localScale;
        shrinkSpeed   = SHRINK_SPEED;
        shrinkAccel   = SHRINK_ACCEL;
        over          = false;
        obtainable    = false;
        effectType    = ItemData.EffectType.Money;
        effectSpeed   = 0f;
        if (itemData != null)
        {
            obtainable  = itemData.obtainable;
            effectType  = itemData.effectType;
            effectSpeed = itemData.effectValue;
        }
        scaleChangeDuration = 0f;
        scaleChangeElapsed  = 0f;
        startScale          = originalScale;
        targetScale         = originalScale;
        accumulatedEffect   = 0f;
    }
Exemplo n.º 8
0
 public void StartWave(WaveParameters parameters)
 {
     this.parameters = parameters;
     generatedCount = 0;
     activeEnemies.Clear();
 }
Exemplo n.º 9
0
 public void StartWave(WaveParameters parameters)
 {
     this.parameters = parameters;
     generatedCount  = 0;
     activeEnemies.Clear();
 }