示例#1
0
    private void FireNewBolt()
    {
        float nextDecay      = GetRandomTime(decay, decayRandomize);
        Bolt  oldestBolt     = bolts[0];
        float oldestBoltTime = 0f;

        foreach (Bolt bolt in bolts)
        {
            if (bolt.decayed)
            {
                bolt.Fire(nextDecay);
                return;
            }
            else if (bolt.time > oldestBoltTime)
            {
                oldestBolt     = bolt;
                oldestBoltTime = bolt.time;
            }
        }

        //if no decayed bolts exist, refresh the oldest one
        oldestBolt.Fire(nextDecay);
    }