public override void Draw(Combat.PaletteFx palettefx) { Drawing.Sprite sprite = SpriteManager.GetSprite(AnimationManager.CurrentElement.SpriteId); if (sprite == null) { return; } Point tilestart; Point tileend; GetTileLength(sprite.Size, out tilestart, out tileend); Video.DrawState drawstate = SpriteManager.DrawState; drawstate.Reset(); drawstate.Blending = Transparency; drawstate.Set(sprite); drawstate.AddData(CurrentLocation, null); if (palettefx != null) { palettefx.SetShader(drawstate.ShaderParameters); } drawstate.Use(); }
public override void Draw(Combat.PaletteFx palettefx) { Point tilestart; Point tileend; GetTileLength(Sprite.Size, out tilestart, out tileend); Video.DrawState drawstate = SpriteManager.DrawState; drawstate.Reset(); drawstate.Blending = Transparency; drawstate.ScissorRectangle = DrawRect; drawstate.Set(Sprite); for (Int32 y = tilestart.Y; y != tileend.Y; ++y) { for (Int32 x = tilestart.X; x != tileend.X; ++x) { Vector2 adjustment = (Vector2)(Sprite.Size + TilingSpacing) * new Vector2(x, y); Vector2 location = CurrentLocation + adjustment; drawstate.AddData(location, null); } } if (palettefx != null) { palettefx.SetShader(drawstate.ShaderParameters); } drawstate.Use(); }
/// <summary> /// Draws all visible backgrounds in a given layer that are a part of this collection using the given palette information. /// </summary> /// <param name="layer">The layer of backgrounds to draw.</param> /// <param name="palettefx">The palette information used in drawing.</param> public void Draw(BackgroundLayer layer, Combat.PaletteFx palettefx) { foreach (var background in this) { if (background.Layer == layer && background.IsVisible) { background.Draw(palettefx); } } }
public override void Run(Combat.Character character) { Int32 time = EvaluationHelper.AsInt32(character, Time, -2); Vector3 paladd = EvaluationHelper.AsVector3(character, PaletteColorAdd, new Vector3(0, 0, 0)); Vector3 palmul = EvaluationHelper.AsVector3(character, PaletteColorMultiply, new Vector3(255, 255, 255)); Vector4 sinadd = EvaluationHelper.AsVector4(character, PaletteColorSineAdd, new Vector4(0, 0, 0, 1)); Boolean invert = EvaluationHelper.AsBoolean(character, PaletteColorInversion, false); Int32 basecolor = EvaluationHelper.AsInt32(character, PaletteColor, 255); if (time < -1) { return; } Combat.PaletteFx palfx = character.Engine.Stage.PaletteFx; palfx.Set(time, paladd, palmul, sinadd, invert, basecolor / 255.0f); }
public override void Draw(Combat.PaletteFx palettefx) { GetTileLength(Sprite.Size, out var tilestart, out var tileend); var drawstate = SpriteManager.DrawState; drawstate.Reset(); drawstate.Blending = Transparency; drawstate.ScissorRectangle = DrawRect; drawstate.Set(Sprite); for (var x = tilestart.X; x != tileend.X; ++x) { var adjustment = (Vector2)Sprite.Size * new Vector2(x, 0); var location = CurrentLocation + adjustment; drawstate.AddData(location, null); } palettefx?.SetShader(drawstate.ShaderParameters); drawstate.Use(); }
public abstract void Draw(Combat.PaletteFx palettefx);