예제 #1
0
        System.Collections.IEnumerator morph()
        {
            yield return(TimeSpan.FromSeconds(MorphTime));

            /*else if (_physics.Form == SpiritFrom.SF_SPIRIT)
             *  _physics.ChangeForm(SpiritFrom.SF_BALL);*/
            if (_isDisposed == false)
            {
                _manager.Unlock();
                SendMessage("UnlockMovement");
            }
        }
예제 #2
0
        private System.Collections.IEnumerator finishedDecay()
        {
            yield return(TimeSpan.FromSeconds(DrainSpeed));

            if (_drainerStats != null && _ownerStats != null)
            {
                _drainerStats.Health += _ownerStats.Health;
            }

            _manager.Unlock();

            // "Pop out" drainer.
            ResetToDrainer();

            _drainer.SendMessage("PlayCinematicAnimation", new object[] { "ConsumeEnergy" });

            // Remove drained.
            GameObject.Dispose();
        }