Esempio n. 1
0
        private void BossDeath(GameObject gameObject)
        {
            gameObject.RemoveGameObject();
            var death          = new GameObject("BossDeath", gameObject.Centre);
            var deathAnimation = new ScaleAnimationComponent(SpaceGraphics.PlanetAsset[3], 0, 10, 500, animationCompleteEvent: ObjectEvent.RemoveEntity);

            death.AddComponent(deathAnimation);
            ForegroundLayer.AddGameObject(death);
        }
Esempio n. 2
0
        private void PlayerDeath(GameObject gameObject)
        {
            gameObject.RemoveGameObject();
            var death          = new GameObject("Death", gameObject.TopLeft);
            var deathAnimation = new ScaleAnimationComponent(SpaceGraphics.LargeExpolosionAsset[0], 0, 50, 3000, Color.DarkRed, null, ObjectEvent.RemoveEntity);
            var exitLevel      = new ObjectEventComponent(ObjectEvent.RemoveEntity, ExitLevelAction);

            death.AddComponent(deathAnimation);
            death.AddComponent(exitLevel);
            DisplayLayer.AddGameObject(death);
        }
Esempio n. 3
0
        private void MissileCollision(GameObject gameObject)
        {
            var explosionScale   = 7;
            var explosionTexture = SpaceGraphics.LargeExpolosionAsset[0];
            var dimension        = explosionTexture.Width * explosionScale;

            var explosion = new GameObject("Collision", gameObject.TopLeft);
            var animation = new ScaleAnimationComponent(explosionTexture, 0, explosionScale, 100, Color.OrangeRed, null, ObjectEvent.RemoveEntity);
            var boundary  = new BoundaryComponent(null, dimension, dimension, isInvulnerable: true);

            explosion.AddComponent(animation);
            explosion.AddComponent(boundary);

            gameObject.GameLayer.AddGameObject(explosion);
            gameObject.RemoveGameObject();
        }