Skip to content

Commit

Permalink
upstream merge 7/12 (#2389)
Browse files Browse the repository at this point in the history
* Edited Snow White reaction to output proper amount of drink. (#33331)

Co-authored-by: RedBookcase <[email protected]>

* Automatic changelog update

* Add succumb action 10 sec delay (#32985)

* Add succumb action 10 sec delay

* add somthing

* add delay to last words as well

---------

Co-authored-by: slarticodefast <[email protected]>

* Automatic changelog update

* Adds gorilla gauntlet storage sprite and updates hit sound (#33167)

* Adds storage sprite for gorilla gauntlet

* Specifies a heavier hitsound for gorilla gauntlet

* Modifies gauntlet icon and storage sprite

* Updates credit to my new username

* Clumsy system refactor (#31147)

* First commit

* Fixes

* Added the noise

* Renames

* Timespan

* Fixed space

* entity -> ent

* This shouldn't work

* opps....

* Datafield name change

* Better comments

* small comment

* Personal skill issue

* Event renames and stuff

* Couple fixes

* Defib ref fixes (Silly me)

* Added clumsy back!

* no hard code clumsy!

* Identity fix

* Event name change

* Comment change

* Function name change

* opp

* Update names

* Damage stuff!

* Fixes!

* Fixes

* opps

* This was hidden away!!

* negative diff feeds me

* Automatic changelog update

* S: Awaiting Changes

* Improve crayon UI to not be stuck in 1996 (#33101)

* Improve crayon UI to not be stuck in 1996

* Make a horrifying crayon spaghetti

* Crayon

* Undeprecate the crayon, describe the crayon

* Automatic changelog update

* BRB sign in the Bureaucracy Crate (#33341)

Added the brb sign to the Bureaucracy Crate

* Automatic changelog update

* Fix utensils not being thrown away (#33326)

* Automatic changelog update

* Fix server crash when the seed extractor is used on the dev map (#33312)

handle event when using seed extractor

Co-authored-by: slarticodefast <[email protected]>

* Solar assembly crate buff (#33019)

* more flatpacks + glass

* solar crate price increase

* price increase

* 1250 spesos

* Update Resources/Prototypes/Catalog/Fills/Crates/engines.yml

---------

Co-authored-by: slarticodefast <[email protected]>

* Automatic changelog update

* Add admin remarks button to lobby (#31761)

* Automatic changelog update

* Temporarily make singularity a bit harder to loose as non-antag

* Fix Fluent string ID copypaste fail

* Fix the component defaults

* Throwing Knife description tweak (#33349)

changed description

* Adds paper label visuals to closets and lockers (#33318)

* Modifies label sprites and adds label visuals to closets

* Removes redundant GenericVisualizer component

* Automatic changelog update

* Wizard Summon Guns/Magic (#32692)

* mostly done but there's a bug with spawning

* RandomGlobalSpawnSpellEvent now actually works

* Summon Guns/Magic is working

* Added sound, cap gun, and auto pick up

* Added all requested changes/fixes from reviews

* Halving cooldowns

* Changes + Cleanup

* Chemical synthesis kit tweak (#33345)

* butcherable surgery caps

* readded cardboard box

* butcherable now?

* butcherable now?

* one day ill figure this out

* changed label of hyperzine syringe

* removed the thing in hats.yml that wasn't supposed to be here

* Update Resources/Prototypes/Entities/Objects/Specific/Medical/healing.yml

---------

Co-authored-by: slarticodefast <[email protected]>

* Reduced cost of coloured light fixtures

* Dim light bulbs (#33383)

add

* Automatic changelog update

* Shift air alarm sprites to better reflect their direction (#33379)

* Shift Air Alarm sprites to better reflect their direction

* Fix two frames of west-facing sprite being one pixel off

* Indicate that sprites are no longer exactly tgstation's

* Replace direct uses of GameTicker dictionary with `TryGetValue` (#33222)

Fix station events schedulers, antag selection and possibly other systems acting weird in a rare scenario

* Service Worker Job Icon Change (#33361)

* Changes the Server Worker job icon to a bowtie.

* Removes grey from icon to better fit existing art.

* Updated ID card sprite.

* Edit respective meta.json files.

* Bump the failsafe timer down

* fix viewing nav slowing shuttle down (#32381)

fix

* Automatic changelog update

* Welded secret doors no longer say they are welded shut. (#33365)

Init

* Automatic changelog update

* Toggle clothing fix (#32826)

* toggle clothing fix

* some adding

* Automatic changelog update

* .NET 9 forward compatibility changes (#33421)

This doesn't switch the projects over to .NET 9, but it does make them work on .NET 9 when we decide to switch in the future.

* Fix security riot crate (#33415)

* move riot crate from security to armory category

* Move riot crate to armory, actually make it require armory access to unlock

* Localize planet dataset names (#33398)

* Localize planet names (borer)

* DatasetPrototype -> LocalizedDatasetPrototype

* Apply requested changes

* Automatic changelog update

* Remove drag & drop dropping items from containers (#32706)

* Initial commit

* Update based on maintainer discussion

* Forgot to remove this woops

* Automatic changelog update

* Crew monitoring crate updated to contain flatpacks, science access instead of engi (#33417)

* Make a crew monitoring crate with flatpacks

* fix image

* migration

* Automatic changelog update

* Add emag functionality

* Move some of the new singularity code into shared

Hopefully without explosions yay

* Fix toggle verbs (#32138)

First commit

Co-authored-by: metalgearsloth <[email protected]>

* Construction menu grid view (#32577)

* button

* implement populate grid view

* tweak min width

* Make grid button toggle visible

* tweak min window size

* fix missing recipe button when mirroring item

* make grid buttons toggleable

* align button texture vertically

* selected grid item has plain color background

* tweak window width so all buttons look good

* rename select method, defer colouring

* get icon better

* whoops

* simpler button toggle

* spritesys frame0, move spritesys

* delete old sprite system refs

* Automatic changelog update

* Automatic changelog update

* Automatic changelog update

* Actually make the emagging popup work properly

* Move PlayerBeforeSpawnEvent and PlayerSpawnCompleteEvent to Shared

* Fix imports

* Automatic changelog update

* Automatic changelog update

* Automatic changelog update

* Set airlock unlit layers as invisible (#32484)

Doesn't really affect anything due to appearance bulldozing this but this aligns with their actual normal states so.

* Syndicate item fix ups (#33435)

tweaks and fixes

* Coal presents and chrimmas tree options. Presents no longer itemify (#33147)

* Dont ensure ItemComp because it could lead to weirds, and also PickupOrDrop handles non-items already.

* presents and tree

* woops

* reviews a

* Automatic changelog update

* electrification hud

* Fix admin ghosts not being able to see items in pockets or interact with them (#31076)

* Fix admin ghosts not being able to see items in pouches or interact with them

* fix

* oops

---------

Co-authored-by: slarticodefast <[email protected]>

* Automatic changelog update

* Gas pipe sensors (#33128)

* Initial commit

* Monitored pipe node is now referenced by name

* Review changes

* Simplified construction

* Tweaked deconstruction to match other binary atmos devices

* Helper function removal

* Updated attribution

* Automatic changelog update

* Add telegram to the server info-links (#33459)

* cleanup

* rename

* another rename

* baby proof the terminal (#33281)

* baby proof the terminal

* Make a couple exceptions for items that you might take with you.

* alwayspoweredlights

* Uncuttable cables since cablecomp is a snowflake construction system

* chairs and vendors

* rerun heisentests

* rerun tests again

* Automatic changelog update

* Automatic changelog update

* Automatic changelog update

* Disable submit admin note button on switch to note (#33456)

Co-authored-by: Winkarst <[email protected]>

* Automatic changelog update

* Fix startingGear storage (#33394)

* fix starting gear storage

* removal of unused

---------

Co-authored-by: MetalSage <[email protected]>

* Minor improvements & fixes to Shuttle Console UI (#31623)

* Fix grids and docks being culled from display prematurely

* Fix inconsistent disabling of "Undock" buttons

* Add a radar icon to indicate where the controlling console is

* Tidy up math

Remove lots of sketchy transforms-of-transforms, which should have been
as single matrix multiply. Assign proper names to matrices. Remove some
redundant calculations.

* Feedback

* Fix door animations mispredicting if closing is interrupted (#33481)

* Fix door animations mispredicting if closing is interrupted

On master it will flicker states a little bit partially due to it not being predicted.

Instead we'll just set it straight back to opening (no animation is ever played anyway).

* no log

* Automatic changelog update

* Don't show drag-drop outline if climbing (#33477)

It won't actually do anything.

* Automatic changelog update

* Ensure wires can always be cut (#32447)

ensure wires are always cut

* Automatic changelog update

* babyproof arrivals shuttle (#33284)

* babyproof arrivals shuttle

* always powered lights

* uncuttable cables from terminal PR.

---------

Co-authored-by: slarticodefast <[email protected]>

* Automatic changelog update

* Add delay to AutoOrient (#33479)

It functions identically to how V1 of orientation worked and it's incredibly annoying.

* Automatic changelog update

* Draw muzzle flash below mobs (#33465)

* Draw muzzle flash below mobs

* Better naming

---------

Co-authored-by: Winkarst <[email protected]>

* Automatic changelog update

* Allow shuttles on planets to make FTL jump (#33507)

This check conflicts with an attempt to FTL from the planet before expedition ends

* Automatic changelog update

* fix exped caves generation (#32890)

Co-authored-by: deltanedas <@deltanedas:kde.org>

* Automatic changelog update

* various material & ore inhands (#33342)

* begin

* bones + pyrotten + goliath hide inhands

* Update Resources/Prototypes/Entities/Objects/Materials/materials.yml

Co-authored-by: slarticodefast <[email protected]>

* Update Resources/Textures/Objects/Materials/materials.rsi/meta.json

Co-authored-by: slarticodefast <[email protected]>

* Update Resources/Textures/Objects/Materials/materials.rsi/meta.json

Co-authored-by: slarticodefast <[email protected]>

* Update Resources/Textures/Objects/Materials/materials.rsi/meta.json

Co-authored-by: slarticodefast <[email protected]>

* pyrottOn

---------

Co-authored-by: slarticodefast <[email protected]>

* Delete HOS headset from warden's locker (#33234)

* add headset

* Add icons

* Meta change

* fix

* Revert + delete headset from locker

* fix airlocks inconsistently auto-closing after unbolting (#33524)

fix door auto close timer

* Automatic changelog update

* [BUGFIX] "Ghost" in the lobby lets you see the whole chat (#33529)

* fix bug, in ghost command lobby

* fix

* Fix build

* removed obsolete netmessage creator (#33542)

removed opsolete netmessage createor

* Fix RA0003 warning for ChatBox (#33531)

* Shark plushies now goes rawr on hit. (#33540)

Shark goes rawr more

* Automatic changelog update

* Turn off PointLights on VendingMachines when broken or off. (#33513)

The light itself should already turn off due to `LitOnPowered`
component, but the broken state of a VendingMachine did not.

Fixes  #33382

* Automatic changelog update

* Adds more diona names (#33066)

* adds more diona names

* more stuff

* AHHHHHHHHHHHHHHHHHHHHHHH

* further additions

* removes depression + adds comment

* fixes + remove some weird stuff + more stuff

* remove haste

* minor AI cleanup (#33555)

* minor cleanup

* to

* Simplify separated screen top menu (#33047)

* Automatic changelog update

* Ghost role drop-down alignment (#33397)

* dropdown shares margin width with children

* removed dependency that rider added for some reason

* reduced vertical margin from 8 to 2

* Greytide Virus station event (#33547)

* proof of concept

* full implementation

* I commited a crime

* t

* min players increase

* Make shuttle airlocks not snapcardinals (#33557)

* Make shuttle airlocks not snapcardinals

* Update Resources/Prototypes/Entities/Structures/Doors/Airlocks/shuttle.yml

Co-authored-by: slarticodefast <[email protected]>

* Update Resources/Prototypes/Entities/Structures/Doors/Airlocks/shuttle.yml

Co-authored-by: slarticodefast <[email protected]>

---------

Co-authored-by: Winkarst <[email protected]>
Co-authored-by: slarticodefast <[email protected]>

* Automatic changelog update

* Fix space ambient music (#33594)

* Automatic changelog update

* Fix windoor and high security door not showing electrocution HUD (#33551)

* Automatic changelog update

* Removes burnt tiles (#33422)

remove burnt tiles

* Added Oppenhopper poster to the game. (#33588)

* o7

* -

* oppenhopper v2

* Update Resources/Prototypes/Entities/Structures/Wallmounts/Signs/posters.yml

* Update Resources/Prototypes/Entities/Structures/Wallmounts/Signs/posters.yml

---------

Co-authored-by: slarticodefast <[email protected]>

* Fix version for electril_grill meta.json (#33611)

fix

fixing the version thing in meta json for electril grill textures

Co-authored-by: Arthur Kustenko <[email protected]>

* Fix gauze eyepatch flying pixel (#33564)

boo

* Fix swapped uniform printer east/west sprites (#33442)

Fix uniform printer sprites rotating the wrong way

* Makes knives fly straight when thrown (#33615)

Gives knives a thrown angle

* Light verb is now predicted (#33622)

Fix

* Automatic changelog update

* Update `Content.PatreonParser` to use `net8.0` `TargetFramework` (#33559)

Update Content.PatreonParse to use net8.0 targetframework

* Fix gender, maybe (#33631)

Co-authored-by: Alpha-Two <[email protected]>

* Display GPS coordinates on their own line (#33625)

* Automatic changelog update

* Add admin log for ghost warping (#33636)

* Automatic changelog update

* Rename nitrogen internals crate (#33545)

* rename nitrogen internals crate

* nitrogen internals crate description

* migrate CrateNitrogenInternals ID

* Automatic changelog update

* Cleanup some Client atmos systems (#33634)

* Cleanup `ScrubberControl.xaml.cs`

* Minor cleanups

* Another pile of minor cleanups

* Apply requested changes

* Rename "which" into "bound". Add whitespace after "if"

* Fix for arrivals deleting nuke (#33659)

Adds FTLSmashImmune to nuke prototype to stop it from arrival smashing
Adds a comment in FasterThanLight to indicate where the FTLSmashImmuneComponent is checked

Co-authored-by: aa5g21 <[email protected]>

* Automatic changelog update

* add locale to Shuttle Console Map tab (#33651)

fixed

* Automatic changelog update

* fix PermanentBlindnessComponent to be not so permanent (#33292)

* adjust min blindness back to 0 when PermanentBlindnessComponent is removed

* mapinit changes

* remove OnRemove, move changes to OnShutdown

* goodbye event

* dependency removal

* final adjustment

---------

Co-authored-by: lunarcomets <luanrcomets2@gmail,com>

* Automatic changelog update

* Fix for handcuffing someone more than once (#33646)

* Fix for over-cuffing someone

* comment

* Automatic changelog update

* Fix for inspecting entities in hand (#33642)

Actually inspect entity in hands

* Automatic changelog update

* Fix for inspecting entities in the stripping window (#33644)

Handle it

* Automatic changelog update

* Fix borgs not getting names on roundstart (#33578)

* Fix borgs not getting names on roundstart

* Glory to the NT

* Allow riggable to take in multiple reagents

* Revert

---------

Co-authored-by: Winkarst <[email protected]>

* Automatic changelog update

* Require Wield To Activate Double-bladed ESword (#32869)

* Add MeleeRequiresWield component

* Prevent world activation

* Automatic changelog update

* Fix makeghostroleraffle command where 4 arguments (#31836)

Fix makeghostroleraffle command with 4 arguments

* Automatic changelog update

* this isnt needed anymore

* Fix formatting IDE0055 warnings in VS Code (#33669)

* Replace obsolete GetTilesIntersecting methods (#32455)

* Remove usage of obsolete GetTilesIntersecting round 1

* Oop wrong uids

* Remove usage of obsolete GetLocalTilesIntersecting round 2

* Remove usage of obsolete GetLocalTilesIntersecting final round

* weh

* Fix using `SharedMapSystem` in `StencilOverlay`

* Automatic changelog update

* Fix wrong system usage (#33679)

Fix wrong system using

* Fix BuckleSystem always marking InteractHandEvent as Handled (#33602)

* Add check before marking event as handled

* Update Content.Shared/Buckle/SharedBuckleSystem.Interaction.cs

Co-authored-by: slarticodefast <[email protected]>

* Cleanup

---------

Co-authored-by: slarticodefast <[email protected]>

* Automatic changelog update

* Fixed ghost role rules for some syndicate familiars (#32457)

* fix ghost role rules for some syndicate familiars

* change from monkey rules to Team Antag rules.

* Resolve reviews + Fix rules for LoneOp and Xenos

* ghostrole rules

---------

Co-authored-by: JIPDawg <[email protected]>
Co-authored-by: Errant <[email protected]>

* Automatic changelog update

* Fix lobby countdown not showing hours (#33685)

* Automatic changelog update

* Makes kukri not use combat knife's storage sprite (#33661)

* Adds a morgue locked maints airlock (#33693)

Co-authored-by: Velcroboy <[email protected]>

* Juiceable slimeballs (#33660)

adds extractable component to slimeball prototype

* Add missing nacho recipes (#33637)

* Nacho recipes, nutrition, and trash

In meal_recipes.yml: Add recipes for Nachos, Cheesy Nachos, and Cuban Nachos.

In meals.yml: Add a solutions container to regular nachos so it lines up with the others, and add a small plate as trash to each one.

* Volumes, nutritional tweaks, and flavor

In meals.yml: Lowered maxVol on nachos to leave 5 units of space. Nachos nutriment and vitamin lowered for costing so little. A cheese wedge is 3.75 nutriment, so cheesy having 4 more total nutritional value lines up nicely to me.

Cuban nachos had too little volume to fit its reagents in the first place, so increased maxVol by 10. Chili peppers are 4 nutri / 4 vitamin and ketchup has a touch of tomato, so bumped to 8 and 5. Capsaicin lowered partly to make it an even 20u. Ketchup dilutes I guess. Also they don't have cheese so I changed the flavor profile to tomato instead.

In meal_recipes.yml: Cuban Nachos recipe tweaked to require one less pepper. Given above numbers, this fits the nutritional value imo.

* Automatic changelog update

* Fix sinks and toilets not draining (#33691)

* Fix AutoDrain

Per the system comments, AutoDrain is designed to automatically move
puddles into the drain (like a floor drain). Drains without AutoDrain
are still supposed to gradually empty the buffer, but not remove puddles
(like sinks and toilets).

However, a logic error in the original implementation causes drains with
AutoDrain set to false to simply not work. Hence sinks never emptied.

* Update documentation

* Automatic changelog update

* Fix layout on wires UI (#33714)

Layout would break for machines with >6 lights because the column count was hardcoded. Uncap the UI width and fix the rows count instead.

Lights with less than 4 characters of text weren't aligned right, now they are.

* Automatic changelog update

* Fix for towels not having a cooldown for cleaning (#33700)

Added a delay to cleaning with the towel

* Add cooldown to buttons in borg's laws UI (#31490)

* Adds Store on Collide and Wand of the Locker (#33710)

* Adds wand of locker and locker projectile

* Adds IsOpen method to check if storage is open

* Adds store on collide

* Adds Store On Collide to Wizard Locker

* Adds Lock API

* Adds locking support

* Adds resist override and custom visual layers

* Fixes decursed states, adds comment for a future visualizer

* adds locker wand visuals and descriptions

* shrinks locker radius, moves TODO for throw support

* Adds whitelist and moves storage and lock logic into their own methods

* Adds support to disable store on collide after the first open. Fixes prediction issues with disabling.

* Adds wand of locker to the grimoire

* Adds wizard access prototype

* Adds Wizard to universal access

* Moves Lock on collide to on collide method

* Comments

* Changes layer order

* Fixes prediction issues when locking.

* Adds Wiz access to universal ID

* Automatic changelog update

* More device configurator serialization fixes (#33664)

More device configurator invalid entity serialization fixes

* Fix meteor's ArithmeticException (#33556)

Co-authored-by: Winkarst <[email protected]>

* Give vox health regen for poison below 20 damage (#33722)

* Automatic changelog update

* set n2 survival box sprite layers (#33733)

* Automatic changelog update

* fix a station event weighting bug (#33584)

* fractional weights dont work in StationEvents

* force-int

* sure why not, we can keep floats I guess.

* Automatic changelog update

* Adds Station Anchor Beacon (#33711)

Co-authored-by: Velcroboy <[email protected]>

* Fix name duplications (#33740)

* Fix name duplication

* Apply requested changes

* Add a maintenance panel to bar signs (#33467)

* Add a maintenance panel to bar signs

* Update Resources/Locale/en-US/wires/wire-names.ftl

* AI interactions

---------

Co-authored-by: Winkarst <[email protected]>
Co-authored-by: slarticodefast <[email protected]>

* Automatic changelog update

* Derelict Borg Revival (#33433)

* Derelictn'tn't Borg!

* Clean *sparkles*

* Removed "S: Awaiting Changes"

* Automatic changelog update

* vox guidebook update poison regen (#33739)

* vox guidebook regen update

* damage number

* skreee

* Revert "fix debris having nothing (#2280)"

This reverts commit 3a27784.

* Fix debris chunks loot spawning (#33747)

Update DungeonJob.PostGenBiome.cs

* Automatic changelog update

* Added several variables to make ClumsyComponent more modular for developers. (#33715)

Co-authored-by: slarticodefast <[email protected]>

* Add Sprite changes to Logic Gates to show the input/output state (#33277)

* Samurai dogi is now major contraband (#33699)

* snake_case to PascalCase for name datasets

* clean up random lathe recipes (#31525)

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: slarticodefast <[email protected]>

* Make unknown shuttle events trigger an announcement (#33450)

* Make unknown shuttle events trigger an announcement

* Call base at the end

---------

Co-authored-by: Winkarst <[email protected]>

* Predicted gas pumps (#33717)

* Predicted gas pumps

I wanted to try out atmos and first thing I found.

* a

* Remove details range

* Automatic changelog update

* Christmas Nuke Song (#33752)

* 圣诞歌曲

* Update Resources/Audio/StationEvents/attributions.yml

Co-authored-by: slarticodefast <[email protected]>

---------

Co-authored-by: slarticodefast <[email protected]>

* Automatic changelog update

* infiltrator update (#33759)

* Organize the Sandbox Panel window (#33684)

* Organize Sandbox Panel

* Map Editing -> Editing

* Unset ToggleMode on Suicide button. Can hardly un-suicide, no?

* Remove 'Link machines' button that has done nothing for 3 years

* Remember Sandbox window's position instead of forcing to center

* Shows Spawns -> Show Spawns

* Remove SandboxSystem.MachineLinking

* Ion storm refactor (#33311)

* reenable greytide virus with changed announcement

* move gun execution system to deltav folder, fix it

* epic fail

* uncurse energy gun laser

* localize AI names

* Revert "Removes burnt tiles (#33422)"

This reverts commit 8980440.

---------

Co-authored-by: RedBookcase <[email protected]>
Co-authored-by: RedBookcase <[email protected]>
Co-authored-by: PJBot <[email protected]>
Co-authored-by: lzk <[email protected]>
Co-authored-by: slarticodefast <[email protected]>
Co-authored-by: SpaceRox1244 <[email protected]>
Co-authored-by: beck-thompson <[email protected]>
Co-authored-by: ScarKy0 <[email protected]>
Co-authored-by: Saphire Lattice <[email protected]>
Co-authored-by: Southbridge <[email protected]>
Co-authored-by: MossyGreySlope <[email protected]>
Co-authored-by: K-Dynamic <[email protected]>
Co-authored-by: dffdff2423 <[email protected]>
Co-authored-by: ThatGuyUSA <[email protected]>
Co-authored-by: ActiveMammmoth <[email protected]>
Co-authored-by: Justice League <[email protected]>
Co-authored-by: Ubaser <[email protected]>
Co-authored-by: SpaceManiac <[email protected]>
Co-authored-by: faint <[email protected]>
Co-authored-by: Spanky <[email protected]>
Co-authored-by: Ilya246 <[email protected]>
Co-authored-by: ScarKy0 <[email protected]>
Co-authored-by: ArZarLordOfMango <[email protected]>
Co-authored-by: Pieter-Jan Briers <[email protected]>
Co-authored-by: Plykiya <[email protected]>
Co-authored-by: MilenVolf <[email protected]>
Co-authored-by: SlamBamActionman <[email protected]>
Co-authored-by: SlamBamActionman <[email protected]>
Co-authored-by: metalgearsloth <[email protected]>
Co-authored-by: qwerltaz <[email protected]>
Co-authored-by: DrSmugleaf <[email protected]>
Co-authored-by: IProduceWidgets <[email protected]>
Co-authored-by: DrSmugleaf <[email protected]>
Co-authored-by: chromiumboy <[email protected]>
Co-authored-by: c4llv07e <[email protected]>
Co-authored-by: Winkarst <[email protected]>
Co-authored-by: Winkarst <[email protected]>
Co-authored-by: MetalSage <[email protected]>
Co-authored-by: MetalSage <[email protected]>
Co-authored-by: eoineoineoin <[email protected]>
Co-authored-by: goet <[email protected]>
Co-authored-by: mubururu_ <[email protected]>
Co-authored-by: kosticia <[email protected]>
Co-authored-by: Schrödinger <[email protected]>
Co-authored-by: Ben <[email protected]>
Co-authored-by: Nikolai Korolev <[email protected]>
Co-authored-by: Minemoder5000 <[email protected]>
Co-authored-by: Niels Huylebroeck <[email protected]>
Co-authored-by: Flareguy <[email protected]>
Co-authored-by: Intoxicating-Innocence <[email protected]>
Co-authored-by: AlexUm <[email protected]>
Co-authored-by: Arthur Kustenko <[email protected]>
Co-authored-by: Mifia <[email protected]>
Co-authored-by: Alpha-Two <[email protected]>
Co-authored-by: Alpha-Two <[email protected]>
Co-authored-by: Alice "Arimah" Heurlin <[email protected]>
Co-authored-by: Gansu <[email protected]>
Co-authored-by: aa5g21 <[email protected]>
Co-authored-by: VideoKompany <[email protected]>
Co-authored-by: lunarcomets <[email protected]>
Co-authored-by: lunarcomets <luanrcomets2@gmail,com>
Co-authored-by: Preston Smith <[email protected]>
Co-authored-by: Token <[email protected]>
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: Nikolai Korolev <[email protected]>
Co-authored-by: JIPDawg <[email protected]>
Co-authored-by: JIPDawg <[email protected]>
Co-authored-by: Errant <[email protected]>
Co-authored-by: Velcroboy <[email protected]>
Co-authored-by: Velcroboy <[email protected]>
Co-authored-by: Luiz Costa <[email protected]>
Co-authored-by: CheddaCheez <[email protected]>
Co-authored-by: Partmedia <[email protected]>
Co-authored-by: Tap <[email protected]>
Co-authored-by: Hreno <[email protected]>
Co-authored-by: keronshb <[email protected]>
Co-authored-by: Leon Friedrich <[email protected]>
Co-authored-by: Ed <[email protected]>
Co-authored-by: beck <[email protected]>
Co-authored-by: 0tito <[email protected]>
Co-authored-by: Piras314 <[email protected]>
Co-authored-by: Emisse <[email protected]>
  • Loading branch information
Show file tree
Hide file tree
Showing 504 changed files with 11,860 additions and 4,221 deletions.
12 changes: 6 additions & 6 deletions Content.Client/Actions/ActionsSystem.cs
Original file line number Diff line number Diff line change
Expand Up @@ -259,13 +259,13 @@ public void UnlinkAllActions()

public void LinkAllActions(ActionsComponent? actions = null)
{
if (_playerManager.LocalEntity is not { } user ||
!Resolve(user, ref actions, false))
{
return;
}
if (_playerManager.LocalEntity is not { } user ||
!Resolve(user, ref actions, false))
{
return;
}

LinkActions?.Invoke(actions);
LinkActions?.Invoke(actions);
}

public override void Shutdown()
Expand Down
1 change: 1 addition & 0 deletions Content.Client/Administration/UI/Notes/NoteEdit.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -159,6 +159,7 @@ private void OnTypeChanged(OptionButton.ItemSelectedEventArgs args)
SecretCheckBox.Pressed = false;
SeverityOption.Disabled = false;
PermanentCheckBox.Pressed = true;
SubmitButton.Disabled = true;
UpdatePermanentCheckboxFields();
break;
case (int) NoteType.Message: // Message: these are shown to the player when they log on
Expand Down
6 changes: 1 addition & 5 deletions Content.Client/Atmos/Components/PipeColorVisualsComponent.cs
Original file line number Diff line number Diff line change
@@ -1,8 +1,4 @@
using Robust.Shared.GameObjects;

namespace Content.Client.Atmos.Components;

[RegisterComponent]
public sealed partial class PipeColorVisualsComponent : Component
{
}
public sealed partial class PipeColorVisualsComponent : Component;
3 changes: 1 addition & 2 deletions Content.Client/Atmos/Consoles/AtmosAlarmEntryContainer.xaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
<BoxContainer xmlns="https://spacestation14.io"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:s="clr-namespace:Content.Client.Stylesheets"
xmlns:gfx="clr-namespace:Robust.Client.Graphics;assembly=Robust.Client"
xmlns:controls="clr-namespace:Content.Client.UserInterface.Controls"
Orientation="Vertical" HorizontalExpand ="True" Margin="0 0 0 3">
Expand Down Expand Up @@ -62,7 +61,7 @@
</PanelContainer>
</BoxContainer>

<!-- If the alarm is inactive, this is label is diplayed instead -->
<!-- If the alarm is inactive, this is label is displayed instead -->
<Label Name="NoDataLabel" Text="{Loc 'atmos-alerts-window-no-data-available'}" HorizontalAlignment="Center" Margin="0 15" FontColorOverride="#a9a9a9" ReservesSpace="False" Visible="False"></Label>

<!-- Silencing progress bar -->
Expand Down
11 changes: 5 additions & 6 deletions Content.Client/Atmos/Consoles/AtmosAlarmEntryContainer.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -136,8 +136,9 @@ public void UpdateEntry(AtmosAlertsComputerEntry entry, bool isFocus, AtmosAlert
GasGridContainer.RemoveAllChildren();

var gasData = focusData.Value.GasData.Where(g => g.Key != Gas.Oxygen);
var keyValuePairs = gasData.ToList();

if (gasData.Count() == 0)
if (keyValuePairs.Count == 0)
{
// No other gases
var gasLabel = new Label()
Expand All @@ -158,13 +159,11 @@ public void UpdateEntry(AtmosAlertsComputerEntry entry, bool isFocus, AtmosAlert
else
{
// Add an entry for each gas
foreach ((var gas, (var mol, var percent, var alert)) in gasData)
foreach ((var gas, (var mol, var percent, var alert)) in keyValuePairs)
{
var gasPercent = (FixedPoint2)0f;
gasPercent = percent * 100f;
FixedPoint2 gasPercent = percent * 100f;

if (!_gasShorthands.TryGetValue(gas, out var gasShorthand))
gasShorthand = "X";
var gasShorthand = _gasShorthands.GetValueOrDefault(gas, "X");

var gasLabel = new Label()
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,6 @@ protected override void Open()
_menu = new AtmosAlertsComputerWindow(this, Owner);
_menu.OpenCentered();
_menu.OnClose += Close;

EntMan.TryGetComponent<TransformComponent>(Owner, out var xform);
}

protected override void UpdateState(BoundUserInterfaceState state)
Expand All @@ -24,9 +22,6 @@ protected override void UpdateState(BoundUserInterfaceState state)

var castState = (AtmosAlertsComputerBoundInterfaceState) state;

if (castState == null)
return;

EntMan.TryGetComponent<TransformComponent>(Owner, out var xform);
_menu?.UpdateUI(xform?.Coordinates, castState.AirAlarms, castState.FireAlarms, castState.FocusData);
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
<controls:FancyWindow xmlns="https://spacestation14.io"
xmlns:ui="clr-namespace:Content.Client.Pinpointer.UI"
xmlns:controls="clr-namespace:Content.Client.UserInterface.Controls"
xmlns:gfx="clr-namespace:Robust.Client.Graphics;assembly=Robust.Client"
Title="{Loc 'atmos-alerts-window-title'}"
Resizable="False"
SetSize="1120 750"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,6 @@
using Content.Shared.Atmos.Piping;
using JetBrains.Annotations;
using Robust.Client.GameObjects;
using Robust.Client.ResourceManagement;
using Robust.Shared.Serialization.TypeSerializers.Implementations;

namespace Content.Client.Atmos.EntitySystems;

Expand All @@ -19,7 +17,7 @@ public override void Initialize()
base.Initialize();

SubscribeLocalEvent<PipeAppearanceComponent, ComponentInit>(OnInit);
SubscribeLocalEvent<PipeAppearanceComponent, AppearanceChangeEvent>(OnAppearanceChanged, after: new[] { typeof(SubFloorHideSystem) });
SubscribeLocalEvent<PipeAppearanceComponent, AppearanceChangeEvent>(OnAppearanceChanged, after: [typeof(SubFloorHideSystem)]);
}

private void OnInit(EntityUid uid, PipeAppearanceComponent component, ComponentInit args)
Expand Down Expand Up @@ -84,7 +82,8 @@ private void OnAppearanceChanged(EntityUid uid, PipeAppearanceComponent componen

layer.Visible &= visible;

if (!visible) continue;
if (!visible)
continue;

layer.Color = color;
}
Expand Down
23 changes: 23 additions & 0 deletions Content.Client/Atmos/EntitySystems/GasPressurePumpSystem.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
using Content.Client.Atmos.UI;
using Content.Shared.Atmos.Components;
using Content.Shared.Atmos.EntitySystems;
using Content.Shared.Atmos.Piping.Binary.Components;

namespace Content.Client.Atmos.EntitySystems;

public sealed class GasPressurePumpSystem : SharedGasPressurePumpSystem
{
public override void Initialize()
{
base.Initialize();
SubscribeLocalEvent<GasPressurePumpComponent, AfterAutoHandleStateEvent>(OnPumpUpdate);
}

private void OnPumpUpdate(Entity<GasPressurePumpComponent> ent, ref AfterAutoHandleStateEvent args)
{
if (UserInterfaceSystem.TryGetOpenUi<GasPressurePumpBoundUserInterface>(ent.Owner, GasPressurePumpUiKey.Key, out var bui))
{
bui.Update();
}
}
}
9 changes: 2 additions & 7 deletions Content.Client/Atmos/Monitor/AtmosAlarmableVisualsSystem.cs
Original file line number Diff line number Diff line change
@@ -1,12 +1,7 @@
using System.Collections.Generic;
using Content.Shared.Atmos.Monitor;
using Content.Shared.Power;
using Robust.Client.GameObjects;
using Robust.Client.Graphics;
using Robust.Shared.GameObjects;
using Robust.Shared.IoC;
using Robust.Shared.Maths;
using Robust.Shared.Serialization.Manager.Attributes;

namespace Content.Client.Atmos.Monitor;

Expand All @@ -27,7 +22,7 @@ protected override void OnAppearanceChange(EntityUid uid, AtmosAlarmableVisualsC
{
foreach (var visLayer in component.HideOnDepowered)
{
if (args.Sprite.LayerMapTryGet(visLayer, out int powerVisibilityLayer))
if (args.Sprite.LayerMapTryGet(visLayer, out var powerVisibilityLayer))
args.Sprite.LayerSetVisible(powerVisibilityLayer, powered);
}
}
Expand All @@ -36,7 +31,7 @@ protected override void OnAppearanceChange(EntityUid uid, AtmosAlarmableVisualsC
{
foreach (var (setLayer, powerState) in component.SetOnDepowered)
{
if (args.Sprite.LayerMapTryGet(setLayer, out int setStateLayer))
if (args.Sprite.LayerMapTryGet(setLayer, out var setStateLayer))
args.Sprite.LayerSetState(setStateLayer, new RSI.StateId(powerState));
}
}
Expand Down
7 changes: 2 additions & 5 deletions Content.Client/Atmos/Monitor/UI/AirAlarmBoundUserInterface.cs
Original file line number Diff line number Diff line change
@@ -1,11 +1,7 @@
using Content.Shared.Atmos;
using Content.Shared.Atmos.Monitor;
using Content.Shared.Atmos.Monitor.Components;
using Robust.Client.GameObjects;
using Robust.Client.UserInterface;
using Robust.Shared.GameObjects;
using Robust.Shared.IoC;
using Robust.Shared.Log;

namespace Content.Client.Atmos.Monitor.UI;

Expand Down Expand Up @@ -78,6 +74,7 @@ protected override void Dispose(bool disposing)
{
base.Dispose(disposing);

if (disposing) _window?.Dispose();
if (disposing)
_window?.Dispose();
}
}
21 changes: 8 additions & 13 deletions Content.Client/Atmos/Monitor/UI/AirAlarmWindow.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
using Content.Shared.Atmos.Piping.Unary.Components;
using Content.Shared.Temperature;
using Robust.Client.AutoGenerated;
using Robust.Client.GameObjects;
using Robust.Client.UserInterface.Controls;
using Robust.Client.UserInterface.XAML;

Expand Down Expand Up @@ -59,7 +58,7 @@ public AirAlarmWindow()
AirAlarmMode.Fill => "air-alarm-ui-mode-fill",
AirAlarmMode.Panic => "air-alarm-ui-mode-panic",
AirAlarmMode.None => "air-alarm-ui-mode-none",
_ => "error"
_ => "error",
};
_modes.AddItem(Loc.GetString(text));
}
Expand All @@ -70,7 +69,7 @@ public AirAlarmWindow()
AirAlarmModeChanged!.Invoke((AirAlarmMode) args.Id);
};

_autoMode.OnToggled += args =>
_autoMode.OnToggled += _ =>
{
AutoModeChanged!.Invoke(_autoMode.Pressed);
};
Expand Down Expand Up @@ -176,22 +175,18 @@ public void UpdateDeviceData(string addr, IAtmosDeviceData device)

public static Color ColorForThreshold(float amount, AtmosAlarmThreshold threshold)
{
threshold.CheckThreshold(amount, out AtmosAlarmType curAlarm);
threshold.CheckThreshold(amount, out var curAlarm);
return ColorForAlarm(curAlarm);
}

public static Color ColorForAlarm(AtmosAlarmType curAlarm)
{
if(curAlarm == AtmosAlarmType.Danger)
return curAlarm switch
{
return StyleNano.DangerousRedFore;
}
else if(curAlarm == AtmosAlarmType.Warning)
{
return StyleNano.ConcerningOrangeFore;
}

return StyleNano.GoodGreenFore;
AtmosAlarmType.Danger => StyleNano.DangerousRedFore,
AtmosAlarmType.Warning => StyleNano.ConcerningOrangeFore,
_ => StyleNano.GoodGreenFore,
};
}


Expand Down
8 changes: 2 additions & 6 deletions Content.Client/Atmos/Monitor/UI/Widgets/PumpControl.xaml.cs
Original file line number Diff line number Diff line change
@@ -1,12 +1,8 @@
using System;
using Content.Shared.Atmos.Monitor;
using Content.Shared.Atmos.Monitor.Components;
using Content.Shared.Atmos.Piping.Unary.Components;
using Robust.Client.AutoGenerated;
using Robust.Client.UserInterface.Controls;
using Robust.Client.UserInterface.CustomControls;
using Robust.Client.UserInterface.XAML;
using Robust.Shared.Localization;

namespace Content.Client.Atmos.Monitor.UI.Widgets;

Expand All @@ -25,7 +21,7 @@ public sealed partial class PumpControl : BoxContainer
private OptionButton _pressureCheck => CPressureCheck;
private FloatSpinBox _externalBound => CExternalBound;
private FloatSpinBox _internalBound => CInternalBound;
private Button _copySettings => CCopySettings;
private Button _copySettings => CCopySettings;

public PumpControl(GasVentPumpData data, string address)
{
Expand Down Expand Up @@ -86,7 +82,7 @@ public PumpControl(GasVentPumpData data, string address)
_data.PressureChecks = (VentPressureBound) args.Id;
PumpDataChanged?.Invoke(_address, _data);
};

_copySettings.OnPressed += _ =>
{
PumpDataCopied?.Invoke(_data);
Expand Down
10 changes: 2 additions & 8 deletions Content.Client/Atmos/Monitor/UI/Widgets/ScrubberControl.xaml.cs
Original file line number Diff line number Diff line change
@@ -1,15 +1,9 @@
using System;
using System.Collections.Generic;
using System.Linq;
using Content.Shared.Atmos;
using Content.Shared.Atmos.Monitor;
using Content.Shared.Atmos.Monitor.Components;
using Content.Shared.Atmos.Piping.Unary.Components;
using Robust.Client.AutoGenerated;
using Robust.Client.UserInterface.Controls;
using Robust.Client.UserInterface.CustomControls;
using Robust.Client.UserInterface.XAML;
using Robust.Shared.Localization;

namespace Content.Client.Atmos.Monitor.UI.Widgets;

Expand All @@ -27,7 +21,7 @@ public sealed partial class ScrubberControl : BoxContainer
private OptionButton _pumpDirection => CPumpDirection;
private FloatSpinBox _volumeRate => CVolumeRate;
private CheckBox _wideNet => CWideNet;
private Button _copySettings => CCopySettings;
private Button _copySettings => CCopySettings;

private GridContainer _gases => CGasContainer;
private Dictionary<Gas, Button> _gasControls = new();
Expand Down Expand Up @@ -77,7 +71,7 @@ public ScrubberControl(GasVentScrubberData data, string address)
_data.PumpDirection = (ScrubberPumpDirection) args.Id;
ScrubberDataChanged?.Invoke(_address, _data);
};

_copySettings.OnPressed += _ =>
{
ScrubberDataCopied?.Invoke(_data);
Expand Down
13 changes: 8 additions & 5 deletions Content.Client/Atmos/Monitor/UI/Widgets/SensorInfo.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,8 @@ public SensorInfo(AtmosSensorData data, string address)
var label = new RichTextLabel();

var fractionGas = amount / data.TotalMoles;
label.SetMarkup(Loc.GetString("air-alarm-ui-gases-indicator", ("gas", $"{gas}"),
label.SetMarkup(Loc.GetString("air-alarm-ui-gases-indicator",
("gas", $"{gas}"),
("color", AirAlarmWindow.ColorForThreshold(fractionGas, data.GasThresholds[gas])),
("amount", $"{amount:0.####}"),
("percentage", $"{(100 * fractionGas):0.##}")));
Expand All @@ -53,9 +54,9 @@ public SensorInfo(AtmosSensorData data, string address)
var threshold = data.GasThresholds[gas];
var gasThresholdControl = new ThresholdControl(Loc.GetString($"air-alarm-ui-thresholds-gas-title", ("gas", $"{gas}")), threshold, AtmosMonitorThresholdType.Gas, gas, 100);
gasThresholdControl.Margin = new Thickness(20, 2, 2, 2);
gasThresholdControl.ThresholdDataChanged += (type, threshold, arg3) =>
gasThresholdControl.ThresholdDataChanged += (type, alarmThreshold, arg3) =>
{
OnThresholdUpdate!(_address, type, threshold, arg3);
OnThresholdUpdate!(_address, type, alarmThreshold, arg3);
};

_gasThresholds.Add(gas, gasThresholdControl);
Expand All @@ -64,7 +65,8 @@ public SensorInfo(AtmosSensorData data, string address)

_pressureThreshold = new ThresholdControl(Loc.GetString("air-alarm-ui-thresholds-pressure-title"), data.PressureThreshold, AtmosMonitorThresholdType.Pressure);
PressureThresholdContainer.AddChild(_pressureThreshold);
_temperatureThreshold = new ThresholdControl(Loc.GetString("air-alarm-ui-thresholds-temperature-title"), data.TemperatureThreshold,
_temperatureThreshold = new ThresholdControl(Loc.GetString("air-alarm-ui-thresholds-temperature-title"),
data.TemperatureThreshold,
AtmosMonitorThresholdType.Temperature);
TemperatureThresholdContainer.AddChild(_temperatureThreshold);

Expand Down Expand Up @@ -103,7 +105,8 @@ public void ChangeData(AtmosSensorData data)
}

var fractionGas = amount / data.TotalMoles;
label.SetMarkup(Loc.GetString("air-alarm-ui-gases-indicator", ("gas", $"{gas}"),
label.SetMarkup(Loc.GetString("air-alarm-ui-gases-indicator",
("gas", $"{gas}"),
("color", AirAlarmWindow.ColorForThreshold(fractionGas, data.GasThresholds[gas])),
("amount", $"{amount:0.####}"),
("percentage", $"{(100 * fractionGas):0.##}")));
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,4 @@
using Content.Client.Message;
using Content.Shared.Atmos;
using Content.Shared.Atmos.Monitor;
using Content.Shared.Temperature;
using Robust.Client.AutoGenerated;
using Robust.Client.UserInterface.Controls;
using Robust.Client.UserInterface.XAML;
Expand Down
Loading

0 comments on commit 9c408f6

Please sign in to comment.