Commit Graph
267 Commits
Author SHA1 Message Date
Acruid 49fe2d59cf Removes hard-coded color support for writing console shells. Strings with formatting codes can replace this feature.
Added a separate WriteError function to console shell, to mimic writing to stderr.
2021-02-05 01:35:06 -08:00
Paul RitterandGitHub f42c1379e0 Revert "Viewport improvements. (#1510)" (#1527)
This reverts commit fc5e3ab69d.
2021-02-03 12:25:12 +01:00
AcruidandGitHub 3eb6e067f9 Console Unify (#1513)
* Renamed shared ICommand to IConsoleCommand.

* Lots of refactoring into a shared context.

* Removed ICommonSession from server concmd Execute.

* Added argStr parameter to concmd execute.

* The execute function of client concmds now returns void, use the new shell.RemoteExecuteCommand function to forward commands.

# Conflicts:
#	Robust.Client/Console/Commands/Debug.cs

* Finally move shells and commands into shared.

* Console commands can now be registered directly without a class in a shared context.

* Pulled up ConsoleHost and Console shell into a shared context.

* Pulled up half the functions of ConsoleHost into a shared context.

* Repair rebase damage.

* Make LoadConsoleCommands function not remove any previously registered commands.
2021-02-01 16:40:26 -08:00
fc5e3ab69d Viewport improvements. (#1510)
* Remove the main viewport.

* Re-add main viewport in a different place

* Move screen/map translation into ViewportContainer

* Support for viewport resolution

* Fix postfx, add WorldToScreen to Viewport

* Remove useless cast

* Some cleanup.

* Fix incorrect worldBounds when rendering viewports

* nullability

Co-authored-by: 20kdc <asdd2808@gmail.com>
2021-01-29 12:45:04 +01:00
Pieter-Jan Briers 28caf0d74c Reduce allocations 2020-12-29 03:58:16 +01:00
d94f702601 Xaml UI (#1446)
Co-authored-by: Paul <ritter.paul1+git@googlemail.com>
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2020-12-20 23:52:36 +01:00
ad8b0b3c83 Add bytes or sbytes to enum where available (#1430)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2020-12-08 12:46:30 +01:00
Pieter-Jan Briers 86d4fafd30 More GC stats. 2020-11-28 15:36:45 +01:00
b8e5b47e7a Use 'new' expression in places where the type is evident for the engine (#1415)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2020-11-26 00:16:55 +01:00
5f940fdec6 Removes some unused variables (#1420)
Co-authored-by: Paul <ritter.paul1+git@googlemail.com>
2020-11-24 00:51:35 +01:00
178e2cbd76 Make icons great again (#1349)
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-11-04 02:33:15 +01:00
Víctor Aguilera Puerto 245c0f578d Adds grid ID to debug coords panel. 2020-11-03 19:36:30 +01:00
ShadowCommanderandGitHub 3781844d77 Fix TextReleaseFocus keybind for console not handling args (#1346)
Clean up OnKeyBindDown of DebugConsole
2020-10-24 15:51:44 +02:00
Víctor Aguilera PuertoandGitHub 47593307b6 Remove default grids (#1322)
* Remove default grids

* Fix test. Invalid grids don't "exist" anymore in map manager.

* Fix crashes

* Fix placement modes.

* Remove warning.
2020-10-21 15:12:02 +02:00
Víctor Aguilera Puerto 022e044b69 Fix Entity Spawn Menu Eraser mode not clearing when closing it.
Fixes https://github.com/space-wizards/space-station-14/issues/2178
2020-10-12 14:02:35 +02:00
Jan NekvapilandGitHub 5bf4e9ae1a Scale frame debug into control boundaries (#1305)
* Scale frame debug into control boundaries

* Remove unnecessary  cache
2020-10-06 09:47:50 +02:00
Pieter-Jan Briers 99aab96694 Fix offset control outline debug rendering. 2020-09-29 15:00:37 +02:00
DTanxxxGitHubDavid Tan <>
e7a49cc1f0 Removed obsolete EntitySpawnWindow constructor (#1295)
Co-authored-by: David Tan <>
2020-09-29 13:38:42 +02:00
Paul RitterandGitHub 7b1f60c940 Readds Iconcomponent (#1296)
* yep

* directional texture
2020-09-28 20:54:29 +02:00
DTanxxxGitHubDavid Tan <>
ff32a70b10 Purge localization manager (#1285)
* Applied feedback

* Applied feedback

Co-authored-by: David Tan <>
2020-09-23 16:21:10 +02:00
Paul RitterandGitHub 827734d658 Nukes the Iconcomponent (#1290)
* removes iconcomponent

* forgot one thing

* it works!!11

* last change
2020-09-23 16:20:32 +02:00
DrSmugleafandGitHub 25aaac7dbf Make the tile spawn search bar autofocus (#1287) 2020-09-17 23:19:17 +02:00
Pieter-Jan Briers 4e6f8ca224 Remove OptionsMenu from engine. 2020-09-07 11:07:49 +02:00
20kdcandGitHub 5146bf8ac2 More configurable lighting (also, "Rounded" mode for Range) (#1274)
* Add support for 'Rounded' mode to Range (and thus Slider)

* Make lighting resolution more configurable

* Use a lighting presets dropper because RemieRichards said so

* Make ConfigLightingQuality not a property and instead two separate methods

* More configurable lighting: cleanup to use a switch rather than an if-chain
2020-09-07 10:57:44 +02:00
0a67cecfa5 Replace every usage of GridCoordinates with EntityCoordinates (#1280)
* Added struct skeleton for EntityCoordinates.

* Polish EntityCoordinates, add tests, add EntityCoordinates to Transforms

* Doc cleanup

* Remove useless code

* Return offset 0 when you don't have a parent

* Test for making sure EntityCoordinates for entities without parents have offset 0

* Use parent transform's GridId for GetGridId.

* Adds various methods, checks and tests

* Replace GridCoordinates with EntityCoordinates

* EyeManager.WorldToScreen fix

* Address reviews

* Fix za buildo

* Fix one transform test

* Fix the remaining tests

* Remove duplicate

* Remove another merge duplicate

* Fix property

* Rename most usages of GridCoordinates to EntityCoordinates.

* Add WithEntityId method to EntityCoordinates.

* Fix EntityCoordinates usage in GetEntitiesInRange

* Remove cursed IMapGrid method, change naming.

* Makes GridTileLookupSystem use EntityCoordinates

Co-authored-by: Acruid <shatter66@gmail.com>
Co-authored-by: Víctor Aguilera Puerto <zddm@outlook.es>
2020-09-06 16:09:19 +02:00
0701b040ee EntityCoordinates (#1277)
* Added struct skeleton for EntityCoordinates.

* Polish EntityCoordinates, add tests, add EntityCoordinates to Transforms

* Doc cleanup

* Remove useless code

* Return offset 0 when you don't have a parent

* Test for making sure EntityCoordinates for entities without parents have offset 0

* Use parent transform's GridId for GetGridId.

* Adds various methods, checks and tests

* Adds new constructor to EntityCoordinates and add WithPosition method

Co-authored-by: Acruid <shatter66@gmail.com>
2020-09-04 23:08:18 +02:00
Pieter-Jan Briers b4fac5256c More Clyde GL version things.
Correctly use KHR and OES suffixed functions for debug output and VAOs, if necessary.

Allow overriding the detected GL version for feature detection (nvidia gives me an ES 3.2 context even when ES 2.0 is requested, so...)
2020-09-02 22:10:50 +02:00
ShadowCommanderandGitHub 72d8f60846 Add debug highlighting for UI Controls (#1272) 2020-09-02 12:32:30 +02:00
Pieter-Jan Briers 3ea73e9d2a Various OpenGL fixes.
1. Fixes screenshots on ES by providing a fallback path for when encessary features (PBO, fence sync, mapbuffer) are not available.
2. Correctly detect fence sync as not always being available for 3.1
3. Remove the "bad OpenGL version" box. We have MessageBoxW now.
4. Separated feature detection for ES and Desktop, added more feature detections on various sides.
5. Moved GL feature detection to its own file.
2020-09-02 01:47:12 +02:00
20kdcandGitHub 4777a0adbf GLES2 users, assemble! (#1266) 2020-09-01 15:27:14 +02:00
9d1bec9bb2 Merge FloatMath and MathHelper (#1234)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2020-08-20 19:21:07 +02:00
Pieter-Jan Briers 1934428c95 Use better file access patterns in engine. 2020-08-16 01:08:07 +02:00
73d529386d Added Console Tab Completion (#1212)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>
2020-08-14 22:47:26 +02:00
ShadowCommanderandGitHub 444eecf339 Change BaseWindow and SS14Window to open where they previously closed (#1217)
First open will be top left, centered, or left vertically centered. The subsequent calls to open will open the window at the position the window was closed at.
2020-08-09 00:13:09 +02:00
ShadowCommanderandGitHub 97f0479676 Fix OpenCentered by setting size before position (#1211) 2020-08-06 15:53:37 +02:00
Pieter-Jan Briers c482253b9d Clyde debug stats for light count. 2020-07-29 02:06:39 +02:00
MosesandGitHub 27fccbe74c 1513 Erase mode button toggle (#1194) 2020-07-28 14:12:29 -07:00
Víctor Aguilera Puerto d5e422f34e Debug coordinates panel now displays actual entity transform position 2020-07-26 03:16:10 +02:00
Pieter-Jan Briers fc73f88282 Hitting ~ while console is selected now closes it again.
How did this take me this long to fix.
2020-07-08 01:53:11 +02:00
AJCM-gitandGitHub afa0eb8ada Changing some paths (#1158)
* first commit

* Merging master

* Path changes

* what even is this

* MidiCustom
2020-07-07 19:15:39 +02:00
Pieter-Jan BriersandGitHub 6674be3adc Client NRTs (#1121) 2020-06-12 12:57:39 +02:00
Pieter-Jan Briers afb0624a2b Fix DebugTimePanel to report prediction size correctly.
It was not taking into the account that CurTick increments after the mainloop runs tick meaning that it was offset by one.
2020-06-12 12:42:05 +02:00
ClyybberandGitHub 71b06c0791 Placement improvements (#1105) 2020-06-08 13:51:22 +02:00
Pieter-Jan Briers 537b444eae DebugConsole doesn't spam position changes if hidden. 2020-06-06 14:13:00 +02:00
Pieter-Jan Briers 044eeb61f4 Fix OnClose not firing on windows correctly. 2020-05-28 13:18:39 +02:00
Pieter-Jan Briers 32c1b1e3b2 Split off SS14 into BaseWindow. 2020-05-27 14:08:52 +02:00
Pieter-Jan Briers cc4069d526 Fix clear button in tile spawn window not resetting search results. 2020-05-21 23:39:14 +02:00
Pieter-Jan Briers 7f508f7719 Show largest clyde batch size in F3. 2020-05-21 13:44:41 +02:00
Pieter-Jan Briers b7f3627ef1 Remove List<>/Dictionary<,> usage from low-level GameState serialization.
NetSerializer does not handle these well and sends the entire backing array instead of a more compact representation. This can then cause it to start sending lists of length 1 with a *capacity* of 4096 resulting in 250 KiB/s down to send updates for a single entity. As it just did on the public server...
2020-05-12 18:34:16 +02:00
Pieter-Jan Briers f54f4ffe52 Quite possibly break the whole input system.
Made it so keybinds don't block other keybinds from firing.

Why is this necessary? This allows us to have "same keybind, different functionality" binds sanely, like shift click being both TextCursorSelect and (in content) ExamineEntity. Before this change the latter was temporarily broken in UI controls because of TextCursorSelect taking priority and instantly treating the event as handled because it's CanFocus.

The offshoot of this is that all the "args.CanFocus == mouse left" UI code had to be fixed, since multiple things were now firing for that and breaking everything. For example TextCursorSelect actually BROKE because now ExamineEntity was firing inside UI again and that was seen as a left click.

EngineKeyFunctions.UIClick has been introduced as "mouse left for the UI" for this purpose.
2020-05-05 23:58:21 +02:00