Beispiel #1
0
        public override void Draw(SceneGame scene, DrawPass pass)
        {
            var runeBackground = SpriteLoader.Instance.AddSprite("content/magic_death3");
            var runeA          = SpriteLoader.Instance.AddSprite("content/magic_death2");
            var runeB          = SpriteLoader.Instance.AddSprite("content/magic_death");

            if (pass == DrawPass.EffectDeath)
            {
                float fill = Effect.Fill;
                scene.SpriteBatch.Begin(samplerState: SamplerState.PointClamp, blendState: BlendState.Additive, rasterizerState: RasterizerState.CullNone, transformMatrix: scene.WorldTransform, effect: scene.Shader);
                scene.SetupClockBetween(0, fill * MathHelper.TwoPi);
                scene.DrawSprite(runeA, 0, Position - runeA.Middle, SpriteEffects.None, 0);
                scene.SpriteBatch.End();
                scene.SpriteBatch.Begin(samplerState: SamplerState.PointClamp, blendState: BlendState.Additive, rasterizerState: RasterizerState.CullNone, transformMatrix: scene.WorldTransform, effect: scene.Shader);
                scene.SetupClockBetween(fill * MathHelper.TwoPi, MathHelper.TwoPi);
                scene.DrawSprite(runeB, 0, Position - runeB.Middle, SpriteEffects.None, 0);
                scene.SpriteBatch.End();
            }
            else
            {
                scene.DrawSprite(runeBackground, 0, Position - runeBackground.Middle, SpriteEffects.None, 0);
            }
        }