Version 7.0 Completed
Version 7.0 has been released to NuGet!!
This release was driven by valuable feedback from you! I think this will make it a lot easier to work with surfaces, animations, and objects in general.
I did remove the world generation code. It felt very specific to a game scenario and I have plans to release a new library that adds more game functions (such as random world/dungeon generation) and plays very nicely with GoRogue.
I’ve compiled (but not released) a .NET Standard 2.0 version of SadConsole that will replace the existing release. This will make it easy to use with .NET Core.
The documentation is just about finished. I’ll have that done tonight.
- Update the Sample Games in the GitHub repo.
- Release the .NET Standard 2.0 build.
- Start work on the GoRogue-SadConsole game helper.
- Start work on redoing the Roguelike tutorial.
The NuGet release notes details some of these changes but the most notible are:
SurfaceEditor has been removed and is now implemented on SurfaceBase directly.
You do not need to use a
SurfaceEditortype to edit surfaces. You won’t really notice this change on the
Consoleas it had inherited from
Consoleis now a surface, and all surfaces can be edited directly.
Console no longer combines Renderer and TextSurface for drawing.
TextSurfaceproperty that allowed you to swap out different surfaces that represented the visual of the console. This has gone away. A
Consoleis now a surface.
SadConsole.Serialization uses Newtonsoft.Json instead of the default .NET classes.
Newtonsoft.Jsonlibrary is much more capable of de/serializing objects. Compression is also supported now.
Removed GameHelpers namespace and GameObject renamed to Entity.
GameHelpers had the GameObject and world generation code. The GameObject is now
SadConsole.Entities.Entityand the world generation code has been removed. The generation code will be added to a different library in the future.
If you were previously using the world generation code, you can use a temporary library here.
Control themes completely rewritten. Themes control all drawing for a control now.
Previously the control itself would draw itself using some color settings from a theme object. Now the theme object actually draws the entire control using various settings from the control instance itself.