Test still needs more checks that filepaths are valid but I think I got most of the current issues.
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
* Holy crap auth works
* Fix some usages of UserID instead of UserName
* Refactor preferences.
They be non-async now. Also faster.
* Rename DbContext.
* Guest username assignment.
* Fix saving of profiles.
* Don't store data for guests.
* Fix generating invalid random colors.
* Don't allow dumb garbage for char preferences.
* Bans.
* Lol forgot to fill out the command description.
* Connection log.
* Rename all the tables and columns to be snake_case.
* Re-do migrations.
* Fixing tests and warnings.
* Update submodule
* Fix breathing
* WIP changes because I don't trust git stash after 2 weeks
* My imports
* Add gasping, adjust breathing values and fix test
* Make the gasp message appear to others
* Add PopupMessageEveryone extension
* Change used percentage to use a single number instead
* Remove unnecessary logging
* Fix air consistency test
* Add test map to SkippedMaps array
* Sort out InRangeUnobstructed and add extension methods
* Rename client RangeChecks to RangeExtensions
* Add container extension methods and test
* Add missing component methods
Component to container
Grid coordinates to container
Map coordinates to container
Local player to container
* Actually use the field
* Merge fixes
* Add popup argument to local player extension methods
* Reduce code repetition for client range extensions
* Add test that puts all components on an entity and checks for no exceptions
Also fix all the exceptions that happened because of this
* Add comments to the test
* Fix nullable errors
* Fix more nullable errors
* More nullable error fixes
* Unignore basic actor component
* Fix more nullable errors
* NULLABLE ERROR
* Add string interpolation
* Merge if checks
* Remove redundant pragma warning disable 649
* Address reviews
* Remove null wrappers around TryGetComponent
* Merge conflict fixes
* APC battery component error fix
* Fix power test
* Fix atmos mapgrid usages
* Initial commit
* Climbing uses its own controller now
* Missed a check
* Get rid of hands check
* Cleanup
* Get rid of speciescomponent stuff
* Remove unneeded check, add separate case for moving other players.
* Add DoAfter
* IClientDraggable added to ClimbingComponent
* Added some basic integration tests. Renamed ClimbMode to Climbing.
* oops
* Minor fixes
* ffff
* Table fix
* Revamped system so its more predicted, uses proper logic for de-climbing. Get hype!!!
* Flag check fix
* Distance check and reset numticksblocked
* get rid
* Make IInteractUsing async, make tools use DoAfter.
* Disable warning 1998 in Content.Server
* Update Content.Server/GameObjects/Components/AnchorableComponent.cs
* Add test for non abstract entities without icons
Fixes#575.
Test will now fail if an entity is added that is not abstract but has no icon.
Also added icons or made entities abstract that failed the test.
No non abstract entities actually missed textures.
Some notes: Changed name of "constructionghost" from "spooky ghost" to "construction ghost", and changed name of "AdminObserver" from "observer" to "admin observer" to avoid overlap in names.
* Split up client side and server side tests
* Station event system
Adds 2 basic events: (Power) GridCheck and RadiationStorm (based on the goonstation version).
The system itself to choose events is based on tgstation's implementation.
This also adds the event command that can be run to force specific events.
There's still some other TODO items for these to be complete, to my knowledge:
1. There's no worldspace DrawCircle method (though the radstorm could look a lot nicer with a shader).
2. The PlayGlobal power_off / power_on audio seems to cut out halfway-through
3. (I think this is a known issue) lights still emit light until you get closer in a gridcheck so PVS range might need bumping.
* Invariants for event names
* Fix random event shutdown
* Mix stereo announcements to mono
* Address feedback
* Remove redundant client system and use the overlay component instead
* Drop the server prefix
* Fix radiation overlay enum
* use entityquery instead
* zum's feedback
* Use EntityQuery
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
* do_after
Ports (most of) do_after from SS13.
Callers are expected to await the DoAfter task from the DoAfterSystem.
I had a dummy component for in-game testing which I removed for the PR so nothing in game uses do_after at the moment.
Currently only the movement cancellation is predicted client-side.
* Minor do_after doc cleanup
* do_the_shuffle
Fix nullable build errors.
* The last nullable
* Implement NeedHand
Thanks zum.
* nullable dereference
* Adjust the system query
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>