Exemple #1
0
        public override void DrawArcObject(SceneGame scene, DrawPass pass)
        {
            var spriteWraith      = SpriteLoader.Instance.AddSprite("content/wraith");
            var spriteWraithTrail = SpriteLoader.Instance.AddSprite("content/wraith_trail");
            var tile     = Curio.GetMainTile();
            var startPos = Source;
            var endPos   = tile.VisualTarget;

            Vector2 curve(float slide)
            {
                var a = Vector2.Lerp(startPos, startPos + VelocityStart, (float)LerpHelper.Quadratic(0, 1, slide));
                var b = Vector2.Lerp(endPos + VelocityEnd, endPos, (float)LerpHelper.Quadratic(0, 1, slide));

                return(Vector2.Lerp(a, b, (float)LerpHelper.Quadratic(0, 1, slide)));
            }

            Color colorStart = new Color(215, 63, 36);
            Color colorEnd   = new Color(118, 39, 102);

            if (pass == DrawPass.Effect)
            {
                int segments = 5;
                for (int i = 0; i < segments; i++)
                {
                    float   trailSlide = (float)i / (segments - 1);
                    float   trailPos   = (float)LerpHelper.QuadraticOut(Frame.Slide - 0.05f, Frame.Slide, trailSlide);
                    Vector2 pos        = curve(trailPos);
                    scene.DrawSpriteExt(spriteWraithTrail, 0, pos - spriteWraithTrail.Middle, spriteWraithTrail.Middle, 0, Vector2.One, SpriteEffects.None, Color.Lerp(colorStart.WithAlpha(0), colorEnd, trailSlide), 0);
                }
            }
            if (pass == DrawPass.EffectAdditive)
            {
                scene.DrawSpriteExt(spriteWraith, 0, curve(Frame.Slide) - spriteWraith.Middle, spriteWraith.Middle, 0, Vector2.One, SpriteEffects.None, colorStart, 0);
            }
        }
Exemple #2
0
        private void DrawWing(SceneGame scene, SpriteReference sprite, Color color, int segments, float directionMod, float distanceMod, Microsoft.Xna.Framework.Graphics.SpriteEffects mirror)
        {
            //new Color(244, 211, 23)
            //SpriteReference hand = SpriteLoader.Instance.AddSprite("content/hand");
            int index = 0;

            for (int i = 1; i <= segments; i++)
            {
                int     subSegments = 9;
                float   angle       = directionMod * MathHelper.ToRadians(90 - i * 5);
                float   distance    = (float)LerpHelper.Quadratic(10, distanceMod * 50, (float)i / segments);
                Vector2 pivot       = VisualPosition() + Util.AngleToVector(angle) * distance;
                scene.DrawSpriteExt(sprite, 0, pivot + GetHandOffset(index), sprite.Middle, angle + directionMod * MathHelper.PiOver4, Vector2.One, mirror, color, 0);
                index++;
                for (int e = 0; e <= subSegments; e++)
                {
                    float subSegmentSlide = (float)e / (subSegments + 1);
                    float subAngle        = angle - directionMod * MathHelper.ToRadians(i * 2);
                    float subDistance     = distanceMod * e * 5;
                    float visAngle        = subAngle + directionMod * MathHelper.PiOver2 + directionMod * MathHelper.ToRadians(i * -10);
                    scene.DrawSpriteExt(sprite, 0, pivot + GetHandOffset(index) + Util.AngleToVector(subAngle) * subDistance, sprite.Middle, visAngle, Vector2.One, mirror, color * MathHelper.Lerp(0.3f, 1, subSegmentSlide), 0);
                    index++;
                }
            }
        }
        public virtual void DrawMace(SceneGame scene, Vector2 pos, Vector2 offset, int chains)
        {
            var mace  = SpriteLoader.Instance.AddSprite("content/mace");
            var chain = SpriteLoader.Instance.AddSprite("content/mace_chain");

            for (int i = 0; i < chains; i++)
            {
                scene.DrawSpriteExt(chain, 0, pos + offset * ((float)i / chains) - chain.Middle, chain.Middle, 0, new Vector2(1), SpriteEffects.None, Color.White, 0);
            }
            scene.DrawSpriteExt(mace, 0, pos + offset - mace.Middle, mace.Middle, 0, new Vector2(1), SpriteEffects.None, Color.White, 0);
        }
Exemple #4
0
        public override void Draw(ICurio curio, SceneGame scene, DrawPass pass)
        {
            var spriteHelmet      = SpriteLoader.Instance.AddSprite("content/nemesis_helmet");
            var spriteBodyForward = SpriteLoader.Instance.AddSprite("content/nemesis_forward");
            var spriteBodyBack    = SpriteLoader.Instance.AddSprite("content/nemesis_back");
            var spriteWings       = SpriteLoader.Instance.AddSprite("content/nemesis_wings");
            var spriteParry       = SpriteLoader.Instance.AddSprite("content/nemesis_parry");

            var alive   = curio.GetBehavior <BehaviorAlive>();
            var nemesis = curio.GetBehavior <BehaviorNemesis>();

            if (alive.Armor > 0)
            {
                spriteBodyForward = SpriteLoader.Instance.AddSprite("content/nemesis_forward_armor");
                spriteBodyBack    = SpriteLoader.Instance.AddSprite("content/nemesis_back_armor");
            }

            var center    = curio.GetVisualPosition() + new Vector2(8, 8);
            var offset    = curio.GetOffset();
            var color     = curio.GetColor();
            var angleBody = curio.GetVisualAngle();

            scene.PushSpriteBatch(shader: scene.Shader, shaderSetup: (transform, projection) =>
            {
                scene.SetupColorMatrix(color);
            });
            SpriteReference spriteBody;
            float           headPos = MathHelper.Lerp(-4, 4, nemesis.ForwardBack);

            if (nemesis.ForwardBack > 0.5f)
            {
                spriteBody = spriteBodyForward;
            }
            else
            {
                spriteBody = spriteBodyBack;
            }
            scene.DrawSpriteExt(spriteBody, 0, center + offset - spriteBody.Middle, spriteBody.Middle, angleBody, new Vector2(1), SpriteEffects.None, Color.White, 0);
            scene.DrawSpriteExt(spriteHelmet, 0, center + offset + Util.AngleToVector(angleBody) * headPos - spriteHelmet.Middle, spriteHelmet.Middle, angleBody, new Vector2(1), SpriteEffects.None, Color.White, 0);
            if (nemesis.State == NemesisState.Parry)
            {
                scene.DrawSpriteExt(spriteParry, 0, center + offset - spriteParry.Middle, spriteParry.Middle, angleBody, new Vector2(1), SpriteEffects.None, Color.White, 0);
            }
            if (nemesis.ForwardBack > 0.5f && nemesis.WingsOpen > 0f)
            {
                Color wingColor = Color.Lerp(Color.Red, Color.Black, nemesis.WingsOpen);
                scene.DrawSpriteExt(spriteWings, 0, center + offset - spriteWings.Middle, spriteWings.Middle, angleBody, new Vector2(1), SpriteEffects.None, wingColor, 0);
            }

            scene.PopSpriteBatch();
        }
Exemple #5
0
        public override void Draw(SceneGame scene, DrawPass pass)
        {
            if (Sprite == null)
            {
                return;
            }

            if (ColorMatrix.HasValue)
            {
                scene.PushSpriteBatch(shaderSetup: (matrix, projection) =>
                {
                    scene.SetupColorMatrix(ColorMatrix.Value, matrix, projection);
                });
            }

            Vector2 nextPosition = Position;

            int i = 0;

            foreach (var trailPos in TrailPositions)
            {
                Vector2 currentPosition = Vector2.Lerp(trailPos, nextPosition, 0.5f);
                float   lerpSlide       = Util.ReverseLerp(Slide, 0.5f, 1.0f);
                Color   color           = Color.Lerp(Color, ColorEnd, (float)i / (TrailPositions.Count - 1));
                color = Color.Lerp(color, Color.TransparentBlack, (float)ColorLerp(0, 1, lerpSlide));
                scene.DrawSpriteExt(Sprite, SubImage, currentPosition - Sprite.Middle, Sprite.Middle, Angle, new Vector2(Scale), Mirror, color, 0);
                nextPosition = currentPosition;
                i++;
            }

            if (ColorMatrix.HasValue)
            {
                scene.PopSpriteBatch();
            }
        }
Exemple #6
0
        public override void Draw(SceneGame scene, DrawPass pass)
        {
            var   flash = SpriteLoader.Instance.AddSprite("content/flash");
            float size  = MathHelper.Lerp(1.0f, 0.0f, Frame / FrameEnd);

            scene.DrawSpriteExt(flash, 0, Position - flash.Middle, flash.Middle, Frame * 0.1f, new Vector2(size), SpriteEffects.None, Color.White, 0);
        }
Exemple #7
0
        public override void Draw(SceneGame scene, DrawPass pass)
        {
            var fireBig = SpriteLoader.Instance.AddSprite("content/fire_big");
            var middle  = new Vector2(8, 12);

            scene.DrawSpriteExt(fireBig, scene.AnimationFrame(fireBig, Frame, FrameEnd), Position - middle, middle, Angle, SpriteEffects.None, 0);
        }
Exemple #8
0
        private void DrawMace(ICurio curio, SceneGame scene, DrawPass pass)
        {
            var center    = curio.GetVisualPosition() + new Vector2(8, 8);
            var offset    = curio.GetOffset();
            var angleBody = curio.GetVisualAngle();
            var mace      = curio.GetBehavior <BehaviorMace>();

            if (mace != null && (!mace.Upswing.Done || !mace.MaceReturn.Done))
            {
                var weaponAngle    = (float)LerpHelper.QuadraticOut(0, 1, mace.Upswing.Slide);
                var weaponScale    = (float)LerpHelper.QuadraticOut(0.5, 1.0, mace.Upswing.Slide);
                var weaponStartPos = Util.AngleToVector(angleBody + MathHelper.PiOver4 * 2) * 8;
                var weaponEndPos   = Util.AngleToVector(angleBody + MathHelper.PiOver4 * 3) * 10;
                var weaponPos      = center + offset + Vector2.Lerp(weaponStartPos, weaponEndPos, (float)LerpHelper.QuadraticOut(0, 1, mace.Upswing.Slide));
                scene.DrawSpriteExt(SpriteWeapon, 0, weaponPos - SpriteWeapon.Middle, SpriteWeapon.Middle, angleBody + weaponAngle, new Vector2(weaponScale), SpriteEffects.None, Color.White, 0);
                if (!mace.Upswing.Done)
                {
                    mace.DrawMace(scene, weaponPos, Util.AngleToVector(mace.UpswingAngle) * (float)LerpHelper.QuadraticOut(0, 12, mace.MaceReturn.Slide), 2);
                }
                if (!mace.MaceReturn.Done)
                {
                    var maceOffset = mace.MacePosition - weaponPos;
                    mace.DrawMace(scene, weaponPos, Vector2.Lerp(maceOffset, Vector2.Zero, (float)LerpHelper.QuadraticOut(0, 1, mace.MaceReturn.Slide)), 8);
                }
            }
        }
Exemple #9
0
        public override void Draw(SceneGame scene, DrawPass pass)
        {
            var wallGun     = SpriteLoader.Instance.AddSprite("content/wall_gun");
            var wallGunBase = SpriteLoader.Instance.AddSprite("content/wall_gun_base");

            scene.DrawSpriteExt(wallGun, 0, Position - wallGun.Middle + VisualOffset(), wallGun.Middle, Angle, SpriteEffects.None, 1);
        }
Exemple #10
0
        public override void Draw(SceneGame scene, DrawPass pass)
        {
            var fireball = SpriteLoader.Instance.AddSprite("content/fireball_big");
            var middle   = new Vector2(8, 4);

            scene.DrawSpriteExt(fireball, (int)Frame, Position - middle, middle, Util.VectorToAngle(Velocity), SpriteEffects.None, 0);
        }
Exemple #11
0
        public override void Draw(SceneGame scene, DrawPass pass)
        {
            var   statusStunned = SpriteLoader.Instance.AddSprite("content/status_stunned");
            float radius        = 8;
            float circleSpeed   = 0.15f;
            var   offset        = new Vector2(radius * (float)Math.Sin(Frame * Math.PI * circleSpeed), (radius / 2) * (float)Math.Cos(Frame * Math.PI * circleSpeed));

            scene.DrawSpriteExt(statusStunned, (int)(Frame * 0.3f), HeadPosition + offset - statusStunned.Middle, statusStunned.Middle, 0, SpriteEffects.None, 0);
        }
Exemple #12
0
        public override void Draw(SceneGame scene, DrawPass pass)
        {
            var bombsigil = SpriteLoader.Instance.AddSprite("content/orb_orange_firesigil");

            for (int i = 0; i < Effect.Stacks; i++)
            {
                scene.DrawSpriteExt(bombsigil, 0, Position + 16 * AngleToVector(((float)i / Effect.Stacks) * MathHelper.TwoPi) - bombsigil.Middle, bombsigil.Middle, ((float)i / Effect.Stacks) * MathHelper.TwoPi, SpriteEffects.None, 0);
            }
        }
        public override void Draw(SceneGame scene, DrawPass pass)
        {
            var punchStraight = SpriteLoader.Instance.AddSprite("content/punch");
            var punchAngle    = Angle;

            if (Mirror.HasFlag(SpriteEffects.FlipHorizontally))
            {
                punchAngle = -punchAngle;
            }
            scene.DrawSpriteExt(punchStraight, scene.AnimationFrame(punchStraight, Frame, FrameEnd), Position - punchStraight.Middle, punchStraight.Middle, punchAngle, Mirror, 0);
        }
        public override void Draw(SceneGame scene, DrawPass pass)
        {
            var   statusSlowed = SpriteLoader.Instance.AddSprite("content/status_slowed");
            float slide        = (Frame * 0.01f) % 1;
            float angle        = 0;

            if (slide < 0.1f)
            {
                angle = MathHelper.Lerp(0, MathHelper.Pi, slide / 0.1f);
            }
            scene.DrawSpriteExt(statusSlowed, 0, HeadPosition - statusSlowed.Middle, statusSlowed.Middle, angle, SpriteEffects.None, 0);
        }
        public void Draw(SceneGame scene, DrawPass pass)
        {
            var heart   = SpriteLoader.Instance.AddSprite("content/heart");
            var basePos = GetBase();
            var tipPos  = GetTip();

            scene.FlushSpriteBatch();
            scene.DrawGrappleLine(basePos, tipPos, VisualAmplitude(), scene.Frame * 0.1f, 8, 100, LerpHelper.QuarticOut, new Color(255, 128, 128), scene.NonPremultiplied);
            if (HasHeart)
            {
                scene.DrawSpriteExt(heart, 0, tipPos - heart.Middle, heart.Middle, 0, SpriteEffects.None, 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");

            float lerp  = (float)LerpHelper.CubicOut(1, 0, Frame / FrameEnd);
            Color color = new Color(1, 1, 1, lerp);

            if (pass == DrawPass.EffectDeath)
            {
                scene.SpriteBatch.Begin(samplerState: SamplerState.PointClamp, blendState: BlendState.Additive, rasterizerState: RasterizerState.CullNone, transformMatrix: scene.WorldTransform);
                scene.DrawSpriteExt(runeA, 0, Position - runeA.Middle, runeA.Middle, 0, Vector2.One, SpriteEffects.None, color, 0);
                scene.DrawSpriteExt(runeA, 0, Position - runeA.Middle, runeA.Middle, 0, Vector2.One, SpriteEffects.None, color, 0);
                scene.DrawSpriteExt(runeB, 0, Position - runeB.Middle, runeB.Middle, 0, Vector2.One, SpriteEffects.None, color, 0);
                scene.SpriteBatch.End();
            }
            else
            {
                scene.DrawSpriteExt(runeBackground, 0, Position - runeBackground.Middle, runeBackground.Middle, 0, Vector2.One, SpriteEffects.None, color, 0);
            }
        }
        public override void Draw(ICurio curio, SceneGame scene, DrawPass pass)
        {
            var center    = curio.GetVisualPosition() + new Vector2(8, 8);
            var offset    = curio.GetOffset();
            var color     = curio.GetColor();
            var angleBody = curio.GetVisualAngle();

            scene.PushSpriteBatch(shader: scene.Shader, shaderSetup: (transform, projection) =>
            {
                scene.SetupColorMatrix(color);
            });
            scene.DrawSpriteExt(Sprite, 0, center + offset - Sprite.Middle, Sprite.Middle, angleBody, new Vector2(1), SpriteEffects.None, Color.White, 0);
            scene.PopSpriteBatch();
        }
Exemple #18
0
        protected void DrawWeaponAsIcon(SceneGame scene, SpriteReference sprite, int frame, Vector2 position)
        {
            Vector2 scale;

            if (sprite.Width >= 16)
            {
                scale = new Vector2(14 * Sqrt2 / sprite.Width);
            }
            else
            {
                scale = Vector2.One;
            }
            scene.DrawSpriteExt(sprite, frame, position - sprite.Middle, sprite.Middle, MathHelper.ToRadians(-45), scale, SpriteEffects.None, Color.White, 0);
        }
Exemple #19
0
        private void DrawDagger(ICurio curio, SceneGame scene, DrawPass pass)
        {
            var center    = curio.GetVisualPosition() + new Vector2(8, 8);
            var offset    = curio.GetOffset();
            var angleBody = curio.GetVisualAngle();
            var dagger    = curio.GetBehavior <BehaviorDagger>();

            if (dagger != null && !dagger.Upswing.Done)
            {
                var weaponAngle    = (float)LerpHelper.QuadraticOut(0, 1, dagger.Upswing.Slide);
                var weaponScale    = (float)LerpHelper.QuadraticOut(0.5, 1.0, dagger.Upswing.Slide);
                var weaponStartPos = Util.AngleToVector(angleBody + MathHelper.PiOver4 * 2) * 8;
                var weaponEndPos   = Util.AngleToVector(angleBody + MathHelper.PiOver4 * 3) * 10;
                var weaponPos      = center + offset + Vector2.Lerp(weaponStartPos, weaponEndPos, (float)LerpHelper.QuadraticOut(0, 1, dagger.Upswing.Slide));
                scene.DrawSpriteExt(SpriteWeapon, 0, weaponPos - SpriteWeapon.Middle, SpriteWeapon.Middle, angleBody + weaponAngle, new Vector2(weaponScale), SpriteEffects.None, Color.White, 0);
            }
        }
Exemple #20
0
        public override void Draw(ICurio curio, SceneGame scene, DrawPass pass)
        {
            var spriteIdle = SpriteLoader.Instance.AddSprite("content/rat_idle");
            var spriteMove = SpriteLoader.Instance.AddSprite("content/rat_move");
            var center     = curio.GetVisualPosition() + new Vector2(8, 8);
            var offset     = curio.GetOffset();
            var color      = curio.GetColor();
            var angleBody  = curio.GetVisualAngle();
            var pathfinder = curio.GetBehavior <BehaviorPathfinder>();

            scene.PushSpriteBatch(shader: scene.Shader, shaderSetup: (transform, projection) =>
            {
                scene.SetupColorMatrix(color);
            });
            var spriteBody = pathfinder.HasPath ? spriteMove : spriteIdle;

            scene.DrawSpriteExt(spriteBody, 0, center + offset - spriteBody.Middle, spriteBody.Middle, angleBody, new Vector2(1), SpriteEffects.None, Color.White, 0);
            scene.PopSpriteBatch();
        }
Exemple #21
0
        public override void Draw(SceneGame scene, DrawPass pass)
        {
            if (Sprite == null)
            {
                return;
            }

            if (ColorMatrix.HasValue)
            {
                scene.PushSpriteBatch(shaderSetup: (matrix, projection) =>
                {
                    scene.SetupColorMatrix(ColorMatrix.Value, matrix, projection);
                });
            }
            scene.DrawSpriteExt(Sprite, SubImage, Position - Sprite.Middle, Sprite.Middle, Angle, new Vector2(Scale), Mirror, Color, 0);
            if (ColorMatrix.HasValue)
            {
                scene.PopSpriteBatch();
            }
        }
Exemple #22
0
        public override void Draw(ICurio curio, SceneGame scene, DrawPass pass)
        {
            var body  = SpriteBody;
            var alive = curio.GetBehavior <BehaviorAlive>();

            if (alive.Armor > 0)
            {
                body = SpriteLoader.Instance.AddSprite($"{SpriteBody.FileName}_armor");
            }
            var center    = curio.GetVisualPosition() + new Vector2(8, 8);
            var offset    = curio.GetOffset();
            var color     = curio.GetColor();
            var angleBody = curio.GetVisualAngle();

            scene.PushSpriteBatch(shader: scene.Shader, shaderSetup: (transform, projection) =>
            {
                scene.SetupColorMatrix(color);
            });
            scene.DrawSpriteExt(body, 0, center + offset - SpriteBody.Middle, SpriteBody.Middle, angleBody, new Vector2(1), SpriteEffects.None, Color.White, 0);
            DrawDagger(curio, scene, pass);
            DrawMace(curio, scene, pass);
            scene.PopSpriteBatch();
        }
        public override void Draw(ICurio curio, SceneGame scene, DrawPass pass)
        {
            var spriteHead   = SpriteLoader.Instance.AddSprite("content/lich_head");
            var spriteBody   = SpriteLoader.Instance.AddSprite("content/lich_body");
            var spriteHeart  = SpriteLoader.Instance.AddSprite("content/lich_heart");
            var spriteWeapon = SpriteLoader.Instance.AddSprite("content/lich_weapon");

            var center    = curio.GetVisualPosition() + new Vector2(8, 8);
            var offset    = curio.GetOffset();
            var color     = curio.GetColor();
            var angleBody = curio.GetVisualAngle();
            var lich      = curio.GetBehavior <BehaviorLich>();

            scene.PushSpriteBatch(shader: scene.Shader, shaderSetup: (transform, projection) =>
            {
                scene.SetupColorMatrix(color);
            });

            if (pass == DrawPass.EffectLow)
            {
                scene.DrawSpriteExt(spriteBody, 0, center - spriteBody.Middle, spriteBody.Middle, scene.Frame * 0.1f, new Vector2(1), SpriteEffects.None, Color.Red, 0);
                scene.DrawSpriteExt(spriteBody, 0, center - spriteBody.Middle, spriteBody.Middle, scene.Frame * 0.2f, new Vector2(0.8f), SpriteEffects.None, Color.DarkRed, 0);

                var weaponMiddle = new Vector2(spriteWeapon.Width / 2, spriteWeapon.Height * 2 / 3);
                var weaponOffset = Util.AngleToVector(lich.SwordAngle);
                scene.DrawSpriteExt(spriteWeapon, 0, center + Util.AngleToVector(angleBody) + weaponOffset * 8 - weaponMiddle, weaponMiddle, lich.SwordAngle, new Vector2(lich.SwordScale), SpriteEffects.None, Color.White, 0);

                scene.DrawSpriteExt(spriteBody, 0, center - spriteBody.Middle, spriteBody.Middle, scene.Frame * 0.3f, new Vector2(0.6f), SpriteEffects.None, Color.Black, 0);
            }
            if (pass == DrawPass.Creature)
            {
                if (!curio.IsHeartless())
                {
                    scene.DrawSpriteExt(spriteHeart, 0, center + offset - spriteHeart.Middle, spriteHeart.Middle, 0, new Vector2(1), SpriteEffects.None, Color.White, 0);
                }
            }
            if (pass == DrawPass.Effect)
            {
                var headOffset = Util.AngleToVector(angleBody) * -8;
                scene.DrawSpriteExt(spriteHead, 0, center + headOffset + offset - spriteHead.Middle, spriteHead.Middle, angleBody, new Vector2(1), SpriteEffects.None, Color.White, 0);
            }

            scene.PopSpriteBatch();
        }
Exemple #24
0
        public override void Draw(SceneGame scene, DrawPass pass)
        {
            var knife = SpriteLoader.Instance.AddSprite("content/knife");

            scene.DrawSpriteExt(knife, 0, Position - knife.Middle, knife.Middle, Rotation * Frame, SpriteEffects.None, 0);
        }
        public override void Draw(SceneGame scene, DrawPass pass)
        {
            var crit = SpriteLoader.Instance.AddSprite("content/crit");

            scene.DrawSpriteExt(crit, scene.AnimationFrame(crit, Frame, FrameEnd), Position - crit.Middle, crit.Middle, Angle, SpriteEffects.None, 0);
        }
Exemple #26
0
        public override void Draw(SceneGame scene, DrawPass pass)
        {
            var wallBreak = SpriteLoader.Instance.AddSprite("content/rockfall_end");

            scene.DrawSpriteExt(wallBreak, scene.AnimationFrame(wallBreak, Frame, FrameEnd), Position - wallBreak.Middle, wallBreak.Middle, 0, Vector2.One, SpriteEffects.None, Color, 0);
        }
        public override void Draw(SceneGame scene, DrawPass pass)
        {
            var sawsprite = SpriteLoader.Instance.AddSprite("content/orb_red_saw");

            scene.DrawSpriteExt(sawsprite, 0, Position - sawsprite.Middle, sawsprite.Middle, Angle, SpriteEffects.None, 0);
        }
Exemple #28
0
        public override void Draw(SceneGame scene, DrawPass pass)
        {
            var statusPoisoned = SpriteLoader.Instance.AddSprite("content/status_poisoned");

            scene.DrawSpriteExt(statusPoisoned, (int)(Frame * 0.25f), HeadPosition - statusPoisoned.Middle, statusPoisoned.Middle, 0, SpriteEffects.None, 0);
        }
Exemple #29
0
        public override void Draw(SceneGame scene, DrawPass pass)
        {
            var snakeHeadOpen = SpriteLoader.Instance.AddSprite("content/snake_open");

            scene.DrawSpriteExt(snakeHeadOpen, 0, Position - snakeHeadOpen.Middle, snakeHeadOpen.Middle, Rotation * Frame, Mirror, 0);
        }
        public override void Draw(SceneGame scene, DrawPass pass)
        {
            var bloodSpatter = SpriteLoader.Instance.AddSprite("content/blood_spatter");

            scene.DrawSpriteExt(bloodSpatter, scene.AnimationFrame(bloodSpatter, Frame, FrameEnd), Position - bloodSpatter.Middle, bloodSpatter.Middle, Angle, SpriteEffects.None, 0);
        }