SadConsole.FNA 8.0.0

An FNA library that emulates old-school console and command prompt style graphics. Use the SadConsole.Starter package for new projects.

Install-Package SadConsole.FNA -Version 8.0.0
dotnet add package SadConsole.FNA --version 8.0.0
<PackageReference Include="SadConsole.FNA" Version="8.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add SadConsole.FNA --version 8.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

NOTE
This is the last version to support FNA. You will need to download and compile the source for an FNA specific build (and fix any MonoGame incompatibilities) If the creator of FNA would support NuGet, I would probably add support back. Please ask the creator of FNA to publish .NET Core packages on NuGet.

02/24/2019 V8.0

Special thanks to the SadConsole Discord on all the feedback provided.
Shout to the GoRogue project.

SadConsole GitHub
SadConsole Documentation
SadConsole Discord

File changes:

  • SadConsole and SadConsole.Universal have been replaced by the SadConsole for .NET Standard library.

Code changes:

  • Overhaul of the theme system.
  • Overhaul of the SurfaceBase/ScreenObject/Console system.
  • Changed Listbox.Slider to Listbox.Scrollbar. Also changed any property that used the word Slider to ScrollBar
  • Window messagebox and prompts have a library parameter to theme. If not specified, uses the default theme.
  • [Fixed #165] Window stealing mouse focus from scrollbar (thanks VGA256)
  • [Fixed #164] Controls should be aware of what theme is being used
  • Upgraded to MonoGame 3.7
  • Renamed base types and removed some others
  • SurfaceBase is now CellSurface and not abstract
  • ScreenObject is now Console and inherits from SurfaceBase
  • Console is now ScrollingConsole.
  • AnimatedSurface is now AnimatedConsole.
  • LayeredSurface is now LayeredConsole and has a new subtype, CellSurfaceLayer.
  • Mouse input works on all objects that inherit from Console, which is everything besodes CellSurface.
  • Added new ConsoleComponent types.
  • Consoles have a collection of Components that can hook into Update, Draw, Keyboard, Mouse methods.
  • EntityManager is now a ConsoleComponent.
  • Instructions reimplemented as ConsoleComponents.
  • InstructionSet has fluent-type methods to construct the set. See the SplashScreen console in the demo project.
  • [Fixed #199] New PredicateInstruction (thanks VGA256)
  • SurfaceBase.DefaultBackground is now Black instead of Transparent. You may need to use console.DefaultBackground = Color.Transparent; console.Clear(); to restore old behavior.
  • Control.CanFocus is now respected.
  • Fixed CellSurface JSON converter.
  • Fixed ControlsConsole renderer not respecting viewport.
  • Fixed inputbox not working with nummbers.
  • Redesigned ListboxItemTheme to be passable on Listbox ctor.
  • Consoles no longer use a cached drawcall.
  • Window resize option Settings.ResizeMode now supports Fit. (Thanks ajhmain)
  • Console.CalculatedPosition is now in pixels. Consoles of different font sizes now play nice with parenting. Things will be offset properly now.
  • Settings.ResizeWindow method allows you to easily resize the game window.
  • Added TextBox.KeyPressed event to allow you to cancel input of keys on a textbox.
  • MouseWheel support has been added to the listbox control.
  • Listbox.SingleClickItemExecute has been added to allow the ItemExecute event to trigger without a doubleclick.

NOTE
This is the last version to support FNA. You will need to download and compile the source for an FNA specific build (and fix any MonoGame incompatibilities) If the creator of FNA would support NuGet, I would probably add support back. Please ask the creator of FNA to publish .NET Core packages on NuGet.

02/24/2019 V8.0

Special thanks to the SadConsole Discord on all the feedback provided.
Shout to the GoRogue project.

SadConsole GitHub
SadConsole Documentation
SadConsole Discord

File changes:

  • SadConsole and SadConsole.Universal have been replaced by the SadConsole for .NET Standard library.

Code changes:

  • Overhaul of the theme system.
  • Overhaul of the SurfaceBase/ScreenObject/Console system.
  • Changed Listbox.Slider to Listbox.Scrollbar. Also changed any property that used the word Slider to ScrollBar
  • Window messagebox and prompts have a library parameter to theme. If not specified, uses the default theme.
  • [Fixed #165] Window stealing mouse focus from scrollbar (thanks VGA256)
  • [Fixed #164] Controls should be aware of what theme is being used
  • Upgraded to MonoGame 3.7
  • Renamed base types and removed some others
  • SurfaceBase is now CellSurface and not abstract
  • ScreenObject is now Console and inherits from SurfaceBase
  • Console is now ScrollingConsole.
  • AnimatedSurface is now AnimatedConsole.
  • LayeredSurface is now LayeredConsole and has a new subtype, CellSurfaceLayer.
  • Mouse input works on all objects that inherit from Console, which is everything besodes CellSurface.
  • Added new ConsoleComponent types.
  • Consoles have a collection of Components that can hook into Update, Draw, Keyboard, Mouse methods.
  • EntityManager is now a ConsoleComponent.
  • Instructions reimplemented as ConsoleComponents.
  • InstructionSet has fluent-type methods to construct the set. See the SplashScreen console in the demo project.
  • [Fixed #199] New PredicateInstruction (thanks VGA256)
  • SurfaceBase.DefaultBackground is now Black instead of Transparent. You may need to use console.DefaultBackground = Color.Transparent; console.Clear(); to restore old behavior.
  • Control.CanFocus is now respected.
  • Fixed CellSurface JSON converter.
  • Fixed ControlsConsole renderer not respecting viewport.
  • Fixed inputbox not working with nummbers.
  • Redesigned ListboxItemTheme to be passable on Listbox ctor.
  • Consoles no longer use a cached drawcall.
  • Window resize option Settings.ResizeMode now supports Fit. (Thanks ajhmain)
  • Console.CalculatedPosition is now in pixels. Consoles of different font sizes now play nice with parenting. Things will be offset properly now.
  • Settings.ResizeWindow method allows you to easily resize the game window.
  • Added TextBox.KeyPressed event to allow you to cancel input of keys on a textbox.
  • MouseWheel support has been added to the listbox control.
  • Listbox.SingleClickItemExecute has been added to allow the ItemExecute event to trigger without a doubleclick.

Release Notes

[BREAKING CHANGES]
[This list is just some of the major changes]
[See the documentation on NuGet for more information]
- Overhaul of the theme system.
- Overhaul of the SurfaceBase/ScreenObject/Console system.
- Overhaul of Instruction system.
- Added new ConsoleComponents system.
- EntityManager removed and will be added to GoRogue-SadConsole integration lib.

This package is not used by any popular GitHub repositories.

Version History

Version Downloads Last updated
8.0.0 235 2/24/2019
7.3.0 172 12/29/2018
7.2.0 147 11/20/2018
7.1.0 164 10/19/2018
7.0.4 155 9/8/2018
7.0.3 158 9/8/2018
7.0.2 152 8/31/2018
7.0.1 141 8/29/2018
7.0.0 137 8/29/2018
6.5.0 241 6/12/2018
6.4.11 245 4/13/2018
6.4.10 203 3/18/2018
6.4.9 233 3/18/2018
6.4.8 238 3/18/2018
6.4.7 249 3/16/2018
6.4.6 297 2/14/2018
6.4.5 253 2/3/2018
6.4.3 212 11/14/2017
6.4.2 235 9/27/2017
6.4.1 226 9/27/2017