Commit Graph

4264 Commits

Author SHA1 Message Date
DrSmugleaf 5738b5a894
Fix speech bubble occlusion being checked from the player's position instead of the eye's (#29012) 2024-07-05 20:37:50 +02:00
ShadowCommander ac381dc2d3
Make firelock warning light not require power and add a PointLight (#29024)
* Add a PointLight to firelocks when warnings are active

* Remove power requirement for lights
2024-07-05 20:37:28 +02:00
nikthechampiongr da162dce0a
Bwoink fix (#28899)
* Fix incorrect usage of loc string

* Make it so you can no longer ahelp someone who is no longer selected
2024-07-05 20:37:17 +02:00
metalgearsloth 568f8d9c0f
Don't use invalid defaults for loadouts (#28740)
* Don't use invalid defaults for loadouts

At the time it made more sense but now with species specific stuff it's better to have nothing.

* Loadout SetDefault only applies valid loadouts
2024-07-05 20:37:03 +02:00
LankLTE ac55709815
Set ahelp new player icon to use minutes, not seconds (#29014)
Replace seconds with minutes
2024-07-05 20:36:56 +02:00
Tayrtahn 41e409d45e
Move SleepingSystem to Shared & cleanup (#28672)
* Move SleepingSystem to Shared & cleanup

* Remove empty OnShutdown handler
2024-07-05 20:31:59 +02:00
Deserty0 fcd3607d7a
Fix "no materials loaded" messege in lathes (#28885)
fix
2024-07-05 20:26:34 +02:00
dffdff2423 534ee61e3e
Enable save button on changing job unavailable preference (#28839)
Enable save button on changing unavailable pref

Fix an issue where the save button was disabled when just changing your job unavailable preference
2024-07-05 20:26:09 +02:00
Hannah Giovanna Dawson 3a50288e50
Panic Bunker uses minutes not hours (#28805)
* Panic Bunker uses minutes not hours

* Fixing an instance of hours
2024-07-05 20:24:14 +02:00
Nemanja 633c538e22
Cap scramble tag (#28804) 2024-07-05 20:24:10 +02:00
Julian Giebel ca5de48084
Implement map text (#28705) 2024-07-05 20:23:41 +02:00
Hannah Giovanna Dawson 1cee444776
SS14-28662 Add Baby Jail: a Jail for Babies (inverse panic bunker) (#28763) 2024-07-05 20:23:37 +02:00
Leon Friedrich f6e281ae15
Fix admin menu objects list (#28787) 2024-07-05 20:22:33 +02:00
Tayrtahn 1422ba152b
Strip markdown from silicon laws before saying them (#28596) 2024-07-05 20:22:29 +02:00
deltanedas 4ae20967a6
fix shipyard (#1458)
Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-07-03 15:34:06 +00:00
deltanedas 540febcbad
fugitives redux (#1413)
* add fugitive rule logic

* add fugitive role

* add fugitive event

* remove nyano spawner and make midround antag spawner work real

* fix announcement logic

* fix the funny bug i think

* fix crimes

* fix crime count

* 1 less min crime

* fix sex (real)

* thief bag unhardcode MaxSelectedSets

* :trollface:

* :trollface:

* add fugitive stash

* fix

* add misc stuff and fugitive stash

* m

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-06-30 19:40:33 +00:00
deltanedas 64df264a4e
upstream merge fix pda ui troll (#1367)
fix pda ui troll (#28896)

* fix pda ui troll

* bruh

---------
2024-06-13 18:41:34 +02:00
Null 7b6b3916c3
Fix shipyard UI refusing to open (#1364)
Fix shipyard ui
2024-06-12 16:46:40 +00:00
Leon Friedrich e08280c6e1
Try fix RGBee (#28741) 2024-06-08 20:31:21 +02:00
DrSmugleaf bd54ddce12
Fix action icons when dragging an active action to another slot (#28692) 2024-06-08 20:30:54 +02:00
Plykiya 48534934bd
Swap some InRangeUnobstructed for InRangeUnoccluded (#28706)
Swap InRangeUnobstructed to InRangeUnoccluded

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-06-08 20:30:39 +02:00
Leon Friedrich b45a42f353
Add JobRequirementOverride prototypes (#28607)
* Add JobRequirementOverride prototypes

* a

* invert if

* Add override that takes in prototypes directly
2024-06-08 20:30:16 +02:00
Repo 3a3502dd44
Fix Admin Object tab sorting and search (#28609) 2024-06-08 20:24:18 +02:00
Leon Friedrich e0ea8adb9a
Add Job preference tests (#28625)
* Misc Job related changes

* Add JobTest

* A

* Aa

* Lets not confuse the yaml linter

* fixes

* a
2024-06-08 20:19:39 +02:00
Hannah Giovanna Dawson 2bf0e82b7a
SS14-26964 Clown Waddling Replicates, etc (#26983) 2024-06-08 20:15:12 +02:00
null 993959ae58
Replace deprecated whitelist functions 2024-06-08 20:12:43 +02:00
Plykiya 6583105f10
Replace obsolete EntityWhitelist IsValid usages part 2 (#28506) 2024-06-08 20:03:26 +02:00
Ed 667d1d5941
Accent trait limit (#28046) 2024-06-08 20:02:27 +02:00
AJCM-git 95dd203ec6
Small code cleanup to health bar (#28554) 2024-06-08 19:59:29 +02:00
AJCM-git 426896a432
Cleans up StatusIconSystem and fixing some bugs (#28270) 2024-06-08 19:59:10 +02:00
Tayrtahn 3efeaf609d
Add support for HeldPrefix to SolutionContainerVisualsSystem (#28532) 2024-06-06 21:59:46 +02:00
AJCM-git 4360e679a0
Header of Gas tank UI screen now fetched from Entity name and local (#28545) 2024-06-06 21:59:43 +02:00
null c1bc4c9182
Matrix3x2 2024-06-06 21:50:25 +02:00
slarticodefast 7f5be661f8
Flash overlay rework and bugfixes (#27369) 2024-06-06 21:46:58 +02:00
eoineoineoin c62bd23656
Replace Matrix3 with System.Numerics.Matrix3x2 (#27443)
Replace Matrix3 with Matrix3x2
2024-06-06 21:44:48 +02:00
Nemanja 5c8dbfe223
Guidebook Tables (#28484)
* PJB's cool table control (it probably doesn't work)

* ok wait wrong file

* Guidebook Tables
2024-06-06 21:44:44 +02:00
Plykiya b2931f9a33
Replace obsolete EntityWhitelist IsValid usages (#28465)
* Replace obsolete whitelist is valid with whitelist system

* Consistency

* Fix logic

* Bork

* I figured out how to get whitelists on the client lol

* test fail

* woops

* HELP ME FUNCTIONS

* Fix errors

* simplify

---------

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-06-06 21:44:41 +02:00
DrSmugleaf 2ecfab2e85
Disable rainbow overlay when reduced motion is enabled (#28496)
Disable rainbow ovelray when reduced motion is enabled
2024-06-06 21:43:47 +02:00
Tornado Tech 91f0ba53e5
Cleans up tag system (#28272)
* Updated tag system

* Added params methods

* Fixed tag integration tests

* Fixed params methods recursion

* Revert has All/Any tag one argument realisation

* Updated tag integration tests

* Shit happens

* Added individual List/HashSet methods, docs, tests
2024-06-06 21:33:38 +02:00
Tornado Tech 228e653572
Hiding and clearing department prototype code (#28114) 2024-06-06 21:33:27 +02:00
Kevin Zheng 89be6b30da
Adjust power monitor power display (#28487) 2024-06-06 21:33:25 +02:00
DrSmugleaf d65fdde82c
Fix error when removing chasm falling component on a terminating entity (#28471) 2024-06-06 21:29:19 +02:00
beck-thompson a742fe4d01
Fixed bug where ID card computer defaulted to the atmos as the job icon. (#28462)
Fixed ID atmos bug!
2024-06-06 21:29:03 +02:00
Nemanja 5e39323307
Clean up store system (#28463) 2024-06-06 21:28:46 +02:00
deltanedas 708e17a3d3
reverse engineering refactor and missing recipe test (#1230)
* make jugg not atmos hardsuit reable lmao

* re machine yaml refactor

* use the enum name to localize re results

* move a lot of code to shared and refactor

* clientside rework

* add test for missing recipes

* untroll

* make exped board recipe yml consistent with upstream

* fix unearthed sneaky bugs + generic does nothing so remove

* add mass media console board, remove roundstart boards from dynamic recipes

* remove roundstart stuff, add rcd ammo to protolathe

* dont dupe because of access electronics prototypes

* fix final fails

* final untroll

* final untroll 2

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: Null <56081759+NullWanderer@users.noreply.github.com>
2024-06-01 21:31:06 +00:00
DrSmugleaf eed9c58386
Add job whitelist system (#28085)
* Add job whitelist system

* Address reviews

* Fix name

* Apply suggestions from code review

Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>

* cancinium

---------

Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>
2024-06-01 18:02:43 +02:00
Nemanja bacd52c991
Decouple interactions from hands, cleanup old events, add new fears (#28393)
* ok basic shit

* second part

* pretend it isn't real it can't hurt you.

* 👁️ 👁️

* shadowcommander review
2024-06-01 18:00:07 +02:00
Leon Friedrich 6427cc560e
Make chat & examine systems use FormattedMessage.EscapeText() (#28431) 2024-06-01 18:00:05 +02:00
ShadowCommander 08b82e98c4
Add search filter to the admin menu player tab (#28030) 2024-06-01 17:56:42 +02:00
Leon Friedrich 4ce7efd04d
Prevent Identity.Name NRE exception (#28433)
Fix Identity.Name exception
2024-06-01 17:56:36 +02:00
ShadowCommander 9da992476e
Reflow the player tab to show more of the names (#28029) 2024-06-01 17:54:54 +02:00
metalgearsloth f2727b6228
Fix verb categories shuffling (#28368)
If it's an extra category we leave it in its default spot.
2024-06-01 17:54:50 +02:00
metalgearsloth 4755223c9f
Predict ActivatableUIRequiresPower (#28405)
A lot of BUIs aren't going to handle the state coming in cleanly but we can fix em as we find em.
2024-06-01 17:38:43 +02:00
ShadowCommander ebddaa8e3d
Move ApcPowerReceiverComponent Powered state to shared (#28206)
* Try syncing powered state to client

For some reason the client is not receiving the ApcPowerReceiverComponentState, so it's not working.

* Fix powered state not syncing to client

The client PowerReceiverSystem was abstract, which prevented it from
running initialize.

* Flip check so that it runs bigger checks first

PowerDisabled skips the others.
NeedsPower skips the receiving check.

* Disallow changing Powered manually

* Move Powered update to PowerReceiverSystem

* Move appearance to event subscription

* Move metadata component to AllEntityQuery

* Cleanup

* Move Powered update back to PowerNetSystem

It's easier to use the EntityQueries and it dosen't need to be updated
anywhere else.

* Put appearance updating back

* Move IsPowered to shared

* Simplify IsPowered

* Cleanup

* Remove duplicate PowerChangedEvent

PowerChangedEvent on ProviderChanged doesn't seem to be needed
PowerChangedEvent gets raised by in update if the power state changes
after a new provider is connected
2024-06-01 17:38:41 +02:00
deltanedas 819c173308
item cabinet rework + stuff (#26779) 2024-06-01 17:19:54 +02:00
metalgearsloth bf59f7dbc6
Fix surveillance camera closing (#28374)
The boilerplate sucks but I haven't thought of something good.
2024-06-01 17:19:44 +02:00
ShadowCommander 7123ad8832
Popup duplicate stacking (#27978) 2024-06-01 17:19:25 +02:00
Repo ea2668ff37
Fix late join & observe to de-admin admins. (#28319) 2024-06-01 17:18:14 +02:00
Pieter-Jan Briers 958a2a2916
Remove bogus C# finalizers (#28315)
Begging people to learn how this programming language works before throwing random syntax into a file.

None of these finalizers ever worked. I also checked whether they were memory leaks and needed *proper* shutdown logic, but they're all instantiated-once UI controls that last for the entire lifetime of the program so it's probably fine.
2024-06-01 17:13:48 +02:00
Leon Friedrich 85b0e876e7
Fix storage UI interactions (#28291)
* Fix storage UI interactions

* Add VV support
2024-06-01 17:13:10 +02:00
DrSmugleaf 94375b73ce
Make it possible to hide full health bars below a total damage threshold (#28127)
* Make it possible to hide full health bars below a total damage threshold

* Fix not setting state
2024-06-01 17:00:25 +02:00
metalgearsloth 9e350a452c
Fix water postshader (#28130) 2024-06-01 17:00:16 +02:00
Vasilis d36ff9043a
Remove the network tab (#28231)
It is useless and bloat, if a user needs to change these settings they are free to modify their cvars manually via the clientconfig.toml file or via the cvar command.
2024-06-01 16:58:11 +02:00
Tayrtahn 7809aab96d
Hotfix for crashes from bad item names (#28256) 2024-06-01 16:57:07 +02:00
Leon Friedrich 768f48bd4f
Improve InteractionSystem range & BUI checks (#27999)
* Improve InteractionSystem range & BUI checks

* Ghost fixes

* AAA

* Fix test

* fix nullable

* revert to broadcast event

* Fixes for eengine PR

* Ah buckle code

* )
2024-06-01 16:56:23 +02:00
Leon Friedrich 396a6ad5a6
Content changes for engine delta-state PR (#28134)
* Update GasTileOverlayState

* Update DecalGridState

* Update NavMapState

* poke

* poke2

* poke3

* Poke dem tests
2024-06-01 16:55:53 +02:00
Nemanja 9adf1ed402
Remove AlertType and AlertCategory (#27933) 2024-06-01 16:55:49 +02:00
Julian Giebel 57b4af9f71
Implement permissive version of AddMarkup and use it for tips (#28204)
* Implement permissive version of ddMarkup
Use permissive ddMarkup for news article input
Use permissive ddMarkup for tips

* Fix doc comment format
2024-06-01 16:55:32 +02:00
nikthechampiongr 06b4df686b
Firelock improvements part 1 (#26582)
* Change prying system and pryunpoweredcomp to allow for custom time modifiers

This will be useful if I go the route of making firelocks pryable when
unpowered instead of just being able to open and close instantly when
unpowered.

* Make firelocks properly predicted

Shared system made. Since atmos checks can only be done on the server we
just have it set relevant bools on the component and then dirty it.
Ditched atmos checks on trying to open, they now only happen whenever
firelocks are updated.

* Make firelocks pryable without a crowbar

While this usually would only allow you to do this when a door is
unpowered, firelocks do not have the airlock component which actually
does that check. As such firelocks will always allow you to pry them
open/closed by hand.

* Clean up System. Change update interval to be based on ticks. Move as much as possible to shared

* Make firelocks unable to emergency close for 2 seconds after being pried open

* Clean up

* More cleanup

* Reorganize SharedFirelockSystem methods to match Initialize order

---------

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
2024-06-01 16:55:26 +02:00
Leon Friedrich 74308b008f
Use non-generic `TryComp()` for metadata & transform (#28133) 2024-06-01 16:53:51 +02:00
Flesh 09113824e9
Add plant metabolism effects to chemical guidebook (#28038)
* draft one of plant metabolism guidebook

* loc fix?

* add attributes loc

* fix loc syntax

* improved appearance

* last commit was undercooked, my bad

* last commit was still undercooked, my worse

* last commit was even still undercooked, my worst

* Addressed comments?

* Fix newlines

* Hopefully this works

* Cleanup, I think

* 2xs
2024-06-01 16:51:34 +02:00
dffdff2423 24bb967ffc
Fix Flavor Text editor not saving correctly (#28122)
* Check for flavor text equality in profile.

* Fix some characters being deleted from flavor text

Sometimes the last few characters of the flavor text would get deleted. This fixes this issue.
2024-06-01 16:51:06 +02:00
no 34e8105f70
Add Syndicate/generic radio implants, remove Syndicate encryption key from uplink (#1262)
* Add radio implants

* Syndie radio implant: add to uplink, formatting pass

* Syndie radio implant: fix doc string

* Syndie radio implants: add inheritdoc to systems

* Syndie radio implants: Change wording on uplink

Signed-off-by: no <165581243+pissdemon@users.noreply.github.com>

* Syndicate radio implants: More wording changes

Signed-off-by: no <165581243+pissdemon@users.noreply.github.com>

* Syndicate radio implants: fix review code problems

* syndicate radio implants: remove OpenRadioImplantEvent event and reuse storageimplant stuff

* Syndicate radio implants: prevent implanting borgs with generic radio (syndicate radio is still possible)

* syndie radio implants. extremely graphic non-null matching action and establishment of extreme non-virtual privacy

---------

Signed-off-by: no <165581243+pissdemon@users.noreply.github.com>
2024-05-27 15:24:52 +00:00
deltanedas 5e86111d7d
add secwatch pda app for current sussy baka
* Crime Assist cleanup

* Add SecWatch cartridge to PDAs

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: Azzy <azzydev@icloud.com>
2024-05-23 14:58:06 +00:00
YuNii 9c43e96a0a
Add keybind option for the Emote Menu (#28083)
* Add keybind option for the Emote Menu

* Update .editorconfig

oopsies
2024-05-18 14:04:33 +02:00
Nemanja 7d4372cbd7
fix orphaned storage grid pieces getting stuck to the cursor (#27960)
* fix orphaned storage grid pieces getting stuck to the cursor

* instead of denying it, update it smartly
2024-05-18 14:04:23 +02:00
deltanedas fb4a534b97
fix ninja hacking not affecting sechud (#28021)
minor refactor and fix

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-05-18 14:01:33 +02:00
Pieter-Jan Briers 46ae460a91
Fix sandbox check failure when compiling with latest .NET SDK. (#28077)
Roslyn now compiles char + string with string.Concat(ROS<char>). This means doing ref char -> ROS<char> which is not sandbox safe. Actually fixing this in the sandboxer is difficult so I'm gonna just pass on that for now.
2024-05-18 14:00:23 +02:00
Dexler 7f1e1ab275
Disposal unit recharging state fix (#28059) 2024-05-18 14:00:15 +02:00
DrSmugleaf 447bc7de85
Fix the client not passing the weapon to can attack checks (#28040) 2024-05-18 14:00:09 +02:00
ShadowCommander 5df3ce0c45
Fix salvage magnet UI opening again when activating the console twice (#28010) 2024-05-18 14:00:04 +02:00
ShadowCommander 5a8675f375
Fix profile editor save buttons disappearing at small resolutions (#28001) 2024-05-18 13:59:27 +02:00
Brandon Li 6a83e2bb1b
Reagent dispenser UI (Again) (#27958)
* reagent dispenser: fancy window

* reagent dispenser: dispense button grid

* reagent dispenser: rearrange containers & info

* reagent dispenser: remove `reagent-dispenser-window-container-label`

* reagent dispenser: add `Scrollcontainer` on right side

* reagent dispenser: get rid of pointless actions

* reagent dispenser: cleanup actions and `inventory` field on bound ui state

* reagent dispenser: cool reagent cards & finishing touches

* reagent dispenser: final cleanup and formatting

* reagent dispenser: `ButtonGrid` and `ReagentDispenserSetDispenseAmountMessage` refactor

* reagent dispenser: cleanup code & address minor concerns

* reagent dispenser: text in reagent cards no longer clips

* reagent dispenser: oh wait i forgot to change this and thats why the builds keep failing probably

* reagent dispenser mayybe this

* reagent dispenser: remove `using FastAccessors;`

* delete unused classes

* disable reagent button when container is empty

* Make things a bit bigger

* remove obsolete text color override
2024-05-18 13:59:16 +02:00
Kara b93f956353
Resolve `'EntitySystem.Get<T>()' is obsolete` in content (#27936)
* PROJECT 0 WARNINGS: Resolve `'EntitySystem.Get<T>()' is obsolete` in content

* pass entman

* dog ass test

* webeditor
2024-05-18 13:58:55 +02:00
ShadowCommander 2402c1abf3
Fix borg UI regenerating every tick (#27956)
* Fix UI elements being recreated when they didn't need to be

* Fix up comparison
2024-05-18 13:58:48 +02:00
nikthechampiongr c8ded7032c
Record deletion (#27883)
* Allow for Station Records interface for aghosts to delete records

* Fix record consoles not working when there are more than 2 crew members.

HOW DID NOONE NOTICE THIS SOONER???

* Stop being unconventional
2024-05-18 13:58:44 +02:00
no 3e277a22d1
Prevent admin-frozen players from ghosting or suiciding, add "Freeze And Mute" verb (#27813)
* prevent admin-frozen players from ghosting or suiciding

* Add "Freeze and Mute" admin verb

* Allow "Freeze And Mute" admin verb when player is already frozen but not muted

* Remove redundant scream handler (scream action just emotes, duh)

* AdminFrozenSystem: clean imports

* Update Content.Server/Chat/Commands/SuicideCommand.cs

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

* Update Ghost.cs

* retrigger ci (empty commit)

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2024-05-18 13:58:36 +02:00
Kara c56db3b1a8
Resolve `'TransformComponent.MapPosition' is obsolete` in content (#27939)
* Resolve `'TransformComponent.MapPosition' is obsolete: 'Use TransformSystem.GetMapCoordinates'` in content

* build?
2024-05-18 13:58:34 +02:00
Kara 74eef92443
Resolve all non-obsoleting warnings in content (#27934)
* Resolve all non-obsoleting warnings in content

* Update ClientGameTicker.cs

* Update SkeletonAccentSystem.cs

* Update BwoinkSystem.cs
2024-05-18 13:57:06 +02:00
metalgearsloth 25ce6c531b
Lobby refactor + species loadouts support (#27576)
* Vox stuff

* Species loadouts and lobby refactor

The control flow for lobby is all over the shop so I pulled it all up from the individual controls so now they handle the bare minimum required and LobbyUIController handles the rest.

* a

* Bulk changes

* a

* weh

* Character import / export

* finalise

* woops this stuff too

* Also datafield exporting

* comments

* Review
2024-05-18 13:55:56 +02:00
keronshb 27be1ad8c9
Magic Refactor + Wizard Grimoire (#22568)
* Brings over changes from the original magic refactor PR

* Adds Master Spellbook, spellbook categories, WizCoin currency, and locale

* Wiz€oin™

* Adds currency whitelist to Spellbook preset, grants contained actions on action added.

* Adds grant contained action and remove provided action.

* adds a way for actions to be upgraded to the store

* Adds Fireball 3 and fixes action upgrade logic so that it checks if the action can level or if the action can upgrade separately

* Fixes upgrade logic in ActionUpgradeSystem to allow for level ups without an actual upgrade. Fixed action upgrade logic in store system as well

* Removes current action entity from the bought entities list and adds new or old action entity

* Removes Current Entity

* Removes old comments, fixes TransferAllActionsWithNewAttached

* Removes TODO

* Removes Product Action Upgrade Event

* reverts changes to immovablerodrule

* Removes stale event reference

* fixes mind action grant logic

* reverts shared gun system change to projectile anomaly system

* forgor to remove the using

* Reverts unintended changes to action container

* Adds refund button to the store

* Refreshes store back to origin.

* Refund with correct currency

* Init refund

* Check for terminating and update interface

* Disables refund button

* Removes preset allow refund

* dont refund if map changed

* 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 duplicate refundcomp

* Removes unintended merges

* Removed another unintended change from merge

* removes extra using statement

* readds using statement

* might as well just remove both usings since it won't leave the PR

* Fixes Action upgrades from stores

* Changes to non obsolete method uses

* Shares spawn code between instant and world

* Adds action entity to action event, adds beforecastspellevent, adds spell requirements to magic component

* puts prereq check in spell methods, sets up template code for before cast event

* checks for required wizard clothes

* Networks Magic Comp and Wizard Clothes Comp. Renames MagicSpawnData to MagicInstantSpawnData.

* Removes posdata from projectiles

* Speech > RequiresSpeech

* Fixes ActionOnInteract

* checks for muted

* popup for missing reqs

* Validate click loc for blink spell

* Checks if doors are in range and not obstructed before opening

* Check ents by map coords

* Adds speak event

* Comments spellbooks

* Removes comments

* Unobsoletes smite spell

* Invert if

* Requirements loc

* Fixes spell reqs

* Inverts an if

* Comment updates

* Starts doafter work

* Removes doafter references

* Balances fireball upgrades to be more reasonable

* Enables refund on master spellbooks

* Spells to do

* update spellbook doafter

* knock toggles bolts

* Touch Spell comments

* Comments for pending spells

* more comments

* adds spider polymorph to spellbook

* TODOs for spells

* reorganizes spellbook categories and adds wands

* fixes spacing and adds limited conditions

* commented owner only for future store PR

* reenables owner only for the grimoire

* fixes grimoire sprite

* Adds wizard rod polymorph

* summon ghosts event

* Moves rod form to offensive category

* Adds charge spell and loc for rod polymorph

* Oops forgor the actual chages

* Item Recall comment

* Fixes UI

* removes extra field for wizard rod

* Cleanup

* New Condition (INCOMPLETE)

* Fix linter

* Fix linter (for real)

* fixed some descriptions

* adds regions to magic

* Adds a non-refund wizard grimoire, fixes blink to deselect after teleporting, reduces force wall despawn time to 12 seconds

* removes limited upgrade condition

---------

Co-authored-by: AJCM <AJCM@tutanota.com>
2024-05-18 13:55:05 +02:00
DrSmugleaf af6a694481
Make projectiles not hit crit mobs unless clicked on (#27905) 2024-05-18 13:53:49 +02:00
ike709 55e435ad97
Adds Support for Guidebook Buttons in UIs (#27891)
* Adds Support for Guidebook Buttons in UIs

* read it from the component

* the code is perfect

* moony review

---------

Co-authored-by: ike709 <ike709@github.com>
2024-05-18 13:52:13 +02:00
metalgearsloth 991560e435
Fix votes using an audio entity (#27871)
* Fix votes using an audio entity

Just retains a source around and uses that. I think the audio limit is like 256 sources on the lower end so this is like whatever to persist.

* Restart

* weh
2024-05-18 13:52:04 +02:00
DrSmugleaf 8971937177
Add ActionPerformedEvent, ActionsSystem.SetIfBiggerCooldown, action id to action events and BackgroundOn field (#27682)
* Add ActionPerformedEvent and ActionsSystem.SetIfBiggerCooldown

* Add action id to action events and backgroundon field to action component
2024-05-18 13:52:01 +02:00
Errant 6a1b7c8ee7
Space Ninjas auto-toggle internals after spawning (#25083)
* fix engine version

* actually fix engine version

* Automatically activated breathing masks

* weh

* who needed that component anyway

* check if internals are already running

* Update Content.Server/Atmos/Components/BreathToolComponent.cs

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

* Update Content.Server/Body/Systems/InternalsSystem.cs

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

* prediction

* record struct event

* remove delayed activation, instead ensure that masks spawn last

* leftover

* engine version

* re-implement

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-05-18 13:51:21 +02:00
Brandon Li 1e60c8642b
Reagent dispenser UI (#27831)
* reagent dispenser: fancy window

* reagent dispenser: dispense button grid

* reagent dispenser: rearrange containers & info

* reagent dispenser: remove `reagent-dispenser-window-container-label`

* reagent dispenser: add `Scrollcontainer` on right side

* reagent dispenser: get rid of pointless actions

* reagent dispenser: cleanup actions and `inventory` field on bound ui state

* reagent dispenser: cool reagent cards & finishing touches

* reagent dispenser: final cleanup and formatting

* reagent dispenser: `ButtonGrid` and `ReagentDispenserSetDispenseAmountMessage` refactor

* reagent dispenser: cleanup code & address minor concerns

* reagent dispenser: text in reagent cards no longer clips

* reagent dispenser: oh wait i forgot to change this and thats why the builds keep failing probably

* reagent dispenser mayybe this

* reagent dispenser: remove `using FastAccessors;`
2024-05-18 13:48:42 +02:00
vorkathbruh 6e95cdda68
Revert "Near-sighted trait from SIMPLE STATION 14 (#73)"
This reverts commit 54f65e30
2024-05-18 13:38:06 +02:00
null 51c06a3613
Revert "Fix prescription glasses working from pockets (#286)"
This reverts commit 168699d23a.
2024-05-18 13:37:43 +02:00
deltanedas 1fa0bad89f
malf killer 9000 (robotics console) (#24855)
* create devicenet frequencies

* create borg transponder and give it to all nt borgs

* add robotics console

* actually implement battery charge display + some fix

* tab

* real explosion

* little safer

* disable destroy button clientside too when on cooldown

* m

* how do i do this when i review things...

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

* webedit ops

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

* ui updates

* oracle java

* do a thing

* update ui when a borg times out

* maybe fix test

* add IsLocked to LockSystem

* make destroying gib the chassis again, so emagging isnt sus

* use locking

* require using alt click to unlock so normal click is open ui

* the

* use LogType.Action

* take this L

* pocket lint?

* sharer

* pro ops

* robor pushmarkup

* m

* update and make it not use prototype anymore

* frame0

* update yaml

* untroll

* bad

* h

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
2024-05-18 13:34:13 +02:00
deltanedas 48afd84a12
ninja criminal records hacking (#24982)
* more humour

* spotted a troll

* add TryFindObjective to MindSystem

* replace copypaste bool conditions with CodeCondition

* use CodeConditionSystem in ninja + add handling for criminal hack

* add criminal records hacking

* update objectives

* :trollface:

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-05-18 13:34:11 +02:00
deltanedas 8b491e714b
fix mech energy display for 0 (#27828)
Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-05-18 13:33:21 +02:00
DrSmugleaf b06f3c681f
Fix the changelog window being very laggy until a tab is clicked (#27795) 2024-05-18 13:31:52 +02:00
Nemanja 3055d7bac5
Mega Antag Refactor (#25786)
* Mega Antag Refactor

* last minute delta save

* more workshopping

* more shit

* ok tested this for once

* okkkkk sure

* generic delays for starting rules

* well darn

* nukies partially

* ouagh

* ballin' faded and smonkin wed

* obliterated the diff

* Spread my arms and soak up congratulations

* I've got plenty of love, but nothing to show for it

* but there’s too much sunlight
Shining on my laptop monitor, so I
Can’t see anything with any amount of clarity

* ok this junk

* OOK!

* fubar

* most of sloth's review

* oh boy

* eek

* hell yea!

* ASDFJASDJFvsakcvjkzjnhhhyh
2024-05-15 19:48:32 +02:00
Null f9ec70d258
Merge pull request #1122 from DeltaV-Station/2024/04/21-loadouts
Loadouts
2024-05-15 14:48:11 +02:00
deltanedas 9291c35364
shipyard rewrite/port (#1171)
* add shipyard code

* add shipyard preferred dock

* shipyard locale

* add the computer itself

* add all the pre rebase shuttles

* name the shuttle

* tweak all shuttle maps + fix test

* add some categories for future use

* rename nanotrasen to civilian

* update for new ui system and move remaining yaml into deltav folder

* good

* write tests

* wow

* helix price hike

* fix dirty dispose

* use deltav cvar file

* s

Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com>

---------

Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: Null <56081759+NullWanderer@users.noreply.github.com>
2024-05-15 12:18:55 +00:00
null 7f6449b5e9
Remove EnsureJobRequirementsValid
Its code that frequently breaks, and while I could fix it, I don't think its needed currently.
2024-05-15 13:11:54 +02:00
Null b14097d0b6
Revert "Felinid Thievery" (#1177)
Revert "Felinid Thievery (#1102)"

This reverts commit 9b763f3758.
2024-05-09 14:59:48 +02:00
WarMechanic 9b763f3758
Felinid Thievery (#1102)
* Strip UI can now check for Thieving Component to see hidden items

* Admin Observers can now see hidden items in strip menu

* Felinid pickpocketing buffs

* Revert "Felinid pickpocketing buffs"

This reverts commit cfc6d80719.

* Revert "Admin Observers can now see hidden items in strip menu"

This reverts commit 496188729f.

* Removed mysterious line of code

* Response to review

* Removed more stuff unrelated to topic

* Responded to review regarding syntax

* Added IgnoreStripHidden to Felinids and Admin Observers

* Reimplement strip time multiplier with correct syntax

* Added strip time multiplier to Felinid and Admin Observer
2024-05-09 04:40:30 +00:00
Ciac32 00a043e2ff
Fix Loadout Editor not closing when Character Editor is closed. (#27539)
Remove duplicate UpdateRoleRequirements call screwing up update ordering
2024-05-07 22:53:29 +02:00
null 8db7894d51
Merge remote-tracking branch 'refs/remotes/upstream/master' into 2024/04/21-loadouts 2024-05-07 22:52:49 +02:00
no 217e0b8d1c
Add ghost role raffles (#26629)
* Add ghost role raffles

* GRR: Fix dialogue sizing, fix merge

* GRR: Add raffle deciders (winner picker)

* GRR: Make settings prototype based with option to override

* GRR: Use Raffles folder and namespace

* GRR: DataFieldify and TimeSpanify

* GRR: Don't actually DataFieldify HashSet<ICommonSession>s

* GRR: add GetGhostRoleCount() + docs

* update engine on branch

* Ghost role raffles: docs, fix window size, cleanup, etc

* GRR: Admin UI

* GRR: Admin UI: Display initial/max/ext of selected raffle settings proto

* GRR: Make a ton of roles raffled
2024-05-07 04:43:28 +02:00
exincore c373066e05
fix(ui): Fix shuttle control radius marking text vertical spacing (#27695) 2024-05-07 04:36:20 +02:00
DrSmugleaf ba4835d11c
Fix AlertControl throwing an error if the sprite view entity is deleted multiple times (#27690)
* Fix AlertControl throwing an error if disposed multiple times

* Replace default check with deleted check
2024-05-07 04:36:12 +02:00
Ty Ashley 8e65c52614
Added new icons for the emote wheel (#27541)
* Added new icons for the emote wheel

* Corrected weh path

* Changed whistle to better match other vocal emotes. Modified honk icon to match dimensions of box. Corrected chirp and chitter emote icons.

* Cleaned up edges of icons

* Added attributions.yml to emotes folder
2024-05-07 04:36:10 +02:00
Leon Friedrich 2cc879bb1c
Replace NavMap dictionaries with int[] (#27602)
* Replace NavMap dictionaries with int[]

* Remove badly named const

* Remove unnecessary offset

* Prioritize airlocks
2024-05-07 04:18:25 +02:00
metalgearsloth 580ca2f67f
Fix effects (#27533)
* Fix effects

- Fix muzzle flash rotations.
- Fix effects so they update every frame.
- Fix effects tanking client performance.

* Fix merge artifact
2024-05-07 04:16:15 +02:00
metalgearsloth 3ae1ff3241
Optimise navmaps significantly (#27528)
* Optimise navmaps significantly

- Reduce the delta state size significantly.
- Remove AirtightChangedEvent because this will spam them out constantly.

* weh

* review

---------

Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
2024-05-07 04:16:09 +02:00
deltanedas 1c63a7364f
add ghostnado button to warp menu (#27556)
* add ghostnado button to warp menu

* translator ops

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-05-07 04:13:12 +02:00
Magnus Larsen e234b65529
Fix Melee swing effect rotation (#27494)
* Melee swing effect: Allow rotation

* Make melee weapon effects follow the user
2024-05-07 04:00:03 +02:00
T-Stalker 1739a4df3b
Makes flares quieter (#27521)
* light

* flares quieter
2024-05-07 03:59:58 +02:00
Ed ca9465cb8c
remove Injector SolutionName constant (#27493)
remove stupid constant
2024-05-07 03:45:17 +02:00
Leon Friedrich eb1c1bac54
Content changes for engine exception tolerance PR (#27455)
* Content changes for engine exception tolerance PR

* Poke tests
2024-05-07 03:44:43 +02:00
metalgearsloth 27a46814bc
Tippy fixes (#27475)
How does that UISystemDependency not crash.
2024-05-07 03:44:12 +02:00
Leon Friedrich 6d41c9c5f4
Action UI fixes (#27468) 2024-05-07 03:44:06 +02:00
Morb d11e8db9f9
Emotes Menu (#26702)
* Basic emote radial menu

* Move out from corvax

* Move to UI controller & add to top menu bar and key bind

* Make emote play

* Add name localization for emotes

* Localize chat messages

* Fix emote menu

* Add categories localization

* Fixes

* Fix

* Add emotes entity blacklist

* Fix entity whitelist required all logic

* Remove unused wagging emote

* Revert sprite

* Set default texture for emote icon

* Update Resources/keybinds.yml

---------

Co-authored-by: Kara <lunarautomaton6@gmail.com>
2024-05-07 02:19:25 +02:00
SlamBamActionman c2fddecc73
Tippy, the helpful hint clown! (#26767)
* Tippy is BACK

* Clean up clippy from aprils fools

* Changed names from clippy to tippy, added localization, removed local_clippy command, made it easier to target a specific player

* Rename clippy.yml to tippy.yml

---------

Co-authored-by: Kara <lunarautomaton6@gmail.com>
2024-05-07 02:18:43 +02:00
Leon Friedrich 07be4ad541
Stop admin verb pop-in (#27450) 2024-05-07 02:04:58 +02:00
exincore 9a7b62511c
feat(fax): Fax machines print, copy, and send paper labels (#25979)
* feat(fax): Client fax file-print parses and stores label

* feat(fax): Fax machines print, copy, and send paper labels

* style(Fax): Comments and formatting

* feat(fax): Make fax admin logging more consistent and clear

* refactor(fax): Replace ternary with a simpler null coalescing

* refactor(fax): Make FaxSystem Send method signature consistent with Copy, PrintFile

* refactor(fax): Read entire file and process later instead of peeking first

* refactor(fax): Remove local variables only used for style

* style(fax): Fix some nearby style errors

* fix(fax): Undo an inaccurate change to admin log formatting

* refactor(fax): Separate `firstLine` variable

* fix(fax): Use Environment.NewLine

* bienvenidos

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-05-07 01:52:52 +02:00
KrasnoshchekovPavel 57c0675459
Added localization of groups and types: damage, metabolism (#27368)
* Added localization of groups and types: damage, metabolism (displayed in the guide book). The text for the health analyzer, weapon damage inspection is now taken from damage prototypes

* fix damage tests

* fix damage test yml

* fix damage test prototypes

* Update Content.Shared/Damage/Prototypes/DamageGroupPrototype.cs

* Update Content.Shared/Damage/Prototypes/DamageTypePrototype.cs

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2024-05-07 01:49:45 +02:00
osjarw d748150692
Fix handlabeler/utility belt misprediction (#26660)
* Fix handlabeler/utility belt misprediction

* Partly moved HandLabelerSystem to shared
And cleaned up HandLabelerComponent

* WIP format the files so later commits look clearer
Doesn't change individual code lines, but may move
functions to another file

* WIP some more code movement

* Hand Labeler is now mostly predicted
Only the UI isn't

* WIP: Formatting and moved stuff

* Using componentstates for prediction correction

* review

* Update label on label change

* Don't overwrite label while editing

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
2024-05-07 01:26:28 +02:00
Azzy 7c4d38b804
Merge branch 'master' into 2024/04/21-loadouts 2024-05-06 14:08:45 -05:00
Ed cdee244158
Displacement maps now works on any layers (#27405)
* try

* pipupi

* Update ClientClothingSystem.cs

* Update vox.yml

* Update ClientClothingSystem.cs
2024-05-06 01:37:30 +02:00
brainfood1183 eb9e3974d0
Rodents can be Faxecuted (executed via Fax machine) (#21461)
* Rodents can be Faxecuted (executed via Fax machine)

* use brute instead of new group.

* fax visuals now use tags for mouse and hamster instead of comps

* fix for ubuntu, damn ubuntu bane of my life

* cant copy hamlet, can now faxecute mothroaches.

* fix

* fix

* fixes

* removed ifs now using switch, removed hastag now using string.

* fixes and no more switch

* cleanup

* more cleanup

* fix

* cleanup

* moved damage out of faxmachine and into own system and component.

* changes

* fixes and done i think.

* tidy

* Fixes

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-05-06 01:31:20 +02:00
Tainakov 619c00c22c
[Admin QOL] +Adminchat flag (#26930) 2024-05-06 01:26:44 +02:00
Leon Friedrich 381ee31ef5
Replace NavMap dictionaries with int[] (#27602)
* Replace NavMap dictionaries with int[]

* Remove badly named const

* Remove unnecessary offset

* Prioritize airlocks

Signed-off-by: null <56081759+NullWanderer@users.noreply.github.com>
2024-05-04 17:59:37 +02:00
metalgearsloth 7e80e49ce5
Optimise navmaps significantly (#27528)
* Optimise navmaps significantly

- Reduce the delta state size significantly.
- Remove AirtightChangedEvent because this will spam them out constantly.

* weh

* review

---------

Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
Signed-off-by: null <56081759+NullWanderer@users.noreply.github.com>
2024-05-04 17:54:01 +02:00
eoineoineoin 6b2fd62ee7
Add tooltips to artifact analyzer UI (#27393)
Add tooltips to indicate why "Extract" button is disabled.

Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>
(cherry picked from commit b8a8d6f8fc8e0c1d83998c07a3265108d49de615)
2024-05-03 00:30:47 +02:00
Errant 1e2f97dc21
Vox sprite rework (#26985)
weh

(cherry picked from commit 257b04d27793b8c8853af57a9f53d361062d5d61)
2024-05-03 00:29:32 +02:00
Pieter-Jan Briers b2294a8cdc
Displacement map prototype (#26709)
Requires https://github.com/space-wizards/RobustToolbox/pull/5023

This uses the new engine features (above) to add a displacement map shader. This allows deforming a sprite based on another sprite.

Primary use case is automatically adapting human clothing sprites to different species, something we want to make species like Vox a reality.

A basic example of wiring this up with Vox has been added. The system is however incredibly simple and **will** need more work by a content developer to select and toggle displacement maps when appropriate. I am leaving that to somebody else. For example right now the displacement map is applied even if a species already has custom-fit sprites for a piece of clothing, such as the grey jumpsuit for Vox.

Basic Aseprite plugins to help with authoring displacement maps have also been made.

(cherry picked from commit 2f7d0dedbded99a8f3f538c887c3c17aaa667501)
2024-05-03 00:28:42 +02:00
Ty Ashley 1eace0955c
Persist Agent ID Job Icon between UI loads (#27379)
Modified the Agent ID Card to persist the selected Job Icon between UI loads

(cherry picked from commit 7d4d66887b1617e929a64d4e6fe5d6d88b5e5a58)
2024-05-03 00:26:03 +02:00
wafehling 338fc46f78
Added hotkey and controller to re-open end of round scoreboard (#25884)
* Added keybind for scoreboard, starting work

* Fixed the window appearing

* Added loc text

* Updated namespace for ScoreboardUIController.cs

* Switched to UISystemDependency

"- UIControllers can use [Dependency] as normal for IoC services and other controllers, but must use [UISystemDependency] for entity systems, which may be null as controllers exist before entity systems do." Jezithyr — 10/12/2022 1:20 PM

* Reverted back to functional state

* Replace with UISystemDependency

* Move RoundEndSummaryWindow to ScoreboardUIController

* Convert to EntitySystem

* Clean up command bind

* Move to RoundEnd directory

* Remove Nukeops rule when no nukies

* Cleanup

* Change to toggle hotkey

* Cleanup

* Revert "Remove Nukeops rule when no nukies"

This reverts commit 5d4bbca09f45110b24a674d59b505be87b602b67.

* Cleanup

* Make the Toggle hotkey work in lobby

* Fix error

---------

Co-authored-by: SlamBamActionman <slambamactionman@gmail.com>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
(cherry picked from commit 8febdc5fc4851f44802bc675d90d3412bd0d4da6)
2024-05-03 00:19:00 +02:00
metalgearsloth 5ff62578ce
Fix magic mirror prediction (#27356)
(cherry picked from commit e1a52477706b6ebc2b4d74f5a98e6f913279e905)
2024-05-03 00:18:55 +02:00
metalgearsloth 7c857e7342
Fix network configurator memory leaking (#27346)
* Fix network configurator memory leaking

Doesn't dispose this window.

* Fix the other part

(cherry picked from commit 13c65378425e2d8254e8ed4e68061643b1245308)
2024-05-03 00:18:47 +02:00
metalgearsloth 1d63b4cfcb
Content update for UI prediction (#27214)
* Content update for UI refactor

* Big update

* Sharing

* Remaining content updates

* First big update

* Prototype updates

* AUGH

* Fix UI comp ref

* Cleanup

- Fix predicted message, fix item slots, fix interaction range check.

* Fix regressions

* Make this predictive

idk why it wasn't.

* Fix slime merge

* Merge conflict

* Fix merge

(cherry picked from commit 5896e6875266b22c565009b5d45f60ceb981d90a)
2024-05-03 00:15:32 +02:00
DrSmugleaf 6a95253b9d
Move job info changing methods for id cards to shared (#27337)
* Move job info changing methods for id cards to shared

* Revert "Move job info changing methods for id cards to shared"

This reverts commit 95cbc46b2d1934fa7bf5c72d7d3de9f9168992a1.

* Reapply changes

(cherry picked from commit c122fdf183a8228ccba69cb747a86626ca9b5391)
2024-05-03 00:13:05 +02:00
Leon Friedrich 56e17441ce
Fix client-side replay error (#27332)
(cherry picked from commit 0ae942101a9f79ff49c3ffb3bfe257daa76719ff)
2024-05-03 00:11:30 +02:00
Tayrtahn 07bfdf787a
Expand UseDelay to support multiple delays per entity; fix bible healing and bag pickup (#27234)
* Upgraded UseDelay to support multiple delays per entity

* Implement secondary delay for bibles.
Also some improvements to make it work nicely.

* Documentation is good

* Reserve the previous change; now Storage uses the special ID and Bible uses the default.

* .0

* Added VV support to UseDelayInfo

* Serialize better

* No register, just setlength

(cherry picked from commit b292905216948e0c85b04e8ef65a5291dd868eee)
2024-05-03 00:11:26 +02:00
ShadowCommander 58615df4ac
Add command to toggle ghost visibility on the client (#27314)
* Add command to toggle ghost visibility on the client

* Fix description

* Fix index of arg parsing

* Allow setting GhostVisibility directly

(cherry picked from commit cf45005471bbd07facbe2a5de841c08f3b8e84f0)
2024-05-03 00:10:53 +02:00
beck-thompson 2351ca213f
Radio jammer update! (#25912)
* Added selectable power level to radio jammer

* Cleaned up OnGetVerb

* Settings are now stored in the .yml file. Simplified stuff a lot!

* Minor fixes!

* Small little baby fix :)

* Added the power level switch to the examine menu and also removed the ftl file as it was in the incorrect location.

* Minor code cleanup

* Changed byte -> int

* Update sprite

* Fixed licence

* Added power LED that changes if the jammer is on low power.

* Removed tabs

* Changed github link to the commit

* Changed all the RemComp to RemComDeferred

* Moved NetworkedComponent to shared

* Changed radio jammer textures back with minor edits

* Added a space because it was annoying me

* Jammer now updates range for suit sensors properly! Thanks nikthechampiongr :)

* Removed useless comment

* Cleaned up code that updates the range of tracking devices.

* Fixed client namespace and removed newline

* Cleaned up ChangeLEDState and ChangeChargeLevel.

* Added comments

* Read only

* Fixed another comment

* Locked in

* Made server inherit shared

* Update Content.Shared/Radio/EntitySystems/SharedJammerSystem.cs

* Update Content.Shared/Radio/EntitySystems/SharedJammerSystem.cs

* review fixes

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit d3b1178428e9e0e714e51523558335589078a76c)
2024-05-03 00:10:47 +02:00
Nemanja c4dc4fce95
fix analysis console bias button for real (#27299)
fix bias button for real

(cherry picked from commit 771661f478f5be07472434d32532f22aa7a8d8ab)
2024-05-03 00:06:06 +02:00
Pieter-Jan Briers a0bceb5c97
Various item status fixes/tweaks (#27267)
* Always display item status panel fully

Initial feedback from the UI changes seems to be that a lot of people go "why is there empty space" so let's fix that.

* Fix item status middle hand being on the wrong side

I think I switched this around when fixing the left/right being inverted in the UI code.

* Minor status panel UI tweaks

Bottom-align contents now that the panel itself doesn't dynamically expand, prevent weird gaps.

Clip contents for panel

* Fix clipping on implanters and network configurators.

Made them take less space. For implanters the name has to be cut off, which I did by adding a new ClipControl to achieve that in rich text.

* Update visibility of item status panels based on whether you have hands at all.

This avoids UI for borgs looking silly.

Added a new "HandUILocation" enum that doesn't have middle hands to avoid confusion in UI code.

* Use BulletRender for laser guns too.

Provides all the benefits like fixing layout overflow and allowing multi-line stuff. Looks great now.

This involved generalizing BulletRender a bit so it can be used for not-just-bullets.

* Fix geiger word wrapping if you're really fucked

(cherry picked from commit 7b90c08a2c7315b2c5a6cb17dfd82a5ac9863a53)
2024-05-03 00:01:56 +02:00
Nemanja aa0883658c
fix analysis console not saving bias button state (#27275)
(cherry picked from commit 49f1c8b197687024d572e61807050fea42518b35)
2024-05-03 00:00:31 +02:00
Plykiya 4a9176ab3a
Do-afters belonging to other players are now shaded (#27273)
Make do-afters belonging to other players shaded

Co-authored-by: Plykiya <plykiya@protonmail.com>
(cherry picked from commit 14bc59544296aced303e71258e4ee3de3637bdab)
2024-05-03 00:00:27 +02:00
lzk 5195be0d7b
Little analysis console rearrangement (#27244)
(cherry picked from commit 5b0c3ecf738c630df5e3909163fde3e494ec85bc)
2024-05-02 23:58:57 +02:00
DrSmugleaf fd40a7a33a
Add events for custom action target validation (#27230)
(cherry picked from commit b0e6ff67793723f1fd23e62eccde731d8aec5f4c)
2024-05-02 23:52:51 +02:00
DrSmugleaf c369b1c89d
Add SharedPopupSystem.PopupClient for cursor and coordinates (#27231)
(cherry picked from commit 81f2dc7cf90de43c6a854c28ae9243be1c8c7d4d)
2024-05-02 23:52:38 +02:00
deltanedas fccee49fbb
early merge projector rewrite/fixes (#1128)
* cant disguise to thing in a container

* copy cigarette visualiser

* prevent aghost throwing an error

* make disguises die in space

* fuck it rewrite it to not use polymorph

* fix action troll

* oop

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-05-01 15:03:26 +00:00
no c315a78ff2
Species vision fixes (#1150)
Species vision fixes: no losing vision on nearby species vision haver getting gibbed, fix construction overlay
2024-04-28 22:09:58 +00:00
NullWanderer 74002a1c4e
Merge remote-tracking branch 'refs/remotes/upstream/master' into 2024/04/21-loadouts
# Conflicts:
#	Content.Server/IoC/ServerContentIoC.cs
#	Resources/Prototypes/Roles/Jobs/Medical/chemist.yml
2024-04-22 19:41:29 +02:00
metalgearsloth 05ff1e2aac
Fix character preview not updating on character change (#27043)
I love lobby code :3

(cherry picked from commit f9f204a6d03e08cb0d189f7d64c031a025711430)
2024-04-22 04:54:46 +02:00
metalgearsloth f84ff2b0cf
Fix loadouts UI not refreshing on char change (#27075)
I love lobby code. Refreshing the entire jobs UI doesn't seem to cause issues. At least jobpriorityselector was my fault when I was far fucking stupider writing this shit.

(cherry picked from commit 9b1a8b07d734853c8cfcb83a6e2b7aad4e6dd764)
2024-04-22 04:54:38 +02:00
metalgearsloth 215fced85c
LobbyUI fixes (#27033)
* LobbyUI fixes

I have no idea which were bugs prior but anyway fix stuff.

* More fixes

* Test moment

(cherry picked from commit fcd6c25242c195266c3b4c4aa2ed78922683567c)
Signed-off-by: NullWanderer <56081759+NullWanderer@users.noreply.github.com>
2024-04-22 04:52:49 +02:00
metalgearsloth d49eabc1a5
Partial cherry-pick: Loadouts redux (#25715)
Signed-off-by: NullWanderer <56081759+NullWanderer@users.noreply.github.com>
2024-04-22 03:28:58 +02:00
Hannah Giovanna Dawson 4edf577b1b
SS14-26480 Roll Traversal Distorter into regular Artifact Analyzers (#26545)
* SS14-26480 Roll Traversal Distorter into regular Artifact Analyzers

Bit of a grab-bag of cleanup of Xenoarchaeology prompted by #26480.

1. Traversal distortion biases are now "up" and "down" instead of "in" and "out".
2. Node generation has been tidied up to make it a little clearer how it works.
3. Traversal Distorters have been removed from the game along with their board.
4. Traversal distortion is now done by the artifact analyzers by default.
5. Some loc strings have been made clearer.
6. The Abnormal Artifact Manipulation tech has been made slightly cheaper.
7. The aformentioned tech is now localized as Artifact Recycling, given all it does is unlock the crusher.
8. The Xenoarchaeology guidebook entry has been given a bit of a rewrite, putting all information into
one page and making sure to cover the basics that otherwise would require someone typing "Liltenhead
artifact tutorial" into Youtube.

* Fix references to deleted guidebook entry

* Add fancy button to console because @EmoGarbage404 asked me to

* migration comprete

* Fixed a goober comment

* maint fails to resolve conflicts: more at 11

* Resolve PR comments

* Make UI nice

---------

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

(cherry picked from commit f059714a75601c73c0b7b917d0faac35c99f96fe)
2024-04-21 23:46:34 +02:00
Pieter-Jan Briers 176e9b0a81
THE RETURN OF ITEM STATUS (#22986)
* THE RETURN OF ITEM STATUS

Item status is now inline with the hands again. You can now see item status for both hands at once.

If you have more than 2 hands, the last active hand of that side is displayed in the respective item status.

The item status for the active hand is also highlighted.

Item status has been given a new look so it looks unique and matches every UI theme.

* Shrink item status to 125px

This is going to require fixing the existing controls. Do that later.

* New bullet item status rendering

sex

* Make gun item status look just a little bit nicer.

Avoid only one or two bullets ending up on a single row of an item status.

* Delete Eris theme files

* More improvements

Fixed the fact that left/right were flipped around when assigning status panel locations. Involved renaming all the UI textures.

Redid how content margins are set from the theme. Less complex and cleaner now.

Made the item name always left-aligned, just looks better since other UI elements don't adapt anyways.

* Compact down item status text

Now it fits 3 lines of text on one line. Yay.

This is achieved by compacting RichTextLabels by reducing their line height and giving them a negative bottom margin.

* Add item status sprites for Ashen theme.

* Add status control to show beaker/bucket/jug solution/transfer volumes

Also PollingItemStatusControl I'll be using that more.

* Fix welder item status, clean up welder code

The item status control implementation was ancient and bad. That's why it was buggy.

Removed all the complex dated networking stuff for welders, we just sync the solution contents now anyways so none of that is needed anymore. This moves a buncha stuff to shared and just removes code.

Cleanup. The code was doing some really dumb stuff.

* Spray bottles show contents in item status.

* cowtools

* Fix plasmafire and clockwork themes.

Actual git gaslighting wtf.

---------

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

(cherry picked from commit 58f025ba8043bcf5c32204b08eec8ae9e5d2bd41)
2024-04-21 23:41:08 +02:00
nikthechampiongr aafca1efc8
Make banpanel defaults use cvars (#27168)
* Make banpanel respect CCVars. Add CCVars for default ip/hwid/use last
details checkboxes.

* Move severity handling for server/role ban to another function

* Save sawmill

* Line goofyness

---------

Co-authored-by: Vasilis <vasilis@pikachu.systems>
(cherry picked from commit f96f92f54fe169d2e3a21356e07dfa50eca8b5d9)
2024-04-21 23:34:53 +02:00
DrSmugleaf c30f6b9659
Make remaining IPrototypes partial (#27157) 2024-04-21 23:33:58 +02:00
deathride58 13af11e3db
Adds the option to fit the viewport to vertical screenspace (#27061)
* Adds the option to fit your viewport to your vertical screenspace

* fixes documentation

* Removes commented-out leftover

* Hides the viewport width slider and also we dont know if the viewport width causing stretching/squishing was a bug present before but we fixed that while we were at it

* Removes commented out leftovers

(cherry picked from commit 396c6133664de50f8d85133b3680292fa1b95be0)
2024-04-21 23:32:41 +02:00
DrSmugleaf f0f410348c
Move storage binds and slot click handling to shared (#27135)
(cherry picked from commit 3c6722bd6fca55cfdee8dced11379641b443d542)
2024-04-21 23:31:37 +02:00
Nemanja 1d00da85fd
make filled inventory slots blank (#27150)
* blank filled slots

* Update InventoryTemplatePrototype.cs

(cherry picked from commit e5a5196b1f5cba8e0f05c374b2b7c58eea6f7361)
2024-04-21 23:21:54 +02:00
metalgearsloth 8bd58f68b5
More storage tweaks (#25970)
- Fix some prediction stuff.
- Fix some jank.
- UseDelay.
- Cap.

(cherry picked from commit b2b1926eccbae918c8d9702cfba40e54d1f4d870)
2024-04-21 23:20:53 +02:00
dffdff2423 107fc0ff25
Disable Communication Console Announcement Button for Too Long Messages. (#27145)
Disable comms console announce for long messages

Disable the "announce" button on the communications console for messages
above the cap. I did not touch broadcasting because I could not identify
an easy way to check the maximum length for it.

(cherry picked from commit cff80836503c8d7bd3ed0b018d9feff904114128)
2024-04-21 23:20:48 +02:00
Nemanja 0d88c372e9
add fuel costs back to finishing welding (#27030)
* add fuel costs back to welding

* ack

* meh

* eek!

(cherry picked from commit a47c5561a9632b6577abdc252f712d7f2da823e6)
2024-04-21 23:20:07 +02:00
Leon Friedrich ccd3357ded
Hide some map related logs from clients (#27127)
* Hide some map related logs from clients

* #if !DEBUG

* Fix typo

(cherry picked from commit 8245caaf613b8acbb045c14ceff1d9affa30e5b4)
2024-04-21 23:18:38 +02:00
NullWanderer 73e4780e6c
Revert "Fix character preview not updating on character change (#27043)"
This reverts commit f9f204a6d03e08cb0d189f7d64c031a025711430.
2024-04-21 22:18:58 +02:00
Krunklehorn 02567b4afa
Refactor status icons take 2, cyborgs don't see criminal status (#26207)
* Initial commit.

* review

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit 460b588de5b1fc2aa8b1c8272ba1a90d99378731)
2024-04-21 22:11:15 +02:00
Tayrtahn 794302839d
Add ability to shake fizzy drinks so they spray in peoples' faces (#25574)
* Implemented Shakeable

* Prevent shaking open Openables

* Prevent shaking empty drinks. Moved part of DrinkSystem to Shared.

* DrinkSystem can have a little more prediction, as a treat

* Cleanup

* Overhauled PressurizedDrink

* Make soda cans/bottles and champagne shakeable. The drink shaker too, for fun.

* We do a little refactoring.
PressurizedDrink is now PressurizedSolution, and fizziness now only works on solutions containing a reagent marked as fizzy.

* Documentation, cleanup, and tweaks.

* Changed fizziness calculation to use a cubic-out easing curve.

* Removed broken YAML that has avoid the linter's wrath for far too long

* Changed reagent fizzy bool to fizziness float.
Solution fizzability now scales with reagent proportion.

* Rename file to match changed class name

* DoAfter improvements. Cancel if the user moves away; block if no hands.

* Match these filenames too

* And this one

* guh

* Updated to use Shared puddle methods

* Various fixes and improvements.

* Made AttemptShakeEvent a struct

* AttemptAddFizzinessEvent too

(cherry picked from commit cfa94be4c2044146298d07c703f3b71bc377ca63)
2024-04-21 22:08:21 +02:00
deltanedas c597aec3a8
prop hunt ss14 (real) (#26691)
* texture appropriation

* add code for projector

* add chameleon projector yml

* damage and actions

* prevent small props being killed round removing you (700 damage from a single shot)

* tweak default

* oop

* do appearance properly, need engine update

* fix bugs, blacklist pda

* remove status icons

* amou

* sus

* fix test + make props fast

* amouuuung

* remove funny log

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
(cherry picked from commit 395c33024cb9d4e80078e3ab3c70c1e92e7fd5bc)
2024-04-21 22:05:50 +02:00
chromiumboy 4fd43751ce
Navmap rework (#26713)
* Optimized the drawing of lines and tracked entities

* Optimized nav map updating and added thin wall support

* Added support for thin doors

* Removed floor tile seams, more line drawing optimizations

* Fixed split grids not updating correctly

* Cleaned up NavMapControl code

* Fix nav map header

* Converted nav map updates from system network messages to delta-states

* Addressed review comments

* Fixed timing issue where NavMapSystem would update before AirtightSystem did

(cherry picked from commit 009d06d97833b7700bcfaa534b20575fdbbd7db5)
2024-04-21 22:05:45 +02:00
slarticodefast a2e1dc8107
Show volume on the gas analyzer (#25720)
The gas analyzer now shows the volume of pipes, tanks, canisters and the environment.

Adjust gas analyzers so that the volume and number of moles shown corresponds to only the scanned element, e.g. a canister or single pipe in a pipenet.

(cherry picked from commit 5a5efa11cf1d68708a70d48a286cb97fde96afdf)
2024-04-21 22:05:43 +02:00
metalgearsloth 056400b0c1
Fix character preview not updating on character change (#27043)
I love lobby code :3

(cherry picked from commit f9f204a6d03e08cb0d189f7d64c031a025711430)
2024-04-21 22:05:15 +02:00
metalgearsloth cc5d741a09
Added Jukebox (#26736)
* Added Jukebox, along with music for jukebox

* Fixed Jukebox meta.json copyright

* Removed songs I couldn't find a license for.

* Renamed files to solve check failures from spaces

* Added missing attributions.yml

* Fixed lack of description in Jukebox

* Jukebox is now constructable.

* Change Jukebox menu to FancyWindow

* Moved Jukebox messages out of jukebox component

* Removed Jukebox OnValueChanged.

* JukeboxComp now uses AutoGenerateComponentState

* Removed state code, since it's auto generated

* Fixed various Jukebox code to match conventions.

* Updated Standard.yml to match changed song list.

* fixes

* Jukebox workin

* Fix

* Polishing

* Finalising

* Revert

* bad

* jukey

* Reviews

* name

* Update submodule to 218.2.0

---------

Co-authored-by: iNVERTED <alextjorgensen@gmail.com>

(cherry picked from commit 2db374988c91c6ce5f932b9cee1ba251cbfb22e5)
2024-04-21 22:04:54 +02:00
Hannah Giovanna Dawson 8d48570f0d
SS14-26950 Fix Waddling During Improper States (#26965)
* SS14-26950 Fix Waddling During Improper States

Fix some states when a clown can waddle when no clown should be able to waddle, no-matter their clowning powers.

1. You cannot waddle whilst weightless
2. You cannot waddle whilst stunned
3. You cannot waddle whilst slowed down due to stam damage
4. You cannot waddle whilst you're knocked down
5. You cannot waddle whilst you're buckled
6. You cannot waddle whilst crit
7. You cannot waddle whilst dead

There's some argument for being able to waddle whilst on the floor
and doing some bizarre floor-humping exercise but I'm not coding an animation layer system just to handle clowns doing the worm.

* Use a nicer "can move" check

(cherry picked from commit 3d0fc1067303635a743af04ef4c463abd0dba343)
2024-04-21 22:00:49 +02:00
Hannah Giovanna Dawson c690e55972
Clown shoes make you waddle, as God intended (#26338)
* Clown shoes make you waddle, as God intended

* OOPS

* Toned down, client system name fix

* Tidy namespacing for @deltanedas

* Refactor to handle prediction better, etc.

* Resolve PR comments.

(cherry picked from commit ef42fb38061b29d7202eb6d65f1b658aecc43452)
2024-04-21 21:58:28 +02:00
metalgearsloth f7e4c84143
Fix options menu crashing in replays (#26911)
Not having the nullable set properly is annoying but fixing that would probably be a significant amount of work.

(cherry picked from commit 4cb344cc307c33247492ba64cccca6dfe720540f)
2024-04-21 21:57:19 +02:00
Tayrtahn 7095f3e8a7
Add two-message overload to PopupPredicted (#26907)
Added two-message overload to PopupPredicted

(cherry picked from commit 9107d421bdd2600883780d02d521ebbbec06ac68)
2024-04-21 21:56:56 +02:00
DrSmugleaf 99ab8cea68
Fix rockets and lasers looking like they have nothing loaded (#26933)
(cherry picked from commit 13cef85a6e7d0f5873d1f66358ef742356541582)
2024-04-21 21:56:42 +02:00
DrSmugleaf b11f3a16d9
Fix guns that spawn without a magazine looking like they have one (#26922)
(cherry picked from commit 2d53cfeabcc977938f217c303ce46a79d7fe80c9)
2024-04-21 21:54:36 +02:00
TsjipTsjip cfe5153f5d
Health analyzer UI unit correction (#26903)
Correct Kelvin displayed on health analyzer UI, use T0C constant.

(cherry picked from commit 998bf453684ed91ae5971e41be72820c87b441ef)
2024-04-21 21:54:26 +02:00
Nemanja c651727215
uplink and store freshening (#26444)
* uplink and store freshening

* more

* im gonna POOOOOOGGGGGGG

* we love it

(cherry picked from commit 9d5a3992fa635194cfe1d9fbfa60a5ea72288f4e)
2024-04-21 21:54:07 +02:00
Killerqu00 e0333ee9de
Skipping bounties (#26537)
* add button to menu

* networking and component work

* try to add access stuff

* main functionality done

* add access lock? I think?

* remove extra line

* fix access system

* move SkipTime to StationCargoBountyDatabaseComponent

* Disable/Enable skip button based on cooldown

* remove debugging

* add access denied sound

* remove DataField tags

* dynamic timer

(cherry picked from commit fd067731b544eb219493338a8fe446c154e880f4)
2024-04-21 21:47:43 +02:00
Wrexbe (Josh) 403f256393
Improve access overlay (#26667)
* Improve access overlay

* review changes

---------

Co-authored-by: wrexbe <wrexbe@protonmail.com>
(cherry picked from commit 682afd4ae499e09df8703fef78f5ab015be676c7)
2024-04-21 21:47:42 +02:00
Crotalus c569162bb3
Fix lathe materials list bug (#26826)
Fix lathe material list bug

(cherry picked from commit a9df8cf18a9217da46d76e05fe0189b771555cbc)
2024-04-21 21:30:47 +02:00
chromiumboy 1c00c720f2
Bug fixes for RCD (#26792)
Various fixes

(cherry picked from commit f784e9ca4e7493bd2f20d44a6b52da10ddb8f02f)
2024-04-21 21:28:57 +02:00
Crotalus 9cd3e23dfd
Show missing materials in lathes tooltip (#26795)
* Lathes: Show missing materials amount in tooltip

* Use AppendLine and remove the last newline at the end

(cherry picked from commit a17875498056ff746abb9ec1d4a40017c99ad7cc)
2024-04-21 21:28:54 +02:00
no d8b97e8d37
Randomized lollipop and gumball flavors (#1074)
* Give lollipops and gumballs random flavors

* RandomizedCandy: Fix borg lollipop action

* RandomizedCandy: Play sound when candy is fabricated

* RandomizedCandy: Lollipop can now be put in mouth

* RandomizedCandy: Quieten fab sound

* RandomizedCandy: merge icons and reexport without pHYs chunk

should speed up downloading these textures on 9600 baud modems

* RandomizedCandy: loads more flavors and update description

* RandomizedCandy: Fix duplicate candyFlavor IDs

* RandomizedCandy: Fix attrib and preserve flavor order

* RandomizedCandy: init on MapInit instead of ComponentInit

* RandomizedCandy: Fix minor code style issues, file placement

* RandomizedCandy: put new code into DeltaV namespace

* RandomizedCandy: Removed redundant datafield tags

Signed-off-by: no <165581243+pissdemon@users.noreply.github.com>

---------

Signed-off-by: no <165581243+pissdemon@users.noreply.github.com>
2024-04-14 16:48:59 +00:00
Velcroboy f5c7808446
Fix shuttle structure construction (#1069)
Co-authored-by: Velcroboy <velcroboy333@hotmail.com>
2024-04-09 22:12:36 -05:00
PrPleGoo 57f3f72724
Task/fix nightvision huds (#26726)
* StatusIcon: add field to set if icon should be rendered with shading

* set/unset shader based on icon field

* set new field to true for hud icons

* re-shade health bars

(cherry picked from commit d314a41e4f5c166de5e59504090117435f6ba0c2)
2024-04-07 14:34:58 +02:00
Pspritechologist 31bda710af
Suit Sensors No Longer Use a Hardcoded 'Total Health' (#26658)
* Suit sensors now know the 'total health' of an entity

* Missed the constructor 😔

(cherry picked from commit f5d9d3c4586252b6741f1c7473eef2b63b8fe586)
2024-04-07 14:34:09 +02:00
Aexxie b28c3a5da3
OOC Patron Color Toggle (#26653)
* Adds the option for you to toggle your OOC Patron color visibility to yourself and others.

* Makes the button magically disappear if you arent a patron

(cherry picked from commit 7ced9d42f0351319b20828115cad0abd274e4577)
2024-04-07 14:33:45 +02:00
Sk1tch f269ccc099
Added chat window transparency slider to options (#24990)
* Adds a new slider to the misc tab in options that lets the player set chat window transparency

* Tweaked variable names

* Fixed order to match UI

* Renamed set chat window transparency function

* Changed and refactored to opacity instead of transparency

* Remove unnecessary int to float conversions

Slider used to be 0-100 while the CCVar was 0.0-1.0f. This is confusing and was only used for rounding to 2 decimal points.

* Round the value to two decimal points

* Remove rounding for now

* Rename

* Unhardcode chat color by moving to stylesheet

* Fix indent

* Make opacity slider only change opacity

---------

Co-authored-by: Your Name <you@example.com>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
(cherry picked from commit bc31c193c25b297179e0de2bf54c2623fbeeebe0)
2024-04-07 14:28:59 +02:00
eoineoineoin 06280a2ed4
Fix clipping/overlap in lathe machine UIs (#26646)
* Add scrollbars to lathe material list when necessary

* Fix bug where shrinking window would cause elements to overlap

---------

Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>
(cherry picked from commit a05f95269f8e04a29e8d93da37cff47b84026d51)
2024-04-07 14:28:58 +02:00
Ed b6ff9f6fe4
Anomalies behaviours (#24683)
* Added new anomaly particle

* Add basic anomaly behaviour

* +2 parametres

* add functional to new particle

* add components to behaviours

* big content

* add shuffle, moved thing to server

* clean up

* fixes

* random pick redo

* bonjour behavioUr

* fix AJCM

* fix

* add some new behaviours

* power modifier behaviour

* rmeove timer

* new event for update ui fix

* refactor!

* fixes

* enum

* Fix mapinit

* Minor touches

---------

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

(cherry picked from commit a4ec01d4719e9489b5cceb23357b3be0ea4b86e7)
2024-04-07 14:28:52 +02:00
deltanedas 5e3d7350ba
scoopable ash and foam, solution transfer prediction (#25832)
* move SolutionTransfer to shared and predict as much as possible

* fully move OpenableSystem to shared now that SolutionTransfer is

* fix imports for everything

* doc for solution transfer system

* trolling

* add scoopable system

* make ash and foam scoopable

* untroll

* untroll real

* make clickable it work

* troll

* the scooping room

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 1db178b63254c5b509a6493a631fddb596b376a4)
2024-04-07 14:27:04 +02:00
c4llv07e ecbef2b8eb
Add door electronics access configuration menu (#17778)
* Add door electronics configuration menu

* Use file-scoped namespaces

Signed-off-by: c4llv07e <kseandi@gmail.com>

* Open door electronics configuration menu only with network configurator

Signed-off-by: c4llv07e <kseandi@gmail.com>

* Doors will now try to move their AccessReaderComponent to their door electronics when the map is initialized

Signed-off-by: c4llv07e <kseandi@gmail.com>

* Make the access list in the id card computer a separate control

Signed-off-by: c4llv07e <kseandi@gmail.com>

* Fix merge conflict

Signed-off-by: c4llv07e <kseandi@gmail.com>

* Remove DoorElectronics tag

Signed-off-by: c4llv07e <kseandi@gmail.com>

* Integrate doors with #17927

Signed-off-by: c4llv07e <kseandi@gmail.com>

* Move door electornics ui stuff to the right place

Signed-off-by: c4llv07e <kseandi@gmail.com>

* Some review fixes

Signed-off-by: c4llv07e <kseandi@gmail.com>

* More fixes

Signed-off-by: c4llv07e <kseandi@gmail.com>

* review fix

Signed-off-by: c4llv07e <kseandi@gmail.com>

* move all accesses from airlock prototypes to door electronics

Signed-off-by: c4llv07e <kseandi@gmail.com>

* rework door electronics config access list

Signed-off-by: c4llv07e <kseandi@gmail.com>

* Remove Linq from the door electronics user interface

* [WIP] Add EntityWhitelist to the activatable ui component

Signed-off-by: c4llv07e <kseandi@gmail.com>

* Better interaction system

Signed-off-by: c4llv07e <kseandi@gmail.com>

* Refactor

Signed-off-by: c4llv07e <kseandi@gmail.com>

* Fix some door electronics not working without AccessReaderComponent

Signed-off-by: c4llv07e <kseandi@gmail.com>

* Move AccessReaderComponent update code to the AccessReaderSystem

Signed-off-by: c4llv07e <kseandi@gmail.com>

* Remove unnecesary newlines in the door access prototypes

Signed-off-by: c4llv07e <kseandi@gmail.com>

* Remove unused variables in access level control

Signed-off-by: c4llv07e <kseandi@gmail.com>

* Remove unnecessary method from the door electronics configuration menu

Signed-off-by: c4llv07e <kseandi@gmail.com>

* [WIP] change access type from string to ProtoId<AccessLevelPrototype>

Signed-off-by: c4llv07e <kseandi@gmail.com>

* Remove unused methods

Signed-off-by: c4llv07e <kseandi@gmail.com>

* Newline fix

Signed-off-by: c4llv07e <kseandi@gmail.com>

* Restored to a functional state

Signed-off-by: c4llv07e <kseandi@gmail.com>

* Fix access configurator not working with door electronics AccessReaderComponent

Signed-off-by: c4llv07e <kseandi@gmail.com>

* Replace all string access fields with ProtoId

Signed-off-by: c4llv07e <kseandi@gmail.com>

* move access level control initialization into Populate method

Signed-off-by: c4llv07e <kseandi@gmail.com>

* Review

---------

Signed-off-by: c4llv07e <kseandi@gmail.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>

(cherry picked from commit 64bb8dbdd50e0b1e5744e1eb0cc6f24bda959ade)
2024-04-07 14:26:56 +02:00
SlamBamActionman d268105585
Coordinates Disks & Shuttle FTL Travel (#23240)
* Adds the CentComm Disk and configures it to work with direct-use shuttles

* Added functionality for drone shuttles (i.e. cargo shuttle)

* Adds support for pods, and a disk console object for disks to be inserted into. Also sprites.

* Added the disk to HoP's locker

* Removed leftover logs & comments

* Fix for integration test

* Apply suggestions from code review (formatting & proper DataField)

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

* Fix integration test & changes based on code review

* Includes Disk Cases to contain Coordinate Disks, which are now CDs instead of Floppy Disks

* Check pods & non-evac shuttles for CentCom travel, even in FTL

* Import

* Remove CentCom travel restrictions & pod disk consoles

* Major changes that changes the coordinates disk system to work with salvage expeditions

* Missed CC diskcase removal

* Fix build

* Review suggestions and changes

* Major additional changes after merge

* Minor tag miss

* Integration test fix

* review

---------

Co-authored-by: 0x6273 <0x40@keemail.me>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit bed9e9ac6a068495ff70f09eb852a9c7a156d632)
2024-04-07 14:24:24 +02:00
eoineoineoin afb70a74dc
Fix some text overflow bugs in HUD (#26615)
* Don't clip text in item status

* Fix overflow in examine tooltip

---------

Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>
(cherry picked from commit 9b08c2c908e344e3356c7cb4bd75efca0adae2e4)
2024-04-07 14:23:26 +02:00
avery f5b9f4dd1e
cancelable brig timers (#26557)
brig timers now cancelable. also some screensystem yakshave

(cherry picked from commit 5eff7f169e95e94aab54b742c6928c4925cf7887)
2024-04-07 14:22:06 +02:00
Wrexbe (Josh) b8598e479d
Make the buttons on the map ui not squished (#26604)
Make the map ui work

Co-authored-by: wrexbe <wrexbe@protonmail.com>
(cherry picked from commit ad438a7ac2216c6295cae97025b4204a9c2ae41f)
2024-04-07 14:21:51 +02:00
Nemanja d9f1a5f042
disallow unanchoring or opening panels on locked emitters/APEs (#26600)
* disallow unanchoring or opening panels on locked emitters/APEs

* no locking open panels

* oops

* needback feedback

* Update Content.Shared/Lock/LockSystem.cs

* Update Content.Shared/Lock/LockSystem.cs

* Update Content.Shared/Lock/LockSystem.cs

* sanity

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 1b69762816c5ae5184baa024a4bcd23b75236a6c)
2024-04-07 14:21:48 +02:00
Plykiya 7182e0f674
Injector UI shows TransferAmount change, Spilling liquid changes Injector mode (#26596)
* Injector UI shows TransferAmount change, spill changes mode

* Update Content.Shared/Fluids/SharedPuddleSystem.Spillable.cs

* Update Content.Shared/Fluids/SharedPuddleSystem.Spillable.cs

---------

Co-authored-by: Plykiya <plykiya@protonmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit d71062a64c569d59bc67c950a34454eef7ccaa14)
2024-04-07 14:21:27 +02:00
metalgearsloth ac273c0912
Revert Paint (#26593)
* Revert "Fix build (#26258)"

This reverts commit 6de5fbfafbde700d711a566f6a43f05f7a99e455.

* Revert "Spray Paint (Review Ready) (#23003)"

This reverts commit e4d5e7f1aebfc37b1bc3453fdb39578f3897b6a1.

# Conflicts:
#	Resources/Prototypes/Entities/Structures/Holographic/projections.yml

(cherry picked from commit c91ed9685349efd0cb7dc0e541f5349dbdb17f81)
2024-04-07 14:20:19 +02:00
chromiumboy 7f158f2e5f
Improved RCDs (#22799)
* Initial radial menu prototyping for the RCD

* Radial UI buttons can send messages to the server

* Beginning to update RCDSystem

* RCD building system in progress

* Further updates

* Added extra effects, RCDSystem now reads RCD prototype data

* Replacing tiles is instant, multiple constructions are allowed, deconstruction is broken

* Added extra functionality to RadialContainers plus documentation

* Fixed localization of RCD UI strings

* Menu opens near cursor, added basic RCD

* Avoiding merge conflict

* Implemented atomized construction / deconstruction rules

* Increased RCD ammo base charges

* Moved input context definition to content

* Removed obsoleted code

* Updates to system

* Switch machine and computer frames for electrical cabling

* Added construction ghosts

* Fixed issue with keybind detection code

* Fixed RCD construction ghost mispredications

* Code clean up

* Updated deconstruction effects

* RCDs effects don't rotate

* Code clean up

* Balancing for ammo counts

* Code clean up

* Added missing localized strings

* More clean up

* Made directional window handling more robust

* Added documentation to radial menus and made them no longer dependent on Content

* Made radial containers more robust

* Further robustness to the radial menu

* The RCD submenu buttons are only shown when the destination layer has at least one children

* Expanded upon deconstructing plus construction balance

* Fixed line endings

* Updated list of RCD deconstructable entities. Now needs a component to deconstruct instead of a tag

* Bug fixes

* Revert unnecessary change

* Updated RCD strings

* Fixed bug

* More fixes

* Deconstructed tiles/subflooring convert to lattice instead

* Fixed failed tests (Linux doesn't like invalid spritespecifer paths)

* Fixing merge conflict

* Updated airlock assembly

* Fixing merge conflict

* Fixing merge conflict

* More fixing...

* Removed erroneous project file change

* Fixed string handling issue

* Trying to fix merge conflict

* Still fixing merge conflicts

* Balancing

* Hidden RCD construction ghosts when in 'build' mode

* Fixing merge conflict

* Implemented requested changes (Part 1)

* Added more requested changes

* Fix for failed test. Removed sussy null suppression

* Made requested changes - custom construction ghost system was replaced

* Fixing merge conflict

* Fixed merge conflict

* Fixed bug in RCD construction ghost validation

* Fixing merge conflict

* Merge conflict fixed

* Made required update

* Removed lingering RCD deconstruct tag

* Fixing merge conflict

* Merge conflict fixed

* Made requested changes

* Bug fixes and balancing

* Made string names more consistent

* Can no longer stack catwalks

(cherry picked from commit 02273ca0e7a4091bac88e585ecca5253dd0e7fd7)
2024-04-07 14:19:42 +02:00
J. Brown 389e39e4ba
Uplink store interface searchable with a searchbar. (#24287)
* Can now search the uplink store interface with a searchbar.

* Search text updates no longer send server messages. Persists listings locally.

* Formatting fixes and tidying.

* Added helper method to get localised name and description (or otherwise, entity name and description) of store listing items.

* Update Content.Client/Store/Ui/StoreMenu.xaml

* Review change; moved localisation helper functions to their own class.

* Prevent thread-unsafe behaviour as-per review.

* Remove dummy boxcontainer

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit de62ec204b04809175945a2ccfd4dbce6dafd8eb)
2024-04-07 14:18:45 +02:00
brainfood1183 a7fb1b4bbc
Toilet Upgrade (needs review) (#22133)
* Toilet Draft

* fixes

* toilets now have secret stash to place items in cistern.

* fixes

* plungers now unblock toilets.

* fix sprite

* new sprites and fix

* fixes

* improve seat sprites.

* fix

* removed visualisersystem changed to genericvisualizers

* flush sound for toilets and copyright for toilet sprites.

* fix atrributions

* fixes

* fix datafield flushtime

* sprite improvements

* fixes

* multiple changes

* fix

* fix

* fixes remove vv

* moved stash related functions to secret stash system from toilet.

* fix

* fix

* changes for recent review.

* fix

* fix

(cherry picked from commit 5f063d2d6d2a41702b60d11f779e23c34fa74410)
2024-04-07 14:18:32 +02:00
Wrexbe (Josh) e31ea299c4
Make timer ignore client predict setting (#26554)
* Make timer ignore client predict setting

* making tests run

---------

Co-authored-by: wrexbe <wrexbe@protonmail.com>
(cherry picked from commit 8676aad583ad7104151bf22932da86a87cb52c5a)
2024-04-07 14:15:43 +02:00
Wrexbe (Josh) 33b274c9a8
Fix initial infected icon hiding (#26585)
(cherry picked from commit 0edd0a74f426f19fc1fb7519656c62f70d02cd1f)
2024-04-07 14:15:17 +02:00
Plykiya 8d8a7b2004
Hyposprays Draw from Jugs (#25544)
* Hyposprays Draw from Jugs

* Fix last onlyMobs usage in yml

* Some Suggested Changes

* Remove unnecessary datafield name declarations

* Remove unnecessary dirtying of component

* Same line parentheses

* Added client-side HypospraySystem

* Cache UI values and only updates if values change

* empty line

* Update label

* Label change

* Reimplement ReactionMixerSystem

* Remove DataField from Hypospray Toggle Mode

* Change ToggleMode from enum to Bool OnlyAffectsMobs

* Add DataField required back since it's required for replays...?

* update EligibleEntity and uses of it

* Add user argument back

* Adds newline

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

* Guard for dirty entity

* Adds summary tag

---------

Co-authored-by: Plykiya <plykiya@protonmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit f192d7901fedd134c38a6cab38731f8e93994492)
2024-04-07 14:14:28 +02:00
Pieter-Jan Briers f9c225df61
Refactor FTL time tracking code to fix a UI bug (#26538)
The FTL UI on the shuttle console would reset the FTL progress bar every time you open it. This is because the server only sends "time until completion", not a start/end time. The FTL code now uses a separate start/end time so the exact same progress bar can be preserved.

For convenience, I made a StartEndTime record struct that stores the actual tuple. This is now used by the code and has some helpers.

(cherry picked from commit 3b791459c74c6b56c8ae6204a936f6de06674b93)
2024-04-07 14:12:57 +02:00
Tayrtahn 8ecb0d9ae2
Add prediction to Spill Container verb, add dummy TrySpill methods to shared (#25813)
* Moved abstract spill methods to shared; added prediction to spill container verb.

* Rerun tests

* Requested changes

* Note Client behavior in Spill method docs

(cherry picked from commit 4cd2fbd076ac09d93e5258bf2b822360c77d1ea1)
2024-04-07 14:11:49 +02:00
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