SadConsole 9.0.0-alpha6
See the version list below for details.
dotnet add package SadConsole --version 9.0.0-alpha6
NuGet\Install-Package SadConsole -Version 9.0.0-alpha6
<PackageReference Include="SadConsole" Version="9.0.0-alpha6" />
<PackageVersion Include="SadConsole" Version="9.0.0-alpha6" />
<PackageReference Include="SadConsole" />
paket add SadConsole --version 9.0.0-alpha6
#r "nuget: SadConsole, 9.0.0-alpha6"
#addin nuget:?package=SadConsole&version=9.0.0-alpha6&prerelease
#tool nuget:?package=SadConsole&version=9.0.0-alpha6&prerelease
- Revamped control rendering.
ControlConsole
renderer now has a 2nd surface which only controls are rendered to. This way the control layer system can update independently of the actual console. - Fixed bug in renderers which the renderer wasn't attached and detached from the object when added.
Cursor
is now a component.Cursor
has a new property namedMouseClickReposition
which whentrue
allows a mouse click on the host console to move the cursor.Cursor
a lot of quality of life improvements.- Removed
ISurfaceRenderData
and went back to normalIScreenSurface
for renderers. - ControlHost correctly checks the parent of the control when processing the mouse.
- ControlHost no longer listens to the tab button when a control indicates it handled input
- Textbox bug fixes (thanks Doctor Triagony).
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. |
.NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.1
- Newtonsoft.Json (>= 12.0.3)
- TheSadRogue.Primitives (>= 1.0.0-alpha3-debug)
NuGet packages (8)
Showing the top 5 NuGet packages that depend on SadConsole:
Package | Downloads |
---|---|
SadConsole.Extended
A library of common classes that extend SadConsole with new controls, windows, and more. |
|
SadConsole.Host.MonoGame
A graphics hosting library for SadConsole that targets MonoGame. |
|
SadConsole.Host.SFML
A graphics hosting library for SadConsole that targets SFML. |
|
SadConsole.GoRogueHelpers
A helper library for SadConsole games built with GoRogue. |
|
TheSadRogue.Integration
An official integration library for using GoRogue and SadConsole together to create a roguelike. |
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on SadConsole:
Repository | Stars |
---|---|
Thraka/SadConsole
A .NET ascii/ansi console engine written in C# for MonoGame and SFML. Create your own text roguelike (or other) games!
|
Version | Downloads | Last updated | |
---|---|---|---|
10.5.0 | 1,149 | 12/7/2024 | |
10.5.0-debug | 117 | 12/7/2024 | |
10.4.2 | 271 | 10/24/2024 | |
10.4.2-debug | 99 | 10/24/2024 | |
10.4.1 | 1,371 | 6/13/2024 | |
10.4.1-debug | 159 | 6/13/2024 | |
10.4.0 | 1,392 | 3/31/2024 | |
10.4.0-debug | 216 | 3/31/2024 | |
10.0.3 | 505 | 3/14/2024 | |
10.0.3-debug | 263 | 3/14/2024 | |
10.0.2 | 1,602 | 11/10/2023 | |
10.0.2-debug | 880 | 11/10/2023 | |
10.0.1 | 761 | 11/10/2023 | |
10.0.1-debug | 727 | 11/10/2023 | |
10.0.0 | 1,819 | 10/29/2023 | |
10.0.0-debug | 994 | 10/29/2023 | |
10.0.0-beta3-debug | 1,105 | 10/14/2023 | |
10.0.0-beta3 | 1,071 | 10/14/2023 | |
10.0.0-beta2-debug | 1,064 | 10/11/2023 | |
10.0.0-beta2 | 1,080 | 10/11/2023 | |
10.0.0-beta1-debug | 1,087 | 10/11/2023 | |
10.0.0-beta1 | 1,121 | 10/11/2023 | |
10.0.0-alpha4-debug | 1,373 | 8/26/2023 | |
10.0.0-alpha4 | 1,309 | 8/26/2023 | |
10.0.0-alpha3-debug | 1,221 | 8/26/2023 | |
10.0.0-alpha3 | 1,236 | 8/26/2023 | |
10.0.0-alpha2-debug | 1,612 | 6/18/2023 | |
10.0.0-alpha2 | 1,399 | 6/18/2023 | |
10.0.0-alpha1-debug | 1,512 | 6/4/2023 | |
9.2.2 | 5,166 | 1/22/2022 | |
9.2.2-debug | 1,207 | 1/22/2022 | |
9.2.1 | 2,469 | 1/4/2022 | |
9.2.0 | 3,342 | 12/31/2021 | |
9.2.0-debug | 1,097 | 12/31/2021 | |
9.1.1 | 5,433 | 8/7/2021 | |
9.1.1-debug | 1,286 | 8/7/2021 | |
9.1.0 | 2,153 | 7/6/2021 | |
9.1.0-debug | 1,275 | 7/6/2021 | |
9.0.0 | 4,674 | 6/6/2021 | |
9.0.0-debug | 1,275 | 6/6/2021 | |
9.0.0-beta4 | 1,969 | 1/15/2021 | |
9.0.0-beta3 | 2,087 | 12/19/2020 | |
9.0.0-beta2 | 1,598 | 10/9/2020 | |
9.0.0-beta1 | 1,716 | 8/1/2020 | |
9.0.0-alpha9 | 1,729 | 7/25/2020 | |
9.0.0-alpha8 | 1,420 | 7/13/2020 | |
9.0.0-alpha7 | 1,755 | 7/11/2020 | |
9.0.0-alpha6 | 1,790 | 5/28/2020 | |
9.0.0-alpha5 | 1,584 | 5/26/2020 | |
9.0.0-alpha4 | 1,431 | 5/1/2020 | |
9.0.0-alpha3 | 1,627 | 5/1/2020 | |
9.0.0-alpha2 | 1,547 | 3/14/2020 | |
9.0.0-alpha1 | 1,949 | 1/26/2020 | |
8.99.3 | 3,766 | 8/15/2020 | |
8.99.3-debug | 1,472 | 8/15/2020 | |
8.99.2 | 1,804 | 7/14/2020 | |
8.99.2-debug | 1,431 | 7/14/2020 | |
8.99.1 | 2,480 | 4/11/2020 | |
8.99.1-debug | 1,437 | 4/11/2020 | |
8.99.0 | 2,518 | 11/27/2019 | |
8.99.0-debug | 1,433 | 11/27/2019 | |
8.9.1 | 3,894 | 11/5/2019 | |
8.9.1-debug | 1,438 | 11/5/2019 | |
8.9.0 | 2,232 | 9/7/2019 | |
8.9.0-debug | 1,660 | 9/7/2019 | |
8.8.1 | 3,086 | 7/28/2019 | |
8.8.1-debug | 1,621 | 7/28/2019 | |
8.8.0 | 2,400 | 7/27/2019 | |
8.8.0-debug | 1,559 | 7/27/2019 | |
8.7.1 | 1,965 | 6/22/2019 | |
8.7.1-debug | 1,623 | 6/22/2019 | |
8.7.0 | 1,805 | 6/22/2019 | |
8.7.0-debug | 1,641 | 6/22/2019 | |
8.6.0 | 2,087 | 4/14/2019 | |
8.6.0-debug | 1,648 | 4/14/2019 | |
8.5.0 | 1,982 | 4/2/2019 | |
8.5.0-debug | 1,672 | 4/2/2019 | |
8.4.1 | 1,942 | 3/19/2019 | |
8.4.1-debug | 1,711 | 3/19/2019 | |
8.4.0 | 1,803 | 3/17/2019 | |
8.4.0-debug | 1,661 | 3/17/2019 | |
8.3.0 | 1,910 | 3/10/2019 | |
8.3.0-debug | 1,635 | 3/10/2019 | |
8.2.0 | 1,945 | 3/2/2019 | |
8.2.0-debug | 1,714 | 3/2/2019 | |
8.1.0 | 1,903 | 2/28/2019 | |
8.1.0-debug | 1,633 | 2/28/2019 | |
8.0.0 | 2,003 | 2/24/2019 | |
8.0.0-pre5 | 1,684 | 2/19/2019 | |
8.0.0-pre4 | 1,716 | 1/31/2019 | |
8.0.0-pre2 | 1,765 | 12/30/2018 | |
8.0.0-pre1 | 1,733 | 12/30/2018 | |
7.3.0 | 2,048 | 12/29/2018 | |
7.2.0 | 2,166 | 11/20/2018 | |
7.1.0 | 2,202 | 10/19/2018 | |
7.0.4 | 2,151 | 9/8/2018 | |
7.0.3 | 2,010 | 9/8/2018 | |
7.0.2 | 2,367 | 8/31/2018 | |
7.0.0 | 2,118 | 8/29/2018 | |
7.0.0-pre1 | 1,834 | 8/22/2018 | |
6.5.0 | 2,363 | 6/12/2018 | |
6.4.11 | 2,438 | 4/13/2018 | |
6.4.11-pre1 | 2,223 | 4/6/2018 | |
6.4.10 | 2,392 | 3/18/2018 | |
6.4.9 | 2,348 | 3/18/2018 | |
6.4.8 | 2,320 | 3/18/2018 | |
6.4.7 | 2,398 | 3/16/2018 | |
6.4.6 | 2,615 | 2/14/2018 | |
6.4.5 | 2,416 | 2/3/2018 | |
6.4.3 | 2,361 | 11/14/2017 | |
6.4.2 | 2,446 | 8/11/2017 | |
6.4.1 | 2,268 | 8/10/2017 | |
6.4.0 | 2,346 | 7/25/2017 | |
6.3.0 | 2,364 | 6/9/2017 | |
6.2.2 | 2,376 | 5/20/2017 | |
6.2.1 | 2,485 | 4/23/2017 | |
6.2.0 | 2,289 | 4/22/2017 | |
6.1.4 | 2,288 | 4/17/2017 | |
6.1.3 | 2,985 | 4/3/2017 | |
6.1.2 | 2,271 | 4/1/2017 | |
6.1.1 | 2,217 | 4/1/2017 | |
6.1.0 | 2,238 | 3/31/2017 | |
6.0.1 | 2,360 | 3/19/2017 | |
6.0.0 | 2,147 | 3/18/2017 |
A lot of structual changes to split out rendering from SadConsole. You now need to add SadConsole.Host.MonoGame
or SadConsole.Host SFML to your project.
Major changes:
- Object model has changed a lot. Console types no longer inherit from CellSurface and are based on a few different base
classes and interfaces implemented through ScreenObject. Everything in SadConsole is now a ScreenObject.
- Console.Surface represents the cell surface of the console. Extension methods are provided so that you can use
Console.Print and related methods. If you coding inside a Console instance though, the extension methods only work if
you qualify the call with this.Print.
- Font/FontMaster are now merged into a single type: Font.
- Font sizes are always represented in an X,Y value now, and are seperate from the font itself. This means every
console has a Font and FontSize property now instead of a single Font property.
- All UI objects were moved into the SadConsole.UI namespace.
- The theme system was overhauled (and mostly backported to SadConsole v8).
- A lot of misc name changes, swapping out where it specified Console and substituting ScreenObject. For example,
SadConsole.Input.MouseConsoleState is now SadConsole.Input.MouseScreenObjectState
- SadConsole.Global had a lot of changes and not longer exists. Properties from Global are now available on SadConsole.GameHost.Instance.
- SadConsole.GameHost.Instance.Screen is the root console displayed on the screen to which all other objects are attached to. It is a console
and you cannot change this. It makes it simpler for new users. To disable it, disable the renderer: SadConsole.GameHost.Instance.Screen.Renderer = null.
Objects added to the Children collection will still work; SadConsole will not bother drawing the root console itself.
- ControlConsole no longer provides the logic for the GUI system. This was migrated to a new component: ControlHost. The host can be added to any console
you want to be able to display controls. The ControlsConsole type remains for ease of use. It now provides a ControlHostComponent property with direct
access to the component instance automatically added to the console.
- Entity is no longer a Console but a ScreenObject.
- App creation is slightly different with a few names migrated and events for draw/update callbacks
SadConsole.Game.Create(80, 25);
SadConsole.Game.Instance.OnStart = Init;
SadConsole.Game.Instance.FrameUpdate += Instance_FrameUpdate;
SadConsole.Game.Instance.Run();
SadConsole.Game.Instance.Dispose();