예제 #1
0
 public ParticlesFire(Vector2f position, Vector2f scale, float speed, int count, int lifetime)
     : base(position, count, speed, lifetime)
 {
     lights = new Light[count];
     for (var i = 0; i < count; ++i)
     {
         lights[i] = new Light(scale, Color.Yellow, LightMode.Flashlight);
         ResetParticle(i);
     }
 }
예제 #2
0
        private Scene PrepareScene(Scene scene)
        {
            var player = scene.GetByID((uint)ObjectID.Player).First();
            var playerScript = new PlayerScript();
            player.BindScript(playerScript);
            player.Lighting.Add(new Light(new Vector2f(2.0f, 2.0f),
                new Color(0xff, 0xff, 0xff, 0xff), LightMode.Backlight));

            var camera = scene.Camera;
            camera.Lock(player);
            camera.BindScript(new CameraScript());

            var turrets = scene.GetByID((uint)ObjectID.Turret);
            foreach (var turret in turrets)
                turret.BindScript(new TurretScript());

            foreach (var obj in scene.Where(x => x.ID != (uint)ObjectID.Player))
            {
                var light = new Light(new Vector2f(0.6f, 0.6f), Color.White, LightMode.Backlight);
                obj.Lighting.Add(light);
            }

            return scene;
        }