[Breaking] Print(int x, int y, ColoredGlyph glyph) renamed to SetGlyph.
[Breaking] Surface SetEffect method signatures have changed.
[Breaking] Renamed Animation.ConvertImageFile to Animation.FromImage.
[Breaking] Removed ColorGradient as this type is implemented in the SadRogue.Primitives library as Gradient.
Behavioral changes
[Behavior] ColoredString.String.Set forced the string through the parser. This has now changed to use the characters directly.
[Behavior] All ColoredString contructors that used the (string) overload used the string parser. This is no longer the case.
[Behavior] ColoredString.IgnoreEffect no longer defaults to true.
[Behavior] Using Surface.Print methods that used the string parser for fore/back/mirror will force those settings after the string was parsed and not before.
[Behavior] Surface Clear and Fill methods now clear the effect.
[Behavior] Print statements have been updated to all act the same.
New overload added that accepts decorators.
Print clears the effect over the glyphs printed.
Print that uses the string processor now processes the string and then sets the appropriate overloaded settings. For example, the overload that sets the foreground and background colors will process the string and then set the foreground and background of the entire string. This is a change from previous behavior which set the colors at the start of the string processor and allowed the processor to override the overload.
Host changes
[MonoGame] Added DrawCallManager to allow injecting custom sprite batch rendering during final scene composition.
[MonoGame/SFML] Fixed a bug that caused all surfaces to redraw all cells 100% of the time even if nothing changed. Should bring 300%-400% fps increase in surfaces that aren't changing content.
[MonoGame/SFML] ITexture improvements for GetPixel/SetPixel; Demos on editing textures. (RychuP)
[MonoGame/SFML] The game host now has a FrameNumber property that incremenets each frame cycle.
[SFML] Fixed Settings.UnlimitedFPS. This now works.
Other changes
[Core] Fixed bug that caused redraws every frame even if nothing had changed.
[Core] Cursor didn't respect Cursor.UseStringParser because of how ColoredString was always using the string parser. This is fixed now.
[Core] Cursor has a Cursor.MouseClickRepositionHandlesMouse property which sets the handled flag on mouse left-click for the cursor reposition.
[Core] Cursor updates the space character appearance while printing. Previously only the first character was used to determine the space's appearance.
[Core] DrawString instruction overrides reset now, fixing a bug with having the instruction run more than once.
[Core] Surface.ShiftLeft|Right|Up\Down methods now move decorators.
[Core] New Surface.ShiftRow and Surface.ShiftColumn methods added. (Chris3606)
[Core] ColoredString.SetDecorators added, to fit in with SetForeground, SetBackground, etc.
[Core] Renamed EffectsChain to EffectSet and added new CodeEffect type.
[Core] Effects use TimeSpan instead of double.
[Core] The EffectsManager used by a surface now works on cell instances, not cell indicies.
[Core] Resizing a surface without the clear parameter keeps existing effects instead of dropping them.
[Core] AnimatedSurface.FromImage helper added which converts image-based animations to an animated surface. (RychuP)
[Core] Added TheDraw font reader: SadConsole.Readers.TheDrawFont. Not a SadConsole Font.
[Core] Playscii support added in the SadConsoles.Readers namespace. (RychuP)
[Core] Entity renderer has a RemoveAll method to clear out all the entities.
[Core] Entity renderer now has a SkipExistsChecks property which can greatly improve performance when adding/removing entities (when you already have a lot of entities).
[Core] For entities, added AnimatedAppearanceComponent which can be added to an entity to animate the glyph like the AnimatedSurface did for the old entity type.
[UI] Fix various minor bugs with controls.
[UI] Textbox has more events related to text changing.
[Breaking] Print(int x, int y, ColoredGlyph glyph) renamed to SetGlyph.
[Breaking] Surface SetEffect method signatures have changed.
[Breaking] Renamed Animation.ConvertImageFile to Animation.FromImage.
[Breaking] Removed ColorGradient as this type is implemented in the SadRogue.Primitives library as Gradient.
Behavioral changes
[Behavior] ColoredString.String.Set forced the string through the parser. This has now changed to use the characters directly.
[Behavior] All ColoredString contructors that used the (string) overload used the string parser. This is no longer the case.
[Behavior] ColoredString.IgnoreEffect no longer defaults to true.
[Behavior] Using Surface.Print methods that used the string parser for fore/back/mirror will force those settings after the string was parsed and not before.
[Behavior] Surface Clear and Fill methods now clear the effect.
[Behavior] Print statements have been updated to all act the same.
New overload added that accepts decorators.
Print clears the effect over the glyphs printed.
Print that uses the string processor now processes the string and then sets the appropriate overloaded settings. For example, the overload that sets the foreground and background colors will process the string and then set the foreground and background of the entire string. This is a change from previous behavior which set the colors at the start of the string processor and allowed the processor to override the overload.
Host changes
[MonoGame] Added DrawCallManager to allow injecting custom sprite batch rendering during final scene composition.
[MonoGame/SFML] Fixed a bug that caused all surfaces to redraw all cells 100% of the time even if nothing changed. Should bring 300%-400% fps increase in surfaces that aren't changing content.
[MonoGame/SFML] ITexture improvements for GetPixel/SetPixel; Demos on editing textures. (RychuP)
[MonoGame/SFML] The game host now has a FrameNumber property that incremenets each frame cycle.
[SFML] Fixed Settings.UnlimitedFPS. This now works.
Other changes
[Core] Fixed bug that caused redraws every frame even if nothing had changed.
[Core] Cursor didn't respect Cursor.UseStringParser because of how ColoredString was always using the string parser. This is fixed now.
[Core] Cursor has a Cursor.MouseClickRepositionHandlesMouse property which sets the handled flag on mouse left-click for the cursor reposition.
[Core] Cursor updates the space character appearance while printing. Previously only the first character was used to determine the space's appearance.
[Core] DrawString instruction overrides reset now, fixing a bug with having the instruction run more than once.
[Core] Surface.ShiftLeft|Right|Up\Down methods now move decorators.
[Core] New Surface.ShiftRow and Surface.ShiftColumn methods added. (Chris3606)
[Core] ColoredString.SetDecorators added, to fit in with SetForeground, SetBackground, etc.
[Core] Renamed EffectsChain to EffectSet and added new CodeEffect type.
[Core] Effects use TimeSpan instead of double.
[Core] The EffectsManager used by a surface now works on cell instances, not cell indicies.
[Core] Resizing a surface without the clear parameter keeps existing effects instead of dropping them.
[Core] AnimatedSurface.FromImage helper added which converts image-based animations to an animated surface. (RychuP)
[Core] Added TheDraw font reader: SadConsole.Readers.TheDrawFont. Not a SadConsole Font.
[Core] Playscii support added in the SadConsoles.Readers namespace. (RychuP)
[Core] Entity renderer has a RemoveAll method to clear out all the entities.
[Core] Entity renderer now has a SkipExistsChecks property which can greatly improve performance when adding/removing entities (when you already have a lot of entities).
[Core] For entities, added AnimatedAppearanceComponent which can be added to an entity to animate the glyph like the AnimatedSurface did for the old entity type.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps SadConsole from 8.99.3 to 9.2.0.
Release notes
Sourced from SadConsole's releases.
... (truncated)
Changelog
Sourced from SadConsole's changelog.
... (truncated)
Commits
e7fac19
Update templates1e71713
Update changelog with missing item23cf18a
Minor project updates.2de4763
Merge pull request #287 from Thraka/developabd9d11
Project file changes for release149c3b9
Merge branch 'master' of github.thraka:Thraka/SadConsole into developf9b36d8
Added animation component for entities.60a4596
Replaced ColorGradient with the primitives version Gradient7b8c906
Improve foreach perf46ae92b
Update ImGui debuggerDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)