Commit Graph

131 Commits

Author SHA1 Message Date
dffdff2423
a3c93b0bd7 Add option for admins to disable bwoink (#25008)
* Add option for admins to disable bwoink

In a vain attempt to get people to ahelp more, provide the possibility
for admins to not play the bwoink sound if they don't want to scare the
player.

* Add silent indicator to discord relay

* Use string interpolation
2024-02-20 23:52:03 -07:00
Pieter-Jan Briers
74a31ac5f3 PlayerListControl fixes. (#25248)
* PlayerListControl fixes.

Fix a button being selected by default always, which then can't be selected properly for real. This affected multiple admin UIs.

This broke due to upstream RT changes but ButtonGroup was always kinda busted so whatever. Uses the new IsNoneSetAllowed to implement everything properly.

Also make sure the selected player STAYS selected when filtering the list and stuff.

Also this PlayerInfo record has been changed to only do equality on the User ID because otherwise it'd need to compare each field individually which would be weird.

* Revert changes to ListContainer

This change was made default in the engine, no longer necessary here.
2024-02-20 10:13:48 +01:00
Pieter-Jan Briers
2e6eaa45c5 Fix admin notes and database time nonsense. (#25280)
God bloody christ. There's like three layers of shit here.

So firstly, apparently we were still using Npgsql.EnableLegacyTimestampBehavior. This means that time values (which are stored UTC in the database) were converted to local time when read out. This meant they were passed around as kind Local to clients (instead of UTC in the case of SQLite). That's easy enough to fix just turn off the flag and fix the couple spots we're passing a local DateTime ez.

Oh but it turns out there's a DIFFERENT problem with SQLite: See SQLite we definitely store the DateTimes as UTC, but when Microsoft.Data.Sqlite reads them it reads them as Kind Unspecified instead of Utc.

Why are these so bad? Because the admin notes system passes DateTime instances from EF Core straight to the rest of the game code. And that means it's a PAIN IN THE ASS to run the necessary conversions to fix the DateTime instances. GOD DAMNIT now I have to make a whole new set of "Record" entities so we avoid leaking the EF Core model entities. WAAAAAAA.

Fixes #19897
2024-02-20 10:13:31 +01:00
Geekyhobo
dbf2c64cfd Adds a massban flag to the admin flags (#25327)
Adds a massban flag to the admin flags used on ss14 to ban large amounts of players rom a .tsv file

Co-authored-by: Geekyhobo <66805063+Ahlytlex@users.noreply.github.com>
2024-02-17 21:32:21 +01:00
Jezithyr
c15b0691ec Emergency revert for pulling (#24923)
Revert "Pulling rework (#20906)"

This reverts commit 0d8254b2a2.
2024-02-03 10:32:30 -08:00
metalgearsloth
0d8254b2a2 Pulling rework (#20906)
* Pulling rework

Fixing up the FOUR systems managing pulling, all the shitcode, and also making it nicer ingame.

* More pulling cleanup

* stats

* More cleanup

* First draft

* More pulling

* weh

* Fix puller

* Pulling working

* Fix merge

* Dunked

* Self-merge time
2024-02-03 14:36:09 +11:00
Aexxie
467e983ba9 Move grenade components to shared (#22691)
* Moves FlashComponent.cs, FlashOnTriggerComponent.cs, and SmokeOnTriggerComponent.cs to Shared

* Moves ExplodeOnTriggerComponent.cs, OnUseTimerTriggerComponent.cs, ActiveTimerTriggerComponent.cs, and SmokeOnTriggerComponent.cs to Shared

* Delete .run/Content Server+Client.run.xml

HOW DID THIS GET IN HERE ITS NOT AHHHH

* Update Content.Client/Explosion/SmokeOnTriggerSystem.cs

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>

* Update Content.Shared/Explosion/Components/ActiveTimerTriggerComponent.cs

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>

* Update Content.Shared/Explosion/Components/OnUseTimerTriggerComponent.cs

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>

* Update Content.Shared/Explosion/Components/OnUseTimerTriggerComponent.cs

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>

* Update Content.Shared/Explosion/EntitySystems/SharedTriggerSystem.cs

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>

* Update Content.Shared/Explosion/EntitySystems/SharedSmokeOnTriggerSystem.cs

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>

* Update ExplodeOnTriggerComponent.cs

* Revert "Delete .run/Content Server+Client.run.xml"

This reverts commit 29ee05f57de60eab5c92158d8eba5e3acba483c2.

* Fix?

* cannot figure out how to get this to go back please forgive

* Fixes a network issue

* leftovers

* Fixes

---------

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-02-02 00:29:01 +11:00
deltanedas
6b03aaaec7 make dialog window not evil (#24677)
* add Placeholder and make default buttons flags consistent w old behaviour

* DialogWindow ops

* make QuickDialog use DialogWindow

* Update Content.Client/UserInterface/Controls/DialogWindow.xaml

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2024-02-01 23:56:40 +11:00
Pieter-Jan Briers
3a2cd95d7f Fix solution editor UI (#24004)
Fixes #23645

The problem is that the solution editor UI is an EUI, so the UI updates before the game states are applied.

A correct fix would be to move it to a BUI in some way, but that's a little involved as we don't really have pre-existing code that uses BUIs in a manner good for this. I decided against this because I realized we'd want to have more tools similar to this and tbh I kinda figured integrating it with VV would be a better fix instead, so...

This is a bad workaround to manually synchronize the UI updates against game timing. It's not pretty but it works.
2024-01-13 15:52:42 +11:00
TemporalOroboros
d23c8d5c19 Revert 'Revert 'Solution Entities'' (#23168) 2023-12-29 08:47:43 -04:00
Emisse
938d6d9945 Revert "Solution Entities" (#23160)
Revert "Solution Entities (#21916)"

This reverts commit d75e743dd7.
2023-12-28 20:45:42 -07:00
TemporalOroboros
d75e743dd7 Solution Entities (#21916)
* Creates Content.Shared.Chemistry.Solutions
Copies Solution class to new namespace
Obsoletes old Solution class

* Switches over to the Solutions.Solution Solution

* Creates Content.Shared.Chemistry.Containers
Copies relevant components/systems to the new namespace
Obsoletes old versions

* Switches over to the Containers.XYZ namespace

* Creates SolutionSystem and obsoletes old SolutionContainerSystem methods

* Start using SolutionSystem for Solution manipulation

* EnumerateSolutions

* Move TryGetMixableSolution

* Move EnsureSolution to Server

* Create Solution Entities

* Stop using obsolete solution system methods

* Fix prototype component tests

* Add using ..Audio.Systems; back

* Wrap solution container slots in ContainerSlots

* Actually add the slot to the solution container map

* Dirty SolutionContainerComponent when ensuring solutions

* Revert namespace changes

* Remerge SolutionSystem and SolutionContainerSystem

* SolutionContainerManagerComponent refactor

* Avoid wrapping necessary code in DebugTools.Assert as it is removed when compiling for release

* Readd examine reagent sorting

* Fix errors

* Poke tests

* Fix solution names not being applied

* Fix WoolyComponent including statement

* Fix merge skew

* Fix compile errors

* Make reactions use solntities

* Reindent solution class namespace

* Field attribute changes

* AutoGenerateComponentState for SolutionContainerComponent

* SolutionContainerComponent -> ContainedSolutionComponent

* ref ReactionAttemptEvent

* Denetwork preinit solutions

* Misc 1

* Nullable TryGetSolution out vars

* Cache associated solutions

* Fix merge skew

* Use explicit regions in SharedSolutionContainerSystem.Capabilities

* Add debug assert

* Use explicit regions in SharedSolutionContainerSystem.Relay + ref SolutionContainerChangedEvent

* ContainedSolutionComponent.Name -> ContainedSolutionComponent.ContainerName

* SolutionComponent doc comments

* Implicit DataField names and property purge

* ReagentEffect DataField names

* Local variables for readability

* Sort using statements + Entity<T> event handlers

* Fix compile erros

* Fix compile errors

---------

Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
2023-12-28 17:58:14 -08:00
Leon Friedrich
e685cb626b Un-revert IPlayerManager refactor (#21244) 2023-10-28 09:59:53 +11:00
metalgearsloth
a2bbda43cc Revert "Update submodule to 172.0.0 (#21222)" (#21225) 2023-10-24 21:55:20 +11:00
Leon Friedrich
7ba0ea2926 IPlayerManager refactor (#21215) 2023-10-24 20:19:08 +11:00
DrSmugleaf
8801885b35 Fix not being able to sort by playtime in the F7 players tab (#21004) 2023-10-14 14:56:06 -07:00
DrSmugleaf
5be0df32ad Add admin Erase verb, add checkbox to erase from the ban panel (#20985) 2023-10-14 02:02:56 -07:00
DrSmugleaf
3a2482420f Show total playtime in player list and AHelp window (#20980) 2023-10-14 01:55:40 -07:00
DrSmugleaf
db4ad40430 Add panic bunker UI and automatic panic bunker (#20954) 2023-10-13 11:56:12 -07:00
DrSmugleaf
71ab660885 Add role bans tab to the bans admin window (#20388) 2023-09-22 14:08:28 -07:00
Kirillcas
8e351bbf68 fix admins Flags arrays (#19644) 2023-09-16 13:58:11 +10:00
metalgearsloth
5a0fc68be2 Content update for NetEntities (#18935) 2023-09-11 09:42:41 +10:00
DrSmugleaf
a88e747a0b Refactor serialization copying to use source generators (#19412) 2023-08-22 18:14:33 -07:00
Leon Friedrich
4d845caa07 Allow zoom command to ignore zoom limits (#19419) 2023-08-22 19:27:41 +10:00
DrSmugleaf
35d7656784 Add ahelp typing indicator for admins (#19060)
* Add ahelp typing indicator for admins

* Lower typing updates throttle from 3 seconds to 1

* Add stopping typing when sending a message

* Lower typing indicator timeout from 15 to 10 seconds
2023-08-13 18:03:17 -05:00
Moony
e2b22a4cd8 Toolshed (#17895)
* ogh

* i should save my work

* ogh

* hhcdfhjbghshbxdfhghshc
- lots of bugs in parsing still
- invocation is a stub

* expr parsing works

* awawa

* Saving work

* Improve APIs a bit all around, add shortcuts.

* awa

* awa

* AAAAAA

* save work

* Move shit to engine

* lord

* bql is kill

* forgot the fucking bike rack

* bql is kill for real

* pjb will kill me

* aughfhbdj

* adgddf

* gdsgvfvxshngfgh

* b

* hfsjhghj

* a

* tf you mean i have to document it

* follow C# standards

* Assorted cleanup and documentation pass, minor bugfix in ValueRefParser.

* Start porting old commands, remove that pesky prefix in favor of integrating with the shell.

* bw

* Fix valueref up a bit, improve autocomplete for it.

* awa

* fix tests

* git shut up

* Arithmetic commands.

* parse improvements

* Update engine.

---------

Co-authored-by: moonheart08 <moonheart08@users.noreply.github.com>
2023-08-02 16:09:08 -05:00
Riggle
579913b617 Better notes and bans (#14228)
Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
2023-07-21 13:38:52 +02:00
Leon Friedrich
be0d22ad5e Move upload commands to engine (#16582) 2023-05-20 11:53:09 +10:00
DrSmugleaf
77ae2f2484 Fix Next button resending the same admin logs (#16557) 2023-05-17 22:51:17 -07:00
DrSmugleaf
b5fe408baf Fix "Next" never sending admin logs for rounds outside the cache, show a round's total logs on the UI (#16531)
* Fix next never sending logs for rounds outside the cache

* Show round's total log count on the ui

* Disable next button when waiting for a next response

* Cleanup AdminLogsEui.CurrentRoundId

* Fix popout window width
2023-05-17 06:04:28 -05:00
Leon Friedrich
cedec8d415 Ensure EUIs close themselves (#15860) 2023-04-29 13:16:24 +10:00
metalgearsloth
ae01618874 Revert "Revert "Replace ResourcePath with ResPath (#15308)" (#155… (#15566) 2023-04-20 20:16:01 +10:00
metalgearsloth
acf79a8209 Revert "Replace ResourcePath with ResPath (#15308)" (#15551) 2023-04-20 11:43:54 +10:00
Ygg01
71f358a027 Replace ResourcePath with ResPath (#15308) 2023-04-19 23:39:17 +10:00
DrSmugleaf
13d299dea3 Fix admin note updates duplicating visually across all open note windows (#15471) 2023-04-16 23:18:54 -07:00
metalgearsloth
3dc0908151 Revert "Show ban and note count in ahelp window" (#15347) 2023-04-12 19:43:33 +10:00
DrSmugleaf
26cd16eeaa Show ban and note count in ahelp window (#15328) 2023-04-12 10:34:25 +10:00
DrSmugleaf
c25d7ba7bd Fix not showing ahelp relay label to players (#15327) 2023-04-12 10:19:09 +10:00
DrSmugleaf
ed45440256 Always show ahelp relay message when the relay is enabled (#14931) 2023-03-28 14:27:21 -07:00
Nemanja
49f7575298 Cuffable/Handcuff ECS (#14382) 2023-03-13 19:34:26 -04:00
Leon Friedrich
b148bebd60 Equipment verbs & admin inventory access. (#14315) 2023-03-06 04:12:08 +11:00
Chief-Engineer
8f402ee8ca Add non-players button to log viewer (#14097)
* add include non-players button to log viewer

* breakout player filter check

* fix sending player logs with no players selected

* fix default not returning player logs, causing test issue
2023-02-28 08:09:35 -08:00
Chief-Engineer
e29a3874b8 add entity logs verb (#14170) 2023-02-18 19:00:17 -06:00
Leon Friedrich
f1cb0ca37a Misc replay related changes (#13250) 2023-01-08 05:04:09 +11:00
metalgearsloth
455939afc1 Call reload protoypes on admin changes (#13160)
* Call reload protoypes on admin changes

Fixes NPCs not working after engine change.

* Also chems

* other fixes
2022-12-24 15:31:11 -06:00
Leon Friedrich
2dc7663d1a Remove explosion networking jank (#12733) 2022-11-27 21:24:35 +11:00
Leon Friedrich
94011ca2b1 Misc changes from replay branch (#12581) 2022-11-15 17:34:47 +11:00
DrSmugleaf
da29a01846 Add ban list window (#12574) 2022-11-14 20:06:55 +01:00
metalgearsloth
ebe79def58 Fix admin freeze attacks (#12072) 2022-10-21 01:09:52 +11:00
Leon Friedrich
fd5b624a76 Ahelp / player list changes (#11392) 2022-10-15 14:26:29 -07:00