Commit Graph

3993 Commits

Author SHA1 Message Date
Crotalus 230c1cf328
Add auto modes to reagent grinder (#26290)
* Add auto-mode to reagent grinder

* Remove redundant stuff with DataField

* Use margin instead of dummy control

* Resolve grinder component

(cherry picked from commit a606909d30477453bc23765df4c78f04b2ead522)
2024-04-07 14:11:40 +02:00
metalgearsloth c228198f8f
Update audioparams (#26387)
Drops busname + attenuation.

(cherry picked from commit a25801b35b6170ce7b371957ec97f9db516f1094)
2024-04-07 14:11:11 +02:00
Jake Huxell 7be31aab33
Reduced Warning Count By 130 For Full Rebuilds (#26518)
* remove deprecated entity coordinate extension functions. Reduces warning count by approximately 50

* final toCoords Removed

* Remove all unused variables and dead code paths

* remove always true variable, should be a cvar or something instead

* remove superfluous variables from tests

(cherry picked from commit 59e46aab93ca38f8d57fcad4e3a2c893737d9ad4)
2024-04-07 14:11:06 +02:00
Jake Huxell 9e8416ba73
[BugFix] Persist Job Restrictions When New User Late Joins (#26498)
* make sure to keep late join button disabled if requirements not met

* more succinct representation of condition

(cherry picked from commit cfc0ecbf80ab497a01443aea354f4ac3dc205b58)
2024-04-07 14:10:51 +02:00
Tayrtahn fc280ed0c5
Separate "thank you" messages from general ads (#25867)
* Separated "thank you" messages from general ads

* Moved MessagePackPrototype to shared, cleaned up AdvertiseComponent, and actually killed AdvertisementsPackPrototype.
+More suggests changes.

* Rename PackPrototypeID to Pack in both components.

(cherry picked from commit 794a447bb7f0a36abaac802e0fa4d1ce7c8998ef)
2024-04-07 14:10:23 +02:00
deltanedas 9c2666cdb2
voicemask can select speech verb (#25768)
* add Name field to SpeechVerbPrototype

* extra locale for voice mask ui

* SpeechVerb ui and handling

* raaaaaaaaa

* reeeeeeeeal

Co-authored-by: Tayrtahn <tayrtahn@gmail.com>

* fix sort

* did you hear john syndicate died of ligma

* Update Content.Client/VoiceMask/VoiceMaskNameChangeWindow.xaml

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit d13da2837d3a919df2101b37eae945e633c76c56)
2024-04-07 14:09:57 +02:00
Nemanja e2ddce9938
dynamic alert sprites (#25452)
* dynamic alert sprite

* fix fat cooldowns

(cherry picked from commit d576f5cbbb3969d1399a25b9692c16b63bbf2a46)
2024-04-07 14:09:54 +02:00
deltanedas 76199f9ff0
biggest gridinv update OF ALL TIME (#25834)
* add SaveItemLocation keybind

* make item direction public to avoid having to change between Angle for no reason

* add item location saving

* show

* Added a better save keybind, made it draw saved positions, and trying to save in a position it has already been saved in removes that position.

* w

* code style

* Make taken spots appear blue

* style

* !

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: notquitehadouken <tripwiregamer@gmail.com>
Co-authored-by: I.K <45953835+notquitehadouken@users.noreply.github.com>
(cherry picked from commit 6863a7cc26f815ec9089003e8735777cea927d0f)
2024-04-07 14:08:49 +02:00
Jake Huxell a85967f65f
Late Join Menu Properly Retains Position On New Player Joins (#26483)
* When another player late joins it will correctly update the UI locally

* Resolve passengers not displaying the correct message in late join

* Improve final boolean comparison of button disabled state to be a bit neater

(cherry picked from commit bf7c1d647e7633ee2993a7da22318b7cf280d8ba)
2024-04-07 14:04:28 +02:00
nikthechampiongr 623d6414d5
Fix mailing units turning into disposal units while recharging. (#26383)
* Fix mailing units turning into disposal units while recharging.

The states were hardcoded.

* Fix error handling

* Make default states constants

(cherry picked from commit 94e4755a8de6885c97fac1cfb767144e8e07981a)
2024-03-27 18:36:59 +01:00
Wrexbe (Josh) 0bb151f0d5
Store keybind priority (#26356)
* Fix saving keybind priority

* Change movestoreditem keybind priority to prevent bug

---------

Co-authored-by: wrexbe <wrexbe@protonmail.com>
(cherry picked from commit f7a1ffd0aab25d70ac185753d596469fc1e87480)
2024-03-27 18:33:45 +01:00
Leon Friedrich 7ecc968f8c
Run `fixgridatmos` for cargo & emergency shuttle (#26382)
Fix cargo & emergency shuttle

(cherry picked from commit ec761114eacdeed6e68f9c94dddfdbec8a6e26be)
2024-03-27 18:32:40 +01:00
DrSmugleaf ad0888a0fd
Hide empty marking categories in the markings picker (#26377)
Hide empty marking categories

(cherry picked from commit 4790ccba19c1f63f21a2aa57fe4525587c119d9c)
2024-03-27 18:28:50 +01:00
Leon Friedrich 239fd1d654
Partial atmos refactor (#22521)
* Reduce atmos component queries

* Remove method events

* Cache airtight data

* Make MolesArchived nullable

* Fix airtight cache

* only get tile def once

* Immutable mixtures

* firelock queries

* misc

* misc cleanup

* Trim disconnected tiles

* Fix merge issues and bugs

* Why does the PR keep increasing in scope

* debug overlay

* Fix bugs

* Fix test, remove unused events

* Add setmapatmos command

* Fix overlays

* Add map check

* A

* Resolve conflicts with #26102

* Remove some obsolete methods

(cherry picked from commit 18a35e7e83b2b71ee84b054d44d9ed5e595dd618)
2024-03-24 00:14:24 +01:00
Wrexbe (Josh) 998bc5af12
Fix crash on load when no slot key assigned (#26354)
Co-authored-by: wrexbe <wrexbe@protonmail.com>
(cherry picked from commit e69723153dc571e1461c99ac5c7d82a1992e011d)
2024-03-24 00:14:01 +01:00
Tayrtahn eb4cd9bc0b
Code Cleanup: Purge obsolete MapManager methods (#26279)
* GetGrid

* GridExists

* TryGetGrid

(cherry picked from commit ae3d745430e3c5250d19553429e7cda2b8050d10)
2024-03-24 00:13:35 +01:00
metalgearsloth 2c49471e3e
FTL UIScale fixes (#26305)
- Fix text drawing being offset.
- Fix beacon snapping and distance check.
- Fix DrawData being offset.
- Fix bounds check for map objects not using PixelSize.

(cherry picked from commit 000a259563fd6ac1ec6889cd1fc767fcbc4a39de)
2024-03-24 00:12:31 +01:00
Plykiya 0db205377e
Door Remote now shows Mode in UI (#26162)
* Prep for DoorRemote Status

* Door Remote Mode Messages

* plural opens and closes

* never trust webedits

---------

Co-authored-by: Plykiya <plykiya@protonmail.com>
(cherry picked from commit e627a0d24bc8ae89665feb0b0d519b5fbb77ce32)
2024-03-24 00:08:08 +01:00
Pieter-Jan Briers 16c7c2882d
Improve admin message seen/dismiss state. (#26223)
Fixes #26211

Admin messages now have separate "seen" and "dismissed" fields. The idea is that an admin should be able to tell whether a user pressed the "dismiss for now" button. Instead of using "seen" as "show this message to players when they join", "dismissed" is now used for this.

Existing notes in the database will automatically be marked as dismissed on migration. A note cannot be dismissed without being seen (enforced via constraint in the database too, aren't I fancy).

As part of this, it has become impossible for a player to play without dismissing the message in some form. Instead of a shitty popup window, the popup is now a fullscreen overlay that blocks clicks behind it, making the game unplayable. Also, if a user somehow has multiple messages they will be combined into one popup.

Also I had enough respect for the codebase to make it look better and clean up the code somewhat. Yippee.

(cherry picked from commit d776c4b392a082dba7539d77cfa20fc904ed4091)
2024-03-24 00:08:01 +01:00
Tayrtahn 3dd5dcadc5
Code cleanup: Purge calls to obsolete EntityCoordinates methods (#26292)
* Purge calls to obsolete EntityCoordinates methods

* Pizza defruited; rerun those tests!

(cherry picked from commit f4cb02fb0ca385c858569c07c51afb0d24ade949)
2024-03-24 00:07:58 +01:00
Tayrtahn 11eff87687
Code cleanup: Dirty(Comp) (#26238)
* Replaced uses of Dirty(Component) with Dirty(Uid, Component)
Modified some systems (notably pulling-related) to use uids.

* Missed a few

* Revert changes to pulling

* No

(cherry picked from commit 4a83c365858830e3b2ff2b94fff501256422c20e)
2024-03-24 00:04:13 +01:00
metalgearsloth d3a54f710f
Fix build (#26258)
* Fix build

- Fixes a couple paint things that were broken.

* wat

(cherry picked from commit 6de5fbfafbde700d711a566f6a43f05f7a99e455)
2024-03-24 00:03:31 +01:00
metalgearsloth 4bacc02a0e
Pulling rework v2 (#24936)
* 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

* Fix hotkey

* Fix container changes

* oop

* Fix multi-pulling

* Move alerts cleanup.

* pulling fixes

(cherry picked from commit c584f6444a85cc53edb060230f7e7b2b76cc87bf)
2024-03-24 00:03:20 +01:00
nikthechampiongr 6d38428b56
Fix SCRAM implant not working while cuffed. Incidentally fix freedom implant working while dead/crit (#25978)
* Fix SCRAM implant not being usable while in cuffs. Also fix freedom implant from working while dead/crit as a side effect

* Move check up to apply to all actions and do thing I forgor to do before

* Change check into an ActionBlocker check that also checks whether the user is sleeping.

* Make checking for Consciousness the default for actions

Went through and chose what I believe to be sensible defaults for actions that had CheckCanInteract.

* Fix typos my beloved

I had an unbelievable skill issue

* Fix major skill issue

(cherry picked from commit 22e9d6562f21bdd4f0962d6e3b6fcdd81bb4c253)
2024-03-24 00:01:51 +01:00
Killerqu00 f33fe79c7a
Initial Infected can see each other (#25934)
initial infected icon

(cherry picked from commit 45d6c03407e41d92caa368e1db826efd6d828b66)
2024-03-24 00:01:46 +01:00
brainfood1183 53b2d209b0
Spray Paint (Review Ready) (#23003)
* Spray Paint (Draft)

* paint colors, paints in maints loot, cargo crate of paints.

* fix

* remove paint (sort of)

* moved paintcleaner into own system

* Moved paint to server (had to unfortunately)

* doafter now breaks when moving away.

* cant paint mobstatecomp

* loads of fixes

* fixes

* fixes

* nopaintshadercomp

* fixes

* fix

* use locale for paint remove string

* remove nopaintshadercomponent and use blacklist

* remove enabled.true from visualizer

* paint doafter event.

* add verbs for paint and remove paint and icon for paint verb.

* fixes

* no longer replaces shader when shader exists.

* replace forloop with foreach, check shader before adding and removing.

* paint doafter now separate so no copy paste code

* Entities in sprayed targets item slots are also now correctly sprayed.

* fix

* fix

* fix airlock psray painter now removes painted before painting door.

* spray paints now use openablecomponent.

* fix

* fix damn accesstypes.

* fix

* fix

(cherry picked from commit e4d5e7f1aebfc37b1bc3453fdb39578f3897b6a1)
2024-03-23 23:59:20 +01:00
DoutorWhite 2db74bd7c5
Improves Medical Hud interface and functionality (#26027)
* Improvements to the medical hud interface

* Adds an icon for SSD players

* Indentation fix

* Update sprites, changes direction and adds new status icon.

* Adds decomposing icon

* Code cleaning

* Changes Crit Icon sprite

* Simplifies the decision structure

* Changes copyright line

* Changes Critical Icon sprite

* Makes the Critical Icon border darker

* Changes sprites to /tg/ station

* Updates copyright

* Makes Dead Icon animation slight faster

* Code cleaning

* Remove some unused imports

* Code cleaning and rename icon

* Minor code cleaning

(cherry picked from commit 8d40bc36a93d3d5c6d3ece6c662ac9747f7837ae)
2024-03-23 23:56:19 +01:00
Leon Friedrich 1aefd9c6a1
Add reckless replay load button (#26212)
* Add reckless replay load button

* A

* More descriptive button

(cherry picked from commit 646f7e07a83816875157c1a445af445d2b72dfae)
2024-03-23 23:56:14 +01:00
deltanedas e948115f9f
Move faction exception and everything it needs to shared (#25154)
* move faction prototype to shared

* move faction exception and member stuff to shared

* fix breaking changes for random stuff

* move pettable friend stuff to shared

* mostly fix

* final fixy

* dragonops

* final fixy II

* use querys and fix warpspeed fish (probably)

* fixer

* Rrrr!

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>

(cherry picked from commit 7561bef6a7aee65149381e155da53abc65a6a4e7)
2024-03-23 23:55:48 +01:00
Golinth b56551f310
Criminal Record Icons below Job Icons (#26203)
SS13 Criminal Record Icon Location REAL

Adds a new Offset DataField to the StatusIcon Prototype. It effects status icon location on a per-pixel level. Not sure what else it could be used for, but hey, nothing wrong with generalizing. Also moves the mindshield icon priority to one, to fix an unreported bug with them covering non-job icons.

(cherry picked from commit 21de5e9a08929e8c710030b887c081bf6afc9649)
2024-03-23 23:51:45 +01:00
LordCarve f8ea31a192
Obsolete `Logger` cleanup for `EntitySystem`s part 2 (#26159)
* Kill the static InRangeUnOccluded

* Adjusted 4 more EntitySystems that were missed.

(cherry picked from commit 7d275a4b5e4188db424cc417c609dced3f9aca89)
2024-03-17 15:11:33 +01:00
Ed a74bbc0fc0
Fashion is my profession - Procedural jumpsuit variants (#25888)
* add color field to clothing layers

* add support to randomsprite

* bababa

* finalize spriting work

* add to game

* fix

* remove space

* edit patelle, +1 decor variant

* added only pants, some sprite fix

* inflation

* fix mixed

* not tested commit

* Revert "not tested commit"

This reverts commit 4a904df3452263e87c9cb819ab5d8cf411ebe468.

* naked human is fun

* update

* add new style

* some sprite pixel tweak

* Update meta.json

(cherry picked from commit 986ac589b44687fd2f3b71da00a52434db75abe3)
2024-03-17 15:09:40 +01:00
Pieter-Jan Briers 17c1a5a7fa
Throttle people trying to connect to a full server. (#20972)
* Throttle people trying to connect to a full server.

To reduce spam/load on the server and connection logs table.

Players are forced to wait 30 seconds after getting denied for "server full", before they can try connecting again.

This code is an absolute nightmare mess. I tried to re-use the existing code for the redial timer but god everything here sucks so much.

Requires https://github.com/space-wizards/RobustToolbox/pull/4487

* Use new NetDisconnectMessage API instead.

* Add admin.bypass_max_players CVar.

Just something to help with debugging the player cap on dev, I don't expect this to ever be disabled on real servers.

(cherry picked from commit 0ecc5e8c96c235af265ab747d7345b363f94b1e4)
2024-03-17 15:07:14 +01:00
778b 3493b63074
Fixed bug with appearance of ammo battery magazine guns (#26009)
fixed

(cherry picked from commit 63232389ca9a499fb614960ccf9eae9b3d186037)
2024-03-17 14:59:06 +01:00
maylokana 1356203d30
Attempt at a more noticably whispered bubble (#25602)
* Attempt at a more noticably whispered bubble

* Better implementation

(cherry picked from commit 4f698a6e0d74d28713e2dabbfb20969477538e11)
2024-03-17 14:55:51 +01:00
Arendian 13c6eeb87a
Criminal record hud icons (#25192)
* Security hud shows icon based on criminal record status

* Criminal status now linked to name instead of identity

* parole loc

* Test fix

* review changes

* Check station records instead of storing names on criminal record consoles.

* cleanup

* more cleanup

* review changes

* change outdated comments

* rename

* review changes

* remove event subscription

* replaced event with trycomp

* default value

(cherry picked from commit 60b9d89e4dbdd8aaad4992a105628297d9480617)
2024-03-17 14:52:22 +01:00
Errant 572e7b186f
Species info in Guidebook and at chargen (#25844)
* guidebook pages defined

* species info button in character profile editor

* if current species has no guidebook page then open the parent page

* skrek

* destroying evidence of secret vox plot

* icon size adjustment, no icon if guidebook page for species does not exist

* finished pages

* additional info

* weh

(cherry picked from commit 84a07315dde09c2cff716f9f3a73f493b6b56cc7)
2024-03-17 14:52:17 +01:00
metalgearsloth df544f094d
Shuttle map IFF tweaks (#25897)
- HideLabel just means it won't have its name / button drawn whereas Hide will block it completely.

(cherry picked from commit a41772a006302bbe267793569b4b0d171eb82c87)
2024-03-17 14:52:08 +01:00
Gregg 6ac1c7e8e3
fix: ambient music fade in (#25874) (#25969)
(cherry picked from commit e47f84568eec53efd66fca6e79d8c594a508cf3c)
2024-03-17 14:51:28 +01:00
DoutorWhite 5d055baf1a
Prevents FloorOcclusion from breaking rendering (#25960)
* Prevents FloorOcclusion from breaking rendering

* Minor change

(cherry picked from commit 717da4a8f3b6d68cb17d6bf75c84eae6ce46e1b5)
2024-03-17 14:51:23 +01:00
Vasilis 0342e170f4
Fix game.role_timers not effecting the antag menu (#25964)
* Fix game.role_timers not effecting the antag menu

* Yeah i guess i should

(cherry picked from commit 1eb2bcf45532c4200c1f2606d1759fe335a636f7)
2024-03-17 14:51:22 +01:00
LordCarve 60f2c8376d
Obsolete `Logger` cleanup for `EntitySystem`s (#25941)
* Small obsolete Logger cleanup

* Fixed three EntitySystem logs that weren't doing it right.

(cherry picked from commit aafe81512258b5a80776ada1f471b58e7507ca2d)
2024-03-17 14:46:35 +01:00
Flesh 0facab061b
Added winddown to space drugs effect (#25652)
added winddown to drug effect

(cherry picked from commit 865765d4eca5483d22c5d1e496b7f7c8787833a8)
2024-03-17 14:46:32 +01:00
Nemanja 8950fd6a0f
Add a toggle for colorblind friendly progress bar colors (#25318)
* Add a toggle for progress bar colors

* yeah this thing

* PJB review

* optimization

(cherry picked from commit f3f4616c49317898aeeff304160b0b50df9ee851)
2024-03-17 14:46:26 +01:00
Brandon Hu 34d820f0f2
Disable the publish and preview buttons on news management console when bounds are exceeded (#25939)
(cherry picked from commit 08e1b79a7f6d75441bf50ead268e4b852d270172)
2024-03-17 14:46:19 +01:00
MODERN ee8e5b4f2f
CargoConsoleMenu localization (#25931)
- every category of type "cargoProduct" was edited to "cargoproduct-category-name-{categoryName}"
- file "cargoproduct-categories.ftl" was added to english localization to localize categories of cargoProduct
- CargoConsoleMenu.xaml.cs got tweaks which prevent issues with strings comparisons

(cherry picked from commit 6e38b992cfc607e09178efc178b86f35152f0cde)
2024-03-17 14:46:09 +01:00
metalgearsloth 132d02653c
Fix exped FTL (#25823)
Also fixed some other stuff I noticed.

(cherry picked from commit c23b3d804efc7f35cf6c56d872d8dd7fee82ece1)
2024-03-08 12:54:55 +01:00
metalgearsloth 02c58d4e80
Fix shuttle IFF drawing (#25821)
Didn't account for UI scale properly I love transforms.

(cherry picked from commit 87e2755c31a972f8839b408e5cf78d4665533927)
2024-03-08 12:54:54 +01:00
metalgearsloth 772218ab65
Fix shuttle console UI scaling (#25807)
(cherry picked from commit b7ccf738883b486364b10b272ce4c9fef3ad6261)
2024-03-08 12:54:54 +01:00
metalgearsloth f102e8ff75
Shuttle console + FTL rework (#24430)
* Add shuttle interior drawing back

Just do it per-tile she'll be right, at least it's done with 1 draw call.

* Revamp shuttle console

* Bunch of cleanup work

* Lables sortito

* dok

* Pixel alignment and colours

* Fix a bunch of drawing bugs

* Shuttle map drawing

* Drawing fixes

* Map parallax working finally

* weh

* Commit all my stuff

* mic

* deez

* Update everything

* Xamlify everything

* uh

* Rudimentary blocker range

* My enemies have succeeded

* Bunch of changes to FTL

* Heaps of cleanup

* Fix FTL bugs

* FTL

* weewoo

* FTL fallback

* wew

* weh

* Basic FTL working

* FTL working

* FTL destination fixes

* a

* Exclusion zones

* Fix drawing / FTL

* Beacons working

* Coordinates drawing

* Fix unknown map names

* Dorks beginning

* State + docking cleanup start

* Basic dock drawing

* Bunch of drawing fixes

* Batching / color fixes

* Cleanup and beacons support

* weh

* weh

* Begin pings

* First draft at map objects

* Map fixup

* Faster drawing

* Fix perf + FTL

* Cached drawing

* Fix drawing

* Best I got

* strips

* Back to lists but with caching

* Final optimisation

* Fix dock bounds

* Docking work

* stinker

* kobolds

* Btns

* Docking vis working

* Fix docking pre-vis

* canasses

* Helldivers 2

* a

* Array life

* Fix

* Fix TODOs

* liltenhead feature club

* dorking

* Merge artifacts

* Last-minute touchup

(cherry picked from commit c5486873db0d6826122eb1f30007e392fc101082)
2024-03-08 12:54:53 +01:00
metalgearsloth fa61952f51
Add trade stations (#23863) 2024-03-08 09:52:50 +01:00
Tayrtahn 549d4f18cd
Add SharedPopupSystem.PopupPredicted (#25811)
* Added SharedPopupSystem.PopupPredicted

* Documentation improvement

(cherry picked from commit 0738829510d823bf0f22eaf197f6f5cc3744bbc3)
2024-03-07 01:52:38 +01:00
Errant bdcfcf108f
Readmin enables Debug Coordinates in F3 overlay (#25063)
readmin debugcoords

(cherry picked from commit 46f6799ba2afe0e6a5cfbcceef9db84f950d84e5)
2024-03-07 01:52:29 +01:00
Pieter-Jan Briers e01969b0fd
Paper save button, back to ctrl+enter save. (#25870)
* Revert "Change keybindings for paper (#25853)"

This reverts commit 4b56996fcdbf88581d31d4c8aeb184f0c4c23309.

* Add a save button to the paper editing UI instead.

(cherry picked from commit d385c1bb2327da4fa6bf83d1813c44295eb8efdd)
2024-03-07 01:28:18 +01:00
Tayrtahn c255822389
Add prediction to hand labeler labels (#25869)
Added prediction to labels

(cherry picked from commit f4976a32886850df2033e7866d0c9a5df37be1af)
2024-03-07 01:27:58 +01:00
exincore a66dc10cf0
feat(inventory): Add secondary smart-equip star (#25696)
* feat(inventory): Add secondary quick-remove star

* style: Fix end of file newline

* feat(inventory): Change secondary smart-equip star to silver star

* feat(inventory): Decrease secondary quick-equip star luminosity to better match the primary

(cherry picked from commit c8cc806a8fed7de92db48f4f066f63d5464502d1)
2024-03-07 01:18:38 +01:00
Fildrance 426b208c1d
fix: lobby music volume will be changed on options change without restart (also lobby music not looped anymore) (#25530)
* fix: lobby music volume will be changed on options change without restart (also lobby music not looped anymore)

* refactor: now lobby music is part of ContentAudioSystem. Lobby playlist is used instead of single track. Client now selects next lobby soundtrack after previous finished.

* refactor: incapsulated info on current lobby track in simple record

* refactor: fixed inconsistent naming between song and soundtrack for lobbymusic

* refactor: xml-doc for LobbyPlaylistChangedEvent

* fix: inverted invalid _audio.PlayGlobal check to return only if lobby soundtrack play call failed

---------

Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
(cherry picked from commit 4c87dcd3cb92855df1fa01dea52d2ddd09f2adce)
2024-03-07 01:18:33 +01:00
lapatison 4444cce972
Small news manager localisation (#25718)
* loc

* per review

* Update Content.Client/MassMedia/Ui/ArticleEditorPanel.xaml

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>

---------

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
(cherry picked from commit 4f7facbd73270d38efce72fbb9d0dabd1f432dd2)
2024-03-07 01:18:30 +01:00
Errant 63e45f9532
Alerts for breathing plasma/tritium (#24484)
* Alert autoremove v0

* Code cleanup and timing

* comment

* Tritium, code compression

* not resolving manually

* reduced lookups, new comp

* fix-fix yes

* use RemCompDeferred, handle OnUnpaused

* missed a todo

* entitysystem resolve

* remove unnecessary component updates

* remove AlertState from comp, move EntityUnpausedEvent actions to AlertStateComponent's Timespan

* Code cleanup

* comments

* combines AutoRemove input into Clear

* minor logic adjustment that does not really change anything but is less ambiguous

(cherry picked from commit ecd2d5a644540c6ad28903ee4fb2af87876e3030)
2024-03-07 01:17:31 +01:00
Flesh 34287d692c
Cargo request console search now includes crate descriptions (#25708)
added condition checking description to cargo search

(cherry picked from commit c83ad11be170f860a0fbd5dde257fd0537e89712)
2024-03-07 01:12:17 +01:00
LordCarve ba36e5195f
Refactor AME to use ItemSlot for Fuel (#25558)
* Using wrench on AME doesn't first try to put it in.

* Refactor AME to use ItemSlot for fuel.

* Apparently these names want to match.

(cherry picked from commit c47391011d0f7f56dfcba8e4db348f0dc0d58c09)
2024-03-07 01:08:04 +01:00
Rainfey b9d2f5a409
Refactor antag rule code (#23445)
* Initial Pass, Rev, Thief

* Zombie initial pass

* Rebase, Traitor

* Nukeops, More overloads

* Revert RevolutionaryRuleComponent

* Use TryRoundStartAttempt, Rewrite nukie spawning

* Comments, Add task scheduler to GameRuleSystem

* Zombie initial testing done

* Sort methods, rework GameRuleTask

* Add CCVar, Initial testing continues

* Might as well get rid of the obsolete logging

* Oops, i dont know how to log apparently

* Suggested formatting fixes

* Suggested changes

* Fix merge issues

* Minor optimisation

* Allowed thief to choose other antags

* Review changes

* Spawn items on floor first, then inserting

* minor tweaks

* Shift as much as possible to ProtoId<>

* Remove unneeded

* Add exclusive antag attribute

* Fix merge issues

* Minor formatting fix

* Convert to struct

* Cleanup

* Review cleanup (need to test a lot)

* Some fixes, (mostly) tested

* oop

* Pass tests (for real)

---------

Co-authored-by: Rainfall <rainfey0+git@gmail.com>
Co-authored-by: AJCM <AJCM@tutanota.com>

(cherry picked from commit 4e6c59cfe51211064d79a727cc2d37c2a2f55a2c)
2024-03-07 01:06:59 +01:00
Menshin 37c7ac7931
Add space heaters (#25250)
(cherry picked from commit 98843511014e1b5fce34b7e1215179dd3d0f94c8)
2024-03-07 01:05:02 +01:00
Debug c6bd89ce76
Revert "Fix chat bubbles (#25643)"
This reverts commit a074c30a52.
2024-03-07 01:03:46 +01:00
metalgearsloth a074c30a52
Fix chat bubbles (#25643)
Dependencies got misused

(cherry picked from commit 23d2c4d924efbae39f1b6677f1e495f55e3d75a2)
2024-03-07 01:02:59 +01:00
Julian Giebel c9f4910cb9
News UI overhaul and PDA notifications (#19610)
(cherry picked from commit 0752acdc2ca2db43581e2c0d95a5d96041247bc9)
2024-03-07 01:02:24 +01:00
Whisper e0d84f2db2
Whisper bleed update v3 (#25434)
* Whisper bleed update v3

* missed a few

* Add bleeding message to health analyzer.

* Fix bleed notification not updating.

* Apparently this either doesnt exist

(cherry picked from commit ff65cb7b0caaeb9edd9461eff942bdc6f5eb7f50)
2024-03-07 00:59:34 +01:00
Plykiya 9adf84fb89
Syringe UI cached updates (#25581)
Injector status UI cached values

Co-authored-by: Plykiya <plykiya@protonmail.com>
(cherry picked from commit dffd02adb161f8299e858fb6c0c2eb71e595e21f)
2024-03-07 00:57:12 +01:00
Pieter-Jan Briers 5d93d35fdf
Character profile sanitization improvements (#25579)
Validate that job and antag prototypes can actually be set in character profiles, rather than just checking if the prototype exists.

Make preferences system just call existing validation code when loading prototype from database, instead of some hacked-together stuff.

Also I made the character profile validation logic take dependencies in via parameter because fuck resolves.

(cherry picked from commit 8d244f7b76ba881253eb94611acaab31865c3920)
2024-03-07 00:56:04 +01:00
Krunklehorn 17af37f8bc
Fix grid inventory pick/drop rotation (#25510)
OnPiecePressed

(cherry picked from commit 7d6e4b164d6013257423afe02b3f06447e37bec3)
2024-03-07 00:53:11 +01:00
Tayrtahn f40668818b
Add a container display to dispenser UI (#25391)
* Implemented contents display for dispenser UI

* Update Content.Client/Chemistry/UI/ReagentDispenserWindow.xaml.cs

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>

* Resolve the netent into a euid first

---------

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
(cherry picked from commit 100ece2e2078ab2fe99f4ce1ab36b2cd05319772)
2024-03-07 00:53:04 +01:00
Vasilis 4cced6e9d6
Fix centcom and other jobs with setPreference set to false showing up anyway (#25496)
* God dammit pjb

* Smol cleanup

(cherry picked from commit 237d89cbfe526856dd547a7e9f37b01d87e84361)
2024-03-05 09:49:48 +01:00
metalgearsloth cd8b5b96b5
Optimise DecalOverlay (#25266)
ChunkSize is still 32 so doesn't cut down on heaps of decals atm though we avoid passing many decals to drawing with the coordinates bounds check now.

(cherry picked from commit d8e5f5c24b88bf8096ddaec11e80f1af2953637b)
2024-03-05 09:49:43 +01:00
Pieter-Jan Briers 905bb83a2d
Make department / job list sorting consistent. (#25486)
* Make department / job list sorting consistent.

This makes late join, crew manifest and character profile all apply consistent sorting for jobs and departments.

We use the already-defined weights for departments (so command, then sec, then station specific, then just sort by prototype ID). Jobs also use weight (so heads are always at the top) then prototype ID, then character name (for manifest).

Removed the crewmanifest.ordering CVar as doing it via prototype weight is just easier, and that CVar was already a mess anyways.

* Fix jittery job icons in lists.

They were set to KeepCentered in TextureRect. This has issues because the allocated space is actually an odd number of pixels, so it tries to position the draw at a half pixel offset.

Now, yes, fixing this in TextureRect would make much more sense, but get off my back. (Ok seriously we need better helper functions for doing that in the engine. Don't wanna deal with that right now and I already have this patch made.)

Instead I'm just gonna fix the issue by using VerticalAlignment in all these places instead which ends up doing exactly the same thing YIPPEE.

Also gave a margin next to the icon on the crew manifest. Margins people!

(cherry picked from commit 715794dd414c5d4b794cd6f2201983ecbc5d4f17)
2024-03-05 09:49:19 +01:00
Pieter-Jan Briers 324ea7fbc8
Switch project files to C# 12. (#25487)
Just unlocks new language features like primary constructors.

(cherry picked from commit b1de6dd6017f4f56045df409db59fb7d303bde5d)
2024-03-05 09:49:02 +01:00
Tayrtahn 164c06f6ed
Add prediction to Openable (#25477)
* Fix formatting problem with FullOpened

* Moved to Shared and networked

* Revert "Fix formatting problem with FullOpened"

This reverts commit f8353403da830a4402bdd457bcf24a2432a5f566.

(cherry picked from commit 381bb9020aeba82e9cad111c77c34bee29d52c68)
2024-03-05 09:48:52 +01:00
Nemanja 384c060ea5
Predict doors and airlocks (#25419)
* predict doors and airlocks

* prying, too

* ack

* eek

(cherry picked from commit ce0a51fc29675b3b0afb90296b6a8ce90c3f9cd3)
2024-03-05 09:48:41 +01:00
dffdff2423 6757f63a90
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

(cherry picked from commit a3c93b0bd7478c0f75daaa2f7d0bd8b88565b27e)
2024-03-05 09:43:40 +01:00
Debug 813db18871
Re-enable AnyCommand on acts 2024-03-01 01:04:24 +01:00
Debug b32a3446ff
Vision filter accessibility option (#889)
* Add option to disable vision filters

* Remove DefaultVision in favor of the setting

* Clean DeltaTab.xaml.cs
2024-02-23 19:36:18 +01:00
Golinth cd1b5f07c7
Mindshield outline flashes, (#25409)
* Add animation support to status icons

Animated like any other entity. Change the png to have all frames, add delays in meta.json, and you're good to go.

* Dirty "fix" for the crashing.

Still have no idea why files cannot be read without changing their path in the yaml.

* Sloth review ig

I still have no idea why it wont work with /Textures/ missing as a prefix.

(cherry picked from commit 79dc4e4d6f918b2d56ae5e1909f2ccdbc552014c)
2024-02-21 04:08:37 +01:00
Pieter-Jan Briers 2333da8353
Fix PlayerListControl re-raising selection changed when repopulated. (#25412)
Now we just skip duplicate "item pressed" events from the ListContainer.

This caused the ahelp window to unfocus the message box after sending something. Flow is something like this: you send ahelp -> bwoink window refreshes player list due to new bwoink -> repopulated player list -> sent selection change -> repopulates right pane -> line edit gets unfocused.

(cherry picked from commit 84d455b9f862dcbfdffd5827ceab4890dcf653cc)
2024-02-21 04:04:45 +01:00
Pieter-Jan Briers 28d18c0035
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.

(cherry picked from commit 74a31ac5f3316cc865ab9f39f39efff4e0b9e748)
2024-02-21 04:03:46 +01:00
Pieter-Jan Briers 837272c745
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

(cherry picked from commit 2e6eaa45c57c7f5ba561d1fb1ef6712d2432a8fa)
2024-02-21 04:03:44 +01:00
Leon Friedrich 585c34e71f
Fix action state handling bug (#25395)
* Rejig action state handling

* Fix entity arg

* Fix deserialization

(cherry picked from commit bd4597c5ca8a3c55b17868a2c8aef543d3ea503d)
2024-02-21 04:03:41 +01:00
James Simonson d5c65dd4d6
Vending UI facelift (#25377)
* Convert to fancy window + added footer + add list spacing

* margin add

(cherry picked from commit 99aa72e30dd79ed2388a449de41a2b3f70491356)
2024-02-21 03:58:07 +01:00
Tayrtahn 292b92c039
Add support for metamorphic fill levels (#25022)
* Added support for fill levels to metamorphic glasses

* Fix warnings and cleanup

* Don't break non-metamorphic fills!

(cherry picked from commit e74f3019f7dc36a9e8ba19ae253692ed4af864c7)
2024-02-21 03:58:06 +01:00
Debug 2717706994
Make loadacts more user friendly (#864)
Allow loadacts to take a file
2024-02-19 22:58:14 +01:00
Pieter-Jan Briers 5da6086a02
Add new "OptionsVisualizer" (#25128)
This is a visualizer somewhat similar to the Generic. It allows configuring appearance info based on specific CVars the user has set. This allows YAML to easily configure alternatives for accessibility CVars like reduced motion.

(cherry picked from commit 1ce21553152199e3d97a8d02c11922fb8db5fd52)
2024-02-18 23:39:23 +01:00
MilenVolf cb0fdb47d1
LockVisualizer (#25224)
* LockVisualizer

* Fix state

* Clean some code

* Make it component, fix tests fail

* Fix for StateUnlocked

Now it is possible to manually set the unlocked state and it will work!

* Optimize LockVisualizer, add check for unlocked state

* No todo I guess

(cherry picked from commit c7870882f6f956eea07cbb4738ae45c8805c8ce6)
2024-02-18 23:27:28 +01:00
themias c459072d8a
Allow t-ray to penetrate carpets and puddles (#25276)
* Allow t-ray to penetrate carpets and puddles

* handle edge cases

(cherry picked from commit d7eb3b1c5c3faf2f9cf363407790bd383feb0070)
2024-02-18 23:24:54 +01:00
Debug 3889a3a14d
Fix changelog 2024-02-18 23:23:34 +01:00
metalgearsloth 0d8558335b
Re-organise main menu screen (#25173)
- The dummy control of 2px size has annoyed me for almost 5 years.
- Why is it in the top-right.
- Why is the server address not labelled.

(cherry picked from commit 1a438e644f17f1352cec29d90fa755f37e120f34)
2024-02-18 23:18:57 +01:00
Golinth 5273ce7e77
Kill Seperated Mindshield Icons (#25303)
* Unghettoify mindshield icons

Adds support for layers in status icons, through the StatusIconLayer enum and the new "layer" datafield. Defaults to the Base layer where functionally remains unchanged.

* TG icon for shield

probably better than the shitty one I made in paint

* forgor meta.json

I forgor

* Emo review

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>

---------

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
(cherry picked from commit bced73f67657246bc167531414ea0be5a5bba6bf)
2024-02-18 23:17:51 +01:00
Pieter-Jan Briers 1031a93942
Predict Injector (syringes), cleanup (#25235)
At least the mode/transfer amount logic. Actual transfer logic needs Bloodstream which I didn't wanna move into shared.

(cherry picked from commit 6d8be538c90cf4c3a6636e2f8b84631af457cd42)
2024-02-18 23:11:33 +01:00
Guilherme Ornel 88f4ca25a2
Fax machines can print from text file (#23262)
* added

* checks tweaking

* fixed what sloth wanted

* fixed?

* dialog diposing fix

* checks tweaking

* more changes

* dispose streamreader

* Update Content.Client/Fax/UI/FaxBoundUi.cs

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* Update Content.Server/Fax/FaxSystem.cs

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* fix minor typo

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit ff920250260c89840bfee3f514d79d5a2a82a61d)
2024-02-18 23:03:53 +01:00
James Simonson 1083aeb8e1
Microwave UX enhancements (#24547)
* Facelift Microwave UI

Includes new background light in UI, Uses predictive input, UI now properly disables buttons when microwave is active

* Microwave now shows Elapsed time

* Fixed bad formatting

* Added new term for "BottomMargin"

* Change yellow color

* Update StyleNano.cs

just spacing fixed

* Cook time countdown now detached from server

Instead of the server constantly sending out messages for the cook countdown, it is now predicted client side using TimeSpan

* Update MicrowaveMenu.xaml

forgot to re-add item space

(cherry picked from commit 25f73f64065f370d8560ff4695579c259e4b7667)
2024-02-18 23:03:05 +01:00
Pieter-Jan Briers ccea85136b
Random spontaneous cleanup PR (#25131)
* Use new Subs.CVar helper

Removes manual config OnValueChanged calls, removes need to remember to manually unsubscribe.

This both reduces boilerplate and fixes many issues where subscriptions weren't removed on entity system shutdown.

* Fix a bunch of warnings

* More warning fixes

* Use new DateTime serializer to get rid of ISerializationHooks in changelog code.

* Get rid of some more ISerializationHooks for enums

* And a little more

* Apply suggestions from code review

Co-authored-by: 0x6273 <0x40@keemail.me>

---------

Co-authored-by: 0x6273 <0x40@keemail.me>
(cherry picked from commit 68ce53ae17985876d6d112b764b2144964a9f42e)
2024-02-18 23:02:29 +01:00
PoorMansDreams 9461cd2ab4
Fixed Tipped ammo not being Spent (#25167)
Fix Tipped Ammo not being Spent

(cherry picked from commit e40318b83130a532e3654bdacd08993220b7be93)
2024-02-18 23:01:40 +01:00
metalgearsloth cb97e156cb
Fix decal error spam (#25172)
(cherry picked from commit 4cec0821e40cf0eabde7f8919a0474e2719aa8cb)
2024-02-18 23:01:15 +01:00
deltanedas 76129f4349
make linking logic gates 1000% better (#25041)
* make door status use SendSignal

* LastSignals and logic, add ClearSignal api too

* make everything outputting a logic signal default to false

* refactor ops

* :trollface:

* :trollface:

* protoid for LastSignals

* oop

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
(cherry picked from commit f41ece37c3bc04d77b2d0ef791d190c5c0d11f36)
2024-02-18 22:55:58 +01:00
Krunklehorn bb71b4f15b
Fix pointing arrow trajectory (#25061)
Initial commit

(cherry picked from commit 16b56c7f4564cba373be8d34a09e9d6a55a1a01d)
2024-02-18 22:55:56 +01:00
SlamBamActionman 6991618a45
Add option for character name colors in chat & move coloration to clientside (#24625)
* Adds option to disable character names in chat/speechbubbles

* Moved the coloring of names to clientside

* Move string functions to SharedChatSystem to avoid duplicate code in SpeechBubble.cs

* Changed to be put under Accessibility section

* Cache CVar

(cherry picked from commit 247be5b5c770261544f4e468ea09422efb0f7028)
2024-02-18 22:52:19 +01:00
metalgearsloth 9e366f3119
Predict two-way levers (#25043)
* Predict two-way levers

Annoys me the rare occasions I touch cargo. Doesn't predict the signal but at least the lever responds immediately.

* space

* a

(cherry picked from commit 05a2ddff1cc415c3bdf1e15ef3a2c953bcb5384b)
2024-02-18 22:46:26 +01:00
metalgearsloth 464e4d4b60
Fix screenspace popups (#24987)
* Fix screenspace popups

Never got around to it earlier but need to draw it above UI controls.

* Minor null change

(cherry picked from commit 560ea9775a561b9d516a838687733e8983bbe9a0)
2024-02-18 22:43:01 +01:00
Nemanja 1efd153b83
prevent opening debug menus without perms (#25091)
prevent people without permissions from opening the tile, entityspawn, or decal menus

(cherry picked from commit 2293f46bcac38c73a212fc34ee77d2839cd8558b)
2024-02-18 22:38:55 +01:00
Sk1tch 510d06eac6
Alphabetically sorted guidebook entries (#24963)
* - Renamed GetSortedRootEntries to GetSortedEntries and added child sorting logic
- Removed unessesary Tree.SetAllExpanded(true) call in RepopulateTree

* Adding back deleted setallexpanded call to check if test passes

---------

Co-authored-by: Your Name <you@example.com>
(cherry picked from commit 3b2921a3ccc5adfdd6d7c4020e814e4d56b5b3e3)
2024-02-18 22:36:04 +01:00
Debug 330e0e37d9
*Properly* fix salvage strings (#840)
Me when the maps
2024-02-17 01:48:04 +01:00
Fluffiest Floofers a98b4ebaaa
Vulpkanin's Deuteranopia (#837)
* Everyone loves dog vision

Updated to match the the harpy code

* change locale name
2024-02-15 18:27:23 +01:00
VMSolidus 1f3128c6ea
Harpy Visual Rework (#677)
* It begins

* Delete error.txt

* Patch by Debug

* HIDING WINGS NOW WORKS

* Runs smoother from Shared

* Delete HarpyVisualsSystem.cs

* The entire clientside script is no longer needed, and the visuals now work correctly. Helmetbug is gone.

* Update HarpyVisualsSystem.cs

* First completed Harpy Hardsuit

* Captain and Atmos tech birdsuits

* Update hardsuit-helmets.yml

* And more content

* Adding new finch tail <3

* whoops

* guh

* I swear the tail works now, I just need the adhd meds to kick in

* birb juggsuit

* More stuff

* Nukie hardsuits

* fixing clipping issues on birb juggsuit

* Update meta.json

* aaaaaaaaa

* two more

* Ton of extra harpy sprites

* Create equipped-INNERCLOTHING-harpy.png

* Harpy Ultravision trait

TODO: Optional trait that disables it

* Trait that removes Ultravision

* Code optimizations

* Adding hueshift maps to all harpy markings

* No more jumpsuits

* 1984 the harpy jumpsuits, they are no longer needed

* last 2

* final QA pass

* shennanigans related to an earlier merge conflict

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
2024-02-12 22:25:02 +00:00
Debug d8df4327ec
Fix PseudoItems (#821)
* Fix PseudoItem

* Add pain

* Cancel attack events
2024-02-12 21:52:49 +01:00
Debug e1337f7f5e
Update patreon list (#807) 2024-02-09 16:51:32 +00:00
Rainfey ecf9634e0c
Make Health Analysers UI continuously update (#22449)
(cherry picked from commit 4129c77a5b7c4d5cdfa4763881bdaa443c128f33)
2024-02-08 12:39:55 +01:00
Kot 7863210fdf
Update log probe UI for better looking (#24966)
(cherry picked from commit 2ba1bd22dc992df2e63de056c1ce99c6f8b0fa0f)
2024-02-08 12:37:48 +01:00
deltanedas b45675731d
move criminal records console component to shared (#24957)
* move criminal records console component to shared

* todone

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
(cherry picked from commit 9b1c88b78b4d27d7a762ebd80dc4294e9cf6332f)
2024-02-08 12:37:47 +01:00
deltanedas 965e1cae57
criminal records revival (#22510)
(cherry picked from commit 683591ab046eb720e6ccfd3d0f6e5574f5f7efbc)
2024-02-08 12:37:29 +01:00
metalgearsloth c639a4efbb
Predicted movement opening lockers (#24937)
Relay wasn't really networked properly and this annoys me.

EntityStorage is still pretty skrunkly but this fixes the main issue I think.

(cherry picked from commit 042feae2e91f41f7d39e55340405e3c448903d61)
2024-02-08 12:36:12 +01:00
keronshb 2675d7bd06
Adds a refund button & action upgrades for stores (#24518)
* adds refunds to stores

* Adds method to check for starting map

* comments, datafields, some requested changes

* turns event into ref event

* Adds datafields

* Switches to entity terminating event

* Changes store entity to be nullable and checks if store is terminating to remove reference.

* Tryadd instead of containskey

* Adds a refund disable method, disables refund on bought ent container changes if not an action

* Removes datafield specification

* Readds missing using statement

* Removes unused using statements

* What the heck is listing data

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 257909fd97c05bfde837a76afe5c5c612afc9f28)
2024-02-08 12:36:06 +01:00
Jezithyr 070af36c57
Emergency revert for pulling (#24923)
Revert "Pulling rework (#20906)"

This reverts commit 0d8254b2a2891f8d5623c9878bd0e567d0c7fe3c.

(cherry picked from commit c15b0691ec452e543a3cc6894a28bb409dbc65f8)
2024-02-08 12:34:47 +01:00
nikthechampiongr c3629bc043
Fix end of round messages looping forever (#24920)
* Fix End of Round messages looping forever and ever and ever

* Use the correct setting for round restart sounds

(cherry picked from commit 09daa534bd32d4784b6dd88ac6877607efec17b8)
2024-02-08 12:32:25 +01:00
Krunklehorn c12dacd966
Travelling pointing arrows, brains can no longer point (#24864)
* Decoupled from gravity, constant animation time, manual networking, cubic interpolation

* Reduced overshoot

* Implemented PointAttemptEvent, reacts with mobstate & sleeping

* Brains can no longer point, PBs must be inside a chassis

* Removed chassis check, made callback more obvious

(cherry picked from commit d01d75073cc4179ca5e34cacccd2ca6387e2bf99)
2024-02-08 12:32:04 +01:00
metalgearsloth 7e7655b3c4
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

(cherry picked from commit 0d8254b2a2891f8d5623c9878bd0e567d0c7fe3c)
2024-02-08 12:31:57 +01:00
Hannah Giovanna Dawson 29e65fd324
Actually fix round restart audio this time (#24754)
In which I'm a goober and don't clean up after
myself and accientally don't fix the issue I tried
to fix in my last round restart PR.

The audio is now maintained just like music during
restarts (yippee to ContentAudioSystem::OnRoundRestart)

This needs a refactor but at least the defect is fixed now.

(cherry picked from commit 2e7d23674ed315aa3cd36e5a744008900474c3fd)
2024-02-08 12:31:24 +01:00
Psychpsyo 3c2f10a9c0
Screen Shake Intensity Slider in Accessibility Settings (#24749)
* Reduced motion toggle disables screen shake

* Actually, screen shake is its own slider instead

* Cache screen shake intensity cvar

(cherry picked from commit ba0ca39a7ad5ceef2ae0582e13be5044e6f0a5f7)
2024-02-08 12:27:11 +01:00
metalgearsloth b6a3448108
Make popups nullable (#24802)
This standardises it with audio and whatever. Me when I sprinkle nullchecks everywhere.

Was 50/50 on making new non-nullable methods but figured it would bloat too hard and you can't access strings by .Value anyway.

(cherry picked from commit 606c5a8c8b1005de62c33d5de888f67a8eae0ccc)
2024-02-08 12:26:32 +01:00
deltanedas 0b0de4eb50
spray painter rework (#23287)
* refactor and add Department to PaintableAirlock, move it to server dir since its in namespace

* add departments to doors, cleanup

* add style -> departments mapping

* AirlockDepartmentsPrototype

* update shared spray stuff to have department

* name file the same as the class name

* department optional

* refactor spray painter system + send department

* fixy

* client

* no need to rewrite ActivateableUi

* pro ops

* the reckoning

* hiss

* .

* :trollface:

* add standard atmos colors to palette

* Update Content.Shared/SprayPainter/SharedSprayPainterSystem.cs

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit c49c78bafaddc3ed69714eaf41920e1565dbd292)
2024-02-08 12:25:35 +01:00
Magnus Larsen e0a3cfacea
Fix clientside storage Whitelists (#24063)
* Fix outdated component name in assaultbelt whitelist

RangedMagazine was replaced with BallisticAmmoProvider in the Gun
refactor (#8301)

* Move FlashOnTrigger, SmokeOnTrigger, Flash components to Shared

* Move LightReplacerComponent to Shared

* Move Utensil, Mousetrap components to Shared

* Move SprayPainterComponent to Shared

The PaintableAirlock tag has also been removed, as it was unused &
unnecessary, likely a vestige of spray painter development when the
PaintableAirlock component wasn't in Content.Shared.

* Add trivial Produce and Seed components to Client

This allows the plant bag and botanical belt whitelists to correctly
match produce and seeds on the client, fixing the extraneous "Can't
insert" message that previously appeared.

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 9cd6e4dccdfaa7e273417e3c94d66b5171c7d841)
2024-02-08 12:22:58 +01:00
Aexxie 16d77d483e
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>
(cherry picked from commit 467e983ba972a7ae749c95448febd19c7c285514)
2024-02-08 12:22:56 +01:00
nikthechampiongr 639d3af97a
Rev Components are no longer leaked + Rev and Zombie icon visibility to ghosts is now controlled by a cvar (#22194)
* Initial work on having the Rev icons not be visible to ghosts depending on a Cvar and a component.

This commit just makes it so that the revcomponent and headrev component
are not shared with clients that shouldn't know about them. This is due
to the concern that clients having access to those components, even if
no image was displayed could allow modified clients to have meta
knowledge of revs.

Currently this has the issue that if a player later
for example becomes a rev, none of the existing rev components get
networked to them. I am not sure there is currently an effecient
solution to this.

This is probably in an issue for a lot more stuff. I might just make it
so all the logic just moves to the client on whether to put the icon
again.

Also this commit adds the ShowRevIconsComponent to allow anyone with it to just
view rev icons.

* Rev components now get communicated to clients that didn't have them previously and the AntagIconSystem is now properly checking whether to give the icons.

We now dirty all the rev/headrev components when someone gets converted
or gets the ViewRevIcons component. The AntagIconSystem now checks
whether it should draw the icons mostly based on an event, this is still done
client side.

This is not a full proof solution to make it so clients can't know
someone is an antag when they shouldn't because:
1. There are other components that need similar treatment, to my
   knowledge not to for revs but for other antags. Maybe even the mind
   component. This could be addressed in future PRs.
2. We cannot ensure that clients forget about these components if the
   client gets deconverted for example. We can of course have code that
   does this, but it will necessarily need to be done on the client and
   if the client is modified then there is no way to ensure this.
   Of course at that point they should already know who their fellow
   revs are so this might not be an issue.

I now need to do the same thing for zombies in a future commit.
A similar system for nukies also needs to be looked at but I will not be
doing that in the PR this commit ends up in.

* Misc name changes and cleaning up the ZombieSystem

Changed some names around and decoupled the ZombieSystem from the
AntagStatusIconsystem. Now there is a cvar for ghost visibility for them
as well. The Zombie Component was not made SessionSpecific because:
1. Zombies are pretty visible anyways
2. The Component is needed to change the appearance of zombie players.

* Misc name changes and cleaning up the ZombieSystem

Changed some names around and decoupled the ZombieSystem from the
AntagStatusIconsystem. Now there is a cvar for ghost visibility for them
as well. The Zombie Component was not made SessionSpecific because:
1. Zombies are pretty visible anyways
2. The Component is needed to change the appearance of zombie players.

* Merged 2 if statements into 1 on the Zombiesystem.

* Cut down on code duplication in AntagStatusIconSystem

Now instead of having a seperate function for each component, there is 1 generic function. Functions for special cases
like the Rev/Headrev comp can have a separate function that does the special check and then calls the generic one.
This is done through the IAntagStatusIconComponent interface which provides a common interface to get the Icon.

* Removed some duplication from the SharedRevolutionarySystem with generics.

I have no idea why I didn't think of this sooner.

* Addressed Reviews I think

I think events get unsubbed automatically but I am probably missing something that I have not understood.
Either way this is a requested change.

* Replace war crimes with actual fixes for reviews

It was not clear to me what the reviews meant

* Addressed reviews by removing need for cvars.

Whether icons are visible to ghosts is now determined by a bool in IAntagStatusIcon which all antag components
with status icons should implement.

* Update Content.Shared/Revolutionary/SharedRevolutionarySystem.cs

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit 8b19b7fab9dd8fb115f65794d97a26ebb9aa1142)
2024-02-08 12:22:54 +01:00
deltanedas 215d861bb8
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>
(cherry picked from commit 6b03aaaec78bd50c8f4730c9aa7d0f5cea76e782)
2024-02-08 12:21:02 +01:00
Kara 27895cd4d9
Open some windows non-centered to avoid covering the player (#24767)
(cherry picked from commit e212b10ca205b5a76c20a3daca4a13af435611c5)
2024-02-08 12:21:00 +01:00
SlamBamActionman 69b3d47a60
Visitor job (#23972)
* Adds Visitor role and ShowInIdCardConsole property

* Add visitor to Agent ID card

* Fixes yaml test

* Fixes based on feedback

* Fixes based on feedback

(cherry picked from commit 1862f8aa1745f147fa54428179e568c9298a9fda)
2024-02-08 12:17:35 +01:00
Krunklehorn 922407e2e8
Client customization late-join spawner priority for arrivals/cryostorage (#24586)
* Initial commit, requires server restart to take effect

* Exposes callbacks directly instead, takes effect immediately

* Cleaned up control flow, swapped cvar for client customization

* Switched to int, dictionary of callbacks, migration

* Update Content.Shared/Preferences/SpawnPriorityPreference.cs

* krunkle stan

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>

(cherry picked from commit ed0f2aa2213cc47b817476206a2dd0b4e7c176b1)
2024-02-08 12:16:20 +01:00
metalgearsloth 3d3bd4f4e0
Remove EntityUid from debug context menu (#24660)
- Probably confusing if you're not familiar with nentities
- if I need the clientside uid for debugging I can just open VV and it's immediately there on first page.

(cherry picked from commit ca5470918679d73a95404b08fc76d2be088a6876)
2024-02-08 12:10:55 +01:00
Kot 08840a5539
Fix SSD indicator (#24589)
Fix ssd indicator

(cherry picked from commit fed43f05d0e95d51e2426a80c7e8963d585c5521)
2024-02-08 12:10:34 +01:00
Pieter-Jan Briers 0d4eb24b26
Health analyzers now show if somebody is starving (#24789)
"why are they getting cold damage" THERE YOU GO

(cherry picked from commit c25ddfd638e2c50b541e5ebf8c2eda85778f3711)
2024-02-08 12:08:31 +01:00
metalgearsloth 4c7c904549
Remove vehicles (#24681)
* Remove wheelchairs

Vehicle code is dogwater and wheelchairs just keeps exposing edgecases. If someone wants it brought it back they can do vehicle refactor.

* Also this one

* Remove vehicles

* goodbye vehicles

* Remove this check

* sasd

* Cronch

* Add sprites back

* jani

(cherry picked from commit d2f20d8955a25a32aa5fb9b3631a41921b464cd4)
2024-02-08 12:06:49 +01:00
metalgearsloth 36e28ecfcf
Firestarter fixes (#24647)
* Firestarter fixes

- Actually networks the action.
- Namespace fixes.

* No networky for you

(cherry picked from commit a6ea8b210db079d30823e7b4d8faa32aefa17582)
2024-02-08 12:04:52 +01:00
Nemanja 59b820aeff
make lathe visuals not required (#24757)
(cherry picked from commit bd46d7cc8ab6ad92a4d5a7cdd12dd1ce8f6265e9)
2024-02-08 12:02:20 +01:00
Kara 609b0b7421
Throwing item scaling animation + recoil (#24724)
(cherry picked from commit ef55039560814a98517552bd58493fc89a2a4812)
2024-02-08 11:57:27 +01:00
Tayrtahn c9a22474bc
Fix welder status always being "not lit" (#24705)
* Fix not finding ItemToggleComponent

* Simplified

(cherry picked from commit e101d078fe2aa128428de6dc67c8bb31f94dc18e)
2024-02-08 11:56:57 +01:00
SpeltIncorrectyl e390fd34bf
Adds signal control to portable generators (#24157)
* added signal control to portable generators

* added documentation

* Discard changes to Content.Server/Radio/EntitySystems/HeadsetSystem.cs

* added DeviceNetworkComponent and WirelessNetworkConnectionComponent to generator prototype

* made GeneratorSignalControlComponent nicer

* implemented auto-revving

* added back necessary dependency

* can't send do-after event manually

* repeat now works with auto revving

* fixed

* removed vv

* stopping generating when it is revving now makes it stop revving

* Update Content.Shared/Power/Generator/ActiveGeneratorRevvingComponent.cs

Co-authored-by: Kara <lunarautomaton6@gmail.com>

* used resolve instead of TryComp

---------

Co-authored-by: Julian Giebel <juliangiebel@live.de>
Co-authored-by: Kara <lunarautomaton6@gmail.com>
(cherry picked from commit 5d2ddc0d8b313d80fbcecd6719c5048ec2aea3e7)
2024-02-08 11:56:22 +01:00
Julian Giebel d805b82848
Implement basic emoji support (#24039)
* Implement basic font support

Add NotoEmoji font
Add emoji font to default font stacks

* Remove unneded change

* L

* Remove emoji font from default font stacks

(cherry picked from commit 94b43423b4ba3bac3325610a6699a9f6cd08653b)
2024-02-08 11:55:27 +01:00
themias cd03dbac2b
Add inhand fill visuals (#24495)
* Add inhand fill visuals

* oops

* remove unused import

(cherry picked from commit bd100344a2f9f845e2dceb8351d36f8af913a5f1)
2024-02-08 11:54:38 +01:00
Krunklehorn 9b50c87557
Health analyzers and cryopods also show temperature in Kelvin (#24643)
Health analyzers and cryopods also show temperature in kelvin

(cherry picked from commit f9c43567ea013fa5d68f21a9c83194583f10e1e3)
2024-02-08 11:52:36 +01:00
DrSmugleaf 5329280378
Add events for GunComponent values, muzzle flashes and cartridge spread (#24077)
* Add a modifier event for GunComponent values

* Add docs

* Add VV readwrite to modified values

* Add more docs

* More docs

* Add Gun parameter to GunRefreshModifiersEvent

* Add another event for handling cartridge spread

* Fix pneumatic speed

(cherry picked from commit 4e8b1fb0d3ef23c79ea3ca0cec05932de03601f5)
2024-02-08 11:52:29 +01:00
Kara 169a7cae2b
Powered light sprite glows with color of their pointlight (#24612)
(cherry picked from commit 4ab69709fe38c93ea4617a21ca93c21a756b48d6)
2024-01-28 00:33:54 +01:00
avery 1075c2e999
Hallway textscreens (#24189)
* hallway screen refactor pending comms console support

* comms console broadcasts

* screen and timer localization

(cherry picked from commit 7e16ee0b55fdef2ce77b13cd72dbc00b63d776c4)
2024-01-28 00:33:40 +01:00
Kara fca53c48d2
Default navmap to show departments (#24613)
(cherry picked from commit 34eb6914489a368dd85f1e3e8d2152c6e36d3ed5)
2024-01-28 00:33:35 +01:00
Guillaume E 1e519836da
Keep reagent dispenser inventory ordered (#24304)
* Keep reagent dispenser inventory ordered

This way, reagents wont be "moving around" in the UI when juggling
jugs.

The reagent dispensers will also show what reagents their storage
slots contain if jugs are not labelled.

* Move sorting client-side

* Revert "Keep reagent dispenser inventory ordered"

This reverts commit 3a1fc2e36d593937d4ecc581ae5a617a273a9d1c.

(cherry picked from commit 4ee734951455da15eedaf766cee1f64b48959702)
2024-01-28 00:33:34 +01:00
Pieter-Jan Briers 942563e582
Make PACMANs a little better (#24604)
* PACMAN generators show network load/supply.

This gives more feedback to players that their PACMAN is properly connected and what the network status is (i.e. you don't have enough generators).

* Buff JRPACMAN to 8 kW.

Shifted all power values up by +3 kW.

They're frequently too weak to power even single rooms so they deserve a buff.

* Change unit format helpers number format.

Always displays one digit of precision. This avoids jumping around when a value is changing live.

(cherry picked from commit f855cb2b0065083447128778c31c2a93bcd70a6a)
2024-01-28 00:32:20 +01:00
Nemanja fea640584d
make newchat box more opaque (#24555)
(cherry picked from commit 6605b7ba5023c01f3ac590bfda089e0291bbb7f9)
2024-01-28 00:27:31 +01:00
Tayrtahn 4d5b3ba435
Holding the walk button no longer activates sprite movement state (#24455)
* Dancing is forbidden

* Suggested changes

(cherry picked from commit c1fd42202f35dcddbf2dc6215fcf462bf31e5ce3)
2024-01-27 23:51:45 +01:00
themias a345a5a613
Fix bolt lights on open airlock (#24414)
(cherry picked from commit 79624b8c60c1a4b9b5cbf394bc4dc5011d774f4e)
2024-01-27 23:43:01 +01:00
metalgearsloth 95f72fdc1b
Fix dock highlighting (#24369)
Nentity casualty

(cherry picked from commit 6ae64929ba2737da78baf07d6f78969fcdba66b2)
2024-01-27 23:40:30 +01:00
metalgearsloth 69d6935846
Bunch of revolver fixes (#19649)
* Bunch of revolver fixes

Some stuff wasn't working with prediction so this should fix all of it.

* a

* fix weh

* Also usedelay

(cherry picked from commit 9bb2781bfca68bde47ce52576cb894bb41ab6511)
2024-01-27 23:40:28 +01:00
Kot 937989ca35
Add chat.max_announcement_length cvar (#23571)
* Add announce message length to UI and make a cvar for it

* Update comm console server-side trim to use the cvar

* Rely on the new OnTextChanged event

Because OnKeyBindUp only works for keys that have binds

* Add a similar indicator to nukies' war declaration UI

* Remove message length indicators for now cuz it requires the engine update

* Rename cvar slightly

* Refactor duplicated code to a helper method

* Remove message trimming from *Window class as it's better to live in the BoundUserInterface where the other message handling happens

* Rename to chat.max_announcement_length

(cherry picked from commit 8c5898b0065cd2cf196c0383bc99c57c0f11795b)
2024-01-27 23:40:23 +01:00
metalgearsloth 2c40401765
Make radarcontrol use approx grids (#24360)
(cherry picked from commit fda8035a5ebdb0f04283d5e82b23837f9b74ac21)
2024-01-27 23:36:15 +01:00
Kot f82d17ab3b
Fix issue where round could reset all job priorities to high (#24340)
* Update job priorities when job requirements are getting updated

* Sort jobs by weight and then by the name

* Sort departments too

(cherry picked from commit 4f307a49be5796eaa7b02f5988a83ea04db95535)
2024-01-27 23:35:53 +01:00
metalgearsloth 3254acd8e7
Fix some test warnings (#24324)
Extracted from smug's pr.

(cherry picked from commit 4a13dbea76e8e6061274537c7063c6915429d38a)
2024-01-26 23:16:18 +01:00
metalgearsloth d14497fcd7
Cargo fixes (#24318)
Wrong button.

(cherry picked from commit 87f324b6485266b97cdb6945a6416a733e069491)
2024-01-26 23:14:03 +01:00
Nemanja 47d24fc3e5
Fix cargo product groups (#24212)
(cherry picked from commit 21e77dffb00d631ea0e6a5c0ad55bed5dcbaa809)
2024-01-26 23:13:54 +01:00
Hannah Giovanna Dawson 0ce2cb5b29
Fixes round restart audio clipping (#24044)
* Fix round end audio clipping

* weh

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 5af1d0ea8b5a54cd1f1b48308176318032a457ea)
2024-01-26 23:13:43 +01:00
Nemanja 40f7e0b53e
Lathe Categories (#24247)
* Lathe Categories

* serilog my beloathed

(cherry picked from commit 73e94dfa92e0afe3ad0decd1d7248d13fa4f208c)
2024-01-26 23:12:38 +01:00
iacore 2cd501fc6f
Change the station map dot color to cyan (#24082)
Change the station map tracking dot color to cyan

Co-authored-by: iacore <noreply+gpg-stub@1a-insec.net>
(cherry picked from commit c35b9964c770714f5ba56fce827912cd33312fe6)
2024-01-26 23:07:49 +01:00
Kevin Zheng 1ab0ed77f6
Wrap objective briefing text (#24244)
(cherry picked from commit 0d53dad58ac5efc8d6cbd76a5e43eae7450ea25d)
2024-01-26 23:05:38 +01:00
Kot efcaea8153
Fix entity menu grouping and sorting (#24243)
* Group entity menu by the displayed name instead of by the prototype

* Sort entity menu by the displayed name (with label) in current culture

(cherry picked from commit 9b97c7f2f215ec9862d8146e7db07ba03005a71f)
2024-01-26 23:05:35 +01:00
Kevin Zheng 9cc361921b
Add limited-reagent dispensers (#23907)
* Add limited-reagent dispensers

* Add empty versions for all dispensers

* Fix lint

* Set initial window size so all buttons are visible

* Simplify logic, add parenthesis

* Use localized name for initial labels

* Adjust button style

* Avoid touching items before MapInit

* Remove pre-labeling

* Reduce diff

* Clean up YAML

* Fix test

* Really fix test

* Document

* Adjust based on review

* Add labels for obnoxiously long bottles

---------

Co-authored-by: AWF <you@example.com>
(cherry picked from commit 9394a262458df76d9c4156f147bed902e3feac75)
2024-01-26 23:03:30 +01:00
Kara e1c1bbab39
Reagent grinder jittering (#24190)
* Reagent grinder jittering

* Fix jittering for offset sprites

(cherry picked from commit 1f92376579bb16480253c05125fccb1f88e18557)
2024-01-26 23:01:11 +01:00
DrSmugleaf 85352289aa
Move rotting stages and examine to shared (#24183)
(cherry picked from commit 890270127133884f5d1a9ddddb48f10ddb61412f)
2024-01-26 23:01:03 +01:00
LankLTE ab5cc6b25e
Follow command and ahelp menu follow (#24142)
* Command & ahelp rename

* Reviews

* remove tpto

(cherry picked from commit 44abe3e54d8522fe795a59a0b302a0f1f858cbbc)
2024-01-26 22:58:09 +01:00
Kot 4ef6d936e5
Fix DragDropHelper not respecting the control.drag_dead_zone cvar (#24166)
Fix regression with the drag_dead_zone cvar not being used

(cherry picked from commit ef70629702b547e77cd5d18cbad9f9a13033d792)
2024-01-26 22:56:51 +01:00
Nemanja c5658249cb
fix medhud bounds with 64x64 inhands (#24102)
(cherry picked from commit be8d0e69b60a7d438e200a72b833d1eae31867b2)
2024-01-26 22:51:49 +01:00
Nemanja e624317d37
Cryogenic Sleep Units (#24096)
* Cryogenic sleep units

* pause map support

* no more body deletion

* Cryogenic Storage Units

* boowomp

* no more emag, no more dropping present people

(cherry picked from commit 736b9dd7df6e35f07fed88686c7c863ac61af846)
2024-01-26 22:51:41 +01:00
Psychpsyo e439d50479
Plates & Cash gridinv visuals (#24075)
(cherry picked from commit a747e6dda407cc93f8184be0712941606b19263e)
2024-01-26 22:50:12 +01:00
Kot df3e231c16
Fix admins unable to hide the coordinates debug monitor (#24084)
Allow admins to hide the coords monitor

(cherry picked from commit 620074ab0ac9261d6c7f67f7944658575115a12d)
2024-01-26 22:50:09 +01:00
AJCM-git 9a6fa17e72
Virtual items cleanup (#23912)
* Virtual items cleanup

* Detail

* Review

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 108f001731b9394f98d9ef712b9b777e5b3f8abc)
2024-01-26 22:49:14 +01:00
Errant a468bba629
Navmap UI enhancements (#23777)
* label scaling wip

* beacon toggle, cleanup

* weh

* caw

* Smooth scaling, almost-selectable font size, Magnification count, zoom scale accuracy change, opacity

* never asked for individual font sizes

* zoom

* format

* Fixes CrewMonitor and PowerMonitor using the default tile color as text background instead of their custom tile colors

* font customisation, needs UI elements

* Station map rightclick now works

* UI scale will keep the local systems in line

* adjusting font size to UI scale

* typo

* fix RT version

* putting cache back in its place

* toggle labels moved to Examine

(cherry picked from commit 40db236b822c82cf97649f25d8cebfb455f82ff2)
2024-01-26 22:37:34 +01:00
deltanedas 0c4fd5785d
better deconversion (#23315)
* add deconverted window

* show deconverted window when deconverting + remove the role

* webedit ops

* antagonist -> revolutionary

* evil

* oh

* eui ops

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
(cherry picked from commit a558b112a1c4d71ffcd1b1b266d31ff45bd76460)
2024-01-26 22:37:15 +01:00
DrSmugleaf c0edcf330c
Fix error when switching to a screen without an inventory gui widget (#24059)
(cherry picked from commit 6a7f1b2f1f52a8f88f8770a4c695292e5bebedff)
2024-01-26 22:37:14 +01:00
Pieter-Jan Briers 7d019f0418
Quick dialog fixes (#24046)
Pressing "enter" on the last dialog box now confirms the dialog.

Localize.

(cherry picked from commit 8416fc746b08d943b26f220002087c667d9c2a00)
2024-01-26 22:37:12 +01:00
Errant 4a80cc086f
Station Map window edges (#24024)
(cherry picked from commit bda89918ff49a6da6dfdfc3d52e166a443781840)
2024-01-26 22:35:12 +01:00
Pieter-Jan Briers ea0318b2e0
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.

(cherry picked from commit 3a2cd95d7f8d2b6975ebfda715b4cbf858e74668)
2024-01-26 22:34:27 +01:00
themias fbb8e5e61e
Fix mass-media console (#23994)
(cherry picked from commit 023d5410638b237aa9428c63fc91315917f95e51)
2024-01-26 22:33:48 +01:00
Pieter-Jan Briers 1c54b75da5
Dependency update / fixes / skrungle bungle (#23745)
* Give .props files 2-space indents.

* Move to Central Package Management.

Allows us to store NuGet package versions all in one place. Yay!

* Update NuGet packages and fix code for changes.

Notable:

Changes to ILVerify.
Npgsql doesn't need hacks for inet anymore, now we need hacks to make the old code work with this new reality.
NUnit's analyzers are already complaining and I didn't even update it to 4.x yet.
TerraFX changed to GetLastSystemError so error handling had to be changed.
Buncha APIs have more NRT annotations.

* Remove dotnet-eng NuGet package source.

I genuinely don't know what this was for, and Central Package Management starts throwing warnings about it, so YEET.

* Remove Robust.Physics project.

Never used.

* Remove erroneous NVorbis reference.

Should be VorbisPizza and otherwise wasn't used.

* Sandbox fixes

* Remove unused unit test package references.

Castle.Core and NUnit.ConsoleRunner.

* Update NUnit to 4.0.1

This requires replacing all the old assertion methods because they removed them 🥲

* Oh so that's what dotnet-eng was used for. Yeah ok that makes sense.

* Add Robust.Analyzers.Test

* Update submodule

* commit to re-run CI

(cherry picked from commit a6c9c36b688a1ba78ff4c12502e81661cf607b6c)
2024-01-26 22:33:46 +01:00
Crotalus 43de08bff3
Added search bar to warp points (#23978)
(cherry picked from commit 668d0eca2276b731730af930024ae66ccfdda11e)
2024-01-26 22:33:43 +01:00
metalgearsloth 42643e8b94
NewsSystem fixes (#23969)
(cherry picked from commit abc5094a16aa98da45cb14399913f08f0fe4cb5a)
2024-01-26 22:33:17 +01:00
Pieter-Jan Briers 973d06aea5
Use item status extension method (#23884)
Just removes some lines of code.

(cherry picked from commit e665c2487e2f248bdc6b435bdcdb3060c69b546c)
2024-01-26 22:30:27 +01:00
Nemanja fa762bfa8e
Add doors to the station map (#23639)
* Add doors to the navmap

* tweaksies

* gah

* draw primitive

* draw primitive? at least take me out to dinner first!

* Update Content.Client/Pinpointer/UI/NavMapControl.cs

* casualties

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 1886941da6c807ec604cad902233a3ba559b2b25)
2024-01-26 22:27:10 +01:00
metalgearsloth dcc2baa5a5
Fix objects tab not showing nents (#23837)
* Fix objects tab not showing nents

* Fix everything

(cherry picked from commit 11701215322efe6e03c84a99645e60c766f0e2bb)
2024-01-26 22:22:36 +01:00
metalgearsloth 4c7ca09c9b
Biome marker layer tweaks (#23663)
* Biome marker layer tweaks

- Ensure veins get spawned at great perf cost (it's time-sliced anyway).
- Bump asteroids from 6 nodes to 10 nodes.

* Fixes

* magnet

* Magnet dictates wreck spawn

* Update Content.Shared/Procedural/PostGeneration/BiomeMarkerLayerPostGen.cs

* mraow

(cherry picked from commit d7eb7b700c72a7aa56e6bb2181ed5cd622f04a83)
2024-01-26 22:19:17 +01:00
metalgearsloth 404ac576b8
Fix storagecomp serialization (#23780)
* Fix storagecomp serialization

* Fix state

(cherry picked from commit b22c9aa5e265994f87c9a3f41a95e0aef611b61d)
2024-01-26 22:17:53 +01:00
Nemanja cd97df761d
Autoattacking weapons (#23765)
auto attacks

(cherry picked from commit 5db615af54acf04c9a9ba5653cfac4a360eff61b)
2024-01-26 22:16:34 +01:00
user424242420 64ad8c6e46
Add ability to copy data from pda (#23533)
* This commit add ability to copy station name and time to clipboard

* Add ability to copy name and profession. Fix style of code.

* fix

* Make copy by pressing on label

* Fix style code

---------

Co-authored-by: Ivan Rubinov <linuxkernelpatch8234@riseup.net>
(cherry picked from commit 6913ebcf05e072d34f5b3d9ba84e1a3229c3cd9a)
2024-01-26 22:12:06 +01:00
I.K 11497a9d03
Improve visibility of gun bolts (#23711)
* add overlay

* ??????

(cherry picked from commit dc994f9c66f13f8195b7938f849003dc5b37464d)
2024-01-26 22:11:55 +01:00
DoutorWhite b755a71815
Fix RoundStartTimeSpan not being networked on client-side after reconnecting (#23707)
Fix RoundStartTimeSpan state not being networked on reconnections

(cherry picked from commit 31133ef788e546b9e989bf0341997a191264446e)
2024-01-26 22:10:56 +01:00
Nemanja 77bd303603
Hellfire Thermomachines (#23543)
* hellfire thermomachines

* slight nerf? idk

* ilya review

* Improve clarity

* Update Content.Server/Atmos/Piping/Unary/EntitySystems/GasThermoMachineSystem.cs

Co-authored-by: Kevin Zheng <kevinz5000@gmail.com>

---------

Co-authored-by: Kevin Zheng <kevinz5000@gmail.com>
(cherry picked from commit a78e9a854ebb744ca82fcdbca4968f0197d05a84)
2024-01-26 22:07:36 +01:00
metalgearsloth 627746fb30
Fix audio fades (#23684)
Audio refactor casualty

(cherry picked from commit bc07cbc97ce365dde83ee4e5b32a4ffa603b1d5e)
2024-01-26 22:07:35 +01:00
Ed dee31da6a4
Barber scissors fix (#22895)
* barber!

* 5% change to maintenance

* some fixes

* refactor some

* ElectroJR fix merge

* aoa

* remvoe humanoid

* Magic mirror cleanup

* Cleanup

* Bunch more fixes

* Fix nohair + range bugs

* Fixes

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit f0097d4963f1653dee80a0c09d1673d638807614)
2024-01-26 21:50:20 +01:00
mr-bo-jangles 20d3e1f0eb
Set pAI up with a static map the pAI can use (#23499)
* Set pAI up with a trackless map

* Added a untracked map user interface class to support gps-less mapping
* Added to pAI by default, expect it to be  given to borgs as well in time.

As the personal AI is literally immobile as a ghost, it is useful to ensure that people carry one. With that idea in mind, it is worth giving the pAI a reason to be carried that doesn't depend on the player having a cracking selection of midi files on hand.

* Tried to use new ProtoId and have EntityUid on the client as commented by metalgearsloth

* Review

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 412f3f470c92bf2d974b13bc4e5e1c964d3a5346)
2024-01-26 21:49:51 +01:00