Commit Graph

6193 Commits

Author SHA1 Message Date
slarticodefast b7a7cecc0f cleanup 2024-12-07 17:27:28 +00:00
c4llv07e 588357d6ca Add telegram to the server info-links (#33459) 2024-12-07 17:25:37 +00:00
DrSmugleaf 4ba7569729 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 <161409025+slarticodefast@users.noreply.github.com>
2024-12-07 17:15:03 +00:00
slarticodefast f6dda6b725 electrification hud 2024-12-07 16:50:43 +00:00
DrSmugleaf 078dbfb287 Move PlayerBeforeSpawnEvent and PlayerSpawnCompleteEvent to Shared 2024-12-07 16:37:50 +00:00
Saphire 8bcd3de68b Actually make the emagging popup work properly 2024-12-07 16:33:54 +00:00
beck-thompson c80f150467 Fix toggle verbs (#32138)
First commit

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2024-12-07 16:32:29 +00:00
Saphire c437a5d9d6 Move some of the new singularity code into shared
Hopefully without explosions yay
2024-12-07 16:32:22 +00:00
SlamBamActionman a6604276b0 Remove drag & drop dropping items from containers (#32706)
* Initial commit

* Update based on maintainer discussion

* Forgot to remove this woops
2024-12-07 16:31:52 +00:00
MilenVolf abac268e9a Localize planet dataset names (#33398)
* Localize planet names (borer)

* DatasetPrototype -> LocalizedDatasetPrototype

* Apply requested changes
2024-12-07 16:31:37 +00:00
Pieter-Jan Briers 7ece549aa8 .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.
2024-12-07 16:21:13 +00:00
ArZarLordOfMango 48921a6bfb Toggle clothing fix (#32826)
* toggle clothing fix

* some adding
2024-12-07 16:21:09 +00:00
ActiveMammmoth 6fe0d4631c 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
2024-12-07 16:11:56 +00:00
Saphire Lattice c65ab51393 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
2024-12-07 15:43:36 +00:00
beck-thompson 8abdafc353 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
2024-12-07 15:42:29 +00:00
deltanedas 027df56d23
borg slavery 🔥 🔥 🔥 (#2337)
* fuck it fix emag law 4

* add borg enslaving

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-12-01 23:48:13 +01:00
deltanedas 41a70be441
add robotics to id card console (#2335)
Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-12-01 22:04:46 +00:00
Pieter-Jan Briers 26b36db09d Integrate Modern HWID into content
This should be the primary changes for the future-proof "Modern HWID" system implemented into Robust and the auth server.

HWIDs in the database have been given an additional column representing their version, legacy or modern. This is implemented via an EF Core owned entity. By manually setting the column name of the main value column, we can keep DB compatibility and the migration is just adding some type columns.

This new HWID type has to be plumbed through everywhere, resulting in some breaking changes for the DB layer and such.

New bans and player records are placed with the new modern HWID. Old bans are still checked against legacy HWIDs.

Modern HWIDs are presented with a "V2-" prefix to admins, to allow distinguishing them. This is also integrated into the parsing logic for placing new bans.

There's also some code cleanup to reduce copy pasting around the place from my changes.

Requires latest engine to support ImmutableArray<byte> in NetSerializer.
2024-11-29 19:18:11 +01:00
Milon bf7a8d9e2d
fix borg unshaded error (#2312)
:trollface:
2024-11-28 20:10:43 +00:00
deltanedas b4d79a29cb
fix the shadow factory (#2299)
* update code to allow lawset updating

* use lawset field on borgs

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-11-28 07:22:06 +00:00
deltanedas 3a27784542
fix debris having nothing (#2280)
Revert "improve BiomeDunGen (#33113)"

This reverts commit b94731c4f8.

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-11-24 20:25:25 +00:00
deltanedas 9977160822 change secborg thing so it doesnt log errors 2024-11-24 04:36:20 +00:00
deltanedas 51d8874c74 merge master 2024-11-24 04:27:00 +00:00
Milon 88eaeba222
add debug logging to entitywhitelist (#2263)
* everything is on fire but whatever

* cd trolling

* kill

* 4 commits to add 14 lines is crazy
2024-11-22 09:45:39 +00:00
deltanedas 3b6c3b56ec merge master 2024-11-20 05:15:21 +00:00
Lyndomen fdb26756ec
Ports Bloodstains And Footprints from EE (#2186)
* bogos binted

* bogos binted

* Update human.yml

Signed-off-by: Lyndomen <49795619+Lyndomen@users.noreply.github.com>

* Update skeleton.yml

Signed-off-by: Lyndomen <49795619+Lyndomen@users.noreply.github.com>

* untouch

Signed-off-by: Lyndomen <49795619+Lyndomen@users.noreply.github.com>

* untouch please

Signed-off-by: Lyndomen <49795619+Lyndomen@users.noreply.github.com>

* fixed real

---------

Signed-off-by: Lyndomen <49795619+Lyndomen@users.noreply.github.com>
2024-11-20 01:00:15 +00:00
Milon f1c859a9ee
pain system + addictions + traits (#2192)
* the nightmare continues unchecked

* HOLY FUCKING SHITCODE

* Update traits.ftl

* makes the yaml linter happy

* we'll regret this later

* what why
2024-11-20 00:59:17 +00:00
deltanedas 069a73317e
Merge branch 'master' into upstream-ops
Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
2024-11-18 21:42:45 +00:00
Lyndomen b1941efa97
Ports Salv Cannon requiring power from Frontier (#2227)
* meow

* meow
2024-11-18 16:53:07 +00:00
Pieter-Jan Briers 4aecc673ae Borg type switching. (#32586)
* Borg type switching.

This allows borgs (new spawn or constructed) to select their chassis type on creation, like in SS13. This removes the need for the many different chassis types, and means round-start borgs can actually play the game immediately instead of waiting for science to unlock everything.

New borgs have an additional action that allows them to select their type. This opens a nice window with basic information about the borgs and a select button. Once a type has been selected it is permanent for that borg chassis.

These borg types also immediately start the borg with specific modules, so they do not need to be printed. Additional modules can still be inserted for upgrades, though this is now less critical. The built-in modules cannot be removed, but are shown in the UI.

The modules that each borg type starts with:

* Generic: tools
* Engineering: advanced tools, construction, RCD, cable
* Salvage: Grappling gun, appraisal, mining
* Janitor: cleaning, light replacer
* Medical: treatment
* Service: music, service, clowning

Specialized borgs have 3 additional module slots available on top of the ones listed above, generic borgs have 5.

Borg types are specified in a new BorgTypePrototype. These prototypes specify all information about the borg type. It is assigned to the borg entity through a mix of client side, server, and shared code. Some of the involved components were made networked, others are just ensured they're set on both sides of the wire.

The most gnarly change is the inventory template prototype, which needs to change purely to modify the borg hat offset. I managed to bodge this in with an API that *probably* won't explode for specifically for this use case, but it's still not the most clean of API designs.

Parts for specific borg chassis have been removed (so much deleted YAML) and specialized borg modules that are in the base set of a type have been removed from the exosuit fab as there's no point to printing those.

The ability to "downgrade" a borg so it can select a new chassis, like in SS13, is something that would be nice, but was not high enough priority for me to block the feature on. I did keep it in mind with some of the code, so it may be possible in the future.

There is no fancy animation when selecting borg types like in SS13, because I didn't think it was high priority, and it would add a lot of complex code.

* Fix sandbox failure due to collection expression.

* Module tweak

Fix salvage borg modules still having research/lathe recipes

Engie borg has regular tool module, not advanced.

* Fix inventory system breakage

* Fix migrations

Some things were missing

* Guidebook rewordings & review

* MinWidth on confirm selection button
2024-11-15 19:35:37 +00:00
keronshb 0fee1b6d2b Ethereal Jaunt Spell for Wizard & Jaunt ECS (#33201)
* Act

* Adds Jaunt ECS and related prototypes

* Adds jaunt sounds

* Adds enter and exit sound support to polymorphs

* Updates jaunt description

* Adds jaunt action sprite and changes jaunt polymorph to use it

* Adds Jaunt and upgrade to the wizard grimoire

* Makes base mob jaunt parent off of incorporeal and basemob, adds blue ghost sprite for ethereal jaunt

* Update Resources/Locale/en-US/store/spellbook-catalog.ftl

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* Update Resources/Prototypes/Entities/Mobs/Player/jaunt_mobs.yml

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* Update Resources/Prototypes/Entities/Mobs/Player/jaunt_mobs.yml

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* Update Resources/Prototypes/Entities/Mobs/Player/jaunt_mobs.yml

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* Update Content.Shared/Polymorph/PolymorphPrototype.cs

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* Update Content.Shared/Polymorph/PolymorphPrototype.cs

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* removes meta changes

* removes other meta changes

* adds context menu and a description to basemobjaunt

* comments for jaunt component and adds on component shutdown method

* Update Content.Shared/Jaunt/JauntComponent.cs

* Update Content.Shared/Jaunt/JauntComponent.cs

* Update Content.Shared/Jaunt/JauntComponent.cs

* Update Resources/Prototypes/Catalog/spellbook_catalog.yml

---------

Co-authored-by: lzk <124214523+lzk228@users.noreply.github.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2024-11-15 17:45:08 +00:00
MilenVolf 1a210cf074 Allow editing angle of the fired projectile (#33254)
Add Angle datafield to `ProjectileComponent`. It allows to change the angle of the fired projectile
2024-11-15 17:42:52 +00:00
Preston Smith ecec393d8f Make Droppers Respect Closed/Sealed Containers (#33011)
* Make droppers respect closed/sealed

* Combine nested

* Optimize conditions a bit
2024-11-15 17:42:52 +00:00
Ed b94731c4f8 improve BiomeDunGen (#33113)
* improve BiomeDunGen

* forgot lol

* Update DungeonJob.PostGenBiome.cs

* Update DungeonJob.PostGenBiome.cs
2024-11-15 17:42:34 +00:00
Simon df426f2174 Separate CCVars into separate files 2024-11-15 17:42:11 +00:00
ScarKy0 ca7e827ecb Intellicards now have a doAfter. (#33198)
* init

* cleanup

* Oops! Forgot something

* addressing changes

* guh

* guh 2.0

* some cleanup

* all bless the intellicard

* Yippee

* small locale thing

* changes + small bugfix

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2024-11-15 17:35:10 +00:00
SlamBamActionman 493a7cb3cd Add a Walking alert (#32954)
* Initial commit

* Review feedback changes

* ProtoId

* TempCommit

* First attempt to have client alerts

* Review changes
2024-11-15 17:35:04 +00:00
deltanedas b1206efbeb cham projector fixes/rewrite (#27111)
* 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

* add vebr

* add access to the components

* 2/3

* fix

* relay damage from disguise to user

* fix integrity

* :trollface:

* :trollface:

* m

* kill integrity

* fix a bug

* review

* remove them from component

* relay flash effect to the disguise

* fix icon being weird

* change method since multiple systems cant handle same network event

* :trollface:

* actually network Disguise real

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-11-15 17:32:51 +00:00
deltanedas af0c9e60f5 pass Actor to cartridge messages (#33210)
* pass Actor to cartridge messages

* NonSerialized gaming

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-11-15 17:32:06 +00:00
SlamBamActionman 9304ee44d3 Changes to "Burst" firemode; Drozd, WT550 and C20-r (#31292)
* Initial commit

* Change burst fire variable to be a set value rather than a multiplier
2024-11-15 17:31:26 +00:00
BramvanZijp 8f095eedaf Rework the Flare Gun & add a Security Shell Gun. (#32829)
* Rework flaregun and add security shell gun

* Make flare gun twice as likely to appear in emergency lockers

* Security shell gun can now fire lethal shells like the flare gun used to be able to.

* Rebalance the sec shell gun material cost to primarily be steel instead of plastic

* Define the ShellShotgunLight tag in tags.yml

* Leave the no lethal shells for normal flareguns to a different PR.

* Move a comment to re-run checks.

* Bye bye lethal shells from plastic guns.

* Fix weird whitespace issue.

* Make the sec shell gun inherit the normal flare gun.

* Remove the rack verb and update the sec shell gun description

* Remove the ability to fire lethals from flare guns, pending blowing up the gun

---------

Co-authored-by: SlamBamActionman <slambamactionman@gmail.com>
2024-11-15 17:30:45 +00:00
Baptr0b0t 30534d793e Fix AI in Intelicard can see through walls (#33177)
setdrawfov added
2024-11-15 17:29:57 +00:00
Kirus59 56dcba3782 Hunger and thirst huds fix (#32832)
* Hunger and thirst huds fix

* delete poor caching
2024-11-15 17:28:49 +00:00
Zachary Higgs 4370d56895 Add Silicon Law cues to Every method a Silicon can have their laws change (#32887)
* Silicon Law Sound cue refactor

- Added CueEntityMind to Silicon Law system to more uniformally
send sounds to minds

- Switch all previous MindPlaySound to instead call to the new method

* Change SiliconLawEui to cue the mind

* CR: TryGetComponent and Change the Documentation

- Remove GetComponentOrNull for  _entityManager.TryGetComponent

- Change SiliconLawProviderComponent.LawUploadSound to be more general
rather than just referencing lawboards

* Update Content.Server/Silicons/Laws/SiliconLawEui.cs

* Update Content.Shared/Silicons/Laws/Components/SiliconLawProviderComponent.cs

* Silicon-law-cue-refactor - CR:

- Roll the cuing into NotifyLawsChanged via an optional variable for the
cue

- Modify "SetLaws" to take in an optional soundProvider for the cue

- modify Emagged, Ion, Eui and SetLaws to instead send the sound cue via
NotifyLawsChanged

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2024-11-15 17:27:41 +00:00
Plykiya bb2e3daba6 Bugfix: Wielding now uses identity system. (#33134)
Make wielding system use identity
2024-11-15 17:25:39 +00:00
Milon 07ae96ed2c change ShowHealthBars and ShowHealthIcons to use protoId (#32355)
use protoId
2024-11-15 17:24:09 +00:00
Milon f580084e61
stamina damage resist (#2190)
* someone had to be brave enough to kill this

* it's finally real

* god himself couldn't fix this shit

* :trollface:
2024-11-14 14:28:08 +00:00
deltanedas b6b2971616
prevent telegnomes from interacting with anything (#2117)
* disable interaction for telegnomes, add access for the components

* make client and server systems extend shared system

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-11-09 19:27:59 +00:00
deltanedas 2620eb48a8
upstream merge 2/11 (#2090)
* Fix multiplying colors of differing nullabilities (#32991)

* revert the temporary hack

* Make atmos alert computer colors private variables (#32992)

* Add flash reaction effect (#32377)

add flash reaction effect

* Automatic changelog update

* Fix loneop spawnrate by reverting it to not use the shuttle event system. (#32942)

Fix loneop spawnrate by reverting it to not use the custom shuttle event system.

* Automatic changelog update

* add atmosia to devmap (#32460)

change

* bowls now make drinking sounds (#32819)

* Automatic changelog update

* Add health analyzer unrevivability warning (#32636)

* Add health analyzer unrevivability warning

* Remove errornous comment

* Automatic changelog update

* Removed the name "Hujsak" (#32998)

removed hujsak

* fix pie throwing sound not playing (#33017)

* Automatic changelog update

* Fix TestSuicideByHeldItem and TestSuicideByHeldItemSpreadDamage (#33030)

* make ai speak robotically (#33025)

* Automatic changelog update

* Extends the minimum round time for meteor swarm events (#32876)

* adjusted minimum timers in meteorswarms.yml

* Updated timer minimum from 20 to 15 minutes

* Reduced minimum timer to 10 minutes as a result of other meteor changes

---------

Co-authored-by: august-sun <45527070+august.sun@users.noreply.github.com>

* Automatic changelog update

* add StartDelay bool to actions (#33026)

* add StartDelay bool to actions

* forgot summary

* Updated an incorrect sprite in the smite menu (#33043)

changed the synth sprite used in the icon for the instrumentify smite out for the more accurate supersynth sprite

* fix lava expeds (#33042)

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

* Automatic changelog update

* Fix separated game screen bumping (#33046)

I don't really understand why RecordedSplitContainer exists but removing it looks identical and fixes the panel bumping occasionally.

* Automatic changelog update

* Fix: Make Plushie Damage Unexaminable (#33061)

Set hidden to true

* fix chameleon projector bot whitelist (#33055)

fix

* Various Vaugely Connected Sprite Updates™: Encryption Keys, Station Map, Brig Timer (#32786)

* various resprites (encryption keys + signal screens + station map)

* brig timer update

* fixes n shit

* Give proto-kinetic crushers, glaives, and daggers better inhands. Update the crusher and glaive icons. (#32212)

* inhands

* better inhands

* indent

* Automatic changelog update

* Make the security belt contain more useful items by default (#32291)

* replace tear gas and flashbang with holobarrier and sec radio

* holobarrier-belt-fix

* revert changes of 32291

* Automatic changelog update

* Add 3 bottle boxes to nanomed plus (#33018)

three bottle boxes in nanomed plus

* Automatic changelog update

* Nukie med bundle now costs 24 tc and contains a unique defibrillator (#32720)

* a-few-injectors

* comment

* defib-ops-when

* Automatic changelog update

* Pill Bottles can only store pills now (#33074)

* no longer absurd

* Update Resources/Prototypes/Entities/Objects/Specific/chemistry.yml

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* Automatic changelog update

* Add a spare bible to PietyVend (#32363)

Update chapel.yml

* Automatic changelog update

* [#28722 fix] Add notification for dependent wearables being dropped (#33078)

* add notification for dependent wearables being dropped

* fix dropped item popup redundancy
- did a check to see if any item was dropped, instead of making a notification for each item being dropped.

* change popup to client-only variant

* fix redundant messages, add plural locale string

* fix conventions, fix locale input to be more intuitive

---------

Co-authored-by: Justin <justinbrick1@gmail.com>

* Automatic changelog update

* More pda space (#32601)

* Rebalance the max programs that a PDA can hold

* Give Caps PDA more programs too.

* Make the max programs a static 8

* I forgor sec and med

* CaseCase

* Empty commit to re-run checks

* The final change, I hope.

* Automatic changelog update

* Fixed spelling mistake in water blaster description. (#33087)

Fixed minor spelling mistake

* [#20285 fix] Carp Plush and Rehydratables can now be put into mop bucket (#33079)

* Make shark plush janitor-bucketable

* fix bucketed grey shark texture

* Make sprites less shiny and adapt copyright notice

* Made shark way way less shiny

* Allow carp plush and rehydratables in mop bucket.

* Remove old mop bucket shark sprites

* Fix post-merge bugs

* Fix errors

* Move ReactiveContainer stuff to shared

That should mean it is now predicted.

* Custom eject verb for the mop bucket

* Fixes OnSolutionChange, removes pop-up as there already is one.

* .ftl is not necessary as the custom pop-up was removed

* Review fixes

* Update Content.Shared/Chemistry/Components/ReactiveContainerComponent.cs

* Update Content.Shared/Chemistry/EntitySystems/ReactiveContainerSystem.cs

---------

Co-authored-by: Psychpsyo <psychpsyo@gmail.com>
Co-authored-by: Psychpsyo <60073468+Psychpsyo@users.noreply.github.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* Automatic changelog update

* remove now duplicated nyano PlushieCarp tag

* Fixes tailthump breaking positional audio by making it mono (#33092)

* Automatic changelog update

* ExaminableDamage now puts its message at the bottom and in color (#32820)

* the examineableDamage component now puts its messages at the bottom, and in color

* god help us if something is priority -100 :godo:

* Automatic changelog update

* Lower in-round votekick requirements (#32953)

Initial commit

* Allow votekicks to be initiated in the lobby (#32528)

Initial commit

* Automatic changelog update

* Fixes bolt lights of previously unpowered bolted doors (#33063)

fix

* Automatic changelog update

* Muffins (#29318)

* Update meta.json

* Add files via upload

* Update misc.yml

* Update meal_recipes.yml

* Update meta.json

* Add files via upload

* Update plate.yml

* Update food_baked_single.yml

* Update dinnerware.yml

* Update cooking.yml

* Update misc.yml

* Add files via upload

* Delete Resources/Textures/Objects/Consumable/Food/Baked/misc.rsi/muffin-cherry.png

* Add files via upload

* Update meta.json

* Update misc.yml

* Update meal_recipes.yml

* Update meta.json

* Fix meta.json

* Fix meta.json again

* Update misc.yml

* Update misc.yml

* Update misc.yml

* Update misc.yml

* Update meta.json

* Update meta.json

* Update misc.yml

* Update meal_recipes.yml

* Update Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/misc.yml

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* Update dinnerware.yml

* Delete cherry

* Add files via upload

* Delete banana

* Add banana

* Delete chocolate

* Add chocolate

* lathe recipe fix

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* Automatic changelog update

* Borgs can no longer see mindshield + AI can no longer toggle off seeing job icons (#33069)

* :(

* Removed the sprite + updated RSI

* Automatic changelog update

* Add CanLoad for biomes (#33050)

CPUJob to come later.

* Remove CargoPallet component from the cargo pallet (#33022)

* Change cargo shuttle pallets to catwalks.

* Remove CargoPallet component from the cargo pallet.

* Undo cargo shuttle changes.

* Automatic changelog update

* Minor antagonist guidebook changes (#32824)

* took a two month nap. accidentally pushed too many buttons. let's try this again. added thieves to antagonists.xml

* even after that nap, i don't feel well-rested at all.

* please don't kill me for using webedit

* capitalization, typo

* Apply suggestions from code review (more period moving)

Thanks Evan, very cool

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* guess you could say im not pro-proper noun

* typo

* Update Resources/ServerInfo/Guidebook/Antagonist/Nuclear Operatives.xml

* ok

Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>

* Give Nukies a Hand Labeler (#33053)

* Add hand-labeler to nukie planet

* Rearrange nukie chem table

* Fix `ItemSlotSystem` popup Logic (#28856)

* move popup call out of `CanInsert` into `OnInteractUsing`

* im stupid and `reason` is completely unnecessary

Signed-off-by: Brandon Li <sirbrandonthenerd@gmail.com>

* return early when `itemSlots.Slots.Count == 0`

* tweak logic for triggering popups

* change popup logic again

* Consolidate whitelist check

* Get any popup message not just last failed slot

* Apply suggestions from code review

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* yoink

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>

---------

Signed-off-by: Brandon Li <sirbrandonthenerd@gmail.com>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* Add cvars to votekick to customize requirements for the initiator. (#32490)

* Automatic changelog update

* Add on-call functionality for adminning (#30443)

* Add on-call functionality for adminning

The first time an ahelp gets SOS it gets relayed to the specified channel with the specified ping. Every time after that it doesn't until it gets a non-SOS response received.

* Remove redundant name

Pretty sure this already gets chucked on the name of the msg itself I think it just didn't show in screenshot because they were subsequent.

* Update Content.Server/Administration/Systems/BwoinkSystem.cs

Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>

---------

Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
Co-authored-by: deathride58 <deathride58@users.noreply.github.com>

* Automatic changelog update

* Pills are explosion resistant (partially reverts #15851) (#32458)

* idk how to revert a pr so I just deleted some lines

* pill destructible with explosion resistance

* comment for explosion resist

* "and" to "but"

---------

Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>

* Automatic changelog update

* Hasten handcraft gauze recipe & decrease techfab gauze cost (#32744)

* med lathe gauze price reduction

* gauze craft doafter time

* 3 second doafter craft

* Automatic changelog update

* Service workers antagonist fix. (#31359)

* add

* Revert "add"

This reverts commit 25da34b0fead5812fe5800c9bf5dd7b10ef48d7d.

* antagonism allowed™️

* Automatic changelog update

* Adds a new AME sound effect! (#33097)

* Changes the AME sound effect to not be the default MetalThud.

* Was told on discord to make a minor change to autorerun the tests due to the Build & Test Debug failing!

* Attribution and licensing, as requsted by deathride58

* Fixes the high-pitched squeak audible to some people!

* Audio file tweaked by SlamBamActionMan to eliminate a weird squeak they were still able to hear. Thanks!

* Automatic changelog update

* Allow for the ai's laws to be changed from its core and eye (#32461)

* Allow for the ai's laws to be changed from its core and eye

* Address reviews

* Automatic changelog update

* clean up tools lathe recipes (#31521)

* clean up tools lathe recipes

* add medical and cooking tools

* add result

* add result to others

* review

* engine

---------

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

* Automatic changelog update

* Intercoms and Radios both pick up proximate speech (#32737)

* Deduping of recent messages should consider the channel it's being sent to

* rerun actions

* Automatic changelog update

* Adds headphones to loadouts (#33067)

added headphones to trinkets

* Automatic changelog update

* Cardboard Box Capacity 4 -> 5 (#32743)

* capacity upgrade

* comment update

* remove our duplicate pill whitelist

* fix

* remove broken crew monitor from dev map, how did it even get there

---------

Signed-off-by: Brandon Li <sirbrandonthenerd@gmail.com>
Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com>
Co-authored-by: BramvanZijp <56019239+BramvanZijp@users.noreply.github.com>
Co-authored-by: Ilya246 <57039557+Ilya246@users.noreply.github.com>
Co-authored-by: Moomoobeef <62638182+Moomoobeef@users.noreply.github.com>
Co-authored-by: Saphire Lattice <lattice@saphi.re>
Co-authored-by: FluffMe <1780586+FluffMe@users.noreply.github.com>
Co-authored-by: Theodore Lukin <66275205+pheenty@users.noreply.github.com>
Co-authored-by: August Sun <45527070+august-sun@users.noreply.github.com>
Co-authored-by: august-sun <45527070+august.sun@users.noreply.github.com>
Co-authored-by: lzk <124214523+lzk228@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Preston Smith <92108534+thetolbean@users.noreply.github.com>
Co-authored-by: Milon <plmilonpl@gmail.com>
Co-authored-by: Flareguy <78941145+Flareguy@users.noreply.github.com>
Co-authored-by: Alzore <140123969+Blackern5000@users.noreply.github.com>
Co-authored-by: Boaz1111 <149967078+Boaz1111@users.noreply.github.com>
Co-authored-by: Jarmer123 <148848017+Jarmer123@users.noreply.github.com>
Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>
Co-authored-by: Justin <justinbrick1@gmail.com>
Co-authored-by: SpaceLizard <the.justice.league.of.canada@gmail.com>
Co-authored-by: Psychpsyo <psychpsyo@gmail.com>
Co-authored-by: Psychpsyo <60073468+Psychpsyo@users.noreply.github.com>
Co-authored-by: deathride58 <deathride58@users.noreply.github.com>
Co-authored-by: PopGamer46 <yt1popgamer@gmail.com>
Co-authored-by: RumiTiger <154005209+RumiTiger@users.noreply.github.com>
Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com>
Co-authored-by: Minemoder5000 <minemoder50000@gmail.com>
Co-authored-by: UBlueberry <161545003+UBlueberry@users.noreply.github.com>
Co-authored-by: Brandon Li <48413902+aspiringLich@users.noreply.github.com>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
Co-authored-by: Vasilis <vasilis@pikachu.systems>
Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
Co-authored-by: K-Dynamic <20566341+K-Dynamic@users.noreply.github.com>
Co-authored-by: Ubaser <134914314+UbaserB@users.noreply.github.com>
Co-authored-by: AftrLite <61218133+AftrLite@users.noreply.github.com>
Co-authored-by: nikthechampiongr <32041239+nikthechampiongr@users.noreply.github.com>
Co-authored-by: Centronias <me@centronias.com>
Co-authored-by: joshepvodka <86210200+joshepvodka@users.noreply.github.com>
Co-authored-by: Scribbles0 <91828755+Scribbles0@users.noreply.github.com>
2024-11-07 20:09:25 +00:00
SolStar e06d593302
Add hushed trait (#2106)
* Add new speech trait: Hushed

* Hushed entities' local messages will now be whispers

* Sepeate Hushed check from prefix removal

* Move to Delta-v Namespace

* Minor refactoring

* Bug fixes

* Change to file scoped namespace

* Change comments more in line to DeltaV
2024-11-06 21:50:09 +00:00
Milon e7065f0e1f
stocks trading (#2103)
* sort of works

* fix

* oh right

* admin abuse

* buy/sell events

* price history, better error handling

* joke

* buying and selling

* access handling

* IT'S FINALLY REAL

* fixes

* AAAAAAAAAAAAAAAAA

* i keep fucking forgetting things

* FUCKING

* move company structs out of the comp

* ok im going to sleep

* Revert "oh right"

This reverts commit 8681e5a07b.

* Revert "fix"

This reverts commit 3992ec99fd.

* address reviews
2024-11-06 18:30:54 +01:00
Milon 7f53bd3792
Addictions 2 electric boogaloo (#1897)
* OMG FINALLY FIXED THIS JANKY SHIT

* oh

* no structure, zero fucks given

* this also

* trolled

* shitcode v2

* FUCK

* what was i even fucking thinking???

* remove unused codeanalysis import

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

---------

Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
2024-11-04 14:55:13 +00:00
beck-thompson 4d81976f0d
Fix Syrinx implant (#2055)
* Fixed

* Added comment

* pro delta changes

* Evil

* please work!
2024-11-03 18:02:03 +00:00
Radezolid dc3a3ca3e0
Revert "Block emotes for sleeping" (#32779) (#2084)
* Reverted Block emotes for sleeping (upstream PR #32779)

* Removed comments.
2024-11-03 15:33:52 +00:00
Milon 29c66f3f96
add the no EORG popup (#2070)
ONE MORE PR TODAY
2024-10-28 23:36:49 +00:00
Milon 5ad7cbf18d
cherry pick "Fix Bug With Uppercase Radio Keys" (#33031) (#2068)
Fix Bug With Uppercase Radio Keys (#32997) (master) (#33031)

Co-authored-by: Vasilis <vasilis@pikachu.systems>
Co-authored-by: Thomas <87614336+Aeshus@users.noreply.github.com>
2024-10-28 19:33:25 +00:00
Milon a59dc99d0f
mail refactor (#2067)
* DEAR GOD

* shuffle shit around

* ohhhhhh
2024-10-28 19:32:07 +00:00
Milon 1c46732b19
fix playtime formatting (#32974) (#2038)
Fixed playtime formatting

Co-authored-by: stalengd <p.zamorskiy@yandex.ru>
2024-10-25 00:15:01 +00:00
deltanedas 3e3f971c12 :trollface: 2024-10-24 09:09:54 +01:00
deltanedas a2281c892e early merge of #32940 2024-10-24 02:39:27 +01:00
chromiumboy deaf652637 Visualized regions for NavMapControl (#31910)
* Atmospheric alerts computer

* Moved components, restricted access to them

* Minor tweaks

* The screen will now turn off when the computer is not powered

* Bug fix

* Adjusted label

* Updated to latest master version

* Initial commit

* Tidy up

* Add firelocks to the nav map

* Add nav map regions to atmos alerts computer

* Added support for multiple region overlay sets per grid

* Fixed issue where console values were not updating correctly

* Fixing merge conflict

* Fixing merge conflicts

* Finished all major features

* Removed station map regions (to be re-added in a separate PR)

* Improved clarity

* Adjusted the color saturation of the regions displayed on the atmos alerts computer
2024-10-24 02:25:28 +01:00
ScarKy0 3801465585 Adding intellicard functionality. (#32347)
* init

* im so confused

* clean

* sprite update

* :|

* further attempts

* be blessed for it works

* Very prestigious pAI

* cleaning up

* Intellicard in RD locker

* PAIn't

* .Clear()n't

* .Clear()n't for real this time

* Cleaning up

* Whoopsie Daisy
2024-10-24 02:25:27 +01:00
ScarKy0 87b100b703 Syringe gun! (#32112)
* Init testing

* copyright

* oops

* Tracking the embed entity uid

* testing stuff for gradual injection

* work

* weh

* god save me

* bleh

* Yippee!

* Again

* Mini syringe ammo

* cleaning up

* mini syringes have a texture for fill amount

* -3 cool points :(

* hitboxes

* init cleanup

* much needed fixes

* Fixes
2024-10-24 02:25:12 +01:00
MendaxxDev d590f5fa08 prevent typing sound from playing when AI interacts with consoles (#32906)
* prevent typing sound from playing when AI interacts with consoles

* cleanup
2024-10-24 02:23:56 +01:00
Pieter-Jan Briers 0b504cf545 System to automatically restart server after certain uptime. (#32814) 2024-10-24 02:20:39 +01:00
Jajsha dc392cadc1 Fix starting gear multiple storage fills and tests (#32718)
* fix things

* maybe fix everything
2024-10-24 02:20:22 +01:00
Calecute f348741230 Blunt damage will do stamina damage on wide attacks (#32422)
Fix: blunt damage will now do stamina damage on wide attacks.
2024-10-24 02:20:22 +01:00
Pieter-Jan Briers 8933a86e8a Allow strip removing items if you're holding something (#32750)
You were already able to strip more items at once from somebody than you could hold, and they would drop to the floor. This matched the behavior in SS13.

Annoyingly, however, you were not allowed to *start* a stripping action if you're holding something. This just feels like an annoying paper cut, so this is no longer a thing.
2024-10-24 02:15:56 +01:00
Ilya246 be045d067b ghost locator maints loot (#32323)
* implement

* react to revenants/AI eye

* rare maints loot

* sprite

* description

* review

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* do changes

* stats

* networked

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2024-10-24 02:14:32 +01:00
Errant 95aaa62309 Merge spider clan charges can be armed again (#32866) to Master (#32881)
HOTFIX spider clan charges can be armed again (#32866)

* fix ninja bomb component check

* remove TryGetRole
2024-10-24 02:14:32 +01:00
beck-thompson 31d5291f62 Fix: Plushies no longer delete items when recycled (#32838)
fix
2024-10-24 02:14:32 +01:00
Errant 571f2ae2b9 Traitor activation fix for missing PDA (#30359)
* Implant the uplink if no PDA is found

* comments

* tidy up loose ends

* Whoops usually I start with the namespace, how did I forget it, shame shame

* Consistent data type for starting TC balance, misc changes

* Implant briefing, guidebook

* Update AutoTraitor, add uplink, codeword and briefing parameters to TraitorRuleComponent,  no pda for reinforcements

* engine 5c0ce43

* pass pda to AddUplink

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* nicer string handling

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* case typo 1

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* case typo 2

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* case typo 3

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* minor layout changes

* removed redundant implant check

* minor cleanup

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2024-10-24 02:14:32 +01:00
beck-thompson e9638d45b9 Fix: Radio jammer now doesn't show setting changes to other players (#32817)
* fix

* Other fix
2024-10-24 02:14:32 +01:00
Leon Friedrich 4d4782313f Fix PlantHolder interactions & InteractionSystem assert (#32874) 2024-10-24 02:12:06 +01:00
Vasilis 636ed4e69e Change the window titlebar to show the joined server (#32547)
* Change the window titlebar to show the joined server

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

* Totally not a webedit

* Can you tell what cvar I copied?

* And this kids is why we don't webedit

* Reviews

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-10-24 02:09:49 +01:00
Zachary Higgs 27f5d6d817 Give AI a Sound Cue when an Antimov board is inserted (#32625)
* Subversion Board Insertion Audio Notification

Add Subversion flag and SubversionSound to SiliconLawProviderComponent

Add new Method (OnSubversionInserted)
to SiliconLawSystem to handle a Subversive
SiliconLawProviderComponent and play it's SubversionSound

Add Check for Subversive law provider to OnUpdaterInsert that
calls OnSubversionInserted if the SiliconLawProviderComponent is
Subversive

* Fix subversion Sound

- Change out Weh sound used to test that subversion sounds can be
changed by prototype for a a not yet present Antimov subversion sound

* Make it not just subversive

- Remove OnSubversionInserted and move the MindPlaySound in the
OnUpdaterInsert so long as LawUploadSound exists

- Modify SubversionSound into LawUploadSound

- Remove the Subversion flag

- Just use emagged_borg.ogg until the better one is made

* Remove errant spaces and a errant namespace

* CR Fixes - Add generic Lawboard insert cue

- Combine the If statements per /pull/32625#discussion_r1786926400
inside OnUpdaterInsert

- Remove the ViewVariables(VVAccess.ReadWrite) per
pull/32625#discussion_r1786924433

- Add Cryo_warning.ogg from TGStation, the sound utilized for Law Upload
cue, Attribution.

* CR Add a placeholder Antimov notification sound

- Add a new sound kitbashed from the cryo_sound used for uploading
and the emagged noise

* Add self referential source attribution

- also fix an errant space

* Add more bespoke Sound by ps3moira + attributions
2024-10-24 02:09:07 +01:00
LittleNyanCat 2306368492 Several small SFX tweaks (#28897)
* Several small sfx tweaks

* fix small yml oopsie

* Redo the basin code to use events

* now uses an event for when the transfer is successful, not when there's just an attempt

* forgot to remove this

* Update Content.Server/Botany/Components/PlantHolderComponent.cs

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

* Update Content.Server/Botany/Systems/PlantHolderSystem.cs

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

* adds sound variations to shoes as well

* variations on honkbots and the H.O.N.K mech

* Update Content.Server/Botany/Systems/PlantHolderSystem.cs

* Update Content.Server/Botany/Systems/PlantHolderSystem.cs

* fix compile issue

* oops forgot to delete this

* cleanup

---------

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2024-10-24 02:08:06 +01:00
deltanedas 49b18586fa fix grappling hooks getting bricked (#32738)
Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-10-24 02:08:05 +01:00
ScarKy0 21c600d4ca Cyborg module action icons (#32505)
* Init

* added jani and medical

* + sci and service modules

* + syndi modules

* fixing up

* geiger counter stuff
2024-10-24 02:06:02 +01:00
Джексон Миссиссиппи 53e4abf428 cleanup melee (#32486)
* it removes warns ig

* Quick fix

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-10-24 02:06:01 +01:00
Leon Friedrich 64ef8dd18c Add `IsQueuedForDeletion` checks to interaction system (#32526) 2024-10-24 02:02:23 +01:00
Leon Friedrich 59d5a3cbff Remove inaccurate admin log when moving a held item (#32525)
Remove inaccurate admin log when switching held item
2024-10-24 02:02:23 +01:00
metalgearsloth c66df62b98 Jobreq format (#32806)
* Format job requirements as hours and minutes

* Use TimeSpan.ToString for playtime instead of custom method

* wehflicts

---------

Co-authored-by: jmcb <joelsgp@protonmail.com>
2024-10-24 02:02:23 +01:00
Leon Friedrich a7c6acd402 Hide role entities in the spawn menu (#32798) 2024-10-24 02:01:21 +01:00
Leon Friedrich 8057cee55a Add role prototype validation tests (#32801)
* Add role prototype validation test

* Rejig GetPrototypesWithComponent

* More tests n stuff
2024-10-24 01:59:40 +01:00
SkaldetSkaeg a08ba13031 Block emotes for sleeping (#32779)
* Block emotes

* typing issue

* Update Content.Shared/Bed/Sleep/SleepingSystem.cs

Co-authored-by: MilenVolf <63782763+MilenVolf@users.noreply.github.com>

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: MilenVolf <63782763+MilenVolf@users.noreply.github.com>
2024-10-24 01:58:17 +01:00
slarticodefast 26b80c3e00 Fix SpawnAndDeleteAllEntitiesInTheSameSpot heisentest (#32330)
What happened was that the new tech anomaly randomly triggered a signal sink on the portable generator, which is currently broken and throws an error if the that sink is activated.

The resolve needed logMissing = false because it does not expect the ActiveGeneratorRevvingComponent to exist.
2024-10-24 01:56:14 +01:00
eoineoineoin 2c001fb6dc Make APC UI work correctly with multiple users (#32465)
* Make APC UI work correctly with multiple users

* Check access only on client, when constructing UI

* Do TODO (Thanks, Robust 236.1)

---------

Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>
2024-10-24 01:56:14 +01:00
Errant e11d85131c Fix random test fail in DeleteAllThenGhost (#32753)
It's simple. We kill the heisentest
2024-10-24 01:56:05 +01:00
deltanedas eeb06fac47 update for mind roles and fix random stuff, localize alt ids 2024-10-24 01:55:17 +01:00
Errant ab5d439272 Mind Role Entities (#31318)
* Mind Role Entities wip

* headrev count fix

* silicon stuff, cleanup

* exclusive antag config, cleanup

* jobroleadd overwerite

* logging stuff

* MindHasRole cleanup, admin log stuff

* last second cleanup

* ocd

* minor cleanup

* remove createdTime datafield

* now actually using the event replacement I made for role time tracking

* weh
2024-10-24 00:32:47 +01:00
beck-thompson f194cc45c9 Plushies can now have pAIs stuffed into them (v2)! (#30805)
* First commit

* I forgot silly me

* Actually added comments

* spellin

* fixes

* more blacklists

* Minor fixes

* Speech Verb also changes now

* Simple name stuff

* Other fixes

* remove one line of whitespace

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2024-10-24 00:17:33 +01:00
chavonadelal a24c85a1dd Job title localization (#32338)
* Job title localization

* Correcting fields
2024-10-24 00:11:34 +01:00
deltanedas 1b1169c63f
remove 8 second role rule timer (#2026)
Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-10-20 18:02:51 +02:00
Milon 00815becc4
Merge pull request #1982 from deltanedas/upstream-ops
upstream merge 7/10
2024-10-14 20:05:19 +02:00
deltanedas 91dbd3084a
early merge of fix item locations (#1996)
this was just copypasted without any context wasn't it

Co-authored-by: Callmore <22885888+Callmore@users.noreply.github.com>
2024-10-12 13:44:34 +00:00
Pieter-Jan Briers 3337c91e7b Fix borg hands showing up in stripping menu (#32606)
* Fix borg hands showing up in stripping menu

Borgs can't drop their items anyways, and the amount of hands borgs have causes the UI to just bug out.

* Add more checks
2024-10-07 22:26:19 +01:00
deltanedas ba4e0f6b1d
Merge pull request #1953 from MilonPL/accessability
disable species vision filters by default
2024-10-05 16:25:17 +00:00
Milon ca8778b759
unfuck frezon and n2o prices (#1963)
fucked up
2024-10-05 00:54:46 +00:00
deltanedas 7e435cf8cb
Merge pull request #1957 from deltanedas/upstream-ops
upstream merge 2/10
2024-10-02 22:09:14 +00:00
deltanedas cc6bbfebd4
port psionic sacraficing (#1883)
* uncomment and update guidebook

* update loot pool to use entity table and dont hardcode bluespace

* add sacraficing to altars

* :trollface:

* :trollface:

* :trollface:

* 2 lines of sec

* rename files

* replace gamer loot with fake wizard outfit or a normality crystal

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-10-02 13:04:35 +00:00
deltanedas 42b47a0f20 finish syrinx rework and other fix 2024-10-02 13:03:03 +01:00
Plykiya 2fdce66e61 Fix quick-swap stacks of items (#32560)
* remove picking up stack on quick swap

* better
2024-10-02 12:17:34 +01:00
metalgearsloth 0efacebd28 Fix sensors blocking doors (#32591) 2024-10-02 12:17:34 +01:00
Zylofan 5009550336 Seismic charge now craftable (#32459)
* when tryInsertBlueprint is called it now also calls UpdateMaterialWhitelist on the ent so that it can accept new materials if needed.

* Changed the previous commit to now just have sharedMaterialStorageSystem subscribe to TechnologyDatabaseModifiedEvent which will call  UpdateMaterialWhitelist.

* Empty-Commit
2024-10-02 12:16:35 +01:00
BramvanZijp 5c06299f64 Prevent borgs from being able to be briefly toggled off. (#32485)
* Prevent borgs from being able to be briefly toggled off.

* Use the pre-existing component instead of making an unneccesary duplicate.
2024-10-02 12:16:27 +01:00
Celene b110214c62 Execution System uses the identity of an entity; added "the" to execution message (#32536)
* Exec.System now uses IdentityManagement; added the where necessary

* Included attacker in check for Identity

---------

Co-authored-by: Celene <maurice_riepert94@web.de>
2024-10-02 12:12:14 +01:00
SlamBamActionman e8e687ce7c Add webhook for votekicks (#32513)
* Initial commit

* Localization
2024-10-02 12:09:34 +01:00
Leon Friedrich da431bbb81 Add interaction rate limits (#32527)
* Move PlayerRateLimitManager to shared

* Add interaction rate limits

* uncap tests
2024-10-02 12:09:34 +01:00
nikthechampiongr a5ebe6a25d Fix RA0032 (#32514) 2024-10-02 12:08:12 +01:00
MilenVolf bfa43833d3 Replace obsolete Tile Access methods (#32508)
* Replace obsolete SetTile

* Remove obsolete GetTileRef & GetAllTiles

* Forgor

* Apply suggested `GetMapOrInvalid`
2024-10-02 12:08:12 +01:00
metalgearsloth fae9f90d2d Fix multiple door issues (#32483)
* Fix multiple door issues

- Doors should no longer cycle open-and-closed anymore (at least nowhere near as easily).
- Door sprites shouldn't flicker as much (needs my engine PRs to remove all but one of them).

* woops conversion
2024-10-02 12:08:11 +01:00
metalgearsloth 46a3d6d100 Optimise drains (#32230)
* Optimise drains

If it's still a problem then we do what I did for rmc14 and just dump all the active drains onto a job to getentitiesinrange in parallel.

* Fixes
2024-10-02 12:08:11 +01:00
beck-thompson b4452f8fa5 Predict appraisal tool verb! (#32496)
* First commit

* Network :(
2024-10-02 12:08:11 +01:00
Fildrance 75f17c9c97 Station AI ability to electricute doors (#32012)
* Boom! Emergency access!

* Emergency access sound

* locale

* Updated sounds

* bleh

* Door electrify base

* feat: popups on attempt to activate AI action when wires cut

* refactor: use SharedApcPowerReceiverComponent to check if AI can interact with door

* refactor: added icon and sound for door overcharge

* meta.json should use tabs not spaces

* refactor: extracted sounds for airlock overcharge to static field in system

* refactor: cleanup, ScarKy0 mentions for resources

* refactor: removed unused textures

* feat: now notification is displayed when AI attempting to interact with door which have wire cut

* StationAiWhitelistComponent is properly gating  BUI OnMessageAttempt, SharedPowerReceiverSystem.IsPowered is now used to check if device powered

* refactor: use PlayLocal to play electrify sound only for AI player

* refactor: SetBoltsDown now uses TrySetBoltDown, checks for power.

* bolts now check for power using SharedPowerReceiverSystem

* electrify localization and louder electrify sounds

* extracted ShowDeviceNotRespondingPopup, reverted airlocks not opening/closing when ai wire was cut

* refactor: cleanup

* New sprites and fixes

* Copyright

* even more sprite changes

* refactore: cleanup, rename overcharge => electrify

---------

Co-authored-by: ScarKy0 <scarky0@onet.eu>
Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2024-10-02 12:06:48 +01:00
metalgearsloth 9a59024f13 Predict stripping (#32478)
* Predict stripping

Stops mob verbs from getting moved around again.

* Bola

* Fix ftl
2024-10-02 12:06:37 +01:00
metalgearsloth 9c313b57b4 Fix storage area pickup sound playing multiple times (#32397) 2024-10-02 12:06:37 +01:00
metalgearsloth 38a7494d7d Fix airlock autoclose mispredict (#32477)
* Fix airlock autoclose mispredict

It was hard to see this ingame due to animations masking it. The only way you'd notice currently is the light mispredicting.

* cudin
2024-10-02 12:06:37 +01:00
beck-thompson 41341a8a03 Voice Mask refactor (#30798)
* First commit

* Added base.Initialize()

* Voice wire fix (Electricty name)

* Various minor cleanups

* Localized default voice mask name

* Added VoiceOverride stuff

* Removed unused stuff

* Typo

* Better localized stuff

* Typo / spelling stuff / comments

* Blessed
2024-10-02 12:06:05 +01:00
SlamBamActionman fccb0e30ed Add Votekick functionality (#32005) 2024-10-02 11:38:43 +01:00
Ilya246 79676fd560 lower frezon/n2o sale prices, make frezon take more trit (#32407)
* lower gas prices

* set trit ratio from 1:50 to 1:8
2024-10-02 11:38:43 +01:00
keronshb aaa4ab9351 Adds real-time charge & disabled action information to Actions (#31821) 2024-10-02 11:38:42 +01:00
goet 8847889eeb Fix contraband never getting added to vend inventory (#32431)
* fix contraband never getting added to vend inventory

* Revert "fix contraband never getting added to vend inventory"

This reverts commit e7fb3a60c3cb6fcbf41d7f015f13dbc7b1c1901d.

* readd setter method to system

* fix again without reparenting
2024-10-02 11:38:42 +01:00
ArchRBX 726ad01ccd AstroNav GPS Cartridge (#32194)
* initial commit

* adds astronav cartridge to QM locker

* changes requested in review

* fix merge conflicts

* fixes the statuscontrol disappearing if you eject the cartridge but still have it installed

* fix notificationsenabled on salv pda proto

* fixes lingering statuscontrol on eject while held

---------

Co-authored-by: archrbx <punk.gear5260@fastmail.com>
2024-10-02 11:36:12 +01:00
Dvir be03b28240 Allow AreaInsert pickups for one item (#32153)
Update SharedStorageSystem.cs
2024-10-02 11:33:58 +01:00
eoineoineoin 9a826a8a27 Paper QOL improvements (#32418)
* Don't add newlines (fixes #32357)

* Improve UI around max paper length (Fixes #32344)

* Display a "fill progress" indicator so users know how close they are to filling it
* Don't allow users to save a paper which went over the limit, to avoid them losing data they want to keep.

---------

Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>
2024-10-02 11:29:23 +01:00
Brandon Hu 4b3d41ac0b fix(contraband): Make contraband work with chameleon items (#30986)
* formatting

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2024-10-02 11:24:36 +01:00
Leon Friedrich b92a8edcf2 Entity menu lookup changes (#32395) 2024-10-02 11:24:27 +01:00
metalgearsloth 845a04c1d7 Predict vending machine BUI (#32376) 2024-10-02 11:24:27 +01:00
PotentiallyTom 393dc95028 Makes it possible to disable the vent pressure lockout temporarily with a screwdriver (#31050)
* builds

* doesn't crash

* seems to work

* distance cap was dumb

* Requested changes

* can't find any issues from making the changes

* Check for anchor and minor optimisation

* Removed unnecessary usings

* Code less verbose and cleanup
2024-10-02 11:22:34 +01:00
metalgearsloth 27f8c75ecd Make buckle mint (#32370)
- Fix the unbuckle mispredicts.
- Fix unbuckle offset existing.
- Fix interaction range not aligning with interactionoutline system.
2024-10-02 11:22:12 +01:00
Milon 35480e0625 guh 2024-10-01 20:48:10 +02:00
Milon a5ecffe694
add selfunremovable to headcages (#1949)
fix
2024-09-30 22:10:53 +00:00
deltanedas 88a50803c6
fix chameleon projector bug (#1884)
Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-09-23 14:21:37 +02:00
Plykiya 980e041293 Allows you to buckle transfer person from bed to bed (#32089)
* unbuckle if the target is buckled

* better way to do it
2024-09-22 02:47:17 +01:00
ShadowCommander bb1b50866c Move PlaceableSurfaceComponent usages to PlaceableSurfaceSystem (#28384)
* Move placeable check to PlaceableSurfaceSystem

This check stops entities from being inserted into a storage entity
when it has a PlaceableSurfaceComponent.

The entity is instead placed on top of the entity like a table.

* Move SetPlaceable to PlaceableSurfaceSystem

* Update to transform system and consolidate code

* Fix interaction with storage that has a placeable component

* deadlock

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-09-22 02:45:06 +01:00
Leon Friedrich d9c47745fb Make status effect networking not use `TryAddStatusEffect` (#28766)
* Make status effect networking not use `TryAddStatusEffect`

* a
2024-09-22 02:45:06 +01:00
IProduceWidgets bb65810671 Clean up solution regen and drain comps (#29777)
* clean up solution regen and drain comps

* Tape applied.

* Update Content.Server/Chemistry/Components/SolutionRegenerationComponent.cs

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

* remain entity

* That has to be a rogue test fail.

---------

Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
2024-09-22 02:45:06 +01:00
SlamBamActionman 095fb63bca Allow containment field generators to be enabled on mapinit (#31158)
* Initial commit

* review fix
2024-09-22 02:44:51 +01:00
DrSmugleaf a8c2444a66 Add mapping editor (#23427)
* Add mapping editor (#757)

* Remove mapping actions, never again

* Cleanup actions system

* Jarvis, remove all references to CM14

* Fix InventoryUIController crashing when an InventoryGui is not found

* Rename mapping1 to mapping

* Clean up context calls

* Add doc comments

* Add delegate for hiding decals in the mapping screen

* Jarvis mission failed

* a

* Add test

* Fix not flushing save stream in mapping manager

* change

* Fix verbs

* fixes

* localise

---------

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2024-09-22 02:44:27 +01:00
deltanedas 3a1d442e67 add interaction success/failure events (#32216)
* add interaction success/failure events

* pro

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-09-22 02:38:57 +01:00
Ed 0535e3e809 Fix Anomaly infections infinity growing after curing (#32259) 2024-09-22 02:38:29 +01:00
Ed dd701436ab Anomalous infections (#31876)
* inner anomaly

* anomaly pulse action

* test anom mine

* Update anomalies.yml

* fix action cooldown

* pyro_eyes

* clientsystem

* experiments

* blya

* some telegraphy

* shock eyes!

* shadow eyes

* separate files

* frosty eyes

* fix

* flora eyes

* bluespace eyes

* flesh eyes

* redoing injction

* auto add layers

* пипяу

* new injector component

* stupid me

* nice marker injectors

* anomaly spawn on shutdown

* gravity anom

* dead anomaly spawning

* add VOX states

* sprite specific layers support

* technology anom infection

* auto detach anomalies that have moved away

* Update anomaly_injections.yml

* anomalyspawner integration

* rock anomaly!

* Update anomaly_injections.yml

* fix crash bug

* tag filter

* fix anom dublication spawns

* Update anomaly.yml

* Update InnerBodyAnomalyComponent.cs

* Update anomaly_injections.yml

* dont spawn anomalies after decay

* fix morb sprite, add end message

* gravity resprite

* admin logging, double injection fix

* make flesh and living light mobs friendly to anomaly hosts

* popups

* severity feedback

* sloth review

* A

* keep organs after gib

* punpun host

* sloth synchronization

* Update arachnid.yml

* increase infections spawnrate
2024-09-22 02:38:28 +01:00
chavonadelal ffdf6bb838 Localization of steal targets (#30153)
* Localization of steal targets

* Correction of localization of theft objects

* The second correction of the localization of theft targets

* Update steal-target-groups.ftl

Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>

* Revision of the localization method

* Choosing a simple option for localization

* Fix TechnologyDisk name

* Corrections based on feedback received

* correction of declension

---------

Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
2024-09-22 02:36:01 +01:00
drakewill-CRL 31e3ef00fa Botany Rework Part 1: Mutations (#31163)
Instead of each mutation being a flag that gets checked at some unique point in BotanySystem somewhere, they're now EntityEffects that get applied when the mutation occurs and when produce is harvested. One new list was added to SeedData so that multiple other fields could be removed.

All the non-stat-change mutations that have been rolled are added to the Mutations list, and get applied to the plant when the mutation occurs or when a seed with the mutation is planted. Produce get mutations applied at harvest if they apply to the produce, and carry all of the plant's mutations over as a seed. This gets rid of the one-off checks for things like Slippery, Bioluminescent, Sentient, etc.

The base odds of a mutation applying should be equal to the odds of the original mutation check. It pretended to have 1 bit flip (on averge) per mutation power, and odds of each mutation was the odds of one of its bit being flipped (1 /275 * bits). The 'thermometer code' applied for numbers will be replaced with simple random rolls, as both average out to the middle value. The new checks are much easier to understand and don't obfuscate the actual changes of something happening behind 3 layers of math. The biggest player-facing change is that Potency will be able to get over 65 significantly more often than it did in the previous system, but it will be just as common to get low values as high ones.

Mutation definitions have been moved to a .yml file. These include the odds per tick per mutagen strength of that mutation applying that tick, the effect applied, if it applies to the plant and/or its produce. This makes mutations simpler to add and edit.

This PR is limited specifically to the mutation logic. Improving other aspects of the system will be done in other PRs per the design document. Mutations was chosen first because its got the largest amount of one-off checks scattered all over that could be consolidated. Once this is merged, mutations could be contributed to the codebase with minimal extra work for later botany refactor PRs.
2024-09-22 02:23:49 +01:00
Winkarst dd642a6dd6 Update SharedBuckleSystem to use PopupClient (#31498) 2024-09-22 02:23:49 +01:00
nikthechampiongr 9a089a1f04 Rename fix (#31654)
* Localize RenameCommand and delegate most of the process to MetaDataSystem.SetEntityName()

* Make renaming rely on the EntityRenamedEvent. Fix issue where renaming would keep old Examine text

Requires engine change

* Fix localisation strings

* Make PDA search be based on a renamed entity's Uid instead of its old name

To do this the pda component now has an PdaOwner field which gets
assigned when it is given as a loadout to a player

* Fix bad merge???

huh

* Use AllEntityQuery
2024-09-22 02:23:49 +01:00
eoineoineoin e737824794 Fix some issues with pulling system (#32145)
Joints were created with pivots at object origin, causing unintuitive behaviour when an object was not centered on the origin. Now puts the pivots at the COM.
Joint limits were set based on fractions of the union of the AABB of objects, which did not make geometric sense. Now uses the pivot length with an additional [arbitrary] length.
Joints were created with a very low spring stiffness, which had a negligible effect most of the time but caused very unintuitive behaviour when the pulled object had a low mass (#28028) - disable the spring limit, and just use the hard min/max limits.

Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>
2024-09-22 02:20:58 +01:00
Milon 3a0174439c
fix felinids footsteps (#1866)
* I am SO fucking smart

* fixed random shit from my doing of random shit
2024-09-20 03:38:10 +00:00
deltanedas 82c2fe63ab
Revert "Firelocks are no longer pryable by hand if they are powered (#1837)
comment

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-09-17 23:11:28 +00:00
deltanedas 977b5dad64 network airlock AutoClose (#32124)
* network airlock AutoClose

* least stupid language

* great language

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-09-14 14:27:12 +01:00
slarticodefast f8a97c378d Add extradimensional orange, holymelon, meatwheat, worldpeas mutations (#27624)
* new mutations

* translation string fix

* add haloperidol to plant

* fix

* add FoodSequence

* food sequence fixes
2024-09-14 14:27:11 +01:00
Errant d1f48cf16b movercontroller namespace (#31749) 2024-09-14 14:27:10 +01:00
lzk a75de13ad5 don't apply traits for borg and ai (#31990)
* doesn't apply traits for borg or ai

* add some comment and summaries

* weh

weh

* well ok

Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>

---------

Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
2024-09-14 14:26:27 +01:00
Tayrtahn bd542971a6 Add guidebook protodata tag: embed prototype values in guidebook text (#27570)
* First clumsy implementation of guidebook protodata

* Support for Properties, format strings

* Better null

* Rename file

* Documentation and some cleanup

* Handle errors better

* Added note about client-side components

* A couple of examples

* DataFields

* Use attributes like a sane person

* Outdated doc

* string.Empty

* No IComponent?

* No casting

* Use EntityManager.ComponentFactory

* Use FrozenDictionary

* Cache tagged component fields

* Iterate components and check if they're tagged
2024-09-14 14:26:27 +01:00
blueDev2 5a6a92cd50 Add ReagentWhitelist to Injector component and system (#28262)
* Add reagent whitelist to Injector component and system

* Apply suggested Changes

* Remove LINQ function for performance

* Update Content.Server/Chemistry/EntitySystems/InjectorSystem.cs

Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>

---------

Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
2024-09-14 14:26:27 +01:00
metalgearsloth 02b7b1254d Reapply "FTL + AI fixes (#31952)" (#31968) (#32094)
* Reapply "FTL + AI fixes (#31952)" (#31968)

This reverts commit c46a4ab876ff0baa1e0636569751b120c27f710c.

* Update
2024-09-14 14:26:27 +01:00
Nemanja 8381ec1cf9 Hivelord mob (#31322)
* Hivelord

* make it longah
2024-09-14 14:23:33 +01:00
Nemanja 5215e59a76 Mining Asteroid Treasure Vaults (#31638)
add interior rooms to the vgroid
2024-09-14 14:22:59 +01:00
Verm 6888519e08 Fixes Borgs and Syndicats getting hurt by glass shards and other things + honkbot slipping 2 (#31011)
* Lets do this again

* I noticed this way to late
2024-09-14 14:22:58 +01:00
DisposableCrewmember42 8a85c49f0e fix: Check revenant ability costs correctly (#32050)
* fix: Check revenant ability costs correctly

* refactor: Idiomatically get negative value
2024-09-14 14:18:27 +01:00
TurboTracker 927990848d Removal of Maxcaps via cvar (#31437)
* Comment out gastank explosion trigger

* CVAR creation

* Blank line between method + toml update

* I fucking hate VistualStudio

* change bool logic into float

* cat dancing.gif

* Adjust some minor nits

* Update Content.Server/Atmos/EntitySystems/GasTankSystem.cs

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

* Un-hardcode unused initial cached CVar value

* Update Resources/ConfigPresets/WizardsDen/wizardsDen.toml

---------

Co-authored-by: Kevin Zheng <kevinz5000@gmail.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2024-09-14 14:17:42 +01:00
themias 15b0315e5f Save unpublished news articles (#31491)
* Add draft saving to news consoles

* fix after bui changes

* comments + rename vars

* no
2024-09-14 14:04:52 +01:00
Pieter-Jan Briers 1a94de83db Extend shuttle dock time if the shuttle doesn't dock at evac. (#31496)
* Extend shuttle dock time if the shuttle doesn't dock at evac.

If the shuttle can't dock at evac for *some reason*, it will instead try to dock at another port on the station. And if that fails it goes somewhere random on the station.

Because of the chaos and confusion caused by this, many people will frequently not get to the shuttle in time under these circumstances. This sucks for everybody.

To alleviate this, the shuttle launch timer will now be extended if the station doesn't dock at its ideal spot. The default values (controlled via CVar) are 1.667x and 2x respectively for "wrong dock" and "no dock at all" scenarios.

The code around here was a mess, so I fixed that too. "CallEmergencyShuttle" has been renamed to "DockEmergencyShuttle", the overload that did the actual docking has been renamed to DockSingleEmergencyShuttle. Code has been split into separate dock -> announce methods so we can calculate shuttle delay in between the case of multiple stations.

Also made the "shuttle couldn't find a dock" text announce the time until it launches and fix the shuttle timers not triggering for it.

* Minor review

---------
2024-09-14 13:56:26 +01:00
slarticodefast 9cb75c9ff9 Make mobs without hands unable to spill jugs (#31438)
* make mobs without hands unable to spill jugs

* snails
2024-09-14 13:56:26 +01:00
slarticodefast 16fe76520d Revert "FTL + AI fixes (#31952)" (#31968) 2024-09-14 13:53:58 +01:00
metalgearsloth da10fbe6e8 FTL + AI fixes (#31952) 2024-09-14 13:52:59 +01:00
Ed a59f68e227 Metamorphosis - FoodSequence 3 (#31012)
* setup some data

* cheeseburger recipe

* Update FoodSequenceSystem.cs

* finalize cheseburger recipe

* remove fun

* return old taco sprites

* full foodsequence data refactor

* return tacos

* well done

* add cutlets to burger

* chickenburger recipe

* +2 burger recipes

* more fun

* Update brain.png

* some slice produce added

* documentation

* watermelon

* skewer work

* flipping

* tomato

* skewer watermelon

* Update skewer.yml

* oopsie, ok, im go to sleep

* fix checks

* Update produce.yml

* screwed

* cheeeeeeeese

* all cooked meat added

* produce added

* aaaaand suppermatter

* key to Tag

* More

* proto string remove

* raw snail

* fix

* Update FoodMetamorphableByAddingComponent.cs

* fixes

* fix3

* fififififx
2024-09-14 13:52:20 +01:00
LucasTheDrgn 4d2835a2d6 Returned functionality to industrial reagent grinders (#31903)
* Returned functionality to industrial reagent grinders without un-nerfing recyclers

* Limited industrial reagent grinder to only extractable solutions
2024-09-14 13:38:15 +01:00
Kirus59 2deffd5378 Damaged by contact fix (#31921) 2024-09-14 13:38:15 +01:00
Tad "Taddy" Johnson 3fd3a58ff2
fix mass sleep (#1816)
...because Milon fucked it up
2024-09-13 23:26:13 -03:00
deltanedas 845d5841d0
add glimmer/psionic artifact stuff (#1785)
* add TryMakePsionic

* refactor psionic abilities file, add PsionicPowerDetectedEvent

* add glimmer/psionic artifact code

* add glimmer/psionic artifact triggers and effects

* pro

* o

* fix hint

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-09-12 01:25:59 +00:00
deltanedas c93551dad7
upstream merge 7/9 (#1762)
* Remove always false checks (#31708)

* Remove calls to FormattedMessage obsolete methods (#31706)

* Remove FormattedMessage obsolete methods

* Oops

* remove misinformation from tip 26 (#31705)

tip 26

* Automatic changelog update

* Replace obsolete code in AnomalySystem.Generator.cs (#31718)

* replace obsolete

* weh

* Added cursor indicator for space dragon fire breath ability (#31725)

space dragon breath cursor indicator

Co-authored-by: YourUsername <you@example.com>

* Automatic changelog update

* small yml cleanup (#31720)

* Updates descriptions of station specific jobs. (#31713)

done

* Remove unused IoC dependency references. (#31704)

Remove unused IoC dependencies

* cleanup filing cabinets yml (#31211)

* partmedia ahh kommit

* ahh

* everything should be fine now

* f

* now should be good

* Update Resources/Prototypes/Entities/Structures/Storage/filing_cabinets.yml

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* fix suffix

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* Move IgnitionEvent to shared (#30985)

* Cleanup railings yml (#31618)

* Cleanup railings

* fix line

* real fix

* Roundstart Grappling Gun (#31737)

Roundstart grappling hook

* Automatic changelog update

* Added in-hand sprite for Smile the Slime (#31731)

added smile the slime in-hand texture

Co-authored-by: YourUsername <you@example.com>

* Lite Magnet Rebalancing (#31726)

magnet rebalancing ish

* unnerf fishops

* Devmap crew monitor fix (#31677)

* Automatic changelog update

* Add ERT time stats (#31629)

* add jobs for ghost roles

* add job to ToggleableGhostRole

* typo

---------

Co-authored-by: Mota <belochuc@gmail.com>

* Automatic changelog update

* Fix CS0642 - Possible mistaken empty statement (#31740)

* Throw the book at em! The space law book now does 1 blunt projectile damage (#31387)

* you can now throw the space law book for 1 blunt damage

* made book damage a feature of all books

* Replace instances of SolutionContainerSystem with SharedSolutionContainerSystem (#30084)

* Replace instances of SolutionContainerSystem with SharedSolutionContainerSystem

* guap

* More fixes

* Wait you can do that?

---------

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

* Add Donk Co. microwave board to Combat Bakery Kit (#31239)

* Add special microwave board to Combat Bakery Kit

* use event instead of trycomp

* make the board sus

* add instructions note

* embarrassing typo

* Add functionality to Donk Co. microwave instead

* update note

* Automatic changelog update

* Actions bar dynamic resizing (#31759)

* action bar dynamic resizing

* action bar dynamic resizing for separated style

* decreased indent for separated style

---------

Co-authored-by: YourUsername <you@example.com>

* Automatic changelog update

* Fix warnings related to non-exhaustive pattern matching.  (#31763)

old man shakes fist at modern syntax

* ats update (#31766)

* ats update

* fix pipenet

* Ninja throwing star ability fix (#31684)

fixed ninja star not spawning

Co-authored-by: YourUsername <you@example.com>

* Automatic changelog update

* Remove duplicate using from FoodSystem (#31769)

* vox voices revamp (#31679)

vox voices v2

* fixed broken pipe sprites (#31773)

* Return Long2 and Long3 hairstyles  (#30963)

* Sprites

* Prototype_&_Locale

* sorted_in_alphabetical_order

* Automatic changelog update

* Added many old ion lawsets for borgs and AI. (#31664)

* Added the Commandments, Paladin, LetLive, Station Efficiency, Robocop, Overlord, Dungeon Master, Artist, Antimov and Nutimov lawsets/

* Wording

* Anti-Antimov

* Fixed fun

* Add Snails (#30765)

* add snails

* scuffix

* migrate

* mo-grate

* oopsied the ftls

* Revert "oopsied the ftls"

This reverts commit 0d3c6c17f31ec904679d6a48799cea71e77c1f99.

* the curse of staging the wrong file, resolved.

* Snoth

* fix my dumbs

* reviews 1

* anti space technology

* salt hurty

* spelling

* Its a slotherhouse out here

* sequencing

* cooked snail

* volfix

* speed reversal

* Automatic changelog update

* Remove testbed command (#31793)

* feat: now when research is unlocked in console, approver of reasearch is radio-ed too (#31170)

* feat: now when research is unlocked in console, approver of reasearch is radio-ed too

* refactor: now most of events that require actor name to be radio-ed or logged use TryGetIdentityShortInfoEvent which is subscibed by id-card system and borg system (to work for both carbon and synthetic life-forms)

* refactor: moved TryGetIdentityShortInfoEvent on id card system to shared, fixed cargo cent-com-originated orders

* remove unused check

* refactor: decoupled systems from IdCardSystem (those that are not dependent on it anymore)

* refactor: removed unuseed usings

* feat: emagged cargo/research consoles wont radio messages on buy/research confirm anymore

---------

Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>

* Automatic changelog update

* New chemical based artifact nodes (#30873)

* Initial pH nodes, and description changes to indicate pH

* Psychoactive and stimulant nodes, Medical foundation, bioreactive hint

* Added medical reagents to medical node. Added norepinephric acid to acidic and made up a pH

* Added pyrotechnic chem node, and corresponding hint

* spelled psychedelic correctly

* Fixed capitalisation skill issue

* fixed indentation skill issue

* fixed a further indentation skill issue

* Removed extraneous whitespace

* Replaced bioreactive with theraputic and psychoactive. Also fixed typo skill issue.

* removed unnecessary comment

* Replaced heartbreaker with THC for psychadelic

* removed artifexium from acidic

* added tran acid to acidic

* added more medical chems

* removed pH values

* removed all but medical

* Automatic changelog update

* Add Red Neck Gaiter To Secdrobe (#30106)

* Red Neck Gaiter Added to SecDrobe

* Removes Gaiter From TheaterDrobe

* Automatic changelog update

* Fixed typos (#31811)

* Automatic changelog update

* Station AI has their name displayed in announcements now. (#31802)

* Station AI has their name displayed in announcements now.

* I'm so sorry

* Corrections

* part 2

* part 3 :|

* part 4

* Whitespace

* Fixing whitespace part 1

* No more whitespace

* PLEASE NO MORE WHITESPACE

* Automatic changelog update

* Add disabled station anchors version (#31794)

* Add disabled station anchors versions

* remove this

* add structural damage taken to a lot of prototypes (#30790)

* fix

* add structural damage taken to a lot of other things

* do requested changes

* how did this happen

* Automatic changelog update

* No Mr.Snail, I expect you to die! (fix sprite) (#31834)

* No Mr.Snail, I expect you to die!

* emoting

* Allow some mobs to walk slowly (#31360)

* Allow mice to walk slowly

* add more

* Automatic changelog update

* Delete nonsense solar assembly construction through the Construction window (#31425)

* Delete construction for solar assembly, it's the way to do it

* Fix description of solar tracker electronics

* Improvements to hand labeler UI (#31833)

Give line edit focus when window is opened
No longer require pressing enter to set the text
Give feedback when user hits the maximum label length

Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>

* make tesla brighter (#31357)

* make tesla brighter

* radius to 10

* Automatic changelog update

* CorrectContraband levels on each type of magboots (#30960)

* Added a ClothingShoesBootsMagBase, to allow the other versions of the magboots to have their own contraband settings

* Changed Science Boots to not be contraband

* Made ClothingShoesBootsMagBase abstract

* Removed Engineering Contraband from base magboots. Now only the CE's Advanced Magboots are contraband (Grand Theft Contraband). Blood Reds are Syndie Contraband.

* Automatic changelog update

* Morgue system refactor remove unused VVs and into Entity (#31835)

* Remove unused VVs params and usings
from entityUid, MorgueComponent into Entity<MorgueComponent> ent

* remove unnecesary VVs cuz datafields add em

* Make midround zombie outbreaks much rarer (#30266)

* Remove midround zombies

* super rare, like, 1/651 chance every few minutes.

* weight to 1

---------

Co-authored-by: Ubaser <134914314+UbaserB@users.noreply.github.com>

* Automatic changelog update

* Teleporting while pulling crash fix (#31787)

teleporting while pulling crash fix

Co-authored-by: YourUsername <you@example.com>

* Automatic changelog update

* quietify stealthbox (#30741)

* Automatic changelog update

* Atmospheric alerts computer (#25938)

* Atmospheric alerts computer

* Moved components, restricted access to them

* Minor tweaks

* The screen will now turn off when the computer is not powered

* Bug fix

* Adjusted label

* Updated to latest master version

* Automatic changelog update

* Day 0 bug fix for atmos alerts computer (#31858)

Initial commit

* Basically every electronic device can now be used by the AI. (#31730)

* Basically every electronic device can now be used by the AI.

* Removed stuff that didnt make sense

* oops

* Removed access from mailing and disposal units.

* Added AI wires to a couple machines.

* cool epic stuff

* Automatic changelog update

* Fix a typo in the 10 commandments (#31856)

* feat: #26107 uplink discounts for traitors (no nukies for now) (#26297)

* feat: #26107 uplink discounts for traitors and nukies

* refactor: #26107 extracted discount label from price of StoreListingControl

* refactor: minor renaming

* refactor: parametrized adding discounts to uplink store

* fix: #26107 prevent exception on empty discountOptions

* feat: uplink now have 'Discounted' category which contains all discounted items on this session.

* after merge fixups

* rename discount categories according to common sense

* refactor: DiscountOptions is now optional (nullable) on ListingData

* add nullability check ignore for already checked listingData.DiscountOptions

* fix after merge store menu ui

* remove unused using

* final fix after merge conflicts

* [refactor]: #26107 fix variables naming in UplinkSystem

* fix: #26107 fix after merge

* refactor: #26107 now supports discountDownUntil on ListingItem, instead of % of discount

* feat: #26107 support multiple currency discount in store on side of discount message label

* refactor: #26107 extracted discounts initialization to separate system. StoreDiscountData are spread as array and not list now

* refactor: #26107 move more code from storesystem to StoreDiscountComponent

* refactor: #26107 separated StoreSystem and StoreDiscountSystem using events

* fix: #26107 placed not-nullable variable initialization in ListingData for tests

* refactor: #26107 minor renaming, xml-docs

* fix: #26107 changed most of discounts to be down to half price for balance purposes

* ids used in with discounts are now ProtoIds, dicountCategories are now prototypes, code with weights simplified

* decoupled storesystem and store discount system

* xml-docs

* refactor:  #26107 xml-doc for StoreDiscountSystem

* is now a thing (tmp)

* fix: compilation errors + StoreDiscountData.DiscountCategoryId

* refactor: rename ListingDataWithCostModifiers, fix all cost related code, enpittyfy performance, uglify uplink_catalog

* refactor: removed unused code, more StoreDiscountSystem docs, simplify code

* refactor: moved discount category logic to respective system, now creating ListingData c-tor clones all mutable fields as expected

* refactor: rename back (its not prototype)

* refactor: move ListingItemsInitializingEvent to file with handling logic

* refactor: comments for StoreBuyFinishedEvent handling, more logging

* refactor: moved StoreInitializedEvent, xml-doc

* refactor: simplify StoreDiscountSystem code  (reduce nesting) + xml-doc

* refactor: restore old listing data cost field name

* refactor: fix linter in uplink_catalog.yml

* refactor: xml-doc for ListingDataWithCostModifiers

* refactor: limit usage of ListingData in favour of ListingDataWithCostModifiers

* refactor: purged linq, removed custom datafield names, minor cleanup

* refactor: removed double-allocation on getting available listings

* refactor: StoreSystem.OnBuyRequest now uses component.FullListingsCatalog as reference point (as it was in original code)

* fix: minor discount categories on uplink items changes following design overview

* refactor: StoreBuyListingMessage now uses protoId and not whole object

* refactor: store refund and discount integration test, RefreshAllListings now translates previous cost modifiers to refreshed list, if state previous to refresh had any listing items

---------

Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>

* Automatic changelog update

* Fixed AI Actions (#31823)

* Updated sprites for AI HUD

* Epic test fail

* Merged AGhost actions and AI actions together again.

* Seperate comms and bugfix. Fixed broadcast.

* Automatic changelog update

* add wireless net to evac shuttles

* Automatic changelog update

* A kit to help new botanists discover chemistry (#31738)

* Add a kit for botanists to do some limited chemistry to the NutriMax. Intended to help new botanists learn in-game about chemistry.

* remove exclamation marks from names

* naming fix

* Rejected trademark application for 'Farmers Helper'.

---------

Co-authored-by: PraxisMapper <praxismapper@gmail.com>

* Automatic changelog update

* Board for the AI upload console (#31867)

board

* Automatic changelog update

* Fix typo in agri-chem manual (#31869)

* Fix typo in agri-chem manual

* Unremove my added newline

* Cleanup books.yml (#31838)

* Cleanup books.yml

* yeah

* shame

* Vox sign/N2 locker update (#31845)

* Vox sign/N2 locker update

The "vox area" sign and N2 locker sprite were both taken from /vg/station. These sprites have bad racist connotations as discussed in https://github.com/space-wizards/space-station-14/issues/31840, and do not fit our server culture.

The new N2 locker is not a taped on piece of trash. It now also has a blue stripe to mimic the regular O2 locker and make it more distinct from fire safety closets.

The new "vox area" sign sprite follows the same style as other "area indicator" signs used throughout the blue and isn't an explicit warning sign anymore. It still has "No O2" on it to fill that role though.

* emogarbage adjustments

---------

Co-authored-by: EmoGarbage404 <retron404@gmail.com>

* Automatic changelog update

* Pizza boxes now have a chance to contain cotton pizza (#31883)

Pizza box now contains cotton pizza

Co-authored-by: Ekkosangen <9094006+XyyxShard@users.noreply.github.com>

* Automatic changelog update

* Tech Anomaly (#31764)

* A

* B

* C

* D

* Update TechAnomalySystem.cs

* idle anim

* Update meta.json

* new animation

* Automatic changelog update

* Fixed throngler name inconsistencies (#31889)

changed throngler names

* I have spent more time today cleaning up garbage than coding new shit, and I am mad (#31246)

* Fix logging of GetWebhook errors

Yeah let's just not log the error only stack trace.

* I have spent more time today cleaning up garbage than coding new shit, and I am mad

Cleans up the custom vote Discord webhook code because I *happened* to lay my eyes on how completely terrible it was and immediately found an obvious bug with it.

Also did basic QA because jesus christ: it more clearly reports pending votes, properly indicates cancelled votes, improves footer formatting, better error logging, all the usual shit.

Requires https://github.com/space-wizards/RobustToolbox/pull/5375 to avoid test failures

* Mineral Scanner (#31390)

* Mineral Scanner

* doink

* review

* sunday funday

* review and fix bugs i think?

* Update MiningOverlay.cs

* Automatic changelog update

* Fix ai upload console itemslot whitelist (#31900)

* Fix ai upload console itemslot whitelist

* aw man

* Automatic changelog update

* improved vox laugh (#31798)

vox laugh not underwater

* fix pump shotgun wielded sprite (#31885)

* fix shotgun sprite

* fix take 2

* fix: Snail event wasnt tabled (#31884)

pest events reorganized and snails spawn

* Automatic changelog update

* Force stop pulling when fall asleep (#31893)

* break pull at sleep

* TryStopPull without user

---------

Co-authored-by: YourUsername <you@example.com>

* Automatic changelog update

* Energy Shotgun Change 2 - Narrow Nerf + instances from NoSpawn --> categories: [ HideSpawnMenu ] + self recharge removed + 1 more shot + normal recharge speed (#31235)

* narrow nerf

* last instance of nospawn gone

* removes self recharge

* 8 shots, less recharge time

* Automatic changelog update

* Add justice helm (#31905)

* Add justice helm

* backslash moment

* spinny light

* remove power cell from recipe

* Automatic changelog update

* Quiver Crafting Recipe (#27198)

* Update quiver.yml

* Create quiver.yml

* Update clothing.yml

* Update pneumatic_cannon.yml

* Update pneumatic_cannon.yml

* Update pneumatic_cannon.yml

* Update pneumatic_cannon.yml

* Delete RDs binary encryption key (#31909)

Deleting binary key

Silicon supremacy!

* undelete rd key

* Automatic changelog update

* split temperature protection into heating and cooling (#30662)

* split temperature protection into heating and cooling

* fugg

* weh

* update TemperatureProtection for stuff

* Automatic changelog update

* makes the maple wing marking have a primary and a secondary color (#31691)

bogos binted

* Automatic changelog update

* Remake bottles and syringes names to use labels (#29956)

* Remake bottles and syringes names to use labels

* vial

* fix and add stuff

* Automatic changelog update

* guide on agrichem and botanicals guidebook update (#31896)

* Automatic changelog update

* Automatic changelog update

* Lost evac pod thing tiny fan (#31915)

* disaster evacpod tinyfan

* real

* :trollface:

* untroll

* Ghostrole rule updates (#29249)

* First batch of ghostrole rule updates

* Second pass

* Re-word free agent

* Apply review comments

Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>

* You heard it here first folks

God rules are weird to write.

Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>

* Honkbot -> Free Agent

Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>

* Mimebot -> Free Agent

Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>

* Jonkbot -> Free Agent

Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>

* Softer blue

---------

Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>

* :trollface:

* :trollface:

* :trollface:

* pro

---------

Co-authored-by: Winkarst <74284083+Winkarst-cpu@users.noreply.github.com>
Co-authored-by: Ilya246 <57039557+Ilya246@users.noreply.github.com>
Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com>
Co-authored-by: Errant <35878406+Errant-4@users.noreply.github.com>
Co-authored-by: godisdeadLOL <169250097+godisdeadLOL@users.noreply.github.com>
Co-authored-by: YourUsername <you@example.com>
Co-authored-by: lzk <124214523+lzk228@users.noreply.github.com>
Co-authored-by: Boaz1111 <149967078+Boaz1111@users.noreply.github.com>
Co-authored-by: Mervill <mervills.email@gmail.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
Co-authored-by: DrSmugleaf <10968691+DrSmugleaf@users.noreply.github.com>
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: poeMota <142114334+poeMota@users.noreply.github.com>
Co-authored-by: Mota <belochuc@gmail.com>
Co-authored-by: Moomoobeef <62638182+Moomoobeef@users.noreply.github.com>
Co-authored-by: Cojoke <83733158+Cojoke-dot@users.noreply.github.com>
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
Co-authored-by: themias <89101928+themias@users.noreply.github.com>
Co-authored-by: Emisse <99158783+Emisse@users.noreply.github.com>
Co-authored-by: Арт <123451459+JustArt1m@users.noreply.github.com>
Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com>
Co-authored-by: IProduceWidgets <107586145+IProduceWidgets@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Fildrance <fildrance@gmail.com>
Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
Co-authored-by: Lye <128915833+Lyroth001@users.noreply.github.com>
Co-authored-by: DieselMohawk <gavin.drinka@gmail.com>
Co-authored-by: Hreno <hrenor@gmail.com>
Co-authored-by: eoineoineoin <github@eoinrul.es>
Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>
Co-authored-by: qwerltaz <69696513+qwerltaz@users.noreply.github.com>
Co-authored-by: Ty Ashley <42426760+TyAshley@users.noreply.github.com>
Co-authored-by: Token <esil.bektay@yandex.com>
Co-authored-by: Alzore <140123969+Blackern5000@users.noreply.github.com>
Co-authored-by: Ubaser <134914314+UbaserB@users.noreply.github.com>
Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>
Co-authored-by: Psychpsyo <60073468+Psychpsyo@users.noreply.github.com>
Co-authored-by: drakewill-CRL <46307022+drakewill-CRL@users.noreply.github.com>
Co-authored-by: PraxisMapper <praxismapper@gmail.com>
Co-authored-by: Nim <128169402+Nimfar11@users.noreply.github.com>
Co-authored-by: Perry Fraser <perryprog@users.noreply.github.com>
Co-authored-by: EmoGarbage404 <retron404@gmail.com>
Co-authored-by: Ekkosangen <9094006+Ekkosangen@users.noreply.github.com>
Co-authored-by: Ekkosangen <9094006+XyyxShard@users.noreply.github.com>
Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
Co-authored-by: Chubbicous <100180479+Chubbicous@users.noreply.github.com>
Co-authored-by: Ps3Moira <113228053+ps3moira@users.noreply.github.com>
Co-authored-by: FungiFellow <151778459+FungiFellow@users.noreply.github.com>
Co-authored-by: Futuristic-OK <141568243+Futuristic-OK@users.noreply.github.com>
Co-authored-by: Ian <ignaz.k@live.de>
Co-authored-by: TsjipTsjip <19798667+TsjipTsjip@users.noreply.github.com>
Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
2024-09-10 01:20:38 +10:00
portfiend 690cbe995a
Rodentia Species (#1511)
* add: basic rodent species

* add: rodentia base sprites

* add: basic rodent hand/foot markings

* add: ears i got em

* add: tail markings

* add: big ears

by request

* tweak: default markings, coloration

everything uses skin color by default when added except for these new "default" markings which use tattoo

* add: the rest of the basic body part markings

* add: snout textures

* add: pattern markings

* add: cheek detail

* add: sex variations for chest marking

* add: give rodentia the generic markings

* add: rodentia names

* add: damage, voice, mass, emotes to rodentia

* add: rummager ability for rodentia

* remove: temperature protection from rodentia

* add: some makeup markings for rodentia

* add: include rodentia in misc pools

* add: rodentia guidebook entries

* tweak: adjust rodentia marking points

* add: rodentia pie sprite

* tweak desc

* tweak: change rodentia name scheme

* tweak: adjust damage modifiers for rodentia

* add: rodentia always trigger mouse traps

* tweak: rodentia have unique speech verbs

* tweak: change rodentia inventory shape

* tweak: rodentia take more phys dmg overall

* tweak: made rodentia hungry

* add: mouth storage component on rodents

* add: server mouthstoragesystem

* add: force-dump mouth storage on trip

hmm the networking on this is a little ehh. but watever

* add: rodentia drop mouth items on damage

* add: blocked interactions if mouth is full

* fix: corrected accent oops

* tweak: tense

* fuck this import in particular

* tweak: spit damage threshold

* fix: no redundant open actions

* refactor: move this action into the types file

* add: rodentia get ability to hide under tables etc.

* tweak: change rodentia action icons

* refactor: im renaming this component and system lol

* refactor: rename this event too

i was gonna refactor the whole system to be more like climbing, but the climbing system is convoluted so im just gonna do this and put it aside

* tweak: fix the mouth storage icon
the number covers it

* tweak: check if colliding with table before un-sneaking

* fix: crawl action cooldown and popup text

* add: slowdown to sneak ability

* refactor: fix this namespace

* tweak: rummageable objects now use a cooldown

* fix: newlines

* Apply suggestions from code review

Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Signed-off-by: portfiend <109661617+portfiend@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Signed-off-by: portfiend <109661617+portfiend@users.noreply.github.com>

* fix: collision group variavbles

* add: proper "full body" sprite

* add: move blaze to head folder, "round face" marking

* add: whisker markings

* tweal: rodentia are 50% -> 33% hungrier

1.5x seemed excessive

* refactor(mouthStorage): move OnExamined from server to shared

* refactor(mousetrap): use HasComp

* refactor(mouthStorage): use a public api instead of event here

* refactor(yml): KILL REPETITION

* refactor(parts/rodentia): KILL REPETITION

---------

Signed-off-by: portfiend <109661617+portfiend@users.noreply.github.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
2024-09-07 23:04:34 -03:00
deltanedas 6d0102f8d3 remove dupe melee execution code, fix 2024-09-01 04:36:08 +01:00
Julian Giebel 5f5a0d46be Station Anchor (#26098)
* Work on abstracting out chargeup functionality/ui from grav gen

* Work on station anchor

* Finish implementing station anchors

* uhh yeah

* ok.

* fix tests

* whoops

* Get the last extraneous yaml fail

* PJB review

* beast mode... ACTIVATE!

---------

Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
Co-authored-by: EmoGarbage404 <retron404@gmail.com>
2024-09-01 03:36:44 +01:00
metalgearsloth 39db9ebe5d Fix AI singulo shenanigans (#31556)
* weh

* Fix broken tests directly mutating entities from wrong thread.

* fix build

* gundam

* weher

* WHY

---------

Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2024-09-01 03:34:12 +01:00
Milon c54b29b51c
job whitelist panel presets (#1717)
* SHIT -> GOLD

* the label looks like shit
2024-08-31 00:11:45 +00:00
Psychpsyo 175343453d Re-add improved random sentience event (#29123)
* Re-add improved random sentience event

* Make randomly sentient PDA more likely

* Make vending machine sentience less likely

* Make requested changes

* Make randomly sentient captain's gear more likely

* Sentient captain sabre has pirate accent

* Tweak new random sentient object a bit more

* Sentient PDA improvements

* Apply recommended fixes

* Add requested changes

* Fix merge conflict
2024-08-30 09:00:08 +01:00
deltanedas e2150ee5f9 reduce lathe recipe copy pasta (#31515)
* add inheritance to lathe recipes and make result an override

* add GetResult method to lathe system

* make other parts of the code use GetResult

* clean up the stock parts yml

* remove unused apu boards from dynamic recipes

* make inverse dictionary public so test doesnt have to copy paste

* revert result override stuff

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-08-30 08:07:09 +01:00
metalgearsloth 389a92a317 Fixup playerspawn stuff (#31546)
* Fixup playerspawn stuff

- Also removed arrivals forcing, this should just turn containerspawnpoint off.

* fix this one

* test fix

* really fix
2024-08-30 08:07:09 +01:00
Errant d3be58f496 Update ClothingSpeedModifierSystem.cs (#29994)
* TryGetContainerContainer

* Math

* Changed AddMarkup to AddMarkupOrThrow

* Better math

* engine version

* engine version
2024-08-30 07:55:29 +01:00
metalgearsloth 70723924a5 AI whitelist fix (#31542) 2024-08-30 07:54:06 +01:00
metalgearsloth d58bdd65ec Station AI (#30944)
* Station AI overlay

* implement

* Bunch of ports

* Fix a heap of bugs and basic scouting

* helldivers

* Shuffle interactions a bit

* navmap stuff

* Revert "navmap stuff"

This reverts commit d1f89dd4be83233e22cf5dd062b2581f3c6da062.

* AI wires implemented

* Fix examines

* Optimise the overlay significantly

* Back to old static

* BUI radial working

* lots of work

* Saving work

* thanks fork

* alright

* pc

* AI upload console

* AI upload

* stuff

* Fix copy-paste shitcode

* AI actions

* navmap work

* Fixes

* first impressions

* a

* reh

* Revert "navmap work"

This reverts commit 6f63fea6e9245e189f368f97be3e32e9b210580e.

* OD

* radar

* weh

* Fix examines

* scoop mine eyes

* fixes

* reh

* Optimise

* Final round of optimisations

* Fixes

* fixes
2024-08-30 07:53:19 +01:00
metalgearsloth 4cf83da654 Make AI overlay use vis1 (#31348)
* Make AI overlay use vis1

I think this is what get_hear in 13 uses idk this shit is esoteric.

vis1 is luminosity vis2 is line of sight.

* boark
2024-08-30 07:25:17 +01:00
Simon f9f2549746 Automated whitelists (#23985)
* Beginnings of making the breadmemes jobs easier

* stuff

* stuff pt. 2

* Stuff pt.3

* Stuff I forgot last time

* Basic whitelist

Only people that are added to the whitelist with the addwhitelist command will be able to join. I call this the "legacy" whitelist

* Remove always deny condition in favor of just breaking if playtime check fails

* Change default whitelist

Default whitelist is now the "legacy" whitelist.

* localization

* Admin check

* minor spelling change

* Fix build

* Whitelist message

* Fix vars not being datafield and spelling mistakes

* Minor spelling mistake

* Change config for salamander

* Reviews and stuff

* Add summaries

* Fix whitelists

* Forgot to add a datafield

* Fixing stuff I guess

* Reuse admin remarks to reduce load when connecting.

* Update log messages to be verbose instead of debug

* Reviews

* whoops

* Explain a bit more how whitelist checking works

* Apply CE's review

* Append Membership to Blacklist and Whitelist conditions

* Fix review comments

* Uncapitalize playerConnectionWhitelist, add to ignored client prototypes

* Make note count field work

* Fix cvar for thingy

---------

Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2024-08-30 05:37:15 +01:00
Dimastra 89308c2002 fix method OnEntityEnter in DamageContactsSystem (#31494)
fix

Co-authored-by: Dimastra <dimastra@users.noreply.github.com>
2024-08-30 05:32:30 +01:00
deltanedas 6e29441a46 merge master 2024-08-28 03:20:44 +01:00
Nemanja db4e7cb567 Add space debris to salvage magnet (#31113)
* add space debris to salvage magnet

* multiplication

* necessary mercy for NPCs

* back and forth on mercy
2024-08-28 03:17:20 +01:00
deltanedas 7fd2541aee
job whitelists panel !!! (#1678)
* make JobPrototype.Whitelisted respect blanket whitelist, make jobs use it

* add jobwhitelists command and ui

* add job whitelist button to player panel

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-08-28 00:33:30 +00:00
Nemanja b22872e522 add default page support for the guidebook (#28772) 2024-08-27 01:34:03 +01:00
metalgearsloth 17d4d701b3 Predict EmitSoundOnUIOpen (#31464)
* Predict EmitSoundOnUIOpen

BUI prediction led to this moment.

* unforky
2024-08-27 01:03:06 +01:00
ShadowCommander 0a42ea3a9f Add a bool to disable buckling on InteractHand (#30001) 2024-08-27 01:00:43 +01:00
metalgearsloth e3928cee72 ContainerComp fix (#31434)
Forgot to push these ones on the branch.
2024-08-27 01:00:43 +01:00
Ed 4987111d59 Weather fix (#30857)
* weather fix

* localize errors
2024-08-27 01:00:43 +01:00
metalgearsloth 4cf95ff879 Action stuff (#31305)
* Action stuff

- Cleanup some event stuff
- Avoid dirtying entity unnecessarily
- Add ActionGrant as an easy way to apply / remove actions via compregistry.

* Fix merge
2024-08-27 01:00:43 +01:00
metalgearsloth 8fa9864acf ItemToggle + slots stuff (#31312)
* ItemToggle + slots stuff

- Add component for itemslot locks to match LockComponent (surprised this didn't exist).
- Add thing for pointlight to match itemtoggle. In future should be used for PDAs and stuff but need to fix some other stuff first.

* Also this

* grill
2024-08-27 01:00:43 +01:00
metalgearsloth f8b8ec7994 Power stuff (#31314)
* Power stuff

- Add shared IsPowered
- Add shared ResolveApc
- Move PowerChangedEvent to shared for now
- Add SlimPoweredLight that actually functions how you'd expect a PoweredLight to function it id didn't have a bunch of bloat on it.

* big update

* boing
2024-08-27 01:00:42 +01:00
deltanedas 27274a9df4 decouple ItemToggle from PowerCellDraw (#31392)
* remove ItemToggle from PowerCellDraw query

* add EntityQuery for resolves, make them all optional

* move integration to ToggleCellDraw

* add ToggleCellDraw to almost every PowerCellDraw prototype

* :trollface:

* :trollface:

* :trollface:

* let it disable on mapinit

* set update time on mapinit, make borg power logic consistent now

* :trollface:

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-08-27 01:00:14 +01:00
Nemanja 677d3a00ef Blueprints (#31138)
* Blueprints

* Update tables_loot.yml

* doink

* mark as required
2024-08-27 01:00:13 +01:00
metalgearsloth 292d9fa4e3 Add ContainerComp (#31311)
Applies EntProtoId changes upon insertion / removal from container. Can also be useful for borgs / mechs / vehicles in future but atm I just used it for AI.
2024-08-27 00:58:44 +01:00
metalgearsloth bc45754e48 Verb tweaks (#31309)
* Verb tweaks

Remove the LOS check because this is already done above in CanExamine.

* Fix outlines

* import
2024-08-27 00:58:44 +01:00
eoineoineoin 6d014c29b0 Remove client state from server AirAlarmComponent (#31236)
* Remove client state from server AirAlarmComponent

Send information for all connected devices, not just the ones for the
current tab, as attempting to limit this breaks multiple users viewing
the same UI.

Fixes #12842

* Send device data as a list, rather than a dictionary

---------

Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>
2024-08-27 00:50:40 +01:00
Nemanja 4e16a3eac2 Mining Rebalance (#30920)
* first pass

* this shit too

* ok fix that shit

* buff

* actually fix that
2024-08-27 00:45:07 +01:00
Nemanja 5cdfbe5ab2 add new salv loot into the vgroid procgen (#31290)
add new loot into vgroid procgen
2024-08-27 00:43:25 +01:00
slarticodefast 8ad57fff88 Make storage implant closable using the action again (#31381) 2024-08-27 00:43:25 +01:00
SlamBamActionman 02c8cda09d Add Galoshes slowdown over slippery surfaces (#30967)
* first draft

* Fixed it all, just need to rename stuff

* Rename and add comments

* Clean-up

* Access added
2024-08-27 00:42:13 +01:00
SlamBamActionman 81ceabba13 Add codeword highlighting (#30092)
* Added codeword highlighting

* Updated to support more codeword roles, color is set serverside

* Review feedback

* Change to a Component-based system using SessionSpecific

* Tidied up CanGetState, set Access restrictions on component

* Clean-up

* Makes the injection ignore brackets, restore some codewords, remove "Taste/Touch" from adjectives
2024-08-27 00:42:12 +01:00
metalgearsloth 994d0a91d0 Fix AI vision occlusion (#31341)
Forgot to do this, but how tf do doors work then.
2024-08-27 00:41:09 +01:00
metalgearsloth 24fedb5ada Station AI overlay (#31335)
Split
2024-08-27 00:41:09 +01:00
Mervill d2f733ae93 Remove some wayward folder includes in the `csproj` (#31244)
remove some wayward folder inlcudes
2024-08-27 00:37:51 +01:00
metalgearsloth 87f85cf778 Predict IntrinsicUI (#31310) 2024-08-27 00:34:13 +01:00
Nemanja 18baa2b72d Small strange jackboots buff (#30586)
* Small strange jackboots buff

* Update ClothingSlowOnDamageModifierComponent.cs
2024-08-27 00:34:13 +01:00
Rouge2t7 f02119b0d1 Long human ears (#30490)
Long human ears colour fix. Shortcut removed.
2024-08-27 00:32:30 +01:00
Nemanja 3b1e65c656 fix and buff the handheld mass scanner (#31284) 2024-08-27 00:30:54 +01:00
Leon Friedrich 12a64769f7 Fix flatpacker (#28736)
* Fix flatpacker

* a
2024-08-22 13:41:09 +01:00
Plykiya 457f87cc05 Fix to let borgs buckle people (#31224)
Borgs buckle
2024-08-21 16:16:13 +01:00
Brandon Hu 3c1a0a66df fix(UseDelaySystem): Use safe method to index into dictionary (#31135) 2024-08-21 16:16:13 +01:00
Cojoke 07907dd9ae Fix Pacified Damage Dealing Thrown Objects (#31183) 2024-08-21 16:02:05 +01:00
Nemanja 35923b6994 Recycler Overhaul (#30802)
* Recycler overhaul

* remove
2024-08-21 16:00:29 +01:00
Nemanja 5af89eae4f fix selfunremoveable component being bypassed by hand pickup verb (#31089)
* fix selfunremoveable component being bypassed by hand pickup verb

* fix logic
2024-08-21 15:48:28 +01:00
DrSmugleaf 52b0fd8eaa Allow a specific hand to be passed into TrySpawnVirtualItemInHand (#31124) 2024-08-21 15:44:59 +01:00
slarticodefast 7726b0b30b fix mice and revs being able to toggle suit pieces (#31152) 2024-08-21 15:44:59 +01:00
DrSmugleaf e35439d3d5 Fix collidable held entities blocking themselves while being dropped (#31119) 2024-08-21 15:40:17 +01:00
Nemanja 21381d6f71 Goliath mob (#30839)
* Goliath mob

* Update asteroid.yml

* mcfuck yourself

* add cloak

* fixes

* Update materials.yml
2024-08-21 15:36:50 +01:00
Nemanja 78a8d551b1 Make printing from ore procecssors slightly more bearable (#31074)
* Make printing from ore procecssors slightly more bearable

* Update sheet.yml
2024-08-21 15:30:20 +01:00
Nemanja 8ae072e4ae anonymize salvage wrecks (#31087)
* anonymize salvage wrecks

* display wreck size
2024-08-21 15:27:03 +01:00
deltanedas f941121384
upstream merge (#1636)
* uncomment grappling gun

* Remove rest of Geras files (#30912)

remove remaining geras stuff

* tweak(AgeRequirement): Make the requiredAge more sensible (#30913)

* chrore(ageRequirement): fix grammar. atleast -> at least (#30914)

* Minor sprite fix to inhand med hardsuits and HoS turtleneck jumpsuit (#30918)

* Fixes inhand hardsuit cross color from https://github.com/space-wizards/space-station-14/issues/26516#issue-2213917971

* Fixed HoS Turtle not covering all butt pixels

---------

Co-authored-by: Zachary Yona <magicalusf@gmail.com>

* Add execution component to all energy sword weapons (#30909)

Co-authored-by: plykiya <plykiya@protonmail.com>

* Automatic changelog update

* chore(grammar): correct some mistakes (#30916)

* Add diamond mining drills, buff regular mining drills (#30814)

* why do I have to change so much just to add drills

* diamon

* Automatic changelog update

* give trash a reusable entity table (#30921)

* Contraband marking & examining (#28688)

* System & loc strings

* pass over syndie contraband

* fixes

* grand theft pass

* contrabandexamine -> contraband

* examine text generation update

* all composition parents necessary

* bring back minor contra so it has a less confusing message

* minor

* weapon pass

* jumpsuit pass

* feet pass

* AUUUUUUUUUGHHHHHHHHHHHHHHHHHH

* head

* AUUUUGH

* ear

* belt

* back

* fix

* bro

* rename for more clarity

* do da review

* add cvar for contraband examine

---------

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

* Automatic changelog update

* Automatic changelog update

* Removes variant cube migration (#30934)

add

* First Review Pass Contraband Fixes (#30930)

* First pass contra fix

* bam

* More

* Security crates are now marked as security restricted

* Syndicate raid suit is contra

* damn I forgot gatfruit

* Add conducting gloves to the maintenance loot table (#30904)

* add

* lower weight

* Fix DoDrop to DropNextTo in container cases (#30911)

* Fix DoDrop to DropNextTo in container cases
DoDrop is too heavy to calculation. In any other case we should use alternatives, for example DropNextTo helper method

* codestyle change

* Fix Reagent Fire Stacks (#30766)

* Fix Reagent Fire Stacks

* Comments on code

* little nicer wording?

* Lines 88 and 89, updated 'narsie' and 'ratvar' to 'Nar'Sie' and Ratva… (#30954)

Lines 88 and 89, updated 'narsie' and 'ratvar' to 'Nar'Sie' and Ratvar, per issue #30719.

* Automatic changelog update

* Fix permission check for whitelists in player panel (#30948)

* Automatic changelog update

* Grey mantle in winterdrobe (#29774)

* add the mantle

* fix a few things

* fix merge conflict stuff, remove from winterdrobe and lathe.

* Add mantle to loadouts (20 hour requirement)

* Automatic changelog update

* Sliceable doAfter (#30824)

* init

* wtf git

* Automatic changelog update

* Add capfruit, a gatfruit mutation. (#30850)

* add base

* add fake suffix and flavor fix

* address some reviews

* parent it

* fix test fail

* add FoodSequence support and address small review

* Automatic changelog update

* Fixes the grey mantle (#30971)

add the thing i missed

* Add keybinds for rotating and flipping objects (#30540)

* add keybinds for rotating and flipping objects

* no popup for verbs

* Automatic changelog update

* tweak(Shuttle_honki): Remove DeviceQuantumSpinInverter from honki shuttle. (#30618)

* Make the Borgs Names Appear When they Make an Announcement (#30107)

* Make the Borgs Names Appear When they Make an Announcement

* bwomp

* re-order

* Use Name instead of metadata

* goiup

* Automatic changelog update

* disable contraband examine

* rename our SliceFoodEvent

* Throngler Plushie Sprite (#30969)

Throngonkler Plush sprite

* Fix bug with rotating shelves (#30978)

* Main

* Update shelfs.yml

* Little bug fix

* No weather on concrete tiles (#30952)

* concrete weather

* miss

* development build ghostrole lottery changes (#30980)

debug ghostrole lottery changes

* Automatic changelog update

* Add a saline syringe to the combat medical kit (#29954)

saline

* Automatic changelog update

* fix the admin verbs trying to kill players by filling their lungs with plasma (#30991)

fix the admin tools trying to kill players by filling their lungs with plasma

* Custom Taco & Kebabs - FoodSequence 2 (#30905)

* control layer ordering

* sprite update

* taco!

* taco naming gen

* fix separator naming

* some proto fixes

* default naming separation

* fix taco naming

* rat update

* hamsterburger

* organs taco

* remove from spawners

* fixes

* fix separators and lemons

* Update food-sequence.ftl

* randomization offset

* fix

* kebabs refactor

* fix

* skewer weapon

* Update food_single.yml

* Update migration.yml

* suppermatter

* hamlet centered

* hamsburger

* Update dead-0.png

* 20 -> 4 burger layers max

* Update burger.yml

* canReact: false

* capfruit update

* Update burger.yml

* Update burger.yml

* Update produce.yml

* some fixes

* Update Resources/Textures/Objects/Consumable/Food/taco.rsi/meta.json

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* Update Content.Shared/Nutrition/Components/FoodSequenceStartPointComponent.cs

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* Update Content.Shared/Nutrition/Components/FoodSequenceStartPointComponent.cs

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* chicken

* Update food-sequence.ftl

* documentation

* fixes

* Update meat.yml

* Update meat.yml

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* Automatic changelog update

* Fix popups not working properly with an eye offset (#30990)

* Adds a random smokable spawner (#30870)

* Textures to make lamps mappable to East/West.

* Adds a random smokable spawner

* remove double derma

* Increase chance for just basic cig

* Update to enitity tables

* Tweak values

* Remove space

---------

Co-authored-by: Jeff <velcroboy333@hotmail.com>

* Fix lizards being unable to eat custom burgers (#31005)

* Fix lizards being unable to eat custom burgers

* ensure tag comp

* Automatic changelog update

* Sedin (#27110)

* Sedin

* almost forgot this.

* what

* Did a few fixes, tried to readd popup

* Fix popup, ready for merge

* minor change

* Generalize seed removal/destruction system, add popups in general.

* fix

* fix (again)

* deadcode is no more

* Sedin buff (nerfing the recipe soon)

* godont

* webedit moment

ok listen I had to nuke my setup because my computer was being Dumb As Shit so let me do this ONE webedit

* CRIKEY

* Revert "CRIKEY"

This reverts commit 1c6959ffd9ba8bb1e97ccf2eb0b37b3ff4ec82ee.

I was not supposed to commit that >:/

* Alright, it should be good now but I havent tested it

* ready for merge/review

* prob -> probability

* Requested changes nodoc

* Review nodoc

* documento

* thumb up emoji

* Automatic changelog update

* Adds a Dinky Star Sticker for security officers (#29767)

* Sec-Star-TASTIC

* fix license

* now counts as trash

* Sticks to people + wearable

* no more sticky

* no more sticky

* mystery-space

* Update Loadout Yaml

* Automatic changelog update

* tweak(hospital): Reduce diamond stack from 30 to 1 (#31027)

* tweak(experiment): Reduce diamond stack from 30 to 1 (#31025)

* replace mapped diamond stacks with single

* Figurine voicelines (#30865)

* initial commit

* tweaks to the new voice lines

capitalizations of I's and the Y on hos 3 voice lines
also changed the captain figuring voice line 2 to something completely different

* capitalized one letter

man i really suck at capitalization

* more capitalization

i never thought this pr would need so many changes

* changed one comma to a dot

* Update Resources/Locale/en-US/datasets/figurines.ftl

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* Automatic changelog update

* Adding shock collar and electropack (#30529)

* Adding shock collar with the new ShockOnTrigger

* Cleaning and updating the shock collar

* Add StripDelay datafield to ClothingComponent

* Adding SelfUnremovableClothingComponent

* ShockCollar Update

* Correction of the shock collar

* Correction of the shock collar 2

* Renaming the DamageSpecifier DataField to Damage

* Fixing the damage field in ShockCollar

* Cleaning the ShockCollar

* Renaming ShockCollar to ClothingNeckShockCollar

* Adding ClothingNeckShockCollar as a stealTarget to a thief

* Fixing a typo of the sprite path in ClothingNeckShockCollar

* Cleaning the ShockOnTriggerComponent

* Revision of SelfUnremovableClothing

* Adding a ClothingBackpackElectropack

* Sprite fix

* Code review

* Shock Collar sprite update

* add commit hash

---------

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

* Automatic changelog update

* Greatly improve the usability of the Gas Analyzer. (#30763)

* greatly improve how the gas analyzer behaves

* don't close the analyzer when the object goes out of range

* cleanup

* always switch to the device tab when a new device is analyzed

* modern api part one

* modern api part 2

* modern api part three

* file scope namespace

* Automatic changelog update

* Fix false and true in player-panel.ftl (#31043)

Fix false and true in player-panel

Add a new True string

* Contra Review Passs - Round 2 (#30942)

* Contra pass round two

* command too

* Stamps

* oopsied a bracket

* Namespace cleanup around Mind Roles (#30965)

* namespaces

* Comment does not need a semicolon

---------

Co-authored-by: Vasilis <vascreeper@yahoo.com>

* Contraband Review Pass - The Threequel (#30970)

Contraband pass number three

* Golden toilet (#31049)

* golden toilet

* Destructible

* sprite

* fix

* copyright

* Automatic changelog update

* Salvage Spawners (#31020)

* treasure entities and spawners

* no more smiles

* remove nyano shock collar code

* Event scheduler setting tweaks (#31018)

tweaks

* Automatic changelog update

* remove meteor swarms rule for a moment

* Revamped Meteor Swarm (#28974)

* meteor code and balanced values

* Meteor Swarms

* Update meteors.yml

* Update meteors.yml

* HOO! (fix overkill bug and buff space dust)

* undo BloodstreamComponent.cs changes

* DamageDistribution -> DamageTypes

* part 2.

* Missing meteor presets (#29044)

* add meteors into missing game presets

* changes for real

* implement code

* this too

* Meteors now leave behind a bit of ore (#30419)

* Meteors that leave behind asteroid ore

* bigger offset

* Bit more generic

* Better defaults

* hrm?

* I HATE CUSTOM SERIALIZERS

* More comments

* renamed a variable

---------

Co-authored-by: plykiya <plykiya@protonmail.com>

* refactor event schedulers to use explicit game rules (#29320)

* works, still has testing values, im sure I did stupid shit.

* shitvent crapfactor

* snap extra word out of existence

* shit I died of old

* remove useless inaccurate design comments

* Oopsie, handle requirement params in RandomRuleSystem too

* I'm a slash slinging hasher

* Address reviews, add admin alerts I forgor

* EntityMan saves the day

* address reviews 1

* eh, I actually don't care about the cargo gifts thing.

* started

* Do reviews

* you actually meant 1.2 lmao

* dependency inheritance is a fickle bitch

* I have no idea.

* Threads are for sheets not computers.

* fix traitor rule test

* fix round type tattling

* break things

* It worky

* Toolshed makes we want to drink depresso.

* Finished?

* remove debug values

* timings

* use defaults

* alphabetize

* bobby drop tables

* Float required fr fr

* continue

* more continence

* uno mas

* obsolution

* cleanup and documentations

* Yell at self

* use the right value defaults

* housekeeping

* Event scheduler setting tweaks (#31018)

tweaks

* Automatic changelog update

* remove(NukeopsRuleComponent): Remove a trap from the component file (#31029)

ah

* Fix bug with holding objects (#31009)

Main

* Automatic changelog update

* Replace obsolete map functions in IconSmoothSystem (#30958)

* first part

* second part

* Automatic changelog update

* Fix reagents with ReagentData being duplicated  (#30983)

Initial commit

* :trollface:

* :trollface:

* actually untroll

* a

* 50 burger

* add back old meteor code

* fix

* use some live config options in dev

* remove old shock collar icon

* make ammo more consistent and work more

* clean up lathes diff to upstream

* a

* move rubber bullets to deltav folder

* a

* untroll

* more untrolls

* more untrolls

* untroll

* :trollface:

* a

* b

* remove it for real

* add missing lathe recipes

* replace cvars with component field

* remove taco from roboisseur

* migrate cardboard box with smg mags

* remove kebabs

* a

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: Killerqu00 <47712032+Killerqu00@users.noreply.github.com>
Co-authored-by: Brandon Hu <103440971+Brandon-Huu@users.noreply.github.com>
Co-authored-by: Zachary Yona <58833995+Magicalus@users.noreply.github.com>
Co-authored-by: Zachary Yona <magicalusf@gmail.com>
Co-authored-by: Plykiya <58439124+Plykiya@users.noreply.github.com>
Co-authored-by: plykiya <plykiya@protonmail.com>
Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com>
Co-authored-by: Alzore <140123969+Blackern5000@users.noreply.github.com>
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
Co-authored-by: Kara <lunarautomaton6@gmail.com>
Co-authored-by: EmoGarbage404 <retron404@gmail.com>
Co-authored-by: Ubaser <134914314+UbaserB@users.noreply.github.com>
Co-authored-by: Token <esil.bektay@yandex.com>
Co-authored-by: Cojoke <83733158+Cojoke-dot@users.noreply.github.com>
Co-authored-by: LeoSantich <108027402+LeoSantich@users.noreply.github.com>
Co-authored-by: nikthechampiongr <32041239+nikthechampiongr@users.noreply.github.com>
Co-authored-by: pigeonpeas <147350443+pigeonpeas@users.noreply.github.com>
Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
Co-authored-by: PoorMansDreams <150595537+PoorMansDreams@users.noreply.github.com>
Co-authored-by: IgorAnt028 <118114530+IgorAnt028@users.noreply.github.com>
Co-authored-by: NotSoDamn <75203942+NotSoDana@users.noreply.github.com>
Co-authored-by: Errant <35878406+Errant-4@users.noreply.github.com>
Co-authored-by: DrSmugleaf <10968691+DrSmugleaf@users.noreply.github.com>
Co-authored-by: Velcroboy <107660393+IamVelcroboy@users.noreply.github.com>
Co-authored-by: Jeff <velcroboy333@hotmail.com>
Co-authored-by: themias <89101928+themias@users.noreply.github.com>
Co-authored-by: Eris <eris@erisws.com>
Co-authored-by: FATFSAAM2 <saamboroujerdi@gmail.com>
Co-authored-by: to4no_fix <156101927+chavonadelal@users.noreply.github.com>
Co-authored-by: Mervill <mervills.email@gmail.com>
Co-authored-by: Vasilis <vascreeper@yahoo.com>
Co-authored-by: Nim <128169402+Nimfar11@users.noreply.github.com>
Co-authored-by: IProduceWidgets <107586145+IProduceWidgets@users.noreply.github.com>
Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>
2024-08-18 17:21:07 +00:00
deltanedas 8ba57f61e5
make mindshields removable (#1631)
* make mindshields removable

* use new logic stolen from upstream pr

* a

* remove unused mafia trollage

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-08-18 10:47:55 +00:00
Milon ecb3606170
fix mass sleep (#1649)
* shit should work

* i ran out of funny names
2024-08-18 10:32:54 +00:00
portfiend 6fd2b60113
Courier performancer tracker (#1472)
* add MailMetricsCartridge prototype

using the CrimeAssist UI until i make the courier performance ui

* add sprite for mail courier cartridge

* Add MailMetricUI

YAYYYYY IT WORKS
UI Contents pending

* Mail earnings live update mailmetrics

* LO can have mailmetrics too

* Add rest of mail metrics

Also removes some loggers

* Add additional metrics to MailMetric

Also fixes some bugs related to stat counting

* MailMetric updates on mail added

* change sprite credit name

decided id rather be credited as Portfiend

* display all mail numbers now

* remove comment

* style mailmetrics, add heading

* mailmetric UI polish

* fixed unopened mail counting bug oopsie

* wtf is this import

get out of here

* move StationLogisticStats to BaseStationMail

* FOUR SPACES

sirry

* fix: newlines

* address reviews

* address reviews

SORRYYYY this is unexpectedly big

* wtf

* semicolon

---------

Co-authored-by: byte <50130120+huckleton@users.noreply.github.com>
Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
2024-08-16 12:24:04 +00:00
deltanedas a03413b5b4
Fix test ops real (#1626)
* update engine

* update tests

* Missing meteor presets (#29044)

* add meteors into missing game presets

* changes for real

* implement code

* this too

* love 4 copy paste tests making sure /suicide kills you

* remote rotation from mapped artifact analyzers

* fix syndie survival boxes

* dedup portafib yml and fix

* untroll arena

* fix edge

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
2024-08-14 15:09:20 +00:00
portfiend 68e1a9cde1
AAC tablet for speech-impaired characters (#1491)
* basic AAC tablet prototype

using station map as a base

* set up aac component/system

* quick phrase prototype

will probably touch this up later

* basic example phrases

just so i have data to work with

* get AACWindow to iterate over quick phrases

* add the rest of the job phrases

* fix this one job name

* actually fix prison guard name

* buttons for aac window

* fix phrase inheritance

* add tabs to aac contaner

* fix column spacing and add button padding

* aac tablet button colors

* AAC tablet sends messages now

* add aac tablet voice sound yay

* add a 1 second cooldown between phrases

* subjects for most departments

* location phrases

* more phrases

* cleanup + sort buttons alphabetically

* fix these phrases

* even more departmental subject phrases

* common phrases

* cleanup imports

* show name of player that pressed button

* aac tablet can be used by multipel people

after all it does not rely on state changes and also multiple people can press buttons on a tablet at once

* capitalize aac

its an acronym

* you know what it is its more phrases!!!!

* SAFETY PHRASES

* last second phrases

* redundant phrase

* and one more hazard phrase for the road

* change voice of aac tablet from borg to alto

just sounds nicer

* localize ALL Phrases

i love utility scripting to automate tedious tasks

* add AAC tablet to loadout

* add AAC tablet to medfab

* tweak: use multiple parents instead of whatever this is

* add: justice department phrases

* add: time quantity phrases

* add: ores and kitchen appliance phrases

* fix: resolve duplicate phrases

* add: aac tablet sprites

* add: justice button style

* fix: misplaced this line oops

* add: justice dept locations

* remove: redundant phrase

* re-run tests

* fix: move aac tablet loadout format

* fix: use Identity instead of Name for aac tablet sender

* fix: return on send phrase if id is invalid

* fix: remove redundant line

* fix: use LocId instead of String for phrase text type

* add: new phrases bc upstream updates

* fix: newlines

* tweak: add end comments to these style comments

* fix: this phrase was broken lol

---------

Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
2024-08-12 15:15:33 +00:00
deltanedas e4892c4272 add paradox role, better role handling 2024-08-11 15:47:24 +01:00
BombasterDS 735079b096 Change suit sensors on other players (#29668)
* Suit sensors can be turned off on other players

* less doafter time + interaction (nostate) check

* code cleanup

* code cleanup 2
2024-08-11 15:19:51 +01:00
beck-thompson f38903c5c5 Replaced some AddMarkups with AddMarkupOrThrow (#30632)
* First commit

* Silly me

* bruh
2024-08-11 14:52:54 +01:00
Scribbles0 4f9889894b Melee Executions (#30104)
* melee executions

* fix damage bug

* cleanup

* address reviews hopefully

* resistance bypass mechanic

* component changes

* self executions (not finished yet)

* self execs part two

* ok i fixed things (still not finished)

* finish everything

* review stuff

* nuke if (kind = special)

* more review stuffs

* Make suicide system much less hardcoded and make much more use of events

* Fix a dumb bug I introduced

* self execution popups

* Integration tests

* Why did they even take 0.5 blunt damage?

* More consistent integration tests

* Destructive equals true

* Allow it to dirty-dispose

* IS THIS WHAT YOU WANT?

* FRESH AND CLEAN

* modifier to multiplier

* don't jinx the integration tests

* no file-scoped namespace

* Move the rest of execution to shared, create SuicideGhostEvent

* handled

* Get rid of unused code and add a comment

* ghost before suicide

* stop cat suicides

* popup fix + small suicide change

* make it a bit better

---------

Co-authored-by: Plykiya <58439124+Plykiya@users.noreply.github.com>
2024-08-11 14:52:53 +01:00
ShadowCommander a6e61f9f52 Add a component that inserts the held item when no interaction happens on the stored item (#29823)
* Insert when held item has no interaction with stored item

* Decouple inserting on failure

* Add component that stores the used entity when no interaction happened

* Add prediction
2024-08-11 14:50:15 +01:00
metalgearsloth 9ea607f9b8 Add some container checks (#30896)
Climbable container probably getting checked up the callstack so just check these ones.
2024-08-11 14:50:15 +01:00
metalgearsloth 49af6db28d Make followed session-specific (#30770)
* Make followed session-specific

* misimport
2024-08-11 14:50:15 +01:00
Ed 86e603f407 Custom burgers - FoodSequence system (#30755)
* setup foodsequence

* name generation and max layers limit

* move to nutrition

* move code to serverside

* move to appearance data

* marked fields as required

* Update foodsequence.yml

* b

* burgeers!

* Update produce.yml

* Update meat.yml

* Update burger.yml

* fix duplicate naming

* Update Resources/Locale/en-US/nutrition/components/food-sequence.ftl

Co-authored-by: Hrosts <35345601+Hrosts@users.noreply.github.com>

* merge flavor profiles

* make food trash List<>

* merge trash

* Update FoodComponent.cs

* Update FoodComponent.cs

* organs and cannabis support

---------

Co-authored-by: Hrosts <35345601+Hrosts@users.noreply.github.com>
2024-08-11 14:46:08 +01:00
Nemanja 7646e0d1d2 Cursed Mask (#29659)
* Cursed Mask

* extra expressions

* block ingestion

* mind returning

* okay fix the removal shit
2024-08-11 14:44:20 +01:00
Nemanja fa6952d043 Infer type for EntSelector (#30856)
Infer type for EntSelector.cs
2024-08-11 14:44:19 +01:00
Nemanja 13e799a666 Entity Tables (EntitySpawnEntry replacement) (#30579)
* Entity table code

* entity table examples

* fix dat shit

* access

* tests tests tests

* sloth review
2024-08-11 14:37:41 +01:00
DrSmugleaf 90a020cbcb Network WallMountComponent (#30837) 2024-08-11 14:33:50 +01:00
Plykiya 1722bfaec1 Buckling an entity requires a do-after (#29621)
* Buckling an entity requires a do-after

* Works but feels like bad code?

* Cleanup

---------

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-08-11 14:32:06 +01:00
deltanedas 56e4726d2f rewrite senior id shit 2024-08-10 12:38:56 +01:00
Mr. 27 12621627df :trollface: 2024-08-09 21:49:10 +01:00
deltanedas 92fc8da526 move gamerule components to shared (#28572)
* move MinMax to shared

* cleanup MinMax

* move other ticking components to shared just because

* remove unused prototype file

* update everything to use shared components

* test

* test 2

* test 3

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-08-09 19:42:00 +01:00
deltanedas 8cc16820eb :trollface: 2024-08-09 19:27:52 +01:00
deltanedas 46c405b451 :trollface: 2024-08-09 19:26:26 +01:00
Plykiya c14712a4d4 Fix for stripping doafters (#30821)
Apparently I need to check if they're holding an item

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-08-09 19:18:26 +01:00
metalgearsloth fd4f4f0786 Add access to gun components (#30688)
* Add access to gun components

Found from an rmc14 PR.

* Admin verbs proving why access needs to exist

* Someone is probably going to post this pr to le reddit and complain about self-merges.
2024-08-09 19:17:26 +01:00
Brandon Hu 7f00d3a99d Fix(CuffableSystem): Check if cuffs can be transferred(dropped) (#30465)
* ugh

* Revert "ugh"

This reverts commit 8b5b0e24bcaa6c5cc9229c17eb138cdb476f0c9e.

* Revert "Automatic changelog update"

This reverts commit 4f8b634f38e6ba588d45c75b35e5e1446df7949e.

* Revert "Revert "Automatic changelog update""

This reverts commit 9fc2a3307a06e5f7d19bbb8d29e45b9a1d1470c8.

* Revert "Revert "Revert "Automatic changelog update"""

This reverts commit 1ae733bf308d7285159dd1fafd7f17101d8f4ced.

* Revert "Revert "Automatic changelog update""

This reverts commit 9fc2a3307a06e5f7d19bbb8d29e45b9a1d1470c8.

* Revert ""

This reverts commit 1cc0953333cf3d4f2cad5fae2f5c562ae99563ae.

* Revert ""

This reverts commit edca368a8444fd0fd403333695668d1c1db3726a.

* Revert "Revert "ugh""

This reverts commit 3ac15dfb07c7ae43b797724f85b76193ecd7a0e1.

* Revert "Revert "Revert "ugh"""

This reverts commit b952a4556397c8abcc7c319d736fab7ae48073a2.

* Revert "Revert "Revert "Revert "ugh""""

This reverts commit ff1a151571dea653d78ac2bda75eb11209da8d96.

* Revert "ugh"

This reverts commit 8b5b0e24bcaa6c5cc9229c17eb138cdb476f0c9e.

* Update SharedCuffableSystem.cs
2024-08-09 19:17:07 +01:00
Repo 037cfc368b Add admin logs to Rehydration comp. (#30597) 2024-08-09 19:17:07 +01:00
Stalen 082e3160fd Head bandana ingestion blocking fix (#28910) 2024-08-09 19:17:06 +01:00
Simon 8fae659336 UI to edit silicon laws from admin verb (#28483)
* UI to edit silicon laws from admin verb

(peak shitcode)

* Improve UI

* Use Moderator admin flag

* Reviews
2024-08-09 19:17:06 +01:00
slarticodefast f6a850476c Add tooltips to the agent ID job icons and improve status icon prototypes (#28575)
* add tooltips to agentid job icons

* forgot to stage this

* make StatusIconPrototype abstract

* minor visual improvements

* cleanup

* use currentculture to sort job names

* review
2024-08-09 19:17:05 +01:00
CaasGit 5209110dc7 add(FaxComponent): Allows for setting defaults in the component. (#30484)
* add(FaxComponent): Allows for setting defaults in the component.

This wires up the Fax component to allow the default paper and office
paper to be set. The defaults are what they were before, and it's an
optional option. Now Fax machines can be set to print different paper
when using Print File or other cases where the default paper style is
used.

* Requested change to EntProtoId.

* Fix build failure.
2024-08-09 19:04:59 +01:00
metalgearsloth 84f9c869cf Fix decal megadiffs (#30732)
Just preserves the uids and doesn't care about trying to re-map the decals lower. We have a uint to work with anyway.
2024-08-09 19:04:59 +01:00
nikthechampiongr 3a3715648b Implement a playerpanel (#30238)
* Basic structure for the player panel ui

* Ensure basic functionality

Player panel now receives and displays basic info

* Make whitelistcommands accept user ids

* Make PlayerPanel use GUIDs where possible

* Add functionality to most playerpanel buttons

* Implement remaining playerpanel features

* Localize everything

* Finish up

* Put command arguments in quotes

I am not sure if it's even possible to have something like a space in
them considering they are guids and usernames but sure why not

* Make playerpanel a verb

* Add Logs button to player panel

* Change Notesbutton text and make whitelistbutton a confirmtion button

* Add freeze button that does not mute the player

* Add sharedconnections counter to playerpanel

* Make the playetime format clearer

* Allow for copying of the a player's username

* Do minor cleanup

* Rearrange buttons

* Fix unfreeze button not updating

* Fix wrong localisation text

* "Fix" the same role ban counting multiple times

The way rolebans are stored is horrible.
As such if you ban someone from a departmenrt or something
role bans are individually placed for every role.
The only way I found to distinguish them is the bantime.
This is horrible but I do not want to rewrite how all the bans are
stored right now.

* Add Delete and Rejuvenate buttons to player panel

By popular demand

* Marginally improve ui

* Add logs

* review update

* Fix verb

* Fix double notes

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-08-09 19:04:58 +01:00
Plykiya 2aaaa831ed Create Generic DamageOnInteract/Attacked Comps/Systems (#30244)
* Everything but the submodule

* stuff I forgot

* heat

* missed lights

* behonky

* LocId

* I guess it was a skill issue?

* predicted audio

* It works with lights now

* Borg equality

* Gorilla gauntlet grants protection from anomaly returned damage when attacking it

* woops, there we go

* NONE

* Use DamageModifierSets, remove Behonker damage

* Reviews dealt with

---------

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-08-09 19:04:58 +01:00
slarticodefast 8bff6691f6 remove UntrackedMapBoundUserInterface (#30752) 2024-08-09 19:04:17 +01:00
Nemanja d2d1582c4f offgrid mob friction (#29383)
* offgrid mob friction

* save the world...
2024-08-09 19:04:17 +01:00
beck-thompson e6124ea37b Secret stash refractor (#29396)
* First commit

* Will do this in another PR!

* maybe?

* Moved stuff to ToolOpenableSystem because its smarter and cooler
2024-08-09 19:04:17 +01:00
deltanedas 3613134d2e full sticky prediction (#30230)
* move all sticky stuff to shared and cleanup/grammar fix

* update imports and ref

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-08-09 19:04:17 +01:00
SlamBamActionman f39df535b2 Better DNA forensics & ReagentData (#26699)
* Added the ability for blood to track DNA using ReagentData; Forensic Scanner now accounts for solution DNA, non-DNA holders have "Unknown DNA"

* Removes touch DNA for puddles, adds DNA to vomit

* DNA now leaves traces in containers and those marked without don't show DNA on scan (except for puddles), gibbed parts have DNA

* Fix stupid metamorphic glass bug grrr

* Removed SpillableComponent since DnaSubstanceTraceComponent is used instead

* Removes data field from maps, adds DNA tracking for some missed items

* Give default value, fix missing values.

* Fixes recipe bug

* Review changes

* Make the Data list into a nullable type

* Revert map changes

* Move gibbed unknown DNA to forensicssystem
2024-08-09 19:04:17 +01:00
Plykiya fcff7ab1c2 Add BreakOnDropItem, update do afters, remove unnecessary declarations (#30361)
* Add BreakOnDropItem, update do afters, remove unnecessary declarations

* bola

* Changed my mind about the nuke

* gennies too

* Make the comments more clear.

* Sorry for the trailing commas

* Revert "Sorry for the trailing commas"

This reverts commit e60fd9a30977393df3344948e6d5c0ce035723cd.

---------

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-08-09 19:03:54 +01:00
IProduceWidgets c97b2cc2dc ai stays seated and pulled while cuffed. (#30397)
* ai stays seated while cuffed.

* Do the thing I thought was dumb.... whatever.

* less than
2024-08-09 19:02:30 +01:00
ShadowCommander 7dc986b95b Add EntityWorldTargetAction (#29819)
* Add EntityWorldTargetAction initial implementation

* Update obsolete methods

* Partially working EntityWorldTargetAction

* Fix entity selection

* Move and clean up AfterInteract

* Fix building new walls

* Readd no entity or coordinates error

* Consolidate action validation code

* Add summaries to component

---------

Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
2024-08-09 19:02:30 +01:00
Mervill 6019b2d3bd Remove obsolete occurrences of IComponent.Owner being assigned just before AddComponent (#30724) 2024-08-09 19:01:53 +01:00
Mervill 511b636f2b Add verbose (client predicted!) examine text to Gas Miners (#30480)
* add verbose examine text to gas miners so their behaviour can be understood

* no need for these to be properties

* use an enum instead of two booleans for the miner state

* require the gas miner to be anchored in order to not be disabled

* xmldoc

* pr feedback

* file-scope namespace

* it's to late to hide my transgressions in a rebase

* turns out the normal examine distance is totally fine for this
2024-08-09 19:01:47 +01:00
Mr. 27 b872a86567 Don't disable collision on dead mobs, fixes an issue with pulling (#30532)
Update MobStateSystem.Subscribers.cs
2024-08-09 19:01:46 +01:00
Errant 70481ce755 Updated remaining ghostroles for species loadouts (#29746)
* LoadoutSystem change, deathsquad species loadout

* survival gear loadouts for disaster victims

* skrek

* centcom

* syndicate agent

* cburn

* ERT

* syndicates

* Is it ever gonna be enough?

* Take what you can

* Move startingGearEquippedEvent after Loadouts are spawned

* skreee

* even more formatting

* Unbreak auto internals activation

* undo AddAllRoleLoadouts change

* syndicate reinforcement survival loadouts

* re-enable vox ghostroles
2024-08-09 19:01:45 +01:00
ShadowCommander f6e30d3950 Dragdrop fold rollerbed (#30002)
* Deploy foldable

* Add NetworkedComponent and access to the component

* Add handled to afterinteract

* Use drop target location instead of setcoordinates

* Put back in hand after failed deploy

This prevents dropping the bed when clicking while inside a locker.

* Created BaseDeployFoldable for folding chairs, body bags, and rollerbeds

* Add dragdrop to fold rollerbed to hand
2024-08-09 18:58:54 +01:00
Nemanja aaa9f84fb1 Replace IClickAlert with events (#30728)
* Replace IAlertClick with events

* whoop

* eek!
2024-08-09 18:58:46 +01:00
Leon Friedrich f93bc2853a Add more storage admin logs & fix some interaction validation (#30725) 2024-08-09 18:58:36 +01:00
Plykiya 17a24e13a5 Replace xform.WorldPosition with xformSystem method for Setting/Getting (#30029)
* GET WORLD POSITON, ROTATION

* Missing parentheses

* ui system depndency

* the issue

* Unused

* Let the function do the transform

---------

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-08-09 18:57:59 +01:00
slarticodefast 6d9063cb32 Add whitelist to cryostorage (#30574) 2024-08-09 18:57:59 +01:00
Errant 60c2ee6f00 Vox nukies and ninjafix (#29783)
* Nukie species gear

* antagselectionsystem autointernals

* nukie vox

* skrek

* Remove duplicate code

* skrek

* EVA tank loadouts, vox ninja update

* fix prototype duplication

* skrek

* fix summary

* fixed empty startinggear error

* enable vox ninjas

* Comments

* removed comment because startinggearprototype should not be used on antagselection aaaanyway

* squish that if

* Update Content.Shared/Clothing/LoadoutSystem.cs

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2024-08-09 18:57:58 +01:00
Ed 4577dc15f9 Add comment into jetpack system, to prevent future grid jetpack PRs (#30682)
Update SharedJetpackSystem.cs
2024-08-09 18:55:50 +01:00
Brandon Hu 622a772e4f tweak(SolutionTransfer): Raise default max transfer amount. (#29969)
* fix(jugs): Make max and minimum transfer amounts make sense

* fix name

* Better

* Implement bounds checks

* large beaker too

* More logical solution

* Bleh

* remove

* Doesn't make sense yet

WAS MISTAKEN AAAAAAAAAAAAAAD@ @!
2024-08-09 18:55:43 +01:00
Nemanja adda0ad5b1 Add slowdown to low temperatures (#29692)
* TemperatureSpeed component

* temperature slowdown prediction (done right)

* remove unnecessary changes

* that too

* get in line

* make it readonly

* auto pause
2024-08-09 18:54:53 +01:00
metalgearsloth 24bbd04a5a De-duplicate loadout gear (#30341)
* De-duplicate loadout gear

Needs supporting code, probably with an interface with StartingGearPrototype which would also use it, but I regexed the yaml.

* Code updates

* Remaining yaml

* Fix automatic naming

* raiseEvent

* Don't code when tired kids
2024-08-09 18:51:00 +01:00
Ed c051d7902c JobRequirement refactor (#30347)
* refactor JobRequirements

* add profile support

* fix

* Update quartermaster.yml

* sloth fixes

* inport 30208

* Update DepartmentPrototype.cs

* species restriction

* left tweak stick

* stringbuilder is cool!
2024-08-09 18:45:41 +01:00
Plykiya 752a49284e Move PaperSystem to Shared (#30592)
* Fix paper system late localization

* IS THIS WHAT YOU WANT

* well I guess this is happening now

* fix the BUI

* did that even do anything before?

* again with the escapeformatting...

* Dirtying

* Move dirty to function

* Rename PaperSystem to PaperVisualizerSystem

* Fix namespace

* how many namespace changes must I suffer through

* SetContent is for Setting Content

* minor shuffling

* review

---------

Co-authored-by: plykiya <plykiya@protonmail.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-08-09 18:31:41 +01:00
beck-thompson 80f591cf8e Explosion resistance is now predicted! (#30654)
* First commit

* Added Network and access
2024-08-09 18:24:58 +01:00
DrSmugleaf c36b79c3fc Fix falsely showing damage color effect to entities that aren't allowed to be attacked (#30661) 2024-08-09 18:24:58 +01:00
slarticodefast 54fbf9c0e5 replace all uses of TryGetContainingContainer with non-obsolete overload (#30583)
* replace all uses of TryGetContainerContainer with non-obsolete overload

* rerun
2024-08-09 18:24:46 +01:00
Brandon Hu 1a88e6a6b9 fix(Solutions): Implement missing bounds check (#30239) 2024-08-09 18:24:30 +01:00
DrSmugleaf a1a62a23e0 Make pointing cooldown a cvar (#30623)
* Make pointing cooldown a cvar

* Remove empty line
2024-08-09 18:24:29 +01:00
RiceMar1244 677eb7cf34 Shotgun spread refactor (#27773)
* Moves spread data to new component

* Refactors shotgun spread code

* Makes shotgun cartridges and projectiles use new component

* Attempts to fix nullable build error

* Fixes hitscan weapons that I broke :(

* Saviour commit?

---------

Co-authored-by: EmoGarbage404 <retron404@gmail.com>
2024-08-09 18:22:27 +01:00
to4no_fix abfe5439d4 Display the administrator's title in ahelp and ahelp relay (#30075)
* Adding the admin prefix to the ahelp

* Updating the admin prefix

* The second update of the admin prefix

* Configuration correction
2024-08-09 18:22:26 +01:00
slarticodefast 6d77481303 Add haloperidol, potassium iodide (#27454)
* add haloperidol, potassium iodide

* review fixes

* review and tuning

* shader review

* use timespan and AutoPausedField
2024-08-09 18:19:08 +01:00
DrSmugleaf 2b487f769d Use EntityQuery for footstep modifier and map grid in SharedMoverController (#30575) 2024-08-09 18:18:14 +01:00
Mervill a366604df9 Remove obsolete code from Food, Drink and Respirator systems. (#30560)
* Remove obsolete code from Food, Drink and Respirator systems

* remove obsolete comment
2024-08-09 18:18:14 +01:00
Tayrtahn 9ca4304f83 Add "fill levels" to spear in-hand/wielded/equipped sprites (#28865)
* Add fill level sprite support for equipped items

* Add fill sprites for held/equipped spears
2024-08-09 18:18:14 +01:00
IProduceWidgets 54cc68445e Allow ai to understand if its handcuffed. (#30402)
* allow ai to understand if its handcuffed.

* rerun tests they worky on local

* Contained here in, a string of expletives about flaky tests.

* on retrospect, default true is probably smorter.

* do reviews

* I forgor xml

* more xml
2024-08-09 18:18:14 +01:00
ShadowCommander 50308341d7 Deploy foldable (#30000)
* Deploy foldable

* Add NetworkedComponent and access to the component

* Add handled to afterinteract

* Use drop target location instead of setcoordinates

* Put back in hand after failed deploy

This prevents dropping the bed when clicking while inside a locker.

* Created BaseDeployFoldable for folding chairs, body bags, and rollerbeds
2024-08-09 18:18:14 +01:00
Brandon Hu 6b99f2494d tweak(BurialSystem): Don't cancel doafter on keyup (#30507) 2024-08-09 18:18:13 +01:00
slarticodefast 6d59e93593 Fix borgs being unable to state laws or open other UIs without modules (#30299)
borg law 2 state laws all day
2024-08-09 18:18:13 +01:00
Kaga-404 aaf09aadfc Revolver fixes for caseless ammo and wielding (#30117)
* handled check

* splits Handled and TryResetDelay checks
2024-08-09 18:18:02 +01:00
metalgearsloth 8ab7c83cd4 Fix double interaction popups (#30452)
The issue is it plays the "you hug xyz" to everyone in range as well as the target client so they overlap. IDK if anything else is broken by this but this control flow is pretty bad so I wouldn't be surprised.
2024-08-09 18:18:02 +01:00
Plykiya b020ea4a3d Update MoverController.cs to not use Component.Owner (#29965)
* Update MoverController.cs

* Update a bunch of movement code to use Entity<T>

* Last errors

* wow, there were more errors

---------

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-08-09 18:18:02 +01:00
Nemanja 00fa513693 Add support for printing reagents in lathes (#30476)
* Add support for reagents in lathes

* missing locale
2024-08-09 18:17:30 +01:00
Brandon Hu 63bc8b4f29 add(SharedDoAfterSystem): Add a IsRunning "Utility" function (#30512) 2024-08-09 18:15:15 +01:00
Roudenn 650d588fdd Grappling gun's ReelRate can be changed (#30493)
* Grappling gun ReelRate can be changed

Moves ReelRate constant from SharedGrapplingGunSystem to GrapplingGunComponent, so it's Reel speed can be changed.

* Add coment + remove redudant
2024-08-09 18:14:53 +01:00
Cojoke cf2fbc9050 Another QSI Fix About Things Being in Places they Should not (#30241)
* Another QSI Fix About Things Being in Places they Should not

* cleanup
2024-08-09 18:14:53 +01:00
chavonadelal a06cc4a78f Localization of the Salvage Expedition Console (#30339)
* Localization of the Salvage Expedition Console

* Localization of the Salvage Expedition Console 2
2024-08-09 18:14:53 +01:00
Cojoke 29ab6da803 Remove Walking out of Containers while You can't Walk (#30391)
* Require Standing to Exit Containers

* whoops, forgot a not

* You can't walk out if cuffed

* GUAH(requested stuff)

* bwomp(tiny cleanup)
2024-08-09 18:14:52 +01:00
themias 083652a8ef Fix fingerprint transfer on weapon attack (#30257)
* Fix fingerprint transfer on weapon attack

* Switch to just not raising the event

* one more
2024-08-09 18:14:52 +01:00
DrSmugleaf d78647e7cc Fix climbing not ending when any contacts still exist (#30488) 2024-08-09 18:14:52 +01:00
Repo fd69799cec aHelp fixes and improvements (#28639)
* Clear search criteria on loading aHelp window

* Pinning technology.

* Relay to aHelp window and discord if a user disconnect/reconnect

* Fix pinning localization

* Log disconnect, reconnects, bans to relay and admin in aHelp

* Drop to 5min to hold active conversations

* Update Content.Server/Administration/Systems/BwoinkSystem.cs

Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>

* discord text styling if diconnect,reconnect,banned message.

* Pin icons instead of text

* Better Icons

* space

* Move button generation in to its own XAML

* List entry control

* Fix spaces

* Remove from active conversations on banned

* Discord if else block cleanup

* Better pin icons

* Move icons to stylesheet styleclass

* Better field order.

* PR review fixes

* fixes

---------

Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-08-09 18:14:52 +01:00
Nemanja 1dd6a00618 fix lathe screen animations (#30479) 2024-08-09 18:12:53 +01:00
themias e073250aa5 Fix ACC wire light not appearing (#30453) 2024-08-09 18:12:53 +01:00
Cojoke c1427397a9 Lets Hamlet Dance (#30478)
Allow Ghost Roles that have NPC to turn on Combat Mode
2024-08-09 18:12:53 +01:00
Plykiya 6219a29c08 Make magic mirror do-after longer, add popups to notify the target (#30366)
* Make magic mirror do-after longer, add popups to notify the target

* Turns out I do have access to the user

* More detailed popups

* Helmets protecc

---------

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-08-09 18:12:53 +01:00
themias 6c88090d18 Add envelopes (#30298)
* Add envelopes

* oops

* Remove unused loc string

* comments and fixes
2024-08-09 18:12:36 +01:00
Mervill 6c42cee3f4 Objects that only have a basic description won't have extra line in examine text (#30472)
objects that only have a basic description won't have extra line in examine text
2024-08-09 18:12:18 +01:00
Mervill 28acafaaef Make the powered examine text fully client predicted (#30441)
* Make the powered examine text fully client predicted

* switch to using the Entity<T> API for the examine event
2024-08-09 18:12:12 +01:00
lzk 19f2865aed FINALLY FIX APPROVER IN CARGO INVOICE!!! (#29690)
* OH DEAR LORD I WASTED 2 HOURS ON THIS STUPID SHIT!!!

* change some logic
2024-08-09 18:12:09 +01:00
Plykiya c3a7ec730b Make NoSlip component networked (#30425)
Co-authored-by: plykiya <plykiya@protonmail.com>
2024-08-09 18:11:59 +01:00
metalgearsloth 7ea64973fc Fix examine threading issues (#30160) 2024-08-09 18:11:04 +01:00
Plykiya 2eeebafa83 Update SharedDoorSystem.cs to not use Component.Owner (#29963)
* Update SharedDoorSystem.cs

* comment

* empty space

---------

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-08-09 18:11:04 +01:00
metalgearsloth e6b18f37d5 Fix VGRoid grid spam (#29946)
Specifically if a grid splits under the cvar size it doesn't get a label. This also stops stuff like shuttles splitting in half creating new entries for the new grids. Splitting code leaves the largest grid as the existing one so this will always prefer to keep it large (but if there's multiple splits it won't adjust).
2024-08-09 18:08:24 +01:00
themias 96eac8f10e Fix zombie uncuffing (#30321)
* Fix zombie uncuffing

* PlaceNextTo() and rename vars
2024-08-09 18:08:24 +01:00
Plykiya 6a73ae1005 Update vomit organ smite to not use Component.owner (#29926)
* Update vomit organ smite to not use Component.owner

* is this what you want...?

* am I winning, dad?

* update the comment

* we love entity<t>

---------

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-08-09 18:06:43 +01:00
deltanedas 7f2cec58f7 prevent borgs unlocking eachother and robotics console (#27888)
* prevent borgs from using locks

* e

* bru

* a

* blacklist borgs and robotics console

* frogro

* add IsAllowed to EntityWhitelistSystem

* use IsAllowed

* move thing to new LockingWhitelistSystem

* :trollface:

* review

* use renamed CheckBoth in locking whitelist

* remove unused stuff and add more to doc

* Use target entity instead to remove self check

* Rename to _whitelistSystem

* Add deny lock toggle popup

* Prevent duplicate checks and popups

* Fix wrong entity in popup when toggling another borg

* Make new event

* Update comment to user for new event

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
2024-08-09 18:03:34 +01:00
Cojoke fb2a0ab3e9 Fix QSI Link Range (#30332) 2024-08-09 18:01:09 +01:00
osjarw 93d41fba30 Make `NeedHand` modifiable for injectorSystem (#29870)
* Get needhand from yml

* MovementThreshold modifiable + inheritdoc
2024-08-09 17:59:55 +01:00
Brandon Hu c7f626df69 tweak(GunRequiresWield): State the requirement for gun wielding in the description. (#30301)
* https://en.wikipedia.org/wiki/List_of_LASD_deputy_gangs

* https://knock-la.com/tradition-of-violence-lasd-gang-history/

* https://coc.lacounty.gov/deputy-gangs/
2024-08-09 17:59:55 +01:00
Ed 7a94d756b9 Displacement maps big update (#30093)
* split logic into own system

* add support for different size displacement maps

* some clothes may not use displacement maps

* displacement maps spport hand sprites

* Update DisplacementMapSystem.cs

* rename things

* fuck stencilmask

* fix bugs

* no masks

* Update jumpsuits.yml

* fix species specific sprites

* Update ClothingSystem.cs

* shoes + ears displacement, some bugfix

* Update DisplacementMapSystem.cs
2024-08-09 17:58:39 +01:00
Errant a2ef0b6351 Wrong magazine popup (#29046)
* wrong magazine

* a single typo

* removed GunSystem solution

* magazine misfit warnings
2024-08-09 17:55:41 +01:00
Cojoke 7079211f4d Makes the QSI Popup Nicer (#30265) 2024-08-09 17:55:40 +01:00
Cojoke c477d32203 telescreen and television require vision + Move eye to shared (#30260)
* telescreen and television require vision

* Move Content.Server.Eye to Shared

* fix popups

* Filthy
2024-08-09 17:55:40 +01:00
Cojoke 6de9a7f93b Fix Freezing on throwing jetpack (#30223)
* Fix Freezing on throwing jetpack

* bweep(requested stuff)
2024-08-09 17:54:47 +01:00
Jezithyr 23205a8276 Added fixedpoint 4 (#29834)
* Added fixedpoint 4, which is basically just fixedpoint2 but with 4 points of precision and using a long instead of an int to store values.
2024-08-09 17:54:47 +01:00
Errant 820935fd85 Fix replayghost spawning location (#30252)
Fix replayghost spawn
2024-08-09 17:54:45 +01:00
osjarw f4e051c3f4 Make delay incurred from additional syringe contents modifiable + tiny syringe buff/fix (#29825)
* Make delay incurred by transfer amount modifiable

* No unintentional negative delay please

* Use more fixedpoint, hope I didn't break anything

* merge review suggestion

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>

---------

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
2024-08-09 17:53:48 +01:00
Plykiya cd2fd77dbd Quieter bag sounds (#30225)
Co-authored-by: plykiya <plykiya@protonmail.com>
2024-08-09 17:53:47 +01:00
slarticodefast 1560c55190 fix borgs being unable to state laws with an active flashlight (#30183)
fix borg laws
2024-08-09 17:53:33 +01:00
Plykiya a1d6e04731 Syndicate Reinforcement Specializations: Medic, Spy, Thief (#29853)
* Syndicate thief, spy, medic

* Fixes description for nukies

* update description for uplink

* Implement the radial menu

* forgot these were necessary to push lol

---------

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-08-09 17:53:32 +01:00
metalgearsloth ebdf080e08 Fix muzzle flash tracking (#30163)
* Fix muzzle flash tracking

User was never set on the networked event but we don't really need it anyway.

* Also this one
2024-08-09 17:52:22 +01:00
Crude Oil b8af5b195c Add ability to show stack visuals on closed containers (#29309)
* add ability to show stack visuals on closed containers

* remove container stack visuals logic from sharedstoragesystem

* improve comments a bit

* move logic for open/closed containers into itemcountersystem

* move behavior to storage component

* remove unused import

* remove old comment

* fix comments

* fix wrong property name

* Update Content.Shared/Storage/EntitySystems/SharedStorageSystem.cs

* Rename variable for clarity

---------

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
2024-08-09 17:52:22 +01:00
chavonadelal d746da2f99 Localization of encryption keys (#30172)
* Localization of encryption keys

* Localization of encryption keys update
2024-08-09 17:52:21 +01:00
DrSmugleaf 4951d6ad9f Add user to AttemptMeleeEvent, add ThrowItemAttemptEvent (#30193)
* Add user to AttemptMeleeEvent, add ThrowItemAttemptEvent

* Add xmldoc
2024-08-09 17:52:21 +01:00
lzk b3605cea36 Remove HighImpassable from TableTopLayer (#29455)
* uhmm

* Update CollisionGroup.cs
2024-08-09 17:52:09 +01:00
deltanedas 5467cdfc92 fix fish petting misprediction (#30175)
* make fish petting ignore use delay

* m

* troll

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-08-09 17:51:30 +01:00
DrSmugleaf 6521c91ae9 Make ActionsSystem.UpdateAction public (#30056) 2024-08-09 17:51:29 +01:00
slarticodefast a453d90df5 Fix EmbeddableProjectileComponent and ThrowingAngleComponent interaction (#30112)
* fix embeddable offset with throwing angle

* number
2024-08-09 17:51:14 +01:00
Ed e401ccff85 randomize iconSmoothing (#28158)
* randomize iconSmoothing

* Revert "randomize iconSmoothing"

This reverts commit 094356f975737c0af24ce39d849aec7852b9af6e.

* try 2

* trying work with client-server communication

* still dont work

* Tayrtahn good suggestion

* remove outdated code

* Fix!

* move data to Appearance

* Update RandomIconSmoothComponent.cs
2024-08-09 17:51:14 +01:00
Cojoke 4b43756e66 Remove all Assigned Values that are Never Used (#30110)
Remove all Assigned Values that are never used
2024-08-09 17:50:58 +01:00
Plykiya f4c633e00d Fix stun batons using excess charges when thrown (#30136)
Fix stun batons

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-08-09 17:50:33 +01:00
slarticodefast 47d13ccf86 minor SharedInteractionSystem cleanup (#30139)
cleanup SharedInteractionSystem
2024-08-09 17:50:33 +01:00
Cojoke 967217d67a Prevent Quantum Spin Inverter from Teleporting Things into Microwaves (#29200)
* Prevent Quantum Spin Inverter from Teleporting Things into Microwaves

* Simplifies code, GetTeleportingEntity instead of TryGet, adds failed teleport message

* remove using Linguini.Syntax.Ast;

* capital...

* re-add CanInsert and Fixes microwave issue

* beb

* beeb
2024-08-09 17:50:32 +01:00
Ed 42344fa536 Character menu issuer localization (#29840)
* Update CharacterUIController.cs

* TODO Burn this shit

* huh?

* huh!

---------

Co-authored-by: lzk <124214523+lzk228@users.noreply.github.com>
2024-08-09 17:50:12 +01:00
K-Dynamic a19c54ac26 Nerf & standardised slip times (#27879)
* standardised slip times

* puddle and gib soap

* banana peels

* cleaned yaml by shifting to component

* error slip

* error slip intersect

* intersect ratio return

* error and omega soap changes

* SlipocalypseClusterSoap 2 tc cost
2024-08-09 17:47:51 +01:00
Plykiya 84470154e3 Replace EntityPrototype.NoSpawn with EntityPrototype.HideSpawnMenu (#30082)
NoSpawn

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-08-09 17:47:51 +01:00
Cojoke 6d877d0be7 Remove uses of AllObjectives (#30077)
Remove the uses of AllObjectives
2024-08-09 17:47:51 +01:00
themias 389683d14f Prevent virtual item storage and popups (#30020)
* Prevent virtual item storage and popups

* fix typo

* add comment
2024-08-09 17:47:28 +01:00
Ed cf7668f957 Ambient music rules refactor (#29921)
* refactor

* dutypo
2024-08-09 17:47:28 +01:00
ShadowCommander edde7e4a20 Clean itemmapper (#29983)
* File scoped namespace

* Format file

* Fix param name in doc comment

* Reflow doc comment

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2024-08-09 17:47:28 +01:00
Luiz Costa dc2a6780e1 Fix lizards losing snouts when equipping a head bandana (#29979)
* say goodbye to no-snout lizards

* remove snout from plague doctor hat HideLayerClothing component
2024-08-09 17:47:28 +01:00
Winkarst cfb490c6e9 Update IdExaminableSystem.cs to use TryFromMarkup (#29957)
* Change FromMarkup to TryFromMarkup method in IdExaminableSystem.cs

* Update
2024-08-09 17:47:22 +01:00
Plykiya 1f8b8180e5 Replace obsolete EntityCoordiates.InRange() with TransformSystem.InRange() (#29993)
* Replace EntityCoordiates.InRange() with TransformSystem.InRange()

* nullspace

* I figured it out

* man I have no clue how client side sutff works

* please have mercy

* remove RadiationPulseOverlay changes

* nullspace

---------

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-08-09 17:47:22 +01:00
Plykiya ae0a69d769 Replace obsolete xform.ToMap() with xformSystem.ToMapCoordinates() (#30010)
* Get rid of a bunch of obsolete usages

* position

---------

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-08-09 17:47:21 +01:00
Plykiya 4dd3fa17e9 Replace DetachParentToNull() with DetachEntity() (#29992)
DETACH PARENT TO ENTITY

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-08-09 17:45:45 +01:00
deltanedas ad00038233 make cargo balance ui updating its own component (#28295)
* add BankClientComponent and event

* query BankClient instead of hardcoded CargoOrderConsole for updating

* add BankClient to all ordering consoles

* :trollface:

* add Balance field to BankClient

* forgor

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>

* m

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
2024-08-09 17:45:45 +01:00
Nemanja a319fca68a Watches (#29550)
* watches

* rename

* add it into loot pools
2024-08-09 17:45:45 +01:00
deltanedas aa043d43eb fire extinguisher using item toggle (#29906)
* move SprayAttemptEvent to shared

* add SolutionTransferredEvent

* replace FireExtinguisher with SpraySafety

* update fire extinguisher yml

* invert visuals

* always handle event in solution transfer, it makes popups

* instantly fill it

* untroll

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-08-09 17:45:39 +01:00
Tayrtahn bf813ccc63 Fix antag objectives always overshooting MaxDifficulty (and kill tries20) (#29830)
* The death of try20

* Add integration test for traitor gamerule

* Fix max difficulty being overshot

* Check at least one objective is assigned

* EntProtoId
2024-08-09 17:45:38 +01:00
ShadowCommander 2759539d9b Add doc comments to target action components (#29982) 2024-08-09 17:45:38 +01:00
ShadowCommander 7b2b2ef7d9 Change whitelist to pass when null (#29981) 2024-08-09 17:45:38 +01:00
slarticodefast ee2fbd09f3 Throwing system hotfix (#29935)
throwing system hotfix
2024-08-09 17:45:37 +01:00
Plykiya 3e734fb763 Fixes dropping item in container (#29900)
* Items droped in containers will end up in containers

* Adds integration test for dropping entity while inside container

* comment

* comment

* trim the diff

---------

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-08-09 17:45:37 +01:00
Plykiya 6a18ab1fcb Update RCDSystem.cs to not use Component.Owner (#29940)
Update RCDSystem.cs

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-08-09 17:45:36 +01:00
Plykiya 0775e4ab55 Update FloorTileSystem to not use Component.Owner() (#29930)
* Update FloorTileSystem to use EntityUid

* missed a variable

---------

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-08-09 17:45:36 +01:00
metalgearsloth 8f1c51e661 Revert "Picking a ghostrole as an admin will now deadmin you. (#29790)" (#29901)
This reverts commit 1a50760e674134de6065bff3bc76739526ea5429.
2024-08-09 17:45:29 +01:00
deltanedas d3aa1efc38 item toggling giga rework + full ninja refactor (#28039)
* item toggle refactoring and some new systems

* add ToggleClothing component/system

* unhardcode magboots gravity logic

* make magboots and speedboots use ItemToggle and stuff

* remove now useless clothing components

* update client/server magboots systems

* add note to use ItemToggledEvent in ToggleActionEvent doc

* refactor PowerCellDraw to use ItemToggle for ui open/close control

* add TryUseCharges, refactor charges system

* update magboot trigger code

* make borg use ItemToggle, network SelectedModule instead of now removed Activated

* add AccessToggle for borg

* the giga ninja refactor

* update ninja yml

* update ItemToggle usage for some stuff

* fix activatableui requires power

* random fixing

* yaml fixing

* nuke ItemToggleDisarmMalus

* make defib use ItemToggle

* make things that use power not turn on if missing use charge

* pro

* fix sound prediction

* bruh

* proximity detector use ItemToggle

* oop

* big idiot syndrome

* fix ninja spawn rule and make it generic

* fix ninja spawn rule yml

* move loading profiles into AntagLoadProfileRule

* more ninja refactor

* ninja yml fixes

* the dreaded copy paste ops

* remove useless NinjaRuleComponent and ue AntagSelection for greeting

* fix invisibility

* move IsCompleted to SharedObjectivesSystem

* ability fixes

* oop fix powercell instantly draining itself

* sentient speedboots gaming

* make reflect use ItemToggle

* fix other test

* loadprofilerule moved into its own pr

* remove conflict with dragon refactor

* remove all GenericAntag code from ninja

* )

* probably

* remove old enabled

* great language bravo vince

* GREAT LANGUAGE

* who made this language

* because it stinks

* reparent blood-red magboots to magboots probbbly works

* most of the review stuff

* hasGrav doesnt mean what i thought it did

* make health analyzer use itemtoggle, not fail test

* fix mag/speed boots being wacky

* UNTROLL

* add ItemToggle to the random health analyzers

* a

* remove unused obsolete borg func

* untrolling

* :trollface:

* fix test

* fix

* g

* untroll

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-08-09 17:45:27 +01:00
MFMessage ef04a0bfe3 Picking a ghostrole as an admin will now deadmin you. (#29790)
* @forcibly deadmins you

* Added checks for AdminDeadminOnJoin
2024-08-09 17:39:45 +01:00
Cojoke b735c84e1a Fix the ability to shoot out of crates (#28961)
* Fix the ability to shoot out of crates

* Makes it check what inventory the player is in

* use IsEntityOrParentInContainer

* Fix Issues Github had

* gaahhh... Prevents lasers from being shot out of crates

* gaahhh... Prevents lasers from being shot out of crates

* Fix laser?

* hmmm... this is better looking I think?

* Uncook indentation

* Rerun tests?
2024-08-09 17:39:19 +01:00
Chief-Engineer 366cea3352 Fix baby jail (#29896)
* Revert "Revert Baby Jail (#29891)"

This reverts commit 24a2866747e6de37ab2c4395bee9ea44c9211c6f.

* the fix
2024-08-09 17:39:18 +01:00
ShadowCommander 21e45bf669 Allow attack while pulling (#29703)
* Make VirtualItem not block attacking

* Remove unneeded usings
2024-08-09 17:38:46 +01:00
Vasilis b0edb5ccf0 Revert Baby Jail (#29891)
* Revert "SS14-28662 Add Baby Jail: a Jail for Babies (inverse panic bunker) (#28763)"

This reverts commit 3ceb92a0c43d3815d65c8124cd6bea3be5140455.

* Revert configs

* Oops
2024-08-09 17:38:45 +01:00
Tayrtahn 87fb12b6cb Replace ProtoId<EntityPrototype> uses with EntProtoId (#29892) 2024-08-09 17:38:31 +01:00
Winkarst-cpu 92ba8c1a58 Custom solution transfer volume popup and item status panel fix (#29852)
* Fix for custom solution transfer volume

* Dirty call to prevent issues

* Another fix, git issue

---------

Co-authored-by: Winkarst-cpu <Winkarst@users.noreply.github.com>
2024-08-09 17:38:28 +01:00
beck-thompson fdf502c929 Fix typing indicators! (#29492)
* First commit

* Removed pause stuff

* Make the event better

* Forgot to add the comment

* Proto id stuff

* cool comments

* serializer

* Added the time stuff
2024-08-09 17:38:28 +01:00
dffdff2423 e63d2a2ac6 Add an option to the admin fax menu to lock papers such that they can't be edited by cybersun pens (#28972)
* Add option to adminfax for locking papers.

* Replace dummy control with margin
2024-08-09 17:38:28 +01:00
Winkarst-cpu 9cbb019dcd Fix borg's popup spam (#29861)
Fix borg popup spam

Co-authored-by: Winkarst-cpu <Winkarst@users.noreply.github.com>
2024-08-09 17:38:27 +01:00
Cojoke 944e3f49a9 Let Pacifists Use Certain Guns(Foam Weapons) (#29835)
Let Pacifists Use Certain Guns(foam)
2024-08-09 17:38:03 +01:00
Cojoke 01b4922dc0 Fix Shotgun Spam Loading (#29827) 2024-08-09 17:38:02 +01:00
slarticodefast f84b23cd38 Improve throwing precision (#29726)
* improve throwing precision

* remove debugging logs

* minor fixes

* f

* Update Content.Shared/Throwing/LandAtCursorComponent.cs

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2024-08-09 17:35:24 +01:00
Nemanja 52472122eb The real AME nerf (#29587)
* The real AME nerf

* oh the real change

* Update AmeNodeGroup.cs
2024-08-09 17:35:23 +01:00
Nemanja 96e1be9a0a metal foam grenades (#29428)
* metal foam grenades

* wow okay

* meh

* bruh

* test

* push
2024-08-09 17:34:17 +01:00
Verm 7d74de8f5a Bartending+: Shaking and Stirring (#29243)
* Shaking and Stirring

* Remove shake message

* Switch if order a bit

* Add doafter supprot for reactionmixer

* Fix nullability

* Timespan zero

* Forgot to remove loc string

* Reorganize usings

* Remove unneeded usings, fix b52 needing to be shaken
2024-08-09 17:33:56 +01:00
Nemanja 8295d43319 Intercom buffs and fixes (#29580)
* Intercom buffs and fixes

* remove unused bui state

* mild sec intercom buff

* reinforce sec intercoms
2024-08-09 17:33:56 +01:00
Tayrtahn 0338b847ae Improve buckling's interactions with standing state (#29741) 2024-08-09 17:32:07 +01:00
themias 14f9c515e9 Fix wielding while pulling (#29781) 2024-08-09 17:32:04 +01:00
Killerqu00 506458e501 You no longer get deleted when cuffed and buckled (#29718)
fix
2024-08-09 17:31:51 +01:00
Plykiya 1e2160bbf5 Fixes objects changing physics behavior after being pulled (#29694)
* Fixes pull rotation logic

* cleaner condition

* even less code

* I CHANGED MY MIND

* first one

* second one

---------

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-08-09 17:27:14 +01:00
metalgearsloth 3b3e8d77fd VGRoid support (#27659)
* Dungeon spawn support for grid spawns

* Recursive dungeons working

* Mask approach working

* zack

* More work

* Fix recursive dungeons

* Heap of work

* weh

* the cud

* rar

* Job

* weh

* weh

* weh

* Master merges

* orch

* weh

* vgroid most of the work

* Tweaks

* Tweaks

* weh

* do do do do do do

* Basic layout

* Ore spawning working

* Big breaking changes

* Mob gen working

* weh

* Finalising

* emo

* More finalising

* reverty

* Reduce distance
2024-08-09 17:27:13 +01:00
Leon Friedrich 3934fb9603 Allow `zoom` command to modify an eye's PVS range (#29245)
Allow zoom command to modify an eye's PVS range

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2024-08-09 17:26:40 +01:00
DrSmugleaf db168beca1 Make camera recoil system only refresh offset when its values change (#29673) 2024-08-09 17:26:15 +01:00
DrSmugleaf a15113e132 Fix camera recoil system overriding all other eye offsets (#29146) 2024-08-09 17:26:15 +01:00
lzk 73f02aaa0b Add ability to add additional friendly and hostile factions in prototypes (#29636)
* Make friendly and hostile factions in NpcFactionMemberComponent datafiels

* :trollface:

* :trollface:
2024-08-09 17:22:38 +01:00
slarticodefast 52dfa736b1 Fix MouseRotator on rotated grids (#29663)
* fix harm mode rotation

* cleanup

* -pi to pi
2024-08-09 17:19:01 +01:00
Tayrtahn 2b7305875f Fixed buckled players thrashing while speaking in beds (#29653)
* Fix characters thrashing when talking while lying down

* Remove weird design choice
2024-08-09 17:19:00 +01:00
metalgearsloth 221b8ae475 Add FTL arrival visuals (#29402)
* Add FTL arrival visuals

* weh

* Update Content.Shared/Shuttles/Components/FTLComponent.cs

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

---------

Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
2024-08-09 17:19:00 +01:00
Cojoke 6c7dc6e831 Add Slowdown to Dragging Items that Slow when Held (#29364)
* Add slowdown to dragging Items that slow when held

* Heh, fancy

* Heh, fancy

* rename SetMovementSpeedModifiers to GetHeldMovementSpeedModifiers because it was not setting anything
2024-08-09 17:18:59 +01:00
WarMechanic 10b7e40ed2
Senior ID cards get a custom job name: Attempt 3 (#1425)
* revert 1218

* oops wrong file

* commit changes

* it works!!!

* revert accidental changes

* hide senior virtual job prototypes from job select

* remove whitespace diff

* consolidate comments

* remove virtual job prototypes

* these changes were not staged

* remove whitespace diff

* remove whitespace diff again and revert test change

* Update station_engineer.yml

Signed-off-by: WarMechanic <69510347+WarMechanic@users.noreply.github.com>

* Update SharedJobSystem.cs

Signed-off-by: WarMechanic <69510347+WarMechanic@users.noreply.github.com>

* fix capitalisation typo

* consolidate comments and dependencies, also change Mind to use VirtualJobName

* comment correction

* localise senior job names

* fix build error

* fix spawned cards being broken

* reduced logging for finding PresetIdCard

* more fixes

* fix

---------

Signed-off-by: WarMechanic <69510347+WarMechanic@users.noreply.github.com>
2024-08-06 23:20:49 +02:00
Lyndomen 0cc2c013eb
Syndicate Synthesis Specialist Midround Antag (#1530)
* new file:   Content.Shared/DeltaV/Roles/SynthesisRole.cs
	modified:   Resources/Locale/en-US/deltav/ghost/roles/ghost-role-component.ftl
	new file:   Resources/Locale/en-US/deltav/synthesis/recruiter.ftl
	new file:   Resources/Maps/Shuttles/DeltaV/synthesis_ship.yml
	modified:   Resources/Prototypes/DeltaV/Entities/Markers/Spawners/ghost_roles.yml
	modified:   Resources/Prototypes/DeltaV/GameRules/events.yml
	new file:   Resources/Prototypes/DeltaV/Objectives/synthesis_specialist.yml
	new file:   Resources/Prototypes/DeltaV/Roles/Antags/synthesis_specialist.yml
	new file:   Resources/Prototypes/DeltaV/Shuttles/synthesis.yml

* Update recruiter.ftl

Signed-off-by: Lyndomen <49795619+Lyndomen@users.noreply.github.com>

* Update ghost-role-component.ftl

Signed-off-by: Lyndomen <49795619+Lyndomen@users.noreply.github.com>

* Update ghost-role-component.ftl

Signed-off-by: Lyndomen <49795619+Lyndomen@users.noreply.github.com>

* Update ghost-role-component.ftl

Signed-off-by: Lyndomen <49795619+Lyndomen@users.noreply.github.com>

* Update Resources/Prototypes/DeltaV/GameRules/events.yml

Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>
Signed-off-by: Lyndomen <49795619+Lyndomen@users.noreply.github.com>

* Rename recruiter.ftl to synthesis.ftl

Signed-off-by: Lyndomen <49795619+Lyndomen@users.noreply.github.com>

* Update synthesis_specialist.yml

Signed-off-by: Lyndomen <49795619+Lyndomen@users.noreply.github.com>

* Update synthesis_specialist.yml

Signed-off-by: Lyndomen <49795619+Lyndomen@users.noreply.github.com>

* Update synthesis_specialist.yml

Signed-off-by: Lyndomen <49795619+Lyndomen@users.noreply.github.com>

* Update events.yml

Signed-off-by: Lyndomen <49795619+Lyndomen@users.noreply.github.com>

* Update synthesis_ship.yml

Signed-off-by: Lyndomen <49795619+Lyndomen@users.noreply.github.com>

---------

Signed-off-by: Lyndomen <49795619+Lyndomen@users.noreply.github.com>
Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>
2024-08-04 02:19:24 +02:00
metalgearsloth 00ae128855 Fix door access in mapping mode (#30030)
Fix shouldn't break anythingTM.
2024-07-26 00:32:25 +00:00
Velcroboy 388ac0fb18
Revert low pressure nerf (#1538)
Co-authored-by: Velcroboy <velcroboy333@hotmail.com>
2024-07-25 10:27:44 -05:00
Null f19310b268
Merge pull request #1533 from NullWanderer/2024/07/05-upstream-merge
Finally, the big merge
2024-07-25 03:17:57 +02:00
Nemanja 1bb89bdca5
Selectable Bar Signs (#29068)
* make bar sign selectable

* ajcm strongest soldier

* AJCM comes down hard for round 2

* good shit

* ok ballin

* bless'ed be the webedit
2024-07-25 01:57:58 +02:00
metalgearsloth 70d7a16db5
Make accentless cost 2 points (#29603)
Not an easy way to do this so if someone wants the default to be better be my guest.
2024-07-25 01:57:42 +02:00
ShadowCommander 0743d46851
Fix ItemMapper whitelist mispredict when inserting or removing items (#29461)
* Fix ItemMapper whitelist mispredict when inserting or removing items

Makes the ItemMapper MapLayerData available on client so that the client
can predict whether an inserted/removed item changes the visibility of
a sprite layer.

* review

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-07-25 01:55:37 +02:00
metalgearsloth d5539a7577
Fix unlimited MaxTraitPoints for traits (#29600)
-1 is a silly API because now you have to handle it everywhere manually instead of using nullability.
2024-07-25 01:55:34 +02:00
SlamBamActionman f08ba8b494
Turn ReagentEffects into generic EntityEffects (#28168)
* Oh the possibilities

* Merge fixes

* Forgot to remote LavaSystem oops

* Changed EntityEffectArgs to EntityEffectBaseArgs and EntityEffectReagentArgs

* Throw exception for unimplemented effectargs

* Remove Json and overrideable datafields

* Fix test issues

* Actually fix the compiling issue

* Fix comments and remove EntityEffectArgs (no longer used, replaced with EntityEffectBaseArgs)
2024-07-25 01:55:29 +02:00
DrSmugleaf f29d316092
Fix armor speed examine giving you every single decimal place (#29597) 2024-07-25 01:55:28 +02:00
metalgearsloth 3030323eae
Ensure trait groups get validated (#28730)
* Ensure trait groups get validated

The only validation being done was on the UI. I also made the "Default" group match the PascalCase naming schema so might be a slight breaking change but the original PR only got merged a few days ago.

* overwatch
2024-07-25 01:55:01 +02:00
slarticodefast 3457c80cb1
Add sprite for vent under-pressure lock-out (#29527) 2024-07-25 01:54:57 +02:00
deltanedas e315a17c82
plutonium core steal objective (#26786)
* add textures

* add SealingCabinet system

* add StoreUnlocker/ObjectiveUnlock system

* add plutonium core and nuke core container

* make nuke deconstructable

* add steal core objective

* add core extraction toolbox to new category

* typo ops wrench fuel

* use queries and resolve, have it resolve instead of using Comp

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-07-25 01:54:51 +02:00
metalgearsloth 4e6eee2de6
Predict typing indicator (#29551)
It greatly annoys me in the rare instance I do play.
2024-07-25 01:53:55 +02:00
DrSmugleaf 4ef3971a4a
Move GameTicker.RoundDuration to Shared (#29425) 2024-07-25 01:53:34 +02:00
Errant c9bb4c088f
suit storage whitelist code (#29332)
suit storage whitelist
2024-07-25 01:53:05 +02:00
Pieter-Jan Briers 2114817108
Add InteractUsing admin logs. (#29514)
Apparently we did not have these.
2024-07-25 01:51:01 +02:00
Pieter-Jan Briers cd95737190
Remove placing items on tabletop boards. (#29513)
This feature should never have been merged, it can be trivially abused to break the entire server.

It's behind a CVar because honestly that's the easiest way to 1984 the feature.
2024-07-25 01:50:55 +02:00
Plykiya 6a59326d1e
Fixes magic mirror interactions (#29491)
* Fix for magic mirror interaction

* Works for all cases

* swap the order, works

---------

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-07-25 01:50:46 +02:00
DrSmugleaf 914f397035
Fix storages bugging out if an open storage has its component removed (#29485)
* Fix storages bugging out if an open storage has its component removed

* Fix error on close
2024-07-25 01:50:40 +02:00
Chief-Engineer cdb2802449
Alert shared connections (#29405)
* add admin alert for active shared connections

* update wizden config

* review
2024-07-25 01:50:32 +02:00
Pieter-Jan Briers 08b8ab3838
Cut low pressure damage to 1/4 (#29478) 2024-07-25 01:47:13 +02:00
Tayrtahn 8f6c582db4
Fix internals not auto-activating for entities spawned in space (#29213)
* Add organs before trying to breathe

* Add tests for auto-internals

* EntMan to the rescue
2024-07-25 01:47:08 +02:00
Pieter-Jan Briers 22328a784d
Ghosts can now always see examine details (#29404)
* Ghosts can now always see examine details

This means they bypass range and occlusion checks for getting extra detail, like the charge on an SMES.

* EntityQuery
2024-07-25 01:45:23 +02:00
metalgearsloth 0bf8634084
Network BaseEmitSoundComponent (#29400)
* Network BaseEmitSoundComponent

* high intelligence
2024-07-25 01:45:19 +02:00
Tayrtahn aff298aac7
Fix unlabeled jugs in ChemVend (#29178)
* Spawn dummy entities on client for vending machine UI

* Asked sloth, and we kinda need this pr

---------

Co-authored-by: Vasilis <vasilis@pikachu.systems>
2024-07-25 01:45:05 +02:00
mhamster 589be346da
ContainmentFieldComponent's garbage destruction can now be disabled (#29376)
* Garbage Vaporizer 3000

+ DestroyGarbage bool property
+ DestroyGarbage property check when dealing with incoming trash

* Update ContainmentFieldComponent.cs

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

---------

Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
2024-07-25 01:44:32 +02:00
Tayrtahn d06ff65bbe
Apply RoleLoadout MinLimit fix to EnsureValid too (#29358)
Apply MinLimit fix to EnsureValid too
2024-07-25 01:40:45 +02:00
metalgearsloth fb93bc0ac3
Revert "Weapon Reflection Movement Mechanic (#27219)" (#29326)
* Revert "Weapon Reflection Movement Mechanic (#27219)"

This reverts commit b90373356e7f4f0eee693732964eac9c9eaa1f02.

# Conflicts:
#	Content.Shared/Alert/AlertType.cs
#	Content.Shared/Weapons/Reflect/ReflectSystem.cs

* Add myself to codeowners

* Add myself to codeowners

* Also the alerts
2024-07-25 01:40:42 +02:00
nikthechampiongr 93644561c9
Firelocks are no longer pryable by hand if they are powered (#29221) 2024-07-25 01:40:06 +02:00
deltanedas 4a76d9a6df
add access reader log wire (#29094)
* add LoggingDisabled to AccessReader

* add LogWireAction

* -m give everything besides high-security door a log wire

* make LogAccess public and support string arg

* add log when pulsing

* m

* l

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-07-25 01:39:25 +02:00
ArkiveDev 0c37e78dee
Pacifist messages use target's identity name instead of entity name (#29325) 2024-07-25 01:38:51 +02:00
Nemanja e057218952
Machine-code cleanup (#28489) 2024-07-25 01:11:54 +02:00
Leon Friedrich 6d2cbb7290
Fix some buckle interactions (#29293) 2024-07-25 00:40:18 +02:00
Tayrtahn 4866f1aaea
Replace BlockSolutionAccessComponent with an attempt event (#26988)
* BlockSolutionAccessComponent now only blocks one specified solution.

* Significant overhaul
Separated spilling when worn functionality into its own component/system.
Removed BlockSolutionAccessComponent.
Added an event for solution access.
2024-07-25 00:39:35 +02:00
Tayrtahn d5fccc9935
Add logging to SharedStorageSystem prototype indexing failure (#29273) 2024-07-25 00:39:28 +02:00
Tayrtahn 384e43bca4
Make Loadout MinLimit not count failed attempts (#29264)
Loadout MinLimit doesn't count failed attempts
2024-07-25 00:39:25 +02:00
deltanedas a1e7e175c5
return empty string for invalid identity (#29274)
Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-07-25 00:38:52 +02:00
Pieter-Jan Briers 01ecd1d28b
Rate limit ahelps (#29219)
* Make chat rate limits a general-purpose system.

Intending to use this with ahelps next.

* Rate limt ahelps

Fixes #28762

* Review comments
2024-07-25 00:38:40 +02:00
MilenVolf 348b742397
Fix prying speed & log (#29210)
* cleanup prototypes with `PryingComponent` & fix jaws of life prying speed

* Minor cleanup for tools and prying systems

Remove some obsolete methods.

* Fix doafter continues when not held & log

* Modifiy delays for floor prying

* Fix test fail
2024-07-25 00:38:12 +02:00
Pieter-Jan Briers 83ac73e0fc
You can now pry multiple tiles at once (#29231)
* You can now pry multiple tiles at once

* More advanced do after duplicate checking.

Instead of just saying "lol tile prying can raise duplicates", we now have a system so tile prying can properly distinguish events on 2 different tiles. This is achieved with a virtual function on DoAfterEvent.
2024-07-25 00:38:07 +02:00
Mr. 27 2c3071ab5b
Hide moth antenna and lizard frills with hardsuit helmets, fix lizard snouts not being hidden (#29214)
* inital

* Update ClothingSystem.cs

* Update helmets.yml
2024-07-25 00:34:56 +02:00
Alice "Arimah" Heurlin af767099db
Prevent fly-by fixture from powering containment field generator (#29225)
* Prevent fly-by fixture from powering containment field generator

* Update according to review
2024-07-25 00:34:51 +02:00
TsjipTsjip 514ea87c68
Fix documentation typo (#29209)
Fix everything.
2024-07-25 00:34:42 +02:00
Leon Friedrich d0a8d88e78
Partial buckling refactor (#29031)
* partial buckling refactor

* git mv test

* change test namespace

* git mv test

* Update test namespace

* Add pulling test

* Network BuckleTime

* Add two more tests

* smelly
2024-07-25 00:34:37 +02:00
Tayrtahn 7819e9f251
Code cleanup: radio jammer (#29052)
* Code cleanup for radio jammer

* More Entity<T> for the people, and fix an accidental variable reuse
2024-07-25 00:34:34 +02:00
Tayrtahn 0cd2bdf33b
Add prediction for Tech Disks, cleanup (#29061)
* Add prediction for Tech Disks, cleanup

* Remove IsServer check in OnMapInit

* Use HashSet for techs, remove LINQ
2024-07-25 00:34:28 +02:00
Leon Friedrich c2540f6011
Rejig device link sink & source startup & shutdown (#29035)
* Fix DeviceLinkSinkComponent not updating sources on shutdown

* Log error

* Misc link changes & fixes

* Fix core
2024-07-25 00:34:26 +02:00
metalgearsloth 625edf4bd1
Fix material storage going BRRT (#29167)
If the volume hits 0 we just remove it.
2024-07-25 00:29:46 +02:00
Errant 45eac132a0
Hidden loadout groups (#29170)
* loadout hiding

* department of redundancy department
2024-07-25 00:26:31 +02:00
null 61244f8a2f
Fix oopsie 2024-07-25 00:23:07 +02:00
Leon Friedrich 0c72607391
Turn interaction related attempt events into structs (#29168)
* Turn InteractionAttemptEvent into a struct event

* readonly

* GettingInteractedWithAttemptEvent

* ConsciousAttemptEvent
2024-07-25 00:19:34 +02:00
metalgearsloth 8781146785
Fix conveyor mispredicts (#28157)
* Fix conveyor mispredicts

Instead of tracking active conveyors we instead track the conveyed entities. This also handles things like stacking conveyors more gracely.

* Fix ActiveConveyor

* Fix lerping
2024-07-25 00:18:40 +02:00
DrSmugleaf 8a1fe36766
Add cvar to disable round end pvs overrides (#29151) 2024-07-25 00:18:11 +02:00
Tayrtahn 05d8811873
Implement vital chef's hat functionality (#25950)
* Implement crucial chef's hat functionality

* Unified stopping code and added events.

* Added documentation to events

* Rerun tests

* Made review changes, and fixed potential desync bug.

* Update whitelist
2024-07-25 00:18:06 +02:00
Ed ac3f6eb2b6
clean up weather systems (#28792)
* clean up weather systems

* Update WeatherComponent.cs

* Update SharedWeatherSystem.cs

* some fix

* Update SharedWeatherSystem.cs

* Update WeatherComponent.cs

* Update WeatherComponent.cs

* revert autoPause

* Update SharedWeatherSystem.cs
2024-07-25 00:18:03 +02:00
deltanedas 7154d3039b
remove robotics console emag checking, make it a bit fairer (#27876) 2024-07-25 00:17:37 +02:00
Cojoke 160ab9baf3
Makes Eyepatches Flippable (#26277) 2024-07-25 00:17:32 +02:00
Tayrtahn 26417d4627
Add a system for modifying entity names without causing conflicts (#27863) 2024-07-25 00:17:01 +02:00
deltanedas bd2833d02c
add carp hardsuit for traitors (#25155)
* FactionClothing

* swtich carp to the Dragon faction

* add carp hardsuit

* add carp hardsuit to uplink

* fixes

* webedit ops 1

* why did i name it that wtf

* among

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-07-25 00:15:40 +02:00
Leon Friedrich 2b69697576
Fix RotateWhilePulling not working (#29032) 2024-07-25 00:15:37 +02:00
DrSmugleaf 7e0cad960b
Add cvar to disable ghosting killing your crit mob (#28945)
* Add cvar to disable ghosting killing your crit mob

* Update Content.Shared/CCVar/CCVars.cs

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
2024-07-25 00:14:25 +02:00
DrSmugleaf cc19765c48
Use EntityQuery for mob state system resolves (#29021) 2024-07-25 00:14:23 +02:00
Nemanja e99b440e38
Fix magboots not needing a grid to work (#29034)
* Fix magboots not needing a grid to work

* ok fix it for realsies
2024-07-25 00:14:14 +02:00
Nemanja c83d93e461
Add moon boots (#29009) 2024-07-25 00:14:05 +02:00
null ed71a646e3
Merge remote-tracking branch 'refs/remotes/upstream/master' into 2024/07/05-upstream-merge
# Conflicts:
#	Content.Shared/Chemistry/EntitySystems/SolutionTransferSystem.cs
2024-07-25 00:07:10 +02:00
AJCM-git 1feab1d091
Fixes client having authority over rules popup cvars (#28655)
* Fixes client having authority over rules popup cvars

* Delete duplicate migration

* Pre-update

* Post-update

(cherry picked from commit 63e0ee08cb50dbd937e11ab1e965b5f79aae134d)
2024-07-13 04:21:16 +02:00
AJCM-git 14192b0639
Fixed the guidebook listing every single rule (#28680)
* Well i tried this way

* New approach (start)

* Did it

* makes spacelaw available, put it under sec

(cherry picked from commit accf8adf972ec28da489c4dfc5cfa89453d88f03)
2024-07-13 04:21:06 +02:00
Leon Friedrich eee3cb04d3
Give jobs & antags prototypes a guide field (#28614)
* Give jobs & antags prototypes a guide field

* A

* space

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>

* Add todo

* Fix merge errors

---------

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>

(cherry picked from commit e7f2ae52ab24dddc8f3c94cb84b751482700e3da)
2024-07-13 04:20:47 +02:00
Nemanja be014df4b7
Convert rules to use guidebook parsing (#28647)
(cherry picked from commit 1333b48747ae62c7b3ecb809b897201a24fe4441)
2024-07-13 04:18:15 +02:00
deltanedas 4237fc9a2b
add syndicate recruiter midround event (#1345)
* add SignAttemptEvent and minor signature refactor

* add recruiter pen

* add the recruiter ship

* add recruiter antag and event

* fixes

* real

* bad popup spam

* more fix

* fix blood visual maybe

* fix greentext

* more fixy

* fix fill state not being coloured

* give btamp instead of paper in pocket 2

* f

* brighter filled state

* fix greentext

* fix error on spawn

* pro

* prevent using a syringe to inject anything into the pen

* update stuff after upstream merge

---------

Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-07-09 12:48:03 +02:00
WarMechanic 4227c24454
Split Emag in half (#1426)
* make changes

* fix yaml linter bug

* locales

* consolidations

* fix DeltaV comment appearing in uplink

* e

* Update emag.yml

Signed-off-by: WarMechanic <69510347+WarMechanic@users.noreply.github.com>

* emag invalid target locale

* change id 'airlockaccessoverride' to 'doorjack'

* name consolidations + doorjack sprite

* Update Resources/Locale/en-US/deltav/store/uplink-catalog.ftl

Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Signed-off-by: WarMechanic <69510347+WarMechanic@users.noreply.github.com>

* Update Resources/Locale/en-US/store/uplink-catalog.ftl

Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Signed-off-by: WarMechanic <69510347+WarMechanic@users.noreply.github.com>

* Update Resources/Locale/en-US/emag/emag.ftl

Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Signed-off-by: WarMechanic <69510347+WarMechanic@users.noreply.github.com>

* Update Resources/Prototypes/DeltaV/Catalog/uplink_catalog.yml

Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Signed-off-by: WarMechanic <69510347+WarMechanic@users.noreply.github.com>

* Update Resources/Prototypes/DeltaV/Entities/Objects/Tools/emag.yml

Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Signed-off-by: WarMechanic <69510347+WarMechanic@users.noreply.github.com>

* deltanedas

---------

Signed-off-by: WarMechanic <69510347+WarMechanic@users.noreply.github.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
2024-07-09 12:47:18 +02:00
FunTust 02870ae0d8
ToggleVisualLayers hair disappeared fix (#28949)
* Update ClothingSystem.cs

* did it in a better way

* Update ClothingSystem.cs
2024-07-05 20:38:04 +02:00
icekot8 d295fe7d8d
add 👷 JobCondition system for reagents (#29023)
* hell 💀

* you're right

i'm dumb

* use the beautiful protoid and or in localization 🥩

* 🙏
2024-07-05 20:37:55 +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
metalgearsloth 1d392eb307
Fix RoleLoadout equality (#28737)
* Fix RoleLoadout equality

Knew it was janky but thought SequenceEqual was better than it is so we just do it manually.

* Also implement this
2024-07-05 20:37:02 +02:00
Nemanja 74d28f2e28
Fix drinking from openable containers (#29010) 2024-07-05 20:36:34 +02:00
Nemanja 0a06bbea46
make pulled uncuffing slower & reduce uncuff spam cooldown (#29008)
* prevent people being pulled from uncuffing themselves

* block -> modify duration
2024-07-05 20:35:42 +02:00
Zonespace d0a61bbfc6
Replaces reagent-effect-guidebook-missing with more descriptive guidebook entries (#28817)
removes `reagent-effect-guidebook-missing`

Co-authored-by: John Doe <johndoe@gmail.com>
2024-07-05 20:34:28 +02:00
deltanedas d70b950c4e
make RefillableSolution optional for SolutionTransfer (#28830)
Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-07-05 20:34:27 +02:00
Thomas 3046c07b03
Fix Loadout Requirements Only Displaying One Requirement (#28994)
Collect all group effects failed instead of only first one failed
2024-07-05 20:33:51 +02:00
Hannah Giovanna Dawson 1e676e1e55
SS-28662 Add cvars to support forcing people to departures and making those at departures invincible (#28765)
* SS-28662 Add cvar to force spawn everyone at departures

This cvar means everyone must spawn at departures. This
could be handy for an admin event? But mostly it's so the
tutorial departures terminal can be seen by all newbies on
gateway servers.

* Small fix to ArrivalsSystem flow

* Remove incorrect todo

* Add godmode arrivals cvar
2024-07-05 20:32:35 +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
MjrLandWhale f047b1f39b
Override under-pressure lock-out in air alarm "Fill" mode (#28909) 2024-07-05 20:28:14 +02:00
Doomsdrayk 88bd1fbab1
Fix guns appearing to cycle bolt when wielded (#28756)
Adds a check during wielding to see if the code is running clientside, and if so skip the part responsible for creating the virtual items.

This is necessary because TrySpawnVirtualItem is blocked from running clientside, so trying to spawn the virtual items for wielding causes the client to always believe the wield has failed. This erroneous failure leads to the display of incorrect feedback until the server's successful wield attempt makes it to the client. The added check prevents wielding from failing in this way and therefore allows the client to behave as expected.
2024-07-05 20:27:51 +02:00
geraeumig 003f55a74c
Fix magazine sprites after Auto Eject (#28859)
Co-authored-by: geraeumig <alfenos@proton.me>
2024-07-05 20:27:39 +02:00
Partmedia 0662237bac
Update PA admin warnings (#28911)
With singulo fixed, PA strength 3 and below (level 2) are now safe.
Update the admin logging to reflect this.
2024-07-05 20:27:06 +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
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
metalgearsloth a729d309ed
Maybe fix invalid loadout prototypes (#28734)
* Maybe fix invalid loadout prototypes

So if we have existing data SetDefault is not normally called iirc. So what I think is happening is that if we have old loadout groups that get saved to DB and loaded these get dropped entirely and nothing is used to replace the group unless the person specifically looks at their loadout.

Need someone affected to send me their loadout to confirm it's fixed.

* Better fix
2024-07-05 20:21:40 +02:00
metalgearsloth f90e574da0
Don't use invalid defaults for loadouts (#28729)
At the time it made more sense but now with species specific stuff it's better to have nothing.
2024-07-05 20:21:26 +02:00
Null ee4dd88a53
Revert "Nyano port of digging (#400)" (#1452)
This reverts commit 089398d2
2024-07-01 21:57:16 +00:00
Bellwether 36695a3872
Add "Subpoenaed" status for SecHud and Criminal Records Computer (#1405)
* Add "Subpoenaed" to the SecHud and Criminal Records Computer

* Update Content.Server/CriminalRecords/Systems/CriminalRecordsConsoleSystem.cs

Co-authored-by: Colin-Tel <113523727+Colin-Tel@users.noreply.github.com>
Signed-off-by: Bellwether <157836624+BellwetherLogic@users.noreply.github.com>

* Update Resources/Locale/en-US/criminal-records/criminal-records.ftl

Co-authored-by: Colin-Tel <113523727+Colin-Tel@users.noreply.github.com>
Signed-off-by: Bellwether <157836624+BellwetherLogic@users.noreply.github.com>

* Moved and commented files as requested, redesigned icon due to avoid Syndicate lookalike

* moved some .ftl business so it's properly commented

* Attempting to slay a rogue byte order mark

* necromancy upon falsely slain byte order mark

* Moving things into DeltaV namespace

---------

Signed-off-by: Bellwether <157836624+BellwetherLogic@users.noreply.github.com>
Co-authored-by: Bellwether <null>
Co-authored-by: Colin-Tel <113523727+Colin-Tel@users.noreply.github.com>
2024-07-01 21:50:51 +00:00
deltanedas bee11f3a16
add glimmer wisp (#1383)
* add sacrafice/drain sound

* refactor glimmer event yml + uncomment wisp + make mites scale at lower glimmer

* remove glimmer wisp rule and make GlimmerMobRule much more flexible + better

* add LifeDrainer code that wisp uses

* add ai primitives and compounds

* add glimmer wisp

* a

* fixes

* add wisp texture

* desc

* add sounds

* buff so you cant literally 2 shot it with bible

* make it harder to kill but drop more ectoplasm

* make it work properly

* let it use zap in combat i hope

* add glimmer creatures guidebook

* test

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-07-01 22:05:56 +02:00
Colin-Tel 579d8aed3e
Change hunger rate again (#1384)
They hunger for change.
2024-06-14 21:15:48 +00:00
Colin-Tel e6bafb2a64
Adjust Hunger rates (#1302)
* Upped hunger rates

* vulp hunger and diona thirst

* Revert "Upped hunger rates"

This reverts commit da6bf53687.

* changed hungercomponent

* Update diona.yml

adjusted diona hunger

Signed-off-by: Colin-Tel <113523727+Colin-Tel@users.noreply.github.com>

---------

Signed-off-by: Colin-Tel <113523727+Colin-Tel@users.noreply.github.com>
Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
2024-06-12 16:30:02 +00:00
Null 21cd750ff4
Merge pull request #1331 from NullWanderer/2024/06/06-upstream-merge
Upstream merge
2024-06-11 17:12:03 +02:00
Timemaster99 4455e1ec30
Justice patch 06/09/2024 (#1340)
* Removed service access from attorney, added sec playtime to prosecutor

* Fixed many bugs
2024-06-10 12:17:38 +02:00
null 5ab73ea298
Merge remote-tracking branch 'refs/remotes/upstream/master' into 2024/06/06-upstream-merge
# Conflicts:
#	Resources/Prototypes/Maps/submarine.yml
2024-06-08 21:03:00 +02:00
metalgearsloth 0da82f6d47
Add loadout group check for role proto (#28731)
MFW same bug twice at 2 layers because I'm stupid.
2024-06-08 20:31:16 +02:00
DrSmugleaf 58e1b529fe
Add DoPopup data field to OnUseTimerTrigger (#28691) 2024-06-08 20:30:56 +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
Tayrtahn b693a16b93
Add support for LocalizedDatasets to RandomMetadata (#28601) 2024-06-08 20:24:12 +02:00
Leon Friedrich 7d903800a8
Add closing storage UIs to StorageInteractionTest (#28633) 2024-06-08 20:23:33 +02:00
Plykiya f0c639cdf4
Make cuff default range again (#28576)
* Make cuff default range again

* uncuff distance

* how about ONE

---------

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-06-08 20:20:36 +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
TsjipTsjip 6b2145241f
Prayable datafield typo (#28622)
* notifiactionPrefix -> notificationPrefix

* notifiactionPrefix -> notificationPrefix
2024-06-08 20:17:23 +02:00
icekot8 fe16eb1cd4
hand teleport portals now may start in the same grid. (#28556) 2024-06-08 20:16:59 +02:00
Kevin Zheng 67c27e351e
Add CVar to disable pow3r parallel processing (#28488)
* Add CVar to disable pow3r parallel processing

* Cache CVar value

* Fix pointyhat

* Move all CVar-ing to Content.Server
2024-06-08 20:16:21 +02:00
Hannah Giovanna Dawson 842d633cb9
Make projectile & hitscan reflection only try once with the best reflector (#28539) 2024-06-08 20:15:15 +02:00
Hannah Giovanna Dawson 2bf0e82b7a
SS14-26964 Clown Waddling Replicates, etc (#26983) 2024-06-08 20:15:12 +02:00
Errant 772296179a
Don't switch-unwield if mob has more than 2 hands (#28438) 2024-06-08 20:15:09 +02:00
null 993959ae58
Replace deprecated whitelist functions 2024-06-08 20:12:43 +02:00
Plykiya edf125c481
Gets rid of obsolete EntityWhitelist.IsValid() function (#28565)
Gets rid of obsolete IsValid function

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-06-08 20:03:28 +02:00
Plykiya 6583105f10
Replace obsolete EntityWhitelist IsValid usages part 2 (#28506) 2024-06-08 20:03:26 +02:00
lzk a633095da1
Make borgs shown in logprobe (#27788) 2024-06-08 20:02:43 +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
leo c82affb78b
Adds the Justice Department (#660)
* legal departmant

* god i wish i knew what i was doing

* minor rsi fixes

* i forgor the legal radio frequency

* Minor fixes to radio, stamp, PDA, etc...

* add department

hehe

* Edits from Velcroboy

* Add trial timer

* add department signs

* Changes all references of legal -> justice and adds prosecutor access

* Missed one

* Adjust lawyer

* update lawyer icon

* temp to fix

* revert to fix

* add airlock texture

adds justice department airlock texture. Still need to do the yaml part of it but the texture's there.

* fix bureaucracy meta

* More meta fixes

* Connect airlocks to yaml

* Fixes, tweaks, and last reference of "legal" maybe

* Add justice to airlock groups

* add prosc. drip and fix prosecutor typos

adds prosecutor badge and suit, as well as fixes the spelling of "prosecuter" to "prosecutor"

* Changes prosecutor's supervisor to CJ

Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>

* Attorney <- Lawyer locale edit

* Removed modified shoukou file

* Added antag objective and touched up yaml
Fixed Clerk PDA and CJ jumpsuit error. Additionally moved notary stamp from paper.yml to rubber-stamp.yml, and fixed some indentation in the meta.json of the pda.rsi file

* Attorney <- Lawyer, now including the PDA
Forgot this last commit

* Fixed typo in Clerk Vest ID

Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>

* Added Chief Justice locker, all of its contents, and a prosecutor PDA (sprite pending)

* lockers 2, electric boogaloo. Committing files I forgot to commit

* Added CJ stamp and put it into CJ locker. Fixed notary stamp and put the sprites in the correct RSI

* Attempt to resolve merge conflicts

* Remove conflict markers

* Added stamp sprite, implemented CJ cloak

* Implemented Gavel Prototype and added to CJ locker

* Removed justice access from attorney as it will be used to secure Clerk's locker. Disabled antag for all justice besides attorney.

* Added Clerk locker and placed Notary Stamp into it. Uncommented gavel in CJ locker

* Added lawyer's stamp to lawdrobe

* Added Prosecutor PDA, icon, and ID sprite

* Added gavel block and made gavel tap when clicking on it

* Add component, EmitSoundOnInteractUsing onto the gavel block

* Added sprites for CJ and Clerk locker

* Spell-checked and edited job descriptions slightly

* Fixing missing type entity access.yml

Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>

* Adjusted rsi paths for gavel and gavel block to use forward slash

* Fixed a variety of invalid rsi references, and door remote yaml issue

* Added Lawyer access to Justice access group, fixed door_remote.yml access

* Remove antagadvantage from chief justice

Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>

* Apply suggestions from code review

line at the end for readability & matching current standards... line at the end for readability & matching current standards...

Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>
Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>

* Hopefully remove shoukou.yml from the changed files

Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>

* Once again attempt to remove shoukou.yml from changed files

* Attempt once more to remove shoukou.yml from changed files

* Fixed justice pda box description

Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>

* Please go home, shoukou. We don't want you here

* Fixing prototype references pt1

Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>

* Renamed headsets/legal.rsi to headsets/justice.rsi

* Added hyphen to chief justice localizations

* Ordered justice accesses alphabetically

* Added prison key to justice headset

* Various yaml fixes from review

* Apply suggestions from code review

Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>
Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>

* Localized changes to pdas and jobs

* Removed indents in locale

* Fixed reference to chief justice stamp

* Apply suggestions from code review

Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>
Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>

* Renamed Lawyer to Attorney in locale, added deltav marker

* Lawyer to Attorney, Warrant Document in Clerk and CJ locker

* Apply suggestions from code review

Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>
Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>

* Replaced legal with justice in job-description.ftl

Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>

* Moved job-name-lawyer to DeltaV locale

* Remove added space in accesses.ftl

Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>

* Removed unneeded deletion of unneeded spaces in headsets.yml

Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>

* Changed Lawyer ID name to Attorney ID

* Updated copyrights in all of the meta.json files affected

* Added formal and white variants of CJ jumpsuit to locker

* Updated to use upstream's EmitSoundOnInteractUsing

* Removing old component stuff

* Gave Prosecutor Filled Lawyer Backpack

* Deleted old component

Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>

* Removed old comments

* Updated doors to electronics system, fixed courier spawner that I botched

* Fixed door_access indentation

Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>

* Adding a little bit of loadouts

* Add loadouts for justice

* Removed accessreader from windoors

* Added job spawner icons

* Fixed spawner sprite layering

* Added missing parent in ID cards

* Removed redundant laceup shoes loadout

Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>

* Added lawyer windoor, fixed spawner names, fixed locker names

* Added station beacons

* Softened justice dept palette

Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>

* Added justice key to telecomms

* Added deltaV comments to telecomms

---------

Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
Co-authored-by: Jeff <velcroboy333@hotmail.com>
Co-authored-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
Co-authored-by: Timemaster99 <elijahrobot@gmail.com>
Co-authored-by: luckywill339@gmail.com <luckywill339@gmail.com>
Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>
Co-authored-by: Azzy <azzydev@icloud.com>
2024-06-07 15:22:37 +02:00
null 792afce5cb
Some tool related fixes 2024-06-06 22:16:17 +02:00
DrSmugleaf d58b6b49dc
Add more info to GettingAttackedAttemptEvent (#28548) 2024-06-06 22:04:16 +02:00
deltanedas bf146480f9
make objectives use entityCategory (#28269) 2024-06-06 22:04:13 +02:00
Cojoke aaa96befa1
Make projectiles not hit crates unless clicked on (#28072) 2024-06-06 22:01:50 +02:00
Verm 22c7f4e610
Welding tweaks (#27959) 2024-06-06 21:59:35 +02:00
Plykiya f8b3a797be
Emergency Fix for Whitelist logic (#28510)
fix issue

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-06-06 21:50:29 +02:00
slarticodefast 7f5be661f8
Flash overlay rework and bugfixes (#27369) 2024-06-06 21:46:58 +02:00
Leon Friedrich 0f8b1bbde5
Content changes for entity categories PR (#27232)
* Content changes for entity categories PR

* Poke tests

* Why are tests suddenly working?
2024-06-06 21:44:49 +02:00
eoineoineoin c62bd23656
Replace Matrix3 with System.Numerics.Matrix3x2 (#27443)
Replace Matrix3 with Matrix3x2
2024-06-06 21:44:48 +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
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
AJCM-git ab59cfea40
Makes machine parts stackable, removes unused field in stack prototypes (#28434)
* Makes machine parts stacks, removes unused field in stack prototypes

* forgor

* Fix tests

* Fixes lathe construction. Yes. This sucks but there's no better way that doesnt involve refactoring machine parts completely

* detail

* a
2024-06-06 21:29:09 +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
Mnemotechnican 380c858476
Fix pseudoitem fitness check (#1232)
* fixie

* Prettier code

* Bleugh
2024-06-01 23:16:10 +02: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
DrSmugleaf 185a61175f
Fix the client thinking it cannot shoot after mispredicting when it actually can (#28464) 2024-06-01 18:02:04 +02:00
Nemanja 19eefe623d
Clean up command perms (#28451)
* Change BanExemption command to AdminFlags.Ban permissions

* Change LOOC to check for Moderator permission

* Change ListVerbs from Admin to Debug AdminFlags

* Change RunVerbAs from Admin to Fun AdminFlags

* More permission changes

* Change GhostKick to Moderator perm

* Clean up command perms

* fuck

---------

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
2024-06-01 18:01:58 +02:00
Geekyhobo f7581b1f21
Adds a Pii Flag, Censors Hwid and Ip (#27776)
* yes

* fixes
2024-06-01 18:00:39 +02:00
Verm fe3892977d
Randomizes more humanoid appearances (#27997) 2024-06-01 18:00:15 +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
Leon Friedrich c7c2c03be8
Fix hugging mispredict (#28432)
* git mv

* Move namespaces

* Fix hugging mispredict
2024-06-01 17:59:47 +02:00
ShadowCommander 9194e4fde3
Add firelock warnings popup when opening on access allowed (#28420) 2024-06-01 17:57:25 +02:00
Leon Friedrich 4ce7efd04d
Prevent Identity.Name NRE exception (#28433)
Fix Identity.Name exception
2024-06-01 17:56:36 +02:00
Leon Friedrich 65a712700c
Only auto-enable internals when necessary (#28248)
* Only auto-enable internals when necessary

* Add toxic gas check

* Rename Any -> AnyPositive
2024-06-01 17:55:05 +02:00
ShadowCommander 1338c4a059
Fix TryGetActionData error triggering when run on deleting entities (#27839)
* Fix TryGetActionData error triggering when run on deleting entities

* Only get metadata once
2024-06-01 17:54:46 +02:00
Tayrtahn 2a56896045
Convert advertisements to use localized datasets (#28400)
* Convert advertisements to use LocalizedDatasets

* File consolidation

* Arcade machines too
2024-06-01 17:41:58 +02:00
Tayrtahn a5d25c0550
Convert story generation to use LocalizedDatasets (#28402)
Converted story generation to use LocalizedDatasets
2024-06-01 17:41:55 +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
ShadowCommander ec1696bc8e
Change PlaceableSurfaceSystem.cs to file scoped namespace (#28379) 2024-06-01 17:19:38 +02:00
metalgearsloth 4271fc5174
Fix single-user BUIs erroneously closing (#28375) 2024-06-01 17:19:37 +02:00
DrSmugleaf e1ce368229
Fix FixedPoint2.Abs multiplying the value by 100 (#28378) 2024-06-01 17:19:34 +02:00
Kevin Zheng a6e4fd4c7a
Tune spacing speed to fix under-pressure lockout (#28370) 2024-06-01 17:19:28 +02:00
Tayrtahn 0ffa4b1e55
Fix off-by-one error in LocalizedDatasetPrototype (#28366) 2024-06-01 17:19:24 +02:00
basic pack a1191c1150
Lowers restart round vote's minimum players dead percentage. (#27470) 2024-06-01 17:19:06 +02:00
Tayrtahn e718a3e714
Add LocalizedDatasetPrototype (#28310) 2024-06-01 17:19:04 +02:00
ShadowCommander adee8b16ab
Add pressure and temperature warning text to firelocks (#28341) 2024-06-01 17:17:54 +02:00
Nemanja 49ae1f57ee
Small anomaly behavior fix (#28290)
* Small anomaly behavior fix

* well put together code
2024-06-01 17:17:36 +02:00
slarticodefast d25743c22f
Cargo bounty corrections (#28255)
cargo bounty corrections
2024-06-01 17:17:29 +02:00
Nemanja ac98ee082e
fix mirror server crashes (#28318) 2024-06-01 17:13:44 +02:00
metalgearsloth 413889283c
Add loadout group check (#28311)
Forgot to add it back in one of the rewrites.
2024-06-01 17:13:44 +02:00
metalgearsloth b99a66afc1
Selectively revert PullController (#28126)
I am leaving the issues open and have updated #26547 with more info on what we should do long-term. This is just to bandaid the short-term complaining.
2024-06-01 17:13:38 +02:00
Nemanja 3d8706561d
fix borg ui mispredict opening (#28305)
move borg ui junk to shared
2024-06-01 17:13:35 +02:00
deltanedas 82b8d835b2
fix antag selection being evil (#28197)
* fix antag selection being evil

* fix test

* untroll the other tests

* remove role timer troll

* Allow tests to modify antag preferences

* Fix antag selection

* Misc test fixes

* Add AntagPreferenceTest

* Fix lazy mistakes

* Test cleanup

* Try stop players in lobbies from being assigned mid-round antags

* ranting

* I am going insane

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
2024-06-01 17:13:27 +02:00
Nemanja 9a7f4416b2
actually fix magic mirrors (#28282) 2024-06-01 17:13:23 +02:00
Leon Friedrich 386728db2f
Fix stripping not marking interactions as handled (#28292) 2024-06-01 17:13:16 +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
Errant 5768c2a8d4
Changing hands unwields item (#28161)
Unhand me, fiend
2024-06-01 17:13:07 +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
Ady4ik 78dbdfa00c
Move PendingZombieComponent to Shared (#28143)
* Move PendingZombieComponent to Shared

* network me boy

---------

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
2024-06-01 17:00:22 +02:00
metalgearsloth 9e350a452c
Fix water postshader (#28130) 2024-06-01 17:00:16 +02:00
DrSmugleaf 8833e0b046
Fix not networking whitelist and blacklist in storage component (#28238) 2024-06-01 16:57:32 +02:00
Leon Friedrich 1942652d87
Fix weapon error logs (#28264) 2024-06-01 16:57:14 +02:00
nikthechampiongr a036d3a485
Fix firelock prediction issues with periodic pulses of closing lights (#28227)
* Fix firelock prediction issues with periodic pulses of closing lights

For some reason this function was setting a time for the next state
which was triggering the door system to try to close the firelock.
This does not happen serverside because the function only fires from an
event called clientside apparently.
It appears to be an attempt to stop firelocks from closing instantly
that did not function properly, and I cannot discern any other purpose.
As such I have removed it.

* Remove redundant serverside check

This became redundant with commit 439a87f2
2024-06-01 16:57:01 +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
DrSmugleaf 471726b6e5
Fix whatever the fuck is going on in storage system slightly (#28236)
* Fix whatever the fuck is going on in storage system slightly

* Fix inverted check

* h

* Add silent bool

* Silent
2024-06-01 16:55:46 +02:00
DrSmugleaf 1aedf69112
Prioritize empty item slots when inserting (#28203)
* Prioritize empty item slots when inserting

* Revert "Prioritize empty item slots when inserting"

This reverts commit 4272a65cba5fc18df801812b0af20123aec08409.

* Prioritize empty item slots when inserting

* Try drop

* Check for any can insert before dropping
2024-06-01 16:55:40 +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
DrSmugleaf f580b4be64
Add defib event, add fields to be able to disable crit defib and do after movement (#28174)
* Add defib event, add fields to be able to disable crit defib and do after movement

* Fix check
2024-06-01 16:55:16 +02:00
Leon Friedrich 74308b008f
Use non-generic `TryComp()` for metadata & transform (#28133) 2024-06-01 16:53:51 +02:00
Tayrtahn 7ff91799cc
Fix non-ghosts and admins counting toward most followed (#28120)
* Fixed non-ghosts and admins counting toward most followed

* Redone to better leverage EntityQueryEnumerator

* Remember to test your code before you commit it, kids

* Review revisions

* Update Content.Shared/Follower/FollowerSystem.cs

Co-authored-by: ShadowCommander <shadowjjt@gmail.com>

* Update Content.Shared/Follower/FollowerSystem.cs

Co-authored-by: ShadowCommander <shadowjjt@gmail.com>

* Update Content.Shared/Follower/FollowerSystem.cs

* Clean up

---------

Co-authored-by: ShadowCommander <shadowjjt@gmail.com>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
2024-06-01 16:53:44 +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
Nemanja c88d5d53dd
Fix magic mirror (#28084)
* Fix magic mirror

* buff magic mirror
2024-06-01 16:51:30 +02:00
DrSmugleaf 10aeac7560
Make standing state down sound nullable (#28132) 2024-06-01 16:51:29 +02:00
Leon Friedrich d8d385adeb
Fix gun cooldown timespan overflow exception (#28136) 2024-06-01 16:51:22 +02:00
DrSmugleaf 198b67bef6
Make wielding automatically drop the item on your other hand (#27975)
* Make wielding automatically drop the item on your other hand

* Fix docs

* Remove redundant parameter

* Fix not deleting virtuals on fail

* Make count freeable hands method

* Add popup when dropping item
2024-06-01 16:51:09 +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
Tayrtahn d000edce59
Fix activatable UI popup message spam (#28123)
Fixed activatable UI popup message spam
2024-06-01 16:51:03 +02:00
Ed d9e5a8dbae
Revert "Tile variantize after deconstruct" (#28119)
Revert "Tile variantize after deconstruct (#28118)"

This reverts commit bf0529df566c323820d5b7497bc55e75992f105c.
2024-06-01 16:51:01 +02:00
Ed 1f3687cc41
Tile variantize after deconstruct (#28118)
Update TileSystem.cs
2024-06-01 16:50:59 +02:00
Tayrtahn e5bbb0a4bc
Random book story generator refactor (#28082)
* Randomized book overhaul

* Fix prototype names

* Improved setting paper content

* Praise Ratvar
2024-06-01 16:50:57 +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
DrSmugleaf 2cef141f94
Add data field for id card microwave behaviour (#28087) 2024-05-18 14:04:27 +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
Джексон Миссиссиппи d579a7110a
Make some CCVars server-change only (#28079)
* | CVar.SERVER

* Ooh ee ooh aah aah ting tang walla walla bing bang
2024-05-18 14:00:26 +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
DrSmugleaf 85a0742a88
Move most rotting code to shared (#28050)
* Move most rotting code to shared

* Remove unused dependency
2024-05-18 14:00:20 +02:00
deltanedas efe79da550
biome flexibility changes (#28017)
make biome apply template on mapinit, add api for setting Enabled

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-05-18 14:00:10 +02:00
DrSmugleaf e2d0f0a6a0
Make failing to fire a gun that requires wielding not delay the next shot (#27973)
Make failing to fire a wield-only gun not delay the next shot
2024-05-18 13:59:32 +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
metalgearsloth 93a6823bbb
Implement Equals for ApcBoundInterfaceState (#27965)
* Implement Equals for ApcBoundInterfaceState

Saves a lot on bandwidth. Also made it round to the nearest 5.

* Also this
2024-05-18 13:59:01 +02:00
Nemanja 6e46148d00
fix weird behavior with storage HUD buttons (#27961) 2024-05-18 13:59:00 +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
Kara b6a31003d2
Open slot storage keybind can now also close the UI (#27962) 2024-05-18 13:58:53 +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
ShadowCommander d82acccaa8
Replace AttachToGridOrMap with DropNextTo (#27950) 2024-05-18 13:57:16 +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
Джексон Миссиссиппи e8dce2b0ed
Add an admin smite for making people slip really far (and localize the admin smites better) (#27246)
* Sliiiiiiiiiiiiiiiiiip

* what

* Localize!

* antiterminate
2024-05-18 13:57:03 +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
DrSmugleaf b4a765bc00
Fix shuttle cvars comments (#27923)
* Fix shuttle cvars comments

* Add another line to ftl mass limit
2024-05-18 13:52:32 +02:00
ShadowCommander 1548f9b9ad
Fix collection modified error when locking storage (#27913) 2024-05-18 13:52:29 +02:00
DrSmugleaf 84dc0e5285
Fix const data field in BlindableComponent (#27919)
* Fix const data field in BlindableComponent

* Fix usages
2024-05-18 13:52:28 +02:00
DrSmugleaf c9e717ed48
Make FTL constants in ShuttleSystem into cvars (#27706)
* Make FTL constants in ShuttleSystem into cvars

* Fix tests
2024-05-18 13:52:25 +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
Ed c0d1c43003
New event: Approaching unknown shuttle (#24490)
* setup codebase

* Add first shuttle

* tak

* sync striker

* sync 2

* pipipi

* Preloaded roundstart shuttles!

* Make it abstract "PreloaderGrid" not "PreloaderShuttle"

* to do

* added china cuisin shuttle

* fixes

* add disaster evacpod

* remove enemy

* final shuttles

* weight 5 -> 10

* move data to component

* remove autotrailer touching

* doc, respath

* fix frozen positioning

* fixes + cvar

* finally

* fix evacpod

* remove blacklistrules

* remove `UnknownShuttleSpawnRule`, refactor `LoadMapRule` to support preloaded grids

* use tryload

* cleanup

* fixes

* use preloadedgrid for loneops

* weight unknown shuttles differently (preliminal)

* leftover

* cleanup and raffling

* partial review

* singleton gridpreloader no station coupling

* fix grid atmoses

* `roleLoadout` support for `LoadoutComponent`, fix missing gear

* weighting changes

* init logic fix

---------

Co-authored-by: Kara <lunarautomaton6@gmail.com>
2024-05-18 13:51:30 +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
RiceMar1244 10b10f0533
Adds wielding for all large guns (#26970)
* Adds wielding assets

* Modifies meta.json files and adds artist credit

* Adds wieldable component to a bunch of weapons

* Moves shotgun inhands and wield inhands to their own folders (because its the only way the sprites would work)

* Removes the wieldable component from some guns

* Adds wielding sprites for wieldable guns that didnt have them

* Adds gun wielding bonuses and base innaccuracy to wieldable guns.

* Corrects wielded accuracy to be default accuracy instead of perfect

* Makes the drozd smg and bulldog shotgun wieldable

* Makes nukie c20r wieldable and adds sprites

* Adds BaseGunWieldable

* Makes all the newly wieldable gun use the base inheritable

* Adds accuracy to smgs to resolve inheritance conflict

* Makes all wieldable shotguns require wielding to fire because of a bug involving spread innacuracy

* Adds wield bonus message on examine
2024-05-18 13:50:12 +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
Джексон Миссиссиппи 9c88cfb8b4
Make suit storage only available for hardsuits, softsuits, and armor (#27546)
* AAAAAAAAAAAAdd!

* o shit

* I FUCKING HATE INDENTATION GRAAAAAAAAAH
2024-05-18 13:48:35 +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
Moomoobeef 7f7edd62c7
Adds new "Short-Sighted" trait! (#26037)
* initial commit

* blindness trait now uses minDamage as suggested by deathride

* made fixes for review for shortsightedness

* review appeasal

* removed PermanentPoorVision & merged its functionality into PermanentBlindness
2024-05-18 13:36:13 +02:00
DrSmugleaf 44eff7af7a
Move id and health examinable to shared (#27867)
* Move id and health examinable to shared

* Make GetInfo public
2024-05-18 13:36:03 +02:00
deltanedas 6781d9e0a6
make fire not burn through hardsuits (#27161)
* add FireProtection system and event

* minor optimisation + make flammable use fire protection event

* add fire protection values to some things, nerf firesuit heat resistance

* bruh

* unrevert laser nerfs, make elite hardsuit fully fireproof

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-05-18 13:35:46 +02:00
deltanedas 1b7b17c443
fix master (#27833)
pro

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-05-18 13:35:43 +02:00
Sphiral 0e8f05c61e
Make storage UI close upon being locked (#27810)
* make storage close on lock

* formatting and comments

* Update Content.Shared/Storage/EntitySystems/SharedStorageSystem.cs

Co-authored-by: ShadowCommander <shadowjjt@gmail.com>

* Apply suggestions from code review

Co-authored-by: ShadowCommander <shadowjjt@gmail.com>

* Swap to foreach instead of for

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

---------

Co-authored-by: ShadowCommander <shadowjjt@gmail.com>
Co-authored-by: Kara <lunarautomaton6@gmail.com>
2024-05-18 13:35:40 +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
metalgearsloth bde4d81e76
Add CanAttack check if target is in a container (#27689) 2024-05-18 13:33:24 +02:00
deltanedas 21f0eb0149
fix mapping door access (#27784)
Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-05-18 13:33:13 +02:00
DrSmugleaf 96b145c5e9
Move step sound distance and footstep variation to MobMoverComponent (#27799) 2024-05-18 13:32:59 +02:00
Plykiya 25de511094
Katana Dash checks based on vision rather than collision (#27793)
* Fix dash check

* unused

* obsolete function

---------

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-05-18 13:32:58 +02:00
ShadowCommander bf559f6e27
Fix pull not stopping when character is downed (#27796) 2024-05-18 13:32:07 +02:00
deltanedas cdb9723f26
make dragons breathe fire (#26746)
* add ActionGun system

* add RepeatingTrigger

* dragons breath projectile, repeatedly explodes

* give dragon fire breathing action, fireproof it

* oop

* oop 2

* prevent troll

* proper repeating thing

* pro

* webedit ops

* realops

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-05-18 13:31:40 +02:00
deltanedas 51d94f2022
make lube speed up lathes (#25515)
* add LatheGetSpeedEvent

* add LatheLube system

* make typical lathes accept lube

* spill

* :trollface:

* rework to generic ReagentSpeedSystem

* hyperlathe ops

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-05-18 13:31:28 +02:00
Hannah Giovanna Dawson b0e86aa103
Weapon Reflection Movement Mechanic (#27219)
* Weapon Reflection Movement Mechanic

Adds a movement mechanic to deflection.
Standing still gives you your best chance of deflecting a shot.
Moving lowers this to 2/3rds. Sprinting to 1/3rd.

This allows for robust players to express better and provides
counterplay to someone finding a goober-strong deflection
weapon, giving more design space.

As part of this PR I've also touched the numbers of a few swords,
shields, etc. and modified some descriptions to make them read
better. The balance numbers are not remotely final, but as intent:

1. All the sidearm swords (katana, cutlass, captain's sabre) have the same damage. There's no good reason the "ceremonial" blade the captain has doing more damage than a katana.
2. The Captain's Sabre has a 30% reflect chance, dropping to 20% when moving and 10% when sprinting. This one is controversial due to the recent nerf, I suspect: This could easily be 15->10->5?
3. The Energy Katana has a flat 30% reflect chance.
4. The meme Throngler has a 30% reflect chance, dropping to 20% when moving and 10% when sprinting.
5. The E-Sword has a 30% reflect chance, dropping to 20% when moving and 10% when sprinting.
6. The Double E-Sword has a mighty 75% reflect chance, dropping to 50% and then 25%.
7. Both reflective shields - Mirror and Energy - have a 95% deflect chance, dropping to 63% then 31%.

* Resolve PR comments.

* Weh?

* Reign in double esword a tad

* Shield nerfs no longer real

* Improve Mirror Cult desc

* Simple alert for deflection! No art yet.

* Added a new icon for deflecting
2024-05-18 13:31:23 +02:00
Nemanja c6d1f12be8
fix antag bugs (#27319)
* fix antag bugs

* Update NukeopsRuleComponent.cs
2024-05-15 19:56:34 +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 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
null 8db7894d51
Merge remote-tracking branch 'refs/remotes/upstream/master' into 2024/04/21-loadouts 2024-05-07 22:52:49 +02:00
null 234074c4ed
Reset TagSystem to base 2024-05-07 04:56:20 +02:00
null a2ac3f6bac
Merge remote-tracking branch 'refs/remotes/upstream/master' into 2024/05/02-Merge-master
# Conflicts:
#	Content.Server/Nyanotrasen/Carrying/CarryingSystem.cs
#	Content.Server/Pinpointer/NavMapSystem.cs
#	Content.Server/Power/EntitySystems/PowerMonitoringConsoleSystem.cs
#	Content.Shared/Tag/TagSystem.cs
#	Resources/Prototypes/Entities/Clothing/Uniforms/specific.yml
2024-05-07 04:53:36 +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
Jezithyr c8c478bd3e
Moved Serverside solution container code to shared (yes that includes ensureSolution!) (#27478)
* Added warning to tryGetSolution, moved SolutionContainer code to shared
- Added an optional warning (false by default) to print an error if a solution is missing when using tryGetSolution methods
- Moved ensuring solution containers to shared, left the old method stubs for compatability and marked them as obsolete.

* Update SharedSolutionContainerSystem.cs

* Update SharedSolutionContainerSystem.cs

* Update SolutionContainerSystem.cs

* Update SharedSolutionContainerSystem.cs

* Fixing ensuring chem solutions always returning false on client
- ensuring chem solutions will only return false on the client if it is waiting for a server solutionEntity to be synced

* Added concentration helpers

* fix whitespace
2024-05-07 04:40:39 +02:00
Kara 1680be6f0d
Fix `TryFindRandomTile` grid weighting (#27724) 2024-05-07 04:39:58 +02:00
Mr. 27 f1f06a222e
Add solution temperature to chemical analysis goggles (#27693)
yes
2024-05-07 04:36:06 +02:00
Pieter-Jan Briers 49de374bc0
Cache regex instances in most cases (#27699)
Using static Regex functions that take in a pattern is bad because the pattern constantly needs to be re-parsed. With https://github.com/space-wizards/RobustToolbox/pull/5107, the engine has an analyzer to warn for this practice now.

This commit brings most of content up to snuff already, though some of the tricker code I left for somebody else.
2024-05-07 04:35:40 +02:00
Just-a-Unity-Dev 9233a758bc
Geras bug fixes (#27308)
* Geras bug fixes

* oops

* its as shrimple as that

toggled transferName in the polymorph yml instead of using the system to manually change it

* its as shrimple as that (2.0)

fixed reviews for zombies having a dummy action, instead - properly implemented removal of action

* its as shrimple as that (3.0)

fixed tests by removing nameidentifier from slime (its already inherited, anyway)
2024-05-07 04:31:49 +02:00
Leon Friedrich c77ec3b521
Add EntityWhitelistSystem (#27632)
* Add EntityWhitelistSystem

* Sandbox fix

* update test
2024-05-07 04:29:05 +02:00
Leon Friedrich bba89e9363
Fix UI interaction priority (#27631) 2024-05-07 04:28:47 +02:00
Tayrtahn 6269c14392
Make UseDelay SetLength do EnsureComp (#27601)
Make UseDelay.SetLength do EnsureComp
2024-05-07 04:18:40 +02:00
Repo ea31d3f7b9
Track Admin Game Time (#24945)
* AdminTime tracked

* Attempts to fix PR issues.

* Admin afk logic update
2024-05-07 04:18:33 +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
Ciac32 e04f9cfe2d
Enforce inequality between different species (#27586)
Fix missing species check in humanoid equality operation
2024-05-07 04:14: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
DrSmugleaf 6cb352d9ad
Add explosion.can_create_vacuum cvar (#27548) 2024-05-07 04:12:45 +02:00
Jezithyr 17ff17a0d0
Move GasMixture to shared (#27480)
* Moved GasMixture to shared

* Temp Fix for sandbox violation, idk why Array.Resize isn't working properly. It's already sandboxed.

* The most powerful webedit in history
2024-05-07 04:00:15 +02:00
Errant c9966a73fb
Size-based entity whitelist (#26798)
* Size based whitelisting

* namespace and misc refactor

* modern datafields, what will they think of next

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

* the future is now

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

* Update TagSystem to work with ProtoId lists

* I guess someone might run into these too, one day

* copypaste moment

* update to sawmill

* Okay, but what if it just worked

---------

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
2024-05-07 04:00:09 +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
Ed a22e6bc2e8
Throwing into disposals logic splitting (#27487)
* wtf

* fix
2024-05-07 03:45:02 +02:00
Nemanja b329ad5731
Fix position swapping with QSI and artifacts (#26364) 2024-05-07 03:44:55 +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
KrasnoshchekovPavel 1930dd5abf
fixed formatting of floating point numbers during localization (#27441) 2024-05-07 03:41:28 +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 fbab3f1a30
ActivatableUI tweaks (#27448)
* ActivatableUI tweaks

* EntGotRemovedFromContainerMessage

* A
2024-05-07 02:05:39 +02:00
Leon Friedrich 07be4ad541
Stop admin verb pop-in (#27450) 2024-05-07 02:04:58 +02:00
Leon Friedrich e70e9f5a48
Move UnpoweredFlashlight to shared (#27449) 2024-05-07 02:04:57 +02:00
Plykiya 831ebd07b3
Fix doubled gas mask action message (#27463)
Fix doubled message

Co-authored-by: Plykiya <plykiya@protonmail.com>
2024-05-07 02:04:50 +02:00
Plykiya 8f4599275b
Hardsuits, EVA suits, Firesuits, and others now protect your feet from Glass Shards (#26764)
* Hardsuits and softsuits count as having shoes for step triggers

* Add softsuit tag prototype

* Change to suitEVA tag

* Get rid of softsuit tag, found suitEVA tag

* Full pass of ShoesRequiredStepTriggerImmune

* Adds check to outerClothing for ShoesRequiredStepTriggerImmune

* return

* fuck Dionas

* Convert to comp, space dragons immune as well

* Merge conflict

* Merge conflict

* fix leftover tags

* empty spaces

* turns out the dragon didn't need it

* minor optimization

* Add access for system, add comp to baseShoes, check slotflags for every slot besides pockets

* fix

* fuck it we ball

---------

Co-authored-by: Plykiya <plykiya@protonmail.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-05-07 01:54:56 +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
Mnemotechnican 1abf205f76
Port carrying & pseudo-item tweaks & features from frontier
* Fix dropping carried entity when walking to a different grid and accidental escape from carrying

* Fix offset carrying

Better fix #1

* Add cancel escape action

* Add a popup shown when you're getting picked up

* Ported bag-carrying stuff (taking someone out of a bag makes you carry them, also allows to insert the carried person into a bag)

* Add sleeping inside bags

* Fix carrying mass contest

* Add the missing file

---------

Co-authored-by: Azzy <azzydev@icloud.com>
2024-05-06 13:21:07 -05:00
Null 8f9113b766
Increase moth color blending strength by 25% and replace color blending with the intended helper function
* Replace weird lerping with intended function

* Increase effect strength by 25%

---------

Co-authored-by: Azzy <azzydev@icloud.com>
2024-05-06 15:27:26 +00: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
SlamBamActionman 6df0595d7f
Fix suit baldness (#27404)
Initial commit
2024-05-06 01:36:03 +02:00
metalgearsloth cde5bfb0dd
Fix literally every single activatable UI bug (#27401)
* Fix all activatable bugs

Apparently this was a load-bearing nullable enum.

* build
2024-05-06 01:35:37 +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
Errant 3838aef210
vox oxygen toxicity, respiration changes (#26705)
* vox oxygen toxicity and related stuff

* Review

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit a62e8701cb30cc0c96cbac5a33b57728efe596b5)
2024-05-03 00:31:02 +02:00
ShadowCommander 0da4cd9dd3
Fix prying error when opening locked airlocks (#27386)
It would try to pry the door and fail to resolve a prying component on the entity trying to open the door.

(cherry picked from commit 6eb681958be3bec1bf7798866237c0f2f79d98d2)
2024-05-03 00:30:04 +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
metalgearsloth 81340a02d9
Remove redundant HasUi (#27381)
Doesn't fix anything but still.

(cherry picked from commit cc2fa6f57e955917d68b3ec52f1d8a552292eb74)
2024-05-03 00:25:58 +02:00
Pgriha 17cdb45d44
More characters slots! (#27361)
Add more character slots

(cherry picked from commit ef7d85d28523b4a2fbffd334d1c96da77f94e497)
2024-05-03 00:25:02 +02:00
Mr. 27 22cb3eb23a
monkey reinforcement teleporters can now select between kobold or monkey with a verb (#25982)
* inital

* Update animals.yml

* Update animals.yml

* Update Content.Server/Ghost/Roles/Components/GhostRoleMobSpawnerComponent.cs

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

* Update Content.Server/Ghost/Roles/Components/GhostRoleMobSpawnerComponent.cs

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

* Update Content.Server/Ghost/Roles/Components/GhostRoleMobSpawnerComponent.cs

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

* Update Content.Server/Ghost/Roles/Components/GhostRoleMobSpawnerComponent.cs

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

* Update Content.Server/Ghost/Roles/Components/GhostRoleMobSpawnerComponent.cs

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

* selecting different role will change the description and name

* fix name

* gargh

* the review

Hello

* e

---------

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

(cherry picked from commit 50fb91bd1837ea8a78677dbb211559ded5bba018)
2024-05-03 00:20:15 +02:00
metalgearsloth f6495da3c2
Fix PAI BUI (#27357)
(cherry picked from commit 394c325246c76e234ef6600194a45d9325d3702d)
2024-05-03 00:19:06 +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
WarMechanic 85048c5d32
fix wieldable guns not being able to cycle inhand (#27307)
* Add UnwieldOverride variable that overrides unwielding inhand to enable other interactions

* Give LMGs UnwieldOverride

* logically inverted UnwieldOverride to UnwieldOnUse

* fixed typo

(cherry picked from commit 498109a833047d933a5f72edf87961542c516f58)
2024-05-03 00:18:52 +02:00
DrSmugleaf 4e2d82a9c6
Fix mobs not being able to pry doors by just left clicking on them (#27349)
(cherry picked from commit adce5793707d83852f783f891335e0d481aaa94d)
2024-05-03 00:18:48 +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
metalgearsloth 0f18c2c907
Fix UseDelay issues (#27336)
* Fix UseDelay issues

- Fix it not predicting properly by deep-copying the classes (realistically they should be structs).
- Fix the `z` path not applying UseDelay similarly to the `e` path.

* click

(cherry picked from commit d745a788ea33616f06f5301f780e5c7dba3ae6c6)
2024-05-03 00:13:03 +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
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
Leon Friedrich 3e9548a08a
Fix DoAfter attempt event null error (#27280)
* Fix DoAfter attempt event null error

* A

(cherry picked from commit 6d16d6b1c973dfc5da7ec7e6cc3529b39a9dbf69)
2024-05-03 00:09:24 +02:00
Leon Friedrich 0843601d6a
Content changes & tests for engine prototype validation PR (#27188)
* Content changes & tests for engine prototype validation PR

* A

(cherry picked from commit 8aabb1c2e5f006ca604daa92f2da0b8856f02ee7)
2024-05-03 00:01:57 +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
Tayrtahn cc3c6652bc
Fix climbing and bonking simultaneously (#27268)
* Properly network ClumsyComponent

* Fix being able to climb and bonk at the same time.
Also properly subscribe to AttemptClimbEvent by-ref.

* Update Content.Shared/Interaction/Components/ClumsyComponent.cs

(cherry picked from commit 480d26aba64865f1460c4ca82b8d341d98268670)
2024-05-03 00:01:48 +02:00
Leon Friedrich 5bb755467e
Add NukeOps Test (#27207)
* Add NukeOps Test

* Update EvacShuttleTest to also check mapinit

* Update RuleMaxTimeRestartTest

* Fix cvar cleanup

* A

* Revert some changes

* comments

* Add MappingTests

* Finally fix the test

* A
2024-05-03 00:01:36 +02:00
Nemanja bccc2bf40e
fix cargo teleporter (#27255)
* fix cargo teleporter

* don't delete orders

* basado

(cherry picked from commit 1bfc63c546617ee2e9be9960b14abf16eee19ad5)
2024-05-02 23:59:53 +02:00
Skye 7e5c4e0cfe
Fix: Suit Sensors Vitals (#27259)
Vitals now functions correctly

(cherry picked from commit 32c1f8f8cd2cff03d8de11be139cfd46f552c2ea)
2024-05-02 23:59:19 +02:00
Just-a-Unity-Dev 8086508273
General slime improvements (#23425)
* General slime improvements

* Finish morphing

* oops 2x2 not 3x3

* actually lets ball - 2x3 inventory

* Last two things on the todo list

* .\RobustToolbox\

* JUST COMPILE

* fix tests 2.0

* fix tests 3.0

* Do reviews

* minor change

* guideboob

* more

---------

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

(cherry picked from commit fd0ca42c58315b4c4f91fe9364c3dc3d88ba5624)
2024-05-02 23:57:52 +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
Wrexbe (Josh) 21f7b18b14
Escape markup for in-game chat, and labeler (#26359)
* Escape markup for in-game chat, and labeler

* different way

* remove a using

---------

Co-authored-by: wrexbe <wrexbe@protonmail.com>
(cherry picked from commit c93052c7553e5a495f70cffe435febc6157ab8b3)
2024-05-02 23:52:05 +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
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
NullWanderer eb05117ec2
Make remaining IPrototypes partial (#27157)
Signed-off-by: NullWanderer <56081759+NullWanderer@users.noreply.github.com>
2024-04-22 05:01: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
NullWanderer be421b3ed9
Fix TryRequirementMet call
Signed-off-by: NullWanderer <56081759+NullWanderer@users.noreply.github.com>
2024-04-22 04:45:50 +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
Tayrtahn ab2d7626b3
Add clothing equipped/unequipped events (#27155)
* Added ClothingGotEquipped/ClothingGotUnequipped events

* Better version

* Implemented in a few places

* More implementations

* Add ClothingDidEquipped/ClothingDidUnequipped events

(cherry picked from commit 50631f430d62fc413bc8757f8d1e1c4523417816)
2024-04-21 23:45:55 +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
Plykiya 1b3a4007b1
Fix for inventory and belt not opening (#27179)
Co-authored-by: Plykiya <plykiya@protonmail.com>
(cherry picked from commit 6ad039d0f9a13a3bcedf400b3b89f2eb186631ec)
2024-04-21 23:36:43 +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
deltanedas be81d76b25
disable rehydration prediction (#27166)
Co-authored-by: deltanedas <@deltanedas:kde.org>
(cherry picked from commit 9482144a19930af85a22b90d6c610101b629bece)
2024-04-21 23:34:06 +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
MilenVolf 695acc366e
Fix crates masks (#27137)
Fixes crates masks not allowing them to go under plastic flaps + crates no longer can go trough windoors.

(cherry picked from commit 812abd33a0616aeedd9bea2952e4f0fb7bd31697)
2024-04-21 23:31:34 +02:00
Verm 21208c94f8
You can bless more containers with a bible (#26526)
* Made more things blessable

* Removed junk

* Remove whatever that was

* Make bowls blessable

* New mixablesolution component, converted everything to work with it

* Fix minor mishaps

* Fix extra spaces in bottle yml

* Fix last extra space, fix bottle havign the wrong solution name

* Remvoe unneeded event(I think), fix alcohol bottles not being mixable

* I missed cans
2024-04-21 23:31:16 +02:00
Leon Friedrich 817b4b0e93
Add evac shuttle test. (#27152)
* Add evac shuttle test.

* Fix typo in comment

(cherry picked from commit 12bb476a2d9df67babf961efe2856c561b6d6248)
2024-04-21 23:22:04 +02:00
Tayrtahn 3d31cb5eba
Fixed debug assert while getting network state in ClothingSystem (#27153)
(cherry picked from commit 4594700d19916061b2aa755530cb6acd70c69d71)
2024-04-21 23:22:01 +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
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
deltanedas 08b4be2e09
webedit ops (#27131)
(cherry picked from commit 33abb6bb3f3f24357a88b02b0880d23a995ed718)
2024-04-21 23:19:45 +02:00
deltanedas 21a72726e4
add dirty calls to mask system (#27128)
* add dirty calls to mask system

* among

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
(cherry picked from commit 350843d2c02a77338f2be420e047477f0bc57d9d)
2024-04-21 23:19:32 +02:00
SlamBamActionman 62d4d57ad6
Fix lizard snouts disappearing when wearing masks (#25716)
* fixes it

* Snout fix

* Partway commit

* Partway commit

* Update masks and helmets to use the new system

(cherry picked from commit 7aa4beede60cfe838e9d51e44c39872f7d035379)
2024-04-21 23:19:28 +02:00
DrSmugleaf 5acb97a858
Fix storage fill giving no reason for failing (#27122)
(cherry picked from commit 45df595c1513bed2c31209101afc7574ded29cfe)
2024-04-21 23:18:19 +02:00
Ed 0016a29544
Killer tomatoes (#26053)
* make tomatoes

* many friends! many mommies

* finish

* renaming system

* fix

* Update miscellaneous.yml

* Update Content.Server/NPC/Systems/NPCImpritingBehaviourSystem.cs

Co-authored-by: faint <46868845+ficcialfaint@users.noreply.github.com>

* N

* deleete exception?

* merge conflict fix

* fix?

* fuck you

* sloth fixes

* fixess?

* fix

---------

Co-authored-by: faint <46868845+ficcialfaint@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit f3a97fc0c53e0db2875d02839eb60599e53245e8)
2024-04-21 22:56:29 +02:00
Nemanja 9c59f11c89
Flash buff (#25730)
* flash buff

* oops!

* bool

* 3 -> 1.5 seconds

* okay fix

* sluth

(cherry picked from commit 3af744e4a98839a04da97b608f87b619cd5222cf)
2024-04-21 22:34:16 +02:00
Hannah Giovanna Dawson 0df68584e0
Chatfactor: Chat Repository, Admin Commands, Chat Created Events (#26113)
* Chatfactor: Chat Repository, Admin Commands, Chat Created Events

This addition-only PR covers a repository that stores chat messages.
This PR defines what chat messages can be stored, what can be done
with those stored messages, and what events occur when the repository
does things.

This PR also includes to admin commands that show how the repository
will be used for administration purposes at first. Because all chat
messages will be uniquely identified per round (and, as rounds are
uniquely identified, are essentially a GUID) we can delete, amend
or nuke messages.

Note there's no "amend" command right now. The original chatfactor PR
didn't include one, and I'm avoiding further feature bloat with these
chatfactor PRs...

* Remove an event that shouldn't be in this PR

* Resolve PR comments.

* Resolve peak goober moment

* Also make sure we tell the user why if their delete command fails

* Supply a reason if the nukeuserids command is malformed

* Tidy messages

* Some more docstring tidyup

* Imagine tests handling IOC correctly chat

* Imagine tests handling IOC correctly chat

* Resolve PR comments

* Fix goobering with needing to use ToolshedCommand

* In which we bikeshed toolshed

* loud metal pipe sound effect

* One must imagine funny boulder pushing man happy

* Move commands to new folder

* Mald, seethe, cope.

* I hate toolshed I hate toolshed I hate toolshed

* Fix command ftls

* Bit of tidy-up and a YAGNI removal of a get we don't need yet

* Whelp lmao

* UserIDs are in a weird fucky state I didn't anticipate, so I've removed the remove-by-userID command for the time being.

* Rename ChatRepository to ChatRepositorySystem.

* Resolve PR review comments

---------

Co-authored-by: Your Name <you@example.com>
(cherry picked from commit b1136c98d7fde8cf26965817536324b58f192b11)
2024-04-21 22:34:09 +02:00
Errant b0d1ffadd0
Cleanup in HumanoidCharacterAppearance (#26974)
* namespace

* Tidy up the code for selecting random humanoid color

(cherry picked from commit 7120e8736a39f04b51b5bffb62521002ba5d59f5)
2024-04-21 22:15:44 +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
Bellwether e699da03c5
Low-Key Zombie Rebalance (#27060)
initial soft zombie rebalance - lower infection chance, damage, and chance of outbreak

Co-authored-by: Bellwether <null>

(cherry picked from commit 8213c89fdb127eba36c2c5d44e92bdae62308f2b)
2024-04-21 22:07:59 +02:00
icekot8 c2f49864fd
cargo console radio messages on approving (#27038)
* 1

* void --> "Unknown"

(cherry picked from commit fd109d61b88468a1b623975ce7258462fc40b7f6)
2024-04-21 22:07:14 +02:00
Ed 2a379aae7f
Chances of triggering effects (#27056)
* electrocution

* slippery

* flashibg

* Update SlipperyComponent.cs

* Update SlipperySystem.cs

(cherry picked from commit 5659edd207c36b1148ba675204c74f94821abb87)
2024-04-21 22:06:59 +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
beck-thompson 2791aa4792
Fixed gloved weapons being able to attack when not equipped. (#26762)
* Initial commit. No evil hidden files this time :)

* Added newline because I forgot :(

* We <3 tags :)

* Fixed! Works now

* Update Content.Shared/Weapons/Melee/MeleeWeaponComponent.cs

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit afcdc8b8668a0504fd0392eaa1b6dcd36b4f1108)
2024-04-21 22:05:35 +02:00
Alfred Baumann a18e874eaa
Mobs auto state handlers (#26957)
* Autogenerate MobStateComponentState

* changed CurrentState to DataField, updated DataField attribute for AllowedStates

* Update Content.Shared/Mobs/Components/MobStateComponent.cs

* Update Content.Shared/Mobs/Components/MobStateComponent.cs

---------

Co-authored-by: BuildTools <unconfigured@null.spigotmc.org>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit 5b8468c9d8463e68dbf4b40226895cfed7d7e143)
2024-04-21 22:05:09 +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
Leon Friedrich 0d8a432d74
Give names to solution & identity entities (#26993)
(cherry picked from commit faec39ced4d6a65b1ecbf373ba282202171f5224)
2024-04-21 22:01:02 +02:00
Leon Friedrich 4b4f218d45
Fix some TryGetMind overrides relying on player data (#26992)
* Fix some TryGetMind overrides relying on player data

* A

* Rider has bamboozled me

* Update `data.Mind` before attaching to entity.

(cherry picked from commit 229caa10bf3417858d2cbd7c1290af12dcad4acc)
2024-04-21 22:00:56 +02:00
no 694afca549
Fix StepTrigger blacklist not working (#26968)
(cherry picked from commit 7810cbe41101fe152c6b30fea937cc4351d4ae29)
2024-04-21 22:00:44 +02:00
Ed 2e94a349fc
Selective cherrypick: Rotate and Offset station CCVar nuke (#26175)
* no content

* add noRot to Europa

* bruh. and this

* yay

* fix
2024-04-21 22:00:27 +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
Froffy025 0e5eaa1008
Wield recoil components (#26915)
* WieldRecoilComponents

* WieldRecoilComponents

* Update Content.Shared/Weapons/Ranged/Components/GunWieldBonusComponent.cs

Co-authored-by: Whisper <121047731+QuietlyWhisper@users.noreply.github.com>

* Update Content.Shared/Weapons/Ranged/Components/GunWieldBonusComponent.cs

---------

Co-authored-by: Whisper <121047731+QuietlyWhisper@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit a7fad5d43953ea679418d7c39272bf3224f7767f)
2024-04-21 21:58:24 +02:00
Pieter-Jan Briers 4c7c6f28be
Game server admin API (#26880)
* Reapply "Game server api" (#26871)

This reverts commit 3aee19792391cbfb06edb65d6f16f77da0f36f13.

* Rewrite 75% of the code it's good now

(cherry picked from commit 9d0dfcf2b9fa1b6ba54b3aa26a3f41982b945323)
2024-04-21 21:58:13 +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
Verm b8e216318c
You can now see paper on crates (with color!) (#26834)
* Implement changes on not-cooked branch

* Made it work

* Fix update appearance calls

* Fix extra indents, clean-up code, fix tests hopefully

* Fix hammy cagecrate

* Fix messing up the yml, add artifact crate specific labels back in

* Visual Studio hates yml, sad

* Seperate the colors for cargonia

* sorry json

* make label move with artifact door

* Apply suggestion changes

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

* Fix remaining crate offsets, add a few for livestock and graves (why are you labeling graves) and coffin label sprites (why are you labeling coffins??)

---------

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
(cherry picked from commit 96ad9002f1d6390bf666c74ddfd871a45a8fe1df)
2024-04-21 21:56:49 +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
GreaseMonk 5d097e8746
Add Ability to stop sound when MobState is Dead (#26905)
* Add stopsWhenEntityDead to sound components

* Convert component

* Review

* Fix dupe sub

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit da618d791a48efacebe441eee9398c0d1c571ec8)
2024-04-21 21:56:36 +02:00
chromiumboy 490568b98e
Bug fix: Force cancellation of RCD constructions if the construction type is changed (#26935)
Force cancellation of RCD constructions if the construction type is changed

(cherry picked from commit 33e5e4e581a8d224cc2c44465db188ded0302e4e)
2024-04-21 21:55:13 +02:00
ShadowCommander cc1f1edaa2
Fix pulling a new entity when already pulling an entity (#26499)
Fix pulling when already pulling

The TryStopPull were failing due to wrong arguments provided.
Replacing the virtual item in hand with a different pull was failing due to the hand not being cleared.

Fix stop pulling checks that had the wrong variables provided.

VirtualItems are already queue deleted at the end of HandleEntityRemoved.

(cherry picked from commit 037a7d7d3d53a623f70a07908299e8fc4df1b4a5)
2024-04-21 21:54:45 +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
DrSmugleaf c253b15886
Fix incorrect "Cycled" and "Bolted" popups when (un)wielding a gun (#26924)
(cherry picked from commit b51482f51a67bb90f6ccc7fb355c316e200bb36d)
2024-04-21 21:54:35 +02:00
DrSmugleaf 0f618756ab
Fix the stripping menu being openable without StrippingComponent (#26908)
(cherry picked from commit 24b6456735ae83dd9de53097d625f20b723c578f)
2024-04-21 21:54:27 +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
Tayrtahn a8e64a0467
Fix potted plant popup/sfx spam (#26901)
Fixed potted plant hide popup/sfx spam.

(cherry picked from commit 8e9d2744f3d196fc11e88a4755f98cac8ad8dbee)
2024-04-21 21:52:18 +02:00
chromiumboy d83d3c6fef
Bug fix for deconstructing tiles and lattice with RCDs (#26863)
* Fixed mixed deconstruction times for tiles and lattice

* Lattice and power cables can be deconstructed instantly

(cherry picked from commit fc5a90be0da4801aa7ff1fbc996c2f55f8cb7ae7)
2024-04-21 21:52:06 +02:00
Pieter-Jan Briers e984da8467
Revert "Game server api" (#26871)
Revert "Game server api (#24015)"

This reverts commit 297853929b7b3859760dcdda95e21888672ce8e1.

(cherry picked from commit 3aee19792391cbfb06edb65d6f16f77da0f36f13)
2024-04-21 21:48:02 +02:00
Simon ad65e75624
Game server api (#24015)
* Revert "Revert "Game server api (#23129)""

* Review pt.1

* Reviews pt.2

* Reviews pt. 3

* Reviews pt. 4

(cherry picked from commit 297853929b7b3859760dcdda95e21888672ce8e1)
2024-04-21 21:47:56 +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
deltanedas fc0e764ccc
dirty after calling SetAccesses (#26849)
Co-authored-by: deltanedas <@deltanedas:kde.org>
(cherry picked from commit 6d695dd3262c8a7492ce2164da6d16add9d80017)
2024-04-21 21:45:44 +02:00
deltanedas 10bf010926
predict humanoid identity examine (#26769)
* predict humanoid identity examine

* actually server doesnt need proto anymore

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
(cherry picked from commit 2f5c639a151ace90365e929486ba479655b9cd63)
2024-04-21 21:44:11 +02:00
c4llv07e ca0f8a1414
Fix tray scanner not updating it's range. (#26789)
Fix tray scanner not updating it's range on change.

Add range value to the tray scanner state.to synchronize it between
client and server.

(cherry picked from commit 3d6d7820d641450ca6c6903edd20e85af311a8b6)
2024-04-21 21:44:10 +02:00
chromiumboy 1c00c720f2
Bug fixes for RCD (#26792)
Various fixes

(cherry picked from commit f784e9ca4e7493bd2f20d44a6b52da10ddb8f02f)
2024-04-21 21:28:57 +02:00
Nemanja c77f283e54
prevent placing dead bodies in cryostorage (#26810)
(cherry picked from commit c95bbce4a6722377f2a475ffad6853baa3d65619)
2024-04-21 21:28:51 +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
metalgearsloth b0cf1237c7
Alerts crash fix (#26602)
- If the client tries to call ShowAlert while applying gamestates (e.g. initialising an entity) then this will cause problems. I need to double-check the initial PR before I'd be comfortable with this being merged.

(cherry picked from commit dd03612d8032050e4d60b8ac7fffae4d5911d422)
2024-04-07 14:36:00 +02:00
superjj18 5f05bc1c67
-fixed Broadcast button never enabling (#26750)
(cherry picked from commit c5441a1b015eb579c68e14072f0d5e6a14c7e6bd)
2024-04-07 14:35:16 +02:00
TsjipTsjip 06f48a60fb
CCVars.cs: Minor inconsistency fixes. (#26744)
Update CCVars.cs

* Fixes one file format inconsistency.
* Adds missing </summary> closing tag.

(cherry picked from commit 3817133d926c8b8c9a17f75420c8dc7ec34b6102)
2024-04-07 14:35:10 +02: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
Vasilis d50ae28b15
Stop mop buckets from spilling when you push them (#26706)
(cherry picked from commit d4982bad3102c22f8374a697caa54b4aa6c14b5a)
2024-04-07 14:34:16 +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
DinoWattz cb56bfc0fd
Fix random clothing slots being able to hide character's nose and hair (#26708)
Fix bug and formatting

(cherry picked from commit fb0e8ad24dc3c44b3b4b6d578b67939b5ba3e25b)
2024-04-07 14:34:02 +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
lunarcomets 7ab412b5be
fix double interaction popup (#26684)
change popentity to popupclient

(cherry picked from commit 6b84a04cde59894995cd69328ae2fec662424c94)
2024-04-07 14:31:24 +02:00
Plykiya 97cdc4d931
Fix for items dropped being rotated to world north (#26662)
* Fix rotation of dropped items

* combined world position rotation function for dumpable

* scuffed implementation?

* less scuffed?

* even less scuffed... I guess

* capital D

---------

Co-authored-by: Plykiya <plykiya@protonmail.com>
(cherry picked from commit 5aadb17be79f487f7b665035489dbe6f9fd6fdea)
2024-04-07 14:31:22 +02:00
Nemanja 15682e4f60
Increase time inbetween anomaly pulses (#26677)
nerf anomaly pulse delays

(cherry picked from commit c87ba22d3ef0ec0bda7c0be6f035a9202444ac3a)
2024-04-07 14:31:07 +02:00
lzk 26b3a80ab6
Make typing indicator shaded (#26678)
(cherry picked from commit 025107ff5f5d4039544ba9289d1035fc032ea60c)
2024-04-07 14:31:01 +02:00
Simon 9dba7e8ddc
Make cyborgs hands explosion proof. (#26515)
* Make the advanced treatment modules beakers explosion-proof.

* undo changes

* Epic rename fail

* Explosion recursion data field

* Logic for data field

(cherry picked from commit 307a1c534dd132c8ce90b6fed79135452601a0b3)
2024-04-07 14:30:54 +02:00
Ed 4c1720df4e
Infinity books (#25840)
* setup text data

* roundstart reshuffling keywords with gibberish words

* saved data categorized

* add book with hints

* start redrawing books

* +4 book design

* +books +random visual upgrade

* finish first file

* finish lore file

* finish with books.rsi now authorbooks.rsi...

* aurora! and some fix

* nuke author books

* speelbuke update

* finish respriting work

* fix scientist guide visual

* setup datasets

* setup stupid funny random story

* restore author books, upgrade hint generation

* add variety to story generator

* add learning system

* minor textgen edit

* file restruct, hint count variation

* more restruct

* more renaming
add basis learning system logic. Spears locked for special book for test.

* nuke all systems, for splitting PR gods

* typo fix

* update migration with deleted books

* add random story books to maint

* Update construction-system.ftl

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: Hrosts <35345601+Hrosts@users.noreply.github.com>

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* typo fix

* interchangeably

* final

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: Hrosts <35345601+Hrosts@users.noreply.github.com>

* "."

* Update Content.Server/Paper/PaperRandomStorySystem.cs

Co-authored-by: Hrosts <35345601+Hrosts@users.noreply.github.com>

* Ubazer fix

* inadequate

* localized

* Update meta.json

* fuck merge conflicts

* fix jani book

---------

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>
Co-authored-by: Hrosts <35345601+Hrosts@users.noreply.github.com>
2024-04-07 14:30:40 +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
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
nikthechampiongr 9f7680698d
Fix grave digging sound indefinitely playing if dug by aghost. (#26420)
Admins bypass doafters. As such, the code that runs on doafter
completion is ran before the sound is actually created. This then leads
to the sound never being stopped, and as such it would infinitely play.

This commit gets around the issue by manually stopping the sound should
the doafter fail to start. If we could be sure that the doafter would
never fail, then we could just move the call to StartDigging above
starting the doafter but this is currently not possible.

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 83374935262265679e554780bcd42017238f059a)
2024-04-07 14:21:50 +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
Bixkitts 070d466494
MeleeHitSoundSystem (#25005)
* Began work to unscrew melee noises

* finished

* cleanup

* cleanup

* Update Content.Server/Weapons/Melee/MeleeWeaponSystem.cs

Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>

* _Style

* Fix merge

---------

Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit ae8a68b7cd1d4f89b4d9f429b49d5336dccac6bb)
2024-04-07 14:20:27 +02:00
Plykiya 3e38dc4de6
Fix: Prevent single-use hyposprays from getting the toggle draw verb (#26595)
Prevent single-use hyposprays from getting the toggle draw verb

Co-authored-by: Plykiya <plykiya@protonmail.com>
(cherry picked from commit 90a880a9bea64601db77d5bbb2b184d5371dc082)
2024-04-07 14:20:24 +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
drteaspoon420 929b8978dd
Fix 'Hypopen shouldn't display solution examine text' (#26453)
* stealthy hypo

* ExaminableSolution hand check when in covert implement.

ExaminableSolution now has 'hidden' datafield to enable chemical inspection only in hand.

* cleaning code

* more cleaning

* Hidden datafield renamed to HeldOnly

* review

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 4e618e9387ffe9696e1241f6073aaa03e126832d)
2024-04-07 14:20:11 +02:00
Tayrtahn 65b6765485
Prevent storing liquids in equipped buckets (#24412)
* Block access to solutions in equipped spillables.

* Stop Drink verb appearing if the solution can't be accessed.

(cherry picked from commit 1b94e0156311c918d17c7de4b79fedd328e04efc)
2024-04-07 14:20:07 +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
blueDev2 021931580f
Add new component to Make sound on interact (#26523)
* Adds new Component: EmitSoundOnInteractUsing

* Missed an import

* File-scoping

* Replace ID check with Prototype check

* Moved component and system to shared. Set prediction to true.

* Removed impoper imports and changed namespace of component to reflect changed folder.

* Following function naming theme

* All this code is basically deltanedas's, but it was a learning experience for me

* Update Content.Shared/Sound/Components/EmitSoundOnInteractUsingComponent.cs

* Update Content.Shared/Sound/Components/EmitSoundOnInteractUsingComponent.cs

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit daaa7c6de0d21c5b8d9c0b659eb62878a0410d3d)
2024-04-07 14:16:42 +02:00
takemysoult a2e3e0bc06
up stimulants (no sleep) (#25886)
* up stimulants (no sleep)

* Update SharedSleepingSystem.cs

(cherry picked from commit 97b390d35f503dd9bda35e0b3a6192b2a502d120)
2024-04-07 14:14:42 +02:00
Leon Friedrich 01e6149cc1
Atmos device performance improvements (#26493)
* Atmos device performance improvements

* AtmosDirection perf improvements

* Fix errors

* Add GasTileOverlayComponent arguments

* Make excite no longer invalidate a tile

(cherry picked from commit 888a3bda515a214733bf748c5d6a7e7c923a301e)
2024-04-07 14:14:34 +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
Zealith-Gamer 7bfed3dd33
Stop items that are being pulled from spinning (#26504)
* Fixed pulled items spinning when moved

* edited out others issues

* more reverts

* requested fix

* Removed "Optional:"

(cherry picked from commit 39753892c2b7a86fb7a10480a32a9dd8252ce80f)
2024-04-07 14:14:22 +02:00
metalgearsloth 290060b36c
Fix itemslots swapping (#25634)
Fix itemslots prediction

(cherry picked from commit fc4389f2d7b0ad94a80dcfa544af28ddab3885d1)
2024-04-07 14:14:13 +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
Mephisto72 eb86b7434f
Increase Ion Storm Weights (#26539)
This increases the probability for the following effects caused by Ion Storms:
Chance to affect a Station Borg: 50% -> 80%
Chance to replace a Law: 10% -> 20%
Chance to remove a Law: 10% -> 20%
Chance to shuffle Laws: 10% -> 20%

(cherry picked from commit 649af483e486e99785e9a1517fa3263c0723034e)
2024-04-07 14:12:33 +02:00
deltanedas 2c71088a14
combine same-tile explosions in the same tick (#25664)
* combine same-tile explosions in the same tick

* !

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
(cherry picked from commit 355d00a0f2529a5beac6426837fad129d45a41a6)
2024-04-07 14:11:55 +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
keronshb 4914b69307
Change Polymorph Actions to use Polymorph Proto Id (#26419)
* polymorph changes

Adds poly proto ids to polymorph action event and checks for proto id when performing

* nullable proto id

* Replaces instances of Polymorph prototype with a proto id and tryindex

* birdup

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 06b14f30cd9267abcb135e6031a273905cf1ba40)
2024-04-07 14:11:43 +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 36a21ba918
Transform cleanups (#25963)
* Transform cleanups

* Fix build

* ascension

(cherry picked from commit cdfee5aa0c95ea626271136b9e6ad78ad2000f49)
2024-04-07 14:11:37 +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
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
Tayrtahn c725fe4cf3
Arcade machine improvements (#24200)
* Give 'em something to talk about

* Wire panel visuals

* Wire graphics tweak

* More ads and thanks

* More ads for a noisy arcade

* New screen for space villain machines

* Implement EmitSoundIntervalComponent and a bunch of arcade noises

* Require power for sounds

* Allow earlier startup intervals

* Orange glow

* Audio attributions

* Include the PR link

* Replace EmitSoundInterval with expanded SpamEmitSound

* Remove pacman-themed arcade sounds

* Documentation good.

* Updated methods to use Entity<T>

* Refactored SpamEmitSound to get rid of accumulator and chance.

* Fixed prewarm logic

* Moved stuff to Shared

* Fix outdated YAML

* Better prediction, auto pause handling

* Make enable/disable reset the timer instead of trying to save it.

(cherry picked from commit b1ba6b5bb615615cc58f255dc9fe84c5ffe8822b)
2024-04-07 14:08:06 +02:00
Nemanja 00589754f5
Use nav beacon locations for announcements (#26437)
* use nav beacon locations for announcements

* :thumbs_up:

(cherry picked from commit 766192f4b509ff6bfc02ee1c665f1ba5b1bdc831)
2024-04-07 14:07:12 +02:00
superjj18 df88e0dded
Remove broadcast cooldown (#26492)
* Removed inconsistent broadcast cooldown whenever the "Announce" button is pressed on the communications terminal.

* Revert "Removed inconsistent broadcast cooldown whenever the "Announce" button is pressed on the communications terminal."

This reverts commit c730d6499b6908f6ae7c52e21d5338fa3b7eb80e.

* Reapply "Removed inconsistent broadcast cooldown whenever the "Announce" button is pressed on the communications terminal."

This reverts commit 3c2d66af865a11ca55eb0e98db58a955c0d70c00.

* -Removed cooldown entirely

(cherry picked from commit 578f7e4f2c1cde38e1c66fa2b5fbbb2903576dec)
2024-04-07 14:04:55 +02:00
Leon Friedrich 4e661636d7
Misc ItemToggleSystem changes (#26489)
* Minor ItemToggleSystem tweaks

* Update visuals on startup

* Remove SetIgnited

* Misc toggle fixes

* Update ItemToggleHotComponent.cs

(cherry picked from commit 8a6879bb1b660425faaa30e6bb20746e47603495)
2024-04-07 14:04:40 +02:00
Leon Friedrich f4e3cb4cf6
Add stacktrace to action error logs (#26486)
Add trace to action error logs

(cherry picked from commit 92a444311f57dde668cfc583e621e1db87555aea)
2024-04-07 14:04:25 +02:00
0x6273 65f8b14ca2
Body code cleanup (#24946)
* Fix test

* Kill float accumulators

* Use entity proxy methods

* DataField auto name generation where possible

* Kill comp properties

* Clean up server comps

* Make events record structs

* Clean up shared body code

* Clean up server body code

* Rename organ events to be same names as in med refactor

(cherry picked from commit 37b8d78dac047122fe77038bafb8e682132db3cd)
2024-04-07 14:04:17 +02:00
Wrexbe (Josh) 6d701a77af Fix round start crash (causing instant restart) (#26579)
* Fix round start crash

* Make `TryCreateObjective` more error tolerant
2024-03-31 00:04:54 +00:00
nikthechampiongr b50633483e
Minor cleanup of cuffablesystem (#26434)
* Fix cuffs breaking after they stop being pulled

* Do proper interaction check for UncuffAttempt

* Minor cleanup

Take as much out as possible from _net.IsServer() if blocks.
Misc cleanup

(cherry picked from commit 4630e94c661f7af35610e24b7bd337bc30ef9fd5)
2024-03-27 18:38:49 +01:00
Nemanja a196ecbbd9
Nerf ninja research stealing (#26421)
* nerf ninja steal objective

* fubar

(cherry picked from commit 3b9c5d43ec97a0693ced0118fcfcb8467aa5595e)
2024-03-27 18:38:13 +01:00
Simon 1323f8cef3
Make all implants unable to be implanted more than once (#26250)
* Make mind shield implants unable to be implanted more than once

* Default AllowMultipleImplants to false and update implanters.yml

* Use TryComp instead of TryGetComponent

* Deny multiple implants for fun implants too.

* Make comment more precise

(cherry picked from commit 771390bb6741074935e5f24c0aa9c87bc7b5ad09)
2024-03-27 18:38:11 +01:00
Hannah Giovanna Dawson 7fbc065147
SS14-17313 Chatfactor: Chat Censorship Systems (#25908)
* SS14-17313 Chat Censorship Systems

Adds some systems to manage chat censorship:

1. No-op: does nothing
2. SimpleCensor: a regex-free censor with a variety of rules to use
3. RegexCensor: a censor that uses regex.

This exposes a singleton backed by a builder pattern (ChatCensor) that
is set up, probably during the code init phase, and then globally available
for your censorship needs.

* Migrate to Shared

* Add a reset function to the builder.

* Resolve PJB's feedback; add unit tests

(cherry picked from commit bf98a6a8bb2a57fb149459d6b053eaaf6abc8cd7)
2024-03-27 18:38:05 +01:00
Tayrtahn aa766da2c5
Code cleanup: Purge obsoleted SharedPhysicsSystem methods (#26287)
Updated calls to SharedPhysicsSystem methods

(cherry picked from commit 964c6d54caae45b205a326143f56d6458a1bbc8a)
2024-03-27 18:35:38 +01:00
nikthechampiongr 11d85b8796
Create DeviceNetworkJammerComponent & System as a general way for entities to act as jammers (#26342)
* Add DeviceNetworkJammerComponent & System

Allows for entities to "jam" DeviceNetwork packets.

Whenever a device attempts to send a packet, the
DeviceNetworkJammerSystem listens for the BeforePacketSentEvent.
From there if any entity with the jammer component is within range of
either the sender or receiver of the packet the event will be cancelled.
Additionally jammers can only block packets in certain networks. If a
packet is not being transmitted in one of the networks it can block then
even if the jammer is in range the event will not be cancelled.

The range is stored in the jammer component along with the networks it
can jam.

Jammable network ids are stored as strings which seems to be how custom
networks are stored (E.g. network ids for suit sensors).

To allow for all of this, the BeforePacketSentEvent was modified to
provide the NetworkId.

* Make JammerSystem for the radio jammer use the DeviceNetworkJammer. Remove redundant event.

* Replace calls to TryDistance with InRange

(cherry picked from commit 266cc85f57c883b3a604a66da91d94bb1e18ec5d)
2024-03-27 18:35:36 +01:00
Leon Friedrich 369e3eee99
Use entity queries in ambient sound & power receiver systems (#26410)
(cherry picked from commit 31d70db547f855d2a3d4075e4fcf54d1c87c0f06)
2024-03-27 18:35:13 +01:00
IProduceWidgets 242d6dd30e
Fix admin verb to set unspawned ballisic ammo count (#26411)
Don't crash if an invalid value is given.

(cherry picked from commit 451890b85b49e17a0019d107db4a31a48cdd3518)
2024-03-27 18:35:09 +01:00
keronshb 9cc30d2b00
Fixes store purchase events and adds support to raise a directed event (#26389)
* fixes store event check

* raise directed product event

(cherry picked from commit 4dced51f0d8d008714a14675b48c8fa2b7fa0ace)
2024-03-27 18:33:42 +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
nikthechampiongr 1a1e423a44
Add stealthmins (#26263)
* Add stealthmin command.

* Update Content.Server/Administration/Commands/AdminWhoCommand.cs

As suggested by CE.

Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>

* Add admin notifications for admins toggling stealthmin.

* Localize stealthmin command

---------

Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>

(cherry picked from commit dca0c6694bce56fcf962feab2b59ad4a849f4533)
2024-03-27 18:32:01 +01:00
KISS 9241d51be0
Landmine stepoff (#22962)
* make landmine work on stepping off

* update methods naming

* made both step modes possible

* updated stepoff event raise to not interfere with game physics internals

* added comments

* figuring out how audiosystem works

* added beep sound effect, updated how stepoff trigger works to make it more consistent

* updated source in attributions.yml

* made stepoff working every time

* introduced suggested changes

* updated janitor's WetSignMine to have audio

* made cleaner events and bashing my head at OnEndCollide event raise

* inverted conditional where applicable

* review

---------

Co-authored-by: Yurii Kis <yurii.kis@smartteksas.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 54dd273f660d6d8d523d0771bb8d8437373b082e)
2024-03-27 18:28:59 +01:00
Emisse 2c493a1fd0
Haunted dungeon template (#23768)
* haunted dungeon

* Initial work

Still needs prefab gen work to make it interesting.

* ime a worm

* weh

* Work

* Slight tweaks

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 952b7f4c4e8e957c0c3765f7b20f2745c9297e27)
2024-03-27 18:28:44 +01:00
DEATHB4DEFEAT 758540ffc9
Admin New Player Notification Sound (#24327)
play a sound to active admins when a new player joins

(cherry picked from commit b9db06ebb1af41f2809f6c31dc4990b6a729d041)
2024-03-27 18:28:29 +01:00
NullWanderer 20358fcdb7
Faction Fixes 2024-03-24 00:31:49 +01:00
Callmore a31fc4df45
Tiny shove fix. (#25353)
* Remove second shove check.

* Change when popups and sounds are created.
Reduces phantom shoves that feel bad.

* why didn't i think of this i saw it earlier...

* Replaced Is fields with prefix

* remove some dependencies to fix tests???

(cherry picked from commit 5a2c74499889f80393a90335b182632cfbe8e2fb)
2024-03-24 00:29:42 +01:00
NullWanderer e17bdaeaec
Fix args 2024-03-24 00:20:32 +01:00
Tayrtahn 584edebb95
Fix bypassing vaulting clumsy check with verb action. (#24977)
* Fix bypassing bonking with verb

* Revert "Fix bypassing bonking with verb"

This reverts commit efa0f0f5777b893bcee5a852994cfa1e3fda3e71.

* Properly refactored BonkSystem.

* Oh hey, this is redundant now

* Better solution

* Reduced default bonk chance from 75% to 50%

* Also do a little grammar fix

* Moved BonkChance from BonkableComponent to ClumsyComponent.

* Revert "Moved BonkChance from BonkableComponent to ClumsyComponent."

This reverts commit 0acbd9273f20ec478692603781adf15e06e5ed41.

* Another little grammar fix

* Matched default bonk doAfter length to default climb doAfter length

* Fixed duplicate popups

* Check CanVault with verb use too. Add granularity to ClimbingComponent and remove Leg/Foot requirement.

* Don't show verb if you can't climb

* Removed CanForceClimb

* byref record struct

(cherry picked from commit 225bc3c5aeffbef6286b607b02cd24a8ad75a437)
2024-03-24 00:14:32 +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
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
nikthechampiongr 01e6a24c63
Fix puller being improperly unset when pulling stops. (#26312)
Fix puller not being improperly unset on PullableComponent while being unpulled.

When unpulled, the pullableComp has its puller field set to null after the message signifying the pulling has stopped
has been sent. Since the component has a field to determine whether its owner is being pulled which is determined by
the puller field, systems listening on the event would think that the owner of the component was still being pulled.

(cherry picked from commit a6c018d755ee4f35fb8e3ab597fa90c7592fe920)
2024-03-24 00:12:37 +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
Errant e67d8e51f2
Thrown soap/banana/(etc?) will fail to slip until it lands (#24494)
* throw miss

* event

* whoops

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

* fix popup duplication

* Separate cancellable event

* no popup, no problem

* remove leftover stuff

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit e061cb3f8c9dc8ddc26624ead2086dfb41465aae)
2024-03-24 00:04:19 +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
nikthechampiongr ad5628777b
Simplify DoAfterArgs behavior for movement and distance checks (#25226)
* Merge BreakOnWeightlessMove and BreakOnMove. Provide different theshold for weightless movement.

* Adjust WeightlessMovementThresholds. Put a thing I forgot to put in the doafterargs.

* Make DoAfterArgs only use OnMove to determine whether to check for
movement and MoveThreshold to determine the threshold regardless of
weightlessness. Gave DistanceThreshold a default value which will always
be checked now.

* Fix issue introduced by merge.

* Use interaction system for determining whether a distance is within range

* Fix incorrect doafter args introduced by previous merge.
Forgor to commit these.

* Exorcise ghost.

The execution system should have been deleted when I merged previously.
For a reason I cannot comprehend it came back, but only the execution
system.

* Exorcise ghost Pt. 2

* Allow for movement check to be overriden in zero g and adjust doafter args where needed.

You can now override checking for movement in zero g with the BreakOnWeightlessMove bool. By default it will check.
The following doafters were made to ignore the movement check in zero g:
- Healing yourself with healing items,
- Removing embedded projectiles,
- Using tools like welders and crowbars

* Adjust distance for cuffing/uncuffing to work. Make injections not break on weightless movement.

* Fix evil incorrect and uneeded comments

(cherry picked from commit 362d56981fd7654f6ebec36f16cc8fabdd04b6a7)
2024-03-24 00:03:28 +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
SlamBamActionman 285804d4dd
Fix recycled containers deleting items inside them (#26045)
* Removes items from containers in reclaimers

* Made it into an event instead

* Sloth review comment

* Fix indentation and rename field

(cherry picked from commit d7484ae9f57477a5ec5c575e3077aa94c0564db6)
2024-03-24 00:02:10 +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
shamp ea0ad9b7b0
Zombies can very slowly regen heat and shock damage (#25925)
Update ZombieComponent.cs

(cherry picked from commit 3884c2d2d2e8c907a33cbef28a55bda701cc4963)
2024-03-24 00:01:45 +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
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
Pieter-Jan Briers 00beb141ca
Fix barotrauma calculations
The math for our pressure damage (barotrauma) system is directly taken from TG. The constants are the same and the math is almost the same. However there are two errors.

1. Pressure damage started being applied within the WARNING bounds, rather than the HAZARD bounds. This means you started taking low pressure damage at 50 kPa instead of the intended 20 kPa, and also the HUD icon didn't show "danger" like it should even if you were already taking damage.

2. The calculations for high pressure damage were wrong. These are supposed to be linearly scaled, but the function was wrong so the scaling didn't actually work properly (especially when considering the fixed bounds above). This appears to be the case because the function was taken from an incorrect comment in the original source, rather than the real math.

Both of these issues are now fixed to match the TG behavior. Note that this somewhat nerfs pressure damage in non-extreme circumstances. e.g. a room at 40 kPa now gives NO pressure damage, whereas previously it would do full space damage.

The description of the pressure alerts is wrong for "low" severity, but I can't be arsed to fix that right now. Alerts don't have a way to change the description depending on severity...

(cherry picked from commit b5138b245e1782cc062b9bdf165600b7974e9ed7)
2024-03-23 23:51:54 +01:00
Golinth b56551f310
Criminal Record Icons below Job Icons (#26203)
SS13 Criminal Record Icon Location REAL

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

(cherry picked from commit 21de5e9a08929e8c710030b887c081bf6afc9649)
2024-03-23 23:51:45 +01:00
LordCarve cd0b4082bd
Unify `Content`'s `EntitySystem` logging (#26216)
Use Log with generated sawmill name rather than explicitly named one for all non rule-based Content EntitySystems.

(cherry picked from commit eeaea6c25b496106eb741e93738f2ab8503949ba)
2024-03-23 23:51:39 +01:00
rosieposie 304fdcd356
Add Corspman Access & Airlocks (#892)
* add corpsman access & mantis maint airlock

* fine

* accessible guy

---------

Signed-off-by: rosieposie <52761126+rosieposieeee@users.noreply.github.com>
2024-03-19 13:13:13 +01:00
Debug fed10b87a4
Merge pull request #973 from DebugOk/2024/03/15-merge-upstream
Merge upstream
2024-03-17 18:09:43 +01:00
LordCarve f8ea31a192
Obsolete `Logger` cleanup for `EntitySystem`s part 2 (#26159)
* Kill the static InRangeUnOccluded

* Adjusted 4 more EntitySystems that were missed.

(cherry picked from commit 7d275a4b5e4188db424cc417c609dced3f9aca89)
2024-03-17 15:11:33 +01:00
Ed 58e6820428
SlowContactsSystem to SpeedModifierContactsSystem mini rework (#26110)
* rework

* update logic

(cherry picked from commit c35ff87e146f0cda7c10782f4ab80b784b51e5fe)
2024-03-17 15:11:29 +01:00
LordCarve d2869e92df
Fix anomaly decay logs (#26180)
Fix anomaly decay logs (#26122)

(cherry picked from commit d8a7b33b43cd9b0e241dc189653cbd4cf4c49086)
2024-03-17 15:11:11 +01:00
Krunklehorn 116df077f2
Fix StrippableSystem blunders (#26166)
* Fixes target hand check when no hands were needed.

* Adds missing CanStripX checks.

* Whitespace.

* Fixed bad math causing instant strips.

(cherry picked from commit 8ecb78ee5ac879ef0c79e9c35f3d05e72faf72fd)
2024-03-17 15:11:05 +01:00
Hannah Giovanna Dawson 385a8bd07a
SS14-12462 Nerf food and drink vending machines (#25999)
* SS14-17183 Nerf vending machines

Vending machines provide too much food
(and drink) at the moment to the crew,
robbing the chef/bartender of a reason
to exist, and robbing the janitor of a reason
to want to refil vending machines early in
the round.

This PR adds a new "initialStockQuality" field
to vending machines and sets it at 0.33 for almost all
food and drink vendors. The intent at the moment
is to drop food and drink vending machine stocks
by somewhere around a half - two thirds of the time,
about two-thirds of the stock of a given item will be
missing.

This number can be tuned to discourage people relying
on vending machines and make round start
a bit more variable when hunting noms.

* Add comment to InitialStockQuality.

* Update Content.Shared/VendingMachines/VendingMachineComponent.cs

---------

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
(cherry picked from commit 41093ab03cc6a643ee7721de3567963b34fe8e54)
2024-03-17 15:10:44 +01:00
Ed b9f41c2d48
Convert "IgnoreWeatherComponent" into "BlockWeatherComponent" (#26135)
* ignore

* doc

(cherry picked from commit 4aa72af574cc7a3370085fb70831fbde1df29077)
2024-03-17 15:10:41 +01:00
Magnus Larsen e47e00dc13
Prevent dead players from turning bar stools (#24308)
Prevent dead users from turning their bar stools

Previously, players could always turn a bar stool or office chair they
were buckled into; even while stone cold dead!

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

* add support to randomsprite

* bababa

* finalize spriting work

* add to game

* fix

* remove space

* edit patelle, +1 decor variant

* added only pants, some sprite fix

* inflation

* fix mixed

* not tested commit

* Revert "not tested commit"

This reverts commit 4a904df3452263e87c9cb819ab5d8cf411ebe468.

* naked human is fun

* update

* add new style

* some sprite pixel tweak

* Update meta.json

(cherry picked from commit 986ac589b44687fd2f3b71da00a52434db75abe3)
2024-03-17 15:09:40 +01:00
Krunklehorn faa39fccf5
StrippableSystem doafter overhaul (#25994)
* Initial commit

* Fixed short circuiting

* Use DebugTools

* Use Entity<TComp> more, and make them nullable

* Bring these two together

(cherry picked from commit 41ca8f3dfcb986432e1e509247bf239cac137836)
2024-03-17 15:08:10 +01:00
Pieter-Jan Briers 17c1a5a7fa
Throttle people trying to connect to a full server. (#20972)
* Throttle people trying to connect to a full server.

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

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

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

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

* Use new NetDisconnectMessage API instead.

* Add admin.bypass_max_players CVar.

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

(cherry picked from commit 0ecc5e8c96c235af265ab747d7345b363f94b1e4)
2024-03-17 15:07:14 +01:00
Mr. 27 d7c48b4028
Pipebombs and IED rework (#25705)
* inital

* 2-9

* add crafting function, rename ied to fire bomb

* add firebomb ignition

* fikss

* change damage values

* add note

* fix tests i think

* ok

* good

* Review

* warning

---------

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

(cherry picked from commit 3cb1c585c53f694f5ceb9720057bb765673970ec)
2024-03-17 15:06:54 +01:00
Mr. 27 6af478ae29
Zombie wideswing and misc fix (#26064)
* inital

* b

* Update MeleeWeaponComponent.cs

* Update Content.Shared/Zombies/ZombieComponent.cs

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit 3981173a1546dd1d4a21b1c85451ea7eaf69c6f8)
2024-03-17 14:58:53 +01:00
veprolet ac09dc586c
Cycle injector transfer amount on alt. use (#25566)
* Add toggle verb for injector transfer amount

* Fix injector verb priority scalability

---------

Co-authored-by: veprolet <>
(cherry picked from commit ad6ac73f6f41d1cbd3fe80a43c8bf4b83e03f392)
2024-03-17 14:58:50 +01:00
Vyacheslav Kovalevsky 4b446c2e62
Fix cream pie bomb when eaten or sliced (#25928)
* fix bomb activation when eaten

* no swap / no eject

* activate when sliced

(cherry picked from commit 0d0edbba4a1c2af7ecef3318b5f9fe287a63fab5)
2024-03-17 14:55:56 +01:00
liltenhead ef7438efc9
Buff Zombie Infection (#25954)
* Infection chance

* Infection Damage

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

* Criminal status now linked to name instead of identity

* parole loc

* Test fix

* review changes

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

* cleanup

* more cleanup

* review changes

* change outdated comments

* rename

* review changes

* remove event subscription

* replaced event with trycomp

* default value

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

* species info button in character profile editor

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

* skrek

* destroying evidence of secret vox plot

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

* finished pages

* additional info

* weh

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

(cherry picked from commit a41772a006302bbe267793569b4b0d171eb82c87)
2024-03-17 14:52:08 +01:00
nikthechampiongr 407cba4ec7
Fix shield absorbing asphyxiation damage (#25972)
* Fix shield absorbing asphyxiation damage

Shields will no longer reduce damage on their user that they themselves
can't absorb.

* Update Content.Shared/Blocking/BlockingSystem.User.cs

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit b0ffed1607452a2d4186228fc2343d10035611e5)
2024-03-17 14:51:52 +01:00
nikthechampiongr 0c5c37f3e5
Fix misprediction of emergency access (#25973)
The EmergencyAccess bool on the AirlockComponent would not get synced to the client

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

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

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

* yeah this thing

* PJB review

* optimization

(cherry picked from commit f3f4616c49317898aeeff304160b0b50df9ee851)
2024-03-17 14:46:26 +01:00
Plykiya 505106c7ab
Syringes that spawn with content start in inject mode (#25881)
* Remove unnecessary datafield names, syringes with stuff in them start in inject mode

* No trash tag

* Remove ViewVariables since DataField has them implicitly

* Revert "No trash tag"

This reverts commit 2c42172653d2cc70d58bd5bedf61a880b939bf20.

* Get rid of tags entirely for PrefilledSyringes

---------

Co-authored-by: Plykiya <plykiya@protonmail.com>
(cherry picked from commit 5cb48c922fa7236d07b463f0c38ada2d5805e54b)
2024-03-17 14:46:21 +01:00
Velcroboy 5acb90a4eb
Add magnet pickup system from Frontier (#949)
* Add magnet pickup system from Frontier

* No wl needed here

* Add translation strings

* Making code optimizations, missing component on upgraded smelter

* Update lathe.yml

---------

Co-authored-by: Velcroboy <>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>
2024-03-17 14:38:11 +01:00
metalgearsloth f5a6a11ebd
Fix FTLToDock (#25803)
* Fix FTLToDock

- Removed Enabled coz unneeded really.
- Fixed SetCoordinates call that got dumped at some point oop.

* Fix this docking check

(cherry picked from commit 92872e546ad5c281980ab8f56fea970c1921f8e4)
2024-03-08 12:54:53 +01:00
metalgearsloth f102e8ff75
Shuttle console + FTL rework (#24430)
* Add shuttle interior drawing back

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

* Revamp shuttle console

* Bunch of cleanup work

* Lables sortito

* dok

* Pixel alignment and colours

* Fix a bunch of drawing bugs

* Shuttle map drawing

* Drawing fixes

* Map parallax working finally

* weh

* Commit all my stuff

* mic

* deez

* Update everything

* Xamlify everything

* uh

* Rudimentary blocker range

* My enemies have succeeded

* Bunch of changes to FTL

* Heaps of cleanup

* Fix FTL bugs

* FTL

* weewoo

* FTL fallback

* wew

* weh

* Basic FTL working

* FTL working

* FTL destination fixes

* a

* Exclusion zones

* Fix drawing / FTL

* Beacons working

* Coordinates drawing

* Fix unknown map names

* Dorks beginning

* State + docking cleanup start

* Basic dock drawing

* Bunch of drawing fixes

* Batching / color fixes

* Cleanup and beacons support

* weh

* weh

* Begin pings

* First draft at map objects

* Map fixup

* Faster drawing

* Fix perf + FTL

* Cached drawing

* Fix drawing

* Best I got

* strips

* Back to lists but with caching

* Final optimisation

* Fix dock bounds

* Docking work

* stinker

* kobolds

* Btns

* Docking vis working

* Fix docking pre-vis

* canasses

* Helldivers 2

* a

* Array life

* Fix

* Fix TODOs

* liltenhead feature club

* dorking

* Merge artifacts

* Last-minute touchup

(cherry picked from commit c5486873db0d6826122eb1f30007e392fc101082)
2024-03-08 12:54:53 +01:00
metalgearsloth fa61952f51
Add trade stations (#23863) 2024-03-08 09:52:50 +01:00
exincore d4d8898496
fix(emag): Emagging a lock properly unlocks the component (#25858)
* fix(emag): Emagging a lock properly unlocks the component

Fixes #24860

* fix(emag): Emagging a lock no longer duplicates the unlock sound

(cherry picked from commit 370a79fbc847c75aca4d733e1cac2bb56a19776b)
2024-03-07 01:52:55 +01:00
Tayrtahn 549d4f18cd
Add SharedPopupSystem.PopupPredicted (#25811)
* Added SharedPopupSystem.PopupPredicted

* Documentation improvement

(cherry picked from commit 0738829510d823bf0f22eaf197f6f5cc3744bbc3)
2024-03-07 01:52:38 +01:00
Tayrtahn c255822389
Add prediction to hand labeler labels (#25869)
Added prediction to labels

(cherry picked from commit f4976a32886850df2033e7866d0c9a5df37be1af)
2024-03-07 01:27:58 +01:00
exincore 31a4cdab4c
Fixed Emag wiping door access without bolting open (#25836)
(cherry picked from commit 68bb57bbaf41b84544ccdeb683ad356e2b344cc6)
2024-03-07 01:25:19 +01:00
deltanedas c0bfa9fc96
fishops nerf real (#25148)
* refactor ops

* inherit dna and fiber when fish hydrated

* :trollface:

* kid named finger

* :trollface:

* move rehydrating to shared :trollface:

* nobody noticed the popup being missing all this time

* method ops

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
(cherry picked from commit 550612a37f4fd61088c994b289c833ed3d564855)
2024-03-07 01:24:59 +01:00
Ed da5758ba4e
Mineshaft (#25733)
* content

* catwalks

* fix fucking icons

* finish PR

* +1 room

* fix

(cherry picked from commit ace82854406631bad58cd731899fc8e20ef21e65)
2024-03-07 01:24:40 +01:00
Plykiya 38719830b6
Syringe QoL improvements (#25480)
Co-authored-by: Plykiya <plykiya@protonmail.com>
(cherry picked from commit 4f7ff56e87d78a2acc0936466f83a6b841ee8fea)
2024-03-07 01:24:05 +01:00
Nemanja 026f5305cd
patch QSI container issues (#25700)
* patch QSI exception

* fuck don't die

(cherry picked from commit 9a795b35adba4575f2674f937f8b4bb566b3cb15)
2024-03-07 01:19:42 +01:00
LordCarve 297c97d556
Make `ItemSlots` more verbose + AME proof of concept (#25779)
* Make itemslots more verbose with AME proof of concept.

* Remove unnecessary [DataField] strings and use null coalescing in whitelist checks.

* Change optional popup fields into LocId.

(cherry picked from commit 06d755a860fa60dd393bfece6495109af8b60c21)
2024-03-07 01:19:38 +01:00
Tayrtahn b97afd8346
Add prediction for puddle and spillable examines (#25794)
Prediction for puddle and spillable examines

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

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

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

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

* refactor: xml-doc for LobbyPlaylistChangedEvent

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

---------

Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
(cherry picked from commit 4c87dcd3cb92855df1fa01dea52d2ddd09f2adce)
2024-03-07 01:18:33 +01:00
Errant 63e45f9532
Alerts for breathing plasma/tritium (#24484)
* Alert autoremove v0

* Code cleanup and timing

* comment

* Tritium, code compression

* not resolving manually

* reduced lookups, new comp

* fix-fix yes

* use RemCompDeferred, handle OnUnpaused

* missed a todo

* entitysystem resolve

* remove unnecessary component updates

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

* Code cleanup

* comments

* combines AutoRemove input into Clear

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

(cherry picked from commit ecd2d5a644540c6ad28903ee4fb2af87876e3030)
2024-03-07 01:17:31 +01:00
Krunklehorn 1fb8bad18f
Weight based AreaInsert and Dumpable delay, a janitor qol tweak (#24899)
Weight based delay, retuned average, fixed comments

(cherry picked from commit c775410370a650aa51a1feda99f45cefda0c811e)
2024-03-07 01:17:27 +01:00
DrSmugleaf 56dd39497a
Make the round end sound collection a cvar (#25741)
* Make the round end sound collection a cvar

* Fix comment

* Clarity

(cherry picked from commit 30ccde0a47f65d0f6b0641f5bf92d95650c4fb87)
2024-03-07 01:13:37 +01:00
deltanedas 2ffd042e9b
make suicide actions require confirming (#24609)
* add ActionAttemptEvent

* add ConfirmableAction compsys

* make suicide actions confirmable

* use new trolling techniques

* better query and dirty them

* death

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
(cherry picked from commit ad3f3a5d360be6f7c8acb9c7753b45653a28cc0f)
2024-03-07 01:12:21 +01:00
Nemanja f2beed936c
remove doorslam sound (#25737)
(cherry picked from commit 2852483b5caf02c9f6688395fc97b170e6d84e82)
2024-03-07 01:11:56 +01:00
LordCarve ba36e5195f
Refactor AME to use ItemSlot for Fuel (#25558)
* Using wrench on AME doesn't first try to put it in.

* Refactor AME to use ItemSlot for fuel.

* Apparently these names want to match.

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

* Zombie initial pass

* Rebase, Traitor

* Nukeops, More overloads

* Revert RevolutionaryRuleComponent

* Use TryRoundStartAttempt, Rewrite nukie spawning

* Comments, Add task scheduler to GameRuleSystem

* Zombie initial testing done

* Sort methods, rework GameRuleTask

* Add CCVar, Initial testing continues

* Might as well get rid of the obsolete logging

* Oops, i dont know how to log apparently

* Suggested formatting fixes

* Suggested changes

* Fix merge issues

* Minor optimisation

* Allowed thief to choose other antags

* Review changes

* Spawn items on floor first, then inserting

* minor tweaks

* Shift as much as possible to ProtoId<>

* Remove unneeded

* Add exclusive antag attribute

* Fix merge issues

* Minor formatting fix

* Convert to struct

* Cleanup

* Review cleanup (need to test a lot)

* Some fixes, (mostly) tested

* oop

* Pass tests (for real)

---------

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

(cherry picked from commit 4e6c59cfe51211064d79a727cc2d37c2a2f55a2c)
2024-03-07 01:06:59 +01:00
metalgearsloth adf3a95292
Add anchorable flags (#25667)
Added it to cargo pallet and the ATS puter. Small steps. Also moved the log until the anchoring is actually confirmed to prevent dummy logs.

(cherry picked from commit 542574261731a91483d0bdca82abb7a3f81c05fd)
2024-03-07 01:05:18 +01:00
Menshin 37c7ac7931
Add space heaters (#25250)
(cherry picked from commit 98843511014e1b5fce34b7e1215179dd3d0f94c8)
2024-03-07 01:05:02 +01:00
metalgearsloth 444801f137
Fix gun cycling ammo count update (#25635)
Doesn't update correctly when cycling.

(cherry picked from commit fc0ff8fb313d8dfddf803c19a19bf2629ce89e90)
2024-03-07 01:04:01 +01:00
metalgearsloth 0c65749187
Fix projectiles (#25636)
(cherry picked from commit d204896bf57fe6a9e90ae276d16c282bf0037126)
2024-03-07 01:03:19 +01:00
Krunklehorn 1456ed8c0b
Revert "Fix ItemSlots prediction" (#25610)
Revert "Fix ItemSlots prediction (#25552)"

This reverts commit ad29dbe302ac921b9e3f6cbd3ded79788db27b46.

(cherry picked from commit 6485dd4f4de1167523c38d2aa7ffe79f440b4386)
2024-03-07 01:02:33 +01:00
Julian Giebel c9f4910cb9
News UI overhaul and PDA notifications (#19610)
(cherry picked from commit 0752acdc2ca2db43581e2c0d95a5d96041247bc9)
2024-03-07 01:02:24 +01:00
LankLTE b5e4b7049f
Zombie Diona Fixes (#25404)
No reform, zombie nymphs

(cherry picked from commit cc865c547ba9c313b7573155759d34cd750f549f)
2024-03-07 00:59:50 +01:00
Whisper e0d84f2db2
Whisper bleed update v3 (#25434)
* Whisper bleed update v3

* missed a few

* Add bleeding message to health analyzer.

* Fix bleed notification not updating.

* Apparently this either doesnt exist

(cherry picked from commit ff65cb7b0caaeb9edd9461eff942bdc6f5eb7f50)
2024-03-07 00:59:34 +01:00
Ed 64ccfc1afb
Handheld Mass Scanner (#25526)
* handheld

* Update meta.json

* Update meta.json

* Update cargo.yml

* research

* add to borg

* bruh

* borg to T2

* fix

(cherry picked from commit 7a5f81ddb46e47078b983bfc9ba015ee67752ee3)
2024-03-07 00:59:22 +01:00
SlamBamActionman ecdef48ce4
Add nose customization to humans & dwarves (#25557)
Initial commit

(cherry picked from commit 3af2928a25c4cbc0ee6e8edabf317d060b652b06)
2024-03-07 00:59:12 +01:00
Whisper da5b4ee627
handcuff replacements are faster to escape from (#25601)
makeshift handcuffs are easier to escape from

(cherry picked from commit 74232f983129b97d6c2564b904eb7ad7f2a49cf5)
2024-03-07 00:58:59 +01:00
Pieter-Jan Briers e7a3b82a8d
Use new ComponentPauseGenerator (#25183)
Also includes some (non critical) changes to the solution file to re-organize the Roslyn components.

(cherry picked from commit e00f74505c62310bd15aeaba8d6530f648397074)
2024-03-07 00:57:05 +01:00
SlamBamActionman c7d16b4c6b
Remove self-uncuff spam suicide, damage changes (#25161)
* Initial commit

* Remove damage from cuffs entirely

* Changed from Action uncuffing cooldown to UseDelay cooldown

* Minor merge conflict fix

* Edit the actual correct line

* Submodule fix

(cherry picked from commit 485fb4cb652793ab4f9cbe90bb2cbf555fbf5540)
2024-03-07 00:56:26 +01:00
Pieter-Jan Briers 5d93d35fdf
Character profile sanitization improvements (#25579)
Validate that job and antag prototypes can actually be set in character profiles, rather than just checking if the prototype exists.

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

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

(cherry picked from commit 8d244f7b76ba881253eb94611acaab31865c3920)
2024-03-07 00:56:04 +01:00
Tayrtahn f40668818b
Add a container display to dispenser UI (#25391)
* Implemented contents display for dispenser UI

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

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

* Resolve the netent into a euid first

---------

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
(cherry picked from commit 100ece2e2078ab2fe99f4ce1ab36b2cd05319772)
2024-03-07 00:53:04 +01:00
metalgearsloth 398bbde497
Fix ItemSlots prediction (#25552)
IDK what this arg is for but seems okay with guns. Without it it always thinks the insertion can work.

(cherry picked from commit ad29dbe302ac921b9e3f6cbd3ded79788db27b46)
2024-03-07 00:52:44 +01:00
MilenVolf bea2046baf
Toggleable items shape change on toggle state (#25392)
* Toggleable items now can change their shape depends on toggle state

* Update Content.Shared/Item/SharedItemSystem.cs

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit 1a5f7c39b2a2c244d5d947d8ff8f09250f21450b)
2024-03-07 00:52:34 +01:00
metalgearsloth 2b5aef7764
Fix cuffs popup prediction (#25553)
(cherry picked from commit a440ccfc7c0d9dcaa68a419cac50f71bde1e42a1)
2024-03-07 00:52:30 +01:00
Krunklehorn a8d9ddd53e
Fix candy bowls (#25514)
* Before SharedItemSystem

* Fixes mispredict, removed unused

* Fix physics

(cherry picked from commit 902198d7e0c85f62ac91a0ff2cd275c0e7e77d56)
2024-03-07 00:52:26 +01:00
Debug b1958e9ac6
Revert "Cleanup ExecutionSystem (#24382)"
This reverts commit dc56c5992f.
2024-03-07 00:51:07 +01:00
nikthechampiongr dc56c5992f
Cleanup ExecutionSystem (#24382) 2024-03-05 09:55:50 +01:00
metalgearsloth 8910a98a3f
Selectively revert gun penetration (#25551)
The collision layer check doesn't work and I don't have time to fix it.

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

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

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

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

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

* Fix jittery job icons in lists.

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

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

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

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

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

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

* Moved to Shared and networked

* Revert "Fix formatting problem with FullOpened"

This reverts commit f8353403da830a4402bdd457bcf24a2432a5f566.

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

* prying, too

* ack

* eek

(cherry picked from commit ce0a51fc29675b3b0afb90296b6a8ce90c3f9cd3)
2024-03-05 09:48:41 +01:00
J. Brown 29cfc13d7e
Fix #22933 - Job-specific Uplink items leaking to non-job minds (#23179)
Fix for 22933 - SharedMindSystem now checks for VisitingMindComponent too.

(cherry picked from commit b26e9a9a325070323fe9475275ceaf4ed079cb76)
2024-03-05 09:48:01 +01:00
keronshb fd4445253d
Moves muted to shared (#25374)
* moves muted to shared

* fixes usings

* Update MutedComponent.cs

funny webedit

* Update MutedComponent.cs

oops using statement webedit

(cherry picked from commit 046c874daeb60609d8880fe27617836d37de1a94)
2024-03-05 09:45:27 +01:00
dffdff2423 6757f63a90
Add option for admins to disable bwoink (#25008)
* Add option for admins to disable bwoink

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

* Add silent indicator to discord relay

* Use string interpolation

(cherry picked from commit a3c93b0bd7478c0f75daaa2f7d0bd8b88565b27e)
2024-03-05 09:43:40 +01:00
Debug 9a246f9527
Remove drones, fix InnateToolSystem (#25372) 2024-03-05 09:34:57 +01:00
Debug 7646796a58 Prevent clients from setting their species to whatever they want (#25535)
Prevent epic hack
2024-02-25 03:59:49 +00:00
Debug b32a3446ff
Vision filter accessibility option (#889)
* Add option to disable vision filters

* Remove DefaultVision in favor of the setting

* Clean DeltaTab.xaml.cs
2024-02-23 19:36:18 +01:00
Fluffiest Floofers bf396ab21a
Fix missing sound for Psionic Regen (#879)
fix missing sound for this
2024-02-23 19:30:34 +01:00
Pieter-Jan Briers 28d18c0035
PlayerListControl fixes. (#25248)
* PlayerListControl fixes.

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

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

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

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

* Revert changes to ListContainer

This change was made default in the engine, no longer necessary here.

(cherry picked from commit 74a31ac5f3316cc865ab9f39f39efff4e0b9e748)
2024-02-21 04:03:46 +01:00
Pieter-Jan Briers 837272c745
Fix admin notes and database time nonsense. (#25280)
God bloody christ. There's like three layers of shit here.

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

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

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

Fixes #19897

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

* Fix entity arg

* Fix deserialization

(cherry picked from commit bd4597c5ca8a3c55b17868a2c8aef543d3ea503d)
2024-02-21 04:03:41 +01:00
Mr. 27 30fbda4ae1
randomized sexless species now have epicene gender by default (#25282)
Fikss

(cherry picked from commit 1e95c700ebb6d8db77014bea8057105482a90904)
2024-02-21 04:03:36 +01:00
Tayrtahn 4bb5cbead6
Make metamorphic glasses use last solution's empty sprite (#25322)
Make metamorphic glasses use empty sprite for the last solution they contained.

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

* Fix warnings and cleanup

* Don't break non-metamorphic fills!

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

(cherry picked from commit 1ce21553152199e3d97a8d02c11922fb8db5fd52)
2024-02-18 23:39:23 +01:00
Geekyhobo 5b158b8296
Adds a massban flag to the admin flags (#25327)
Adds a massban flag to the admin flags used on ss14 to ban large amounts of players rom a .tsv file

Co-authored-by: Geekyhobo <66805063+Ahlytlex@users.noreply.github.com>

(cherry picked from commit dbf2c64cfd5a47088f5b20e850862a202795d5c8)
2024-02-18 23:37:31 +01:00
Vasilis df79ac49b9
Save round information into replay_final.yml (#23013)
* Save round information into the replay

* Add round end text too

* This is way better

* Get actual job

* oop

* OK THERE

* Fake line endings to make life easier

* I was told this yaml is legal

* I just realised this will make my life easier

* REVIEWS BABY IM A PROGRAMMER MOMMY

* Live pjb reaction

* Live pjb reaction 2

* Reviews 2

* Dont need this

* Please no more have mercy on my soul

* Oh frick

(cherry picked from commit cb999d23f4b15e1c182e1ae4bf2e414306822f89)
2024-02-18 23:36:10 +01:00
Arendian c9a6019f97
Fix nymphs being deleted immediatly after spawning (#25344)
* nymphs now don't get deleted together with the body of the diona

* moved nymph system to server

(cherry picked from commit 9969bd25841b5162d80125c9a2fc000a94c3b558)
2024-02-18 23:35:48 +01:00
LankLTE e7d8f5e080
Diona Nymphs & Splitting (#24630)
* Porting & implementation

* Fix two stupid errors

* Human not humans

* fix audio path

* Fix test fails & update cooldown

* Work on reviews & test fail

* Rework nymph organ system.

* Make the nymph organs nospawn.

* IsDeadIC

(cherry picked from commit 407d4aed586a5143dc1dd0d31e7898f6df07a411)
2024-02-18 23:34:45 +01:00
Pieter-Jan Briers 589c55a6fc
Solution precision fixes (#25199)
* Add test for two chemistry issues

1. rounding issue with reaction processing when making chloral hydrate
2. reliable assert trip due to the ValidateSolution() heat capacity issue.

* Fix FixedPoint2 arithmetic

Fix internal floating point arithmetic in places where it could be avoided.

Fix incorrect rounding mode used in other places (it should always floor, like regular int arithmetic).

I had to add an explicit epsilon value for float -> FixedPoint2 because something like 1.05 is actually like 1.04999 and that'd cause it to be rounded down to 1.04.

This fixes reaction reagent processing in cases where the reagent inputs can't cleanly divide. Previously, when making 30u chloral hydrate by adding the chlorine in 10u increments you'd end up with 0.04 chlorine left over. This was caused by division in the reaction code rounding up in some cases. Changing division here to always round down fixes it.

* Attempt to fix heat capacity precision assert issues.

Fixes #22126

First, we just increase the tolerance of the assert. It was way too low.

Second, actually put a cap on float drift from one-off _heatCapacity changes.

* Fix float -> FixedPoint2 epsilon for negative number, fix tests.

* Fix DamageableTest

* Oh yeah I need to call CleanReturnAsync

(cherry picked from commit 33611b7094ba9540326a6f0f6edd2017640e61db)
2024-02-18 23:27:29 +01:00
MilenVolf cb0fdb47d1
LockVisualizer (#25224)
* LockVisualizer

* Fix state

* Clean some code

* Make it component, fix tests fail

* Fix for StateUnlocked

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

* Optimize LockVisualizer, add check for unlocked state

* No todo I guess

(cherry picked from commit c7870882f6f956eea07cbb4738ae45c8805c8ce6)
2024-02-18 23:27:28 +01:00
Krunklehorn b1e1ec66ea
Add sfx for writing on paper (#25257)
* Initial commit

* Moved params to sound

* Removed type tag

* Removed null check

* Forced default

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

* handle edge cases

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

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

* TG icon for shield

probably better than the shitty one I made in paint

* forgor meta.json

I forgor

* Emo review

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

---------

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
(cherry picked from commit bced73f67657246bc167531414ea0be5a5bba6bf)
2024-02-18 23:17:51 +01:00
Pieter-Jan Briers e9975e23e8
Nuke fancification (#25297)
Actually use more icon states for deployed/armed/about to explode

Also unlit layer.

Also examine text

(cherry picked from commit 3a45d519dcc3679375b5239b6f1881cdd1a07344)
2024-02-18 23:17:22 +01:00
Vasilis 09393bcd29
Made ghost.role_time a server modifiable only cvar (#25292)
Fix

(cherry picked from commit 7e44c50d19b84facce7563d534344a5197d294eb)
2024-02-18 23:16:45 +01:00
Jezithyr 53bd523984
Death acidifier fix (#25251)
(cherry picked from commit be29a054de37b54d7c0a09c75b6fded91374341a)
2024-02-18 23:13:32 +01:00
Pieter-Jan Briers 1031a93942
Predict Injector (syringes), cleanup (#25235)
At least the mode/transfer amount logic. Actual transfer logic needs Bloodstream which I didn't wanna move into shared.

(cherry picked from commit 6d8be538c90cf4c3a6636e2f8b84631af457cd42)
2024-02-18 23:11:33 +01:00
Errant 61ad8108af
Vox names, species prototype cleanup, some cosmetic changes (#24994)
* voxnames

* New generator parameters, names are more readable

* bunch of missing vox stuff

* more names

* sad

(cherry picked from commit 5a9ab3b315c90ddd054f2e2524af023d909e2a9e)
2024-02-18 23:08:43 +01:00
Guilherme Ornel 88f4ca25a2
Fax machines can print from text file (#23262)
* added

* checks tweaking

* fixed what sloth wanted

* fixed?

* dialog diposing fix

* checks tweaking

* more changes

* dispose streamreader

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

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

* Update Content.Server/Fax/FaxSystem.cs

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

* fix minor typo

---------

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

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

* Microwave now shows Elapsed time

* Fixed bad formatting

* Added new term for "BottomMargin"

* Change yellow color

* Update StyleNano.cs

just spacing fixed

* Cook time countdown now detached from server

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

* Update MicrowaveMenu.xaml

forgot to re-add item space

(cherry picked from commit 25f73f64065f370d8560ff4695579c259e4b7667)
2024-02-18 23:03:05 +01:00
Ed 9dcdbea279
Shadow anomaly returns (#24629)
* content

* add cat

* ambient

* I FORGOT HEARTS!

* fix ambient

* some fixes

* canCollide: false

* connect to damageable

* pi

* remove fx

* some fixes

* *sad bruh*

* hazed

* Update base_shadow.yml

(cherry picked from commit ae321151cab2e3f4327dfcbc73ffc01bbb2e3de6)
2024-02-18 23:03:02 +01:00
Tayrtahn b39407bae3
Add verbs to Open/Close Openable containers, and add optional seals (#24780)
* Implement closing; add open/close verbs

* Add breakable seals

* Allow custom verb names; make condiment bottles closeable

* Remove pointless VV annotations and false defaults

* Split Sealable off into a new component

* Should have a Closed event too

* Oh hey, there are icons I could use

* Ternary operator

* Add support for seal visualizers

* Moved Sealable to Shared, added networking

* Replaced bottle_close1.ogg

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

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

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

* Fix a bunch of warnings

* More warning fixes

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

* Get rid of some more ISerializationHooks for enums

* And a little more

* Apply suggestions from code review

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

---------

Co-authored-by: 0x6273 <0x40@keemail.me>
(cherry picked from commit 68ce53ae17985876d6d112b764b2144964a9f42e)
2024-02-18 23:02:29 +01:00
Vasilis 21f849e96a
Allow inspecting ID's and Health of people behind glass (#25163)
Hops will love me

(cherry picked from commit c50aee2f9fbb1e4a75a34298650a3190c44898c6)
2024-02-18 23:00:53 +01:00
deltanedas 76129f4349
make linking logic gates 1000% better (#25041)
* make door status use SendSignal

* LastSignals and logic, add ClearSignal api too

* make everything outputting a logic signal default to false

* refactor ops

* :trollface:

* :trollface:

* protoid for LastSignals

* oop

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
(cherry picked from commit f41ece37c3bc04d77b2d0ef791d190c5c0d11f36)
2024-02-18 22:55:58 +01:00
SlamBamActionman 6991618a45
Add option for character name colors in chat & move coloration to clientside (#24625)
* Adds option to disable character names in chat/speechbubbles

* Moved the coloring of names to clientside

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

* Changed to be put under Accessibility section

* Cache CVar

(cherry picked from commit 247be5b5c770261544f4e468ea09422efb0f7028)
2024-02-18 22:52:19 +01:00
Jajsha c4b8f141e9
Fix borgs being able to emag themselves (#24748)
* Fix self emagging borgs

* Add popup on self emag failure.

(cherry picked from commit 402051c670a66d08726e0ec16f8fa5735bb0f60f)
2024-02-18 22:46:49 +01:00
metalgearsloth 9e366f3119
Predict two-way levers (#25043)
* Predict two-way levers

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

* space

* a

(cherry picked from commit 05a2ddff1cc415c3bdf1e15ef3a2c953bcb5384b)
2024-02-18 22:46:26 +01:00
Jezithyr 9c6a9e23f0
Gibbing contents hotfix (#25114)
Fixing gibbing contents not respecting Include/Exclude container lists. This is currently unused

(cherry picked from commit 8e59b4f50546c9ba53981ab4b22bcd1595d775d6)
2024-02-18 22:46:25 +01:00
Jezithyr 6737912059
Gibbing refactor (Per-part gibbing and giblet throwing!) (#24989)
* Moving Gibbing rework out from medrefactor into it's own PR

* Re-enabled warning for missing gibbable on TryGibEntity

* Implemented better logic for gibbing failover and better logging

* Allowing audio params and drop scattering customization per component. Created UnGibbable organ base types and made brains ungibbable.
Removed delete brain from gibBody function. Artifact crusher does not destroy brains anymore. It only destroyed brains before not other organs which was wierd.

* Update Content.Shared/Body/Systems/SharedBodySystem.Body.cs

Fixing space for multiplication

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

* Added event raised when attempting to gib contained entities to allow modification of allowed and excluded container ids

* removing audioParams var from component (sound specifier includes it)

* Fixing signature

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit 541d8f8715e4e74a77501863c2573aaa1eb33add)
2024-02-18 22:46:02 +01:00
themias c39df888d2
Flipped caps real (#24961)
* Flipped caps real

* oops

* whoops

* flip not fold

* fix formatting

* cargosoft formatting

(cherry picked from commit f7a3ea6dcfb0f43b136cef74ea7115bec63cbfd3)
2024-02-18 22:42:29 +01:00
VMSolidus 8df7cc309e
Metempsychosis Returns (#685)
* Metempsychosis Returns

* Last updates

* Fixin the linter

* Update lathe.yml

* Update CloningSystem.cs

* Fixing the random name bug

* Fugitive, rough but functional

* Update fugitive.yml

* Update humanoid.yml

* Checking if its the floortile

* Guh

* Update EntityTest.cs

* Revert "Update EntityTest.cs"

This reverts commit 82375acd67.

* Revert "Guh"

This reverts commit bc98f0f858.

* Revert "Checking if its the floortile"

This reverts commit 51d3355cc1.

* Revert "Update humanoid.yml"

This reverts commit 5af8fbdabe.

* Revert "Update fugitive.yml"

This reverts commit 13124dbc77.

* Revert "Fugitive, rough but functional"

This reverts commit 47586c3b15.

* Update Content.Server/Medical/Components/MedicalScannerComponent.cs

Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Signed-off-by: VMSolidus <evilexecutive@gmail.com>

* Update Content.Server/Nyanotrasen/Cloning/MetempsychosisKarmaComponent.cs

Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Signed-off-by: VMSolidus <evilexecutive@gmail.com>

* Update Content.Server/Nyanotrasen/Cloning/MetempsychoticMachineComponent.cs

Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Signed-off-by: VMSolidus <evilexecutive@gmail.com>

* Update Content.Server/Nyanotrasen/Cloning/MetempsychoticMachineSystem.cs

Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Signed-off-by: VMSolidus <evilexecutive@gmail.com>

* Update Content.Server/Nyanotrasen/Cloning/MetempsychoticMachineSystem.cs

Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Signed-off-by: VMSolidus <evilexecutive@gmail.com>

* Update Content.Server/Nyanotrasen/Cloning/MetempsychoticMachineSystem.cs

Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Signed-off-by: VMSolidus <evilexecutive@gmail.com>

* Update Resources/Prototypes/Nyanotrasen/Entities/Structures/Machines/metempsychoticMachine.yml

Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Signed-off-by: VMSolidus <evilexecutive@gmail.com>

* Update Resources/Prototypes/Nyanotrasen/Research/biochemical.yml.yml

Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Signed-off-by: VMSolidus <evilexecutive@gmail.com>

* Update Resources/Textures/Nyanotrasen/Structures/Machines/metempsychotic.rsi/meta.json

Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Signed-off-by: VMSolidus <evilexecutive@gmail.com>

* Update CloningSystem.cs

Signed-off-by: VMSolidus <evilexecutive@gmail.com>

* Update CloningSystem.cs

* Update Content.Server/Nyanotrasen/Cloning/MetempsychoticMachineSystem.cs

Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Signed-off-by: VMSolidus <evilexecutive@gmail.com>

* Update MetempsychoticMachineSystem.cs

* Cleaning up some of the Metem code

* Update CloningConsoleSystem.cs

reordering for less merge conflict

Signed-off-by: VMSolidus <evilexecutive@gmail.com>

* Reordering usings for less merge conflicts

Signed-off-by: VMSolidus <evilexecutive@gmail.com>

* Update HumanoidAppearanceComponent.cs

Signed-off-by: VMSolidus <evilexecutive@gmail.com>

* Update CloningSystem.cs

Signed-off-by: VMSolidus <evilexecutive@gmail.com>

* Apply suggestions from code review

Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Signed-off-by: VMSolidus <evilexecutive@gmail.com>

* Update CloningConsoleSystem.cs

Somehow this got removed during cleanup

Signed-off-by: VMSolidus <evilexecutive@gmail.com>

* Update CloningConsoleSystem.cs

Signed-off-by: VMSolidus <evilexecutive@gmail.com>

* Update CloningSystem.cs

I put it back in the wrong file...

Signed-off-by: VMSolidus <evilexecutive@gmail.com>

* Update CloningConsoleSystem.cs

Signed-off-by: VMSolidus <evilexecutive@gmail.com>

* Apply suggestions from code review

Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Signed-off-by: VMSolidus <evilexecutive@gmail.com>

* Requested changes but need assistance with test fail

* biochem is gone apparently

* Update experimental.yml

Signed-off-by: VMSolidus <evilexecutive@gmail.com>

* Update MetempsychosisTest.cs

* Update CloningSystem.cs

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
2024-02-18 03:36:16 +01:00
Debug 330e0e37d9
*Properly* fix salvage strings (#840)
Me when the maps
2024-02-17 01:48:04 +01:00
Fluffiest Floofers a98b4ebaaa
Vulpkanin's Deuteranopia (#837)
* Everyone loves dog vision

Updated to match the the harpy code

* change locale name
2024-02-15 18:27:23 +01:00
deltanedas 9985ee9788
bring back paradox anomaly (#825)
* refactor and add log

* add api needed for objective

* backport LastProfileLoaded

* fix midround antag rule

* evil twin spawning code

* evil twin yml and stuff

* m

* hopefully fully rename it

* fixy

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-02-13 16:55:35 +01:00
Debug 7c62f5e0ec
Prevent probers from being unachored by gorilla gauntlets (#824)
* Fix being able to punt probers to unachor them

* Fix my wacky comment
2024-02-13 01:59:01 +01:00
VMSolidus 1f3128c6ea
Harpy Visual Rework (#677)
* It begins

* Delete error.txt

* Patch by Debug

* HIDING WINGS NOW WORKS

* Runs smoother from Shared

* Delete HarpyVisualsSystem.cs

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

* Update HarpyVisualsSystem.cs

* First completed Harpy Hardsuit

* Captain and Atmos tech birdsuits

* Update hardsuit-helmets.yml

* And more content

* Adding new finch tail <3

* whoops

* guh

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

* birb juggsuit

* More stuff

* Nukie hardsuits

* fixing clipping issues on birb juggsuit

* Update meta.json

* aaaaaaaaa

* two more

* Ton of extra harpy sprites

* Create equipped-INNERCLOTHING-harpy.png

* Harpy Ultravision trait

TODO: Optional trait that disables it

* Trait that removes Ultravision

* Code optimizations

* Adding hueshift maps to all harpy markings

* No more jumpsuits

* 1984 the harpy jumpsuits, they are no longer needed

* last 2

* final QA pass

* shennanigans related to an earlier merge conflict

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
2024-02-12 22:25:02 +00:00
Adrian16199 49d3c45d0d
Felinid changes. (#666)
* Felinid changes.

A plan

* Just slappin it together

for a friend to see and help

* Somethin somethin

Cos I could be at yours on friday
Tonight's at the place we started
It's a long way back from sorry
But here I go ....
How does it feel, how does it feel
Just tell me something

I don't know what to tell you
I don't know what to say
I got into my head, i'm sorry i threw it away
But i'm so glad you came back, even through all the pain
Let me try and mend it, i can promise that i have changed
Oh, let me give you all of me
Can we just sort it out for real

* just makin this less messy.... I guess

* Just tell me somethin.

How does it feel, how does it feel.

* .

* cleaning....

* Makes it work. Yey.

* just a small change tbh.

* okay maybe just a bit.

* Hm, maybe....

* This feels bit better.

* hopefully fixes yaml linter

* Update Resources/Prototypes/Nyanotrasen/Entities/Mobs/Species/felinid.yml

Co-authored-by: Debug <49997488+DebugOk@users.noreply.github.com>
Signed-off-by: Adrian16199 <144424013+Adrian16199@users.noreply.github.com>

* Doin the changes.

* Renaming.

* Renaming notes.

---------

Signed-off-by: Adrian16199 <144424013+Adrian16199@users.noreply.github.com>
Co-authored-by: Debug <49997488+DebugOk@users.noreply.github.com>
2024-02-12 22:10:43 +01:00
Debug d8df4327ec
Fix PseudoItems (#821)
* Fix PseudoItem

* Add pain

* Cancel attack events
2024-02-12 21:52:49 +01:00
Debug a4fd13ae70
Fix current test fails 2024-02-08 13:05:23 +01:00
deltanedas c73f3837bd
predict egg cracking + refactor (#25028)
* move stuff to server and some refactoring

* update spikables to not use triggering

* add Delete bool just incase

* a new egg

* mom can we have webedit. no, we have webedit at home

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
(cherry picked from commit 55dbe26019ed22e11f017393c028c6760699343d)
2024-02-08 12:41:42 +01:00
Tayrtahn de74e0faed
Improved output distribution of RoundToLevels (#25026)
* Improved output distribution of RoundToLevels

* Updated tests

* Oops

(cherry picked from commit 9cee54e5a1b4efd1b8d511584b3e4dcbd7e7c529)
2024-02-08 12:41:40 +01:00
Rainfey ecf9634e0c
Make Health Analysers UI continuously update (#22449)
(cherry picked from commit 4129c77a5b7c4d5cdfa4763881bdaa443c128f33)
2024-02-08 12:39:55 +01:00
Kot 74fc6715fb
Allow opening doors mid-deny animation, if you have the access (#24969)
Allow opening doors mid-deny animation, if you have access ofc

(cherry picked from commit bedccf8e31c53faff90f46822efce6143e6dc2e1)
2024-02-08 12:39:03 +01:00
deltanedas b45675731d
move criminal records console component to shared (#24957)
* move criminal records console component to shared

* todone

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
(cherry picked from commit 9b1c88b78b4d27d7a762ebd80dc4294e9cf6332f)
2024-02-08 12:37:47 +01:00
keronshb 7b87d398ab
Actually fix store action upgrades (#24960)
actual fix this time

(cherry picked from commit b88a8f0bb2a4e1c9dca39bf0778aa3c6c947702f)
2024-02-08 12:37:33 +01:00
keronshb 452347902d
Store Action Upgrade Fix (#24959)
(cherry picked from commit e79d2b5561692f34c3ee88c0d2a5707982227af2)
2024-02-08 12:37:32 +01:00
deltanedas 965e1cae57
criminal records revival (#22510)
(cherry picked from commit 683591ab046eb720e6ccfd3d0f6e5574f5f7efbc)
2024-02-08 12:37:29 +01:00
metalgearsloth c639a4efbb
Predicted movement opening lockers (#24937)
Relay wasn't really networked properly and this annoys me.

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

(cherry picked from commit 042feae2e91f41f7d39e55340405e3c448903d61)
2024-02-08 12:36:12 +01:00
themias fe0e533769
Add face bandanas (#24597)
* add face bandanas

* oops

* make face bandanas butcherable, also one bite

* oops

* Add mouth IdentityBlocker to bandanas

* refactor to use foldablecomponent

* remove some leftover bits

* remove HamsterWearable until face sprite updated

* oops

* review changes

* remove a few unneeded bits

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

* Adds method to check for starting map

* comments, datafields, some requested changes

* turns event into ref event

* Adds datafields

* Switches to entity terminating event

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

* Tryadd instead of containskey

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

* Removes datafield specification

* Readds missing using statement

* Removes unused using statements

* What the heck is listing data

---------

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

This reverts commit 0d8254b2a2891f8d5623c9878bd0e567d0c7fe3c.

(cherry picked from commit c15b0691ec452e543a3cc6894a28bb409dbc65f8)
2024-02-08 12:34:47 +01:00
Arendian d6cb163db3
Fix sliding bug (#24846)
* Fix slip bug

* debug assert

* count

* DebugAssert

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

* Reduced overshoot

* Implemented PointAttemptEvent, reacts with mobstate & sleeping

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

* Removed chassis check, made callback more obvious

(cherry picked from commit d01d75073cc4179ca5e34cacccd2ca6387e2bf99)
2024-02-08 12:32:04 +01:00
Krunklehorn 731da5de6b
Fixed unable to select None for character spawn priority (#24897)
Allows None to be selected

(cherry picked from commit 778a704b5820811d9267a23a8c080a83bc606ae4)
2024-02-08 12:32:02 +01:00
Nemanja 49a1b47c09
Decouple panels and wires (#24840)
decouple panels and wires

(cherry picked from commit 5db6a3eafc08132b7415be23eb40506ca2f550a9)
2024-02-08 12:32:00 +01:00
metalgearsloth 7e7655b3c4
Pulling rework (#20906)
* Pulling rework

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

* More pulling cleanup

* stats

* More cleanup

* First draft

* More pulling

* weh

* Fix puller

* Pulling working

* Fix merge

* Dunked

* Self-merge time

(cherry picked from commit 0d8254b2a2891f8d5623c9878bd0e567d0c7fe3c)
2024-02-08 12:31:57 +01:00
Tayrtahn a1e09ff808
Update FollowerSystem's fix to use new helper property (#24889)
Updated FollowerSystem's fix to use new helper property

(cherry picked from commit 79e3a6630d94a7409500b5856fd2a1518533a3d9)
2024-02-08 12:31:40 +01:00
Jajsha 38bbf2bf5f
Various borg law fixes (#24870)
* Various fixes

* Fix bad ordering with scrambled law orders

(cherry picked from commit e4f6a4bea67e9ea99240c8053f6cbbdc70e62c7b)
2024-02-08 12:31:29 +01:00
Tayrtahn b659a3c61a
Fix pressing shift while held triggering escape (#24878)
* We meet again, my old friend.

* Helper property

(cherry picked from commit 31207006f50d342d2d29c366977ebf4f783a68ea)
2024-02-08 12:31:28 +01:00
Bixkitts 971502af2c
MeleeSoundComponent Working With 0 Damage (#24872)
* made hit sound logic potentially better

* Function already tries all fallbacks, no reason to return bool

* NoDamageSound execution path

(cherry picked from commit b98dc669741a3e5199e9fa03d82703821ab5284c)
2024-02-08 12:27:15 +01:00
Leon Friedrich dcf188f617
Fix storage destruction/deletion bug (#24882)
(cherry picked from commit 3ffa15ce3434f84012785c696c7d403bf3574f17)
2024-02-08 12:27:14 +01:00
Psychpsyo 3c2f10a9c0
Screen Shake Intensity Slider in Accessibility Settings (#24749)
* Reduced motion toggle disables screen shake

* Actually, screen shake is its own slider instead

* Cache screen shake intensity cvar

(cherry picked from commit ba0ca39a7ad5ceef2ae0582e13be5044e6f0a5f7)
2024-02-08 12:27:11 +01:00
deltanedas 5826739524
fix spray paint popup spam on invalid door (#24857)
fix popup spam on invalid door

Co-authored-by: deltanedas <@deltanedas:kde.org>
(cherry picked from commit 58e28b5136261d4b308a1882fc64c542575d40e7)
2024-02-08 12:26:41 +01:00
metalgearsloth b6a3448108
Make popups nullable (#24802)
This standardises it with audio and whatever. Me when I sprinkle nullchecks everywhere.

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

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

* add departments to doors, cleanup

* add style -> departments mapping

* AirlockDepartmentsPrototype

* update shared spray stuff to have department

* name file the same as the class name

* department optional

* refactor spray painter system + send department

* fixy

* client

* no need to rewrite ActivateableUi

* pro ops

* the reckoning

* hiss

* .

* :trollface:

* add standard atmos colors to palette

* Update Content.Shared/SprayPainter/SharedSprayPainterSystem.cs

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit c49c78bafaddc3ed69714eaf41920e1565dbd292)
2024-02-08 12:25:35 +01:00
metalgearsloth 2a839fcb94
Remove obsolete transform call (#24217)
* Remove obsolete transform call

Shrimple PR also fixed bad flatpack call that would break on non-standard tilesizes.

* Update calls

* weh

(cherry picked from commit 52808694e0a479c162930a0aae20e91b68bc67a4)
2024-02-08 12:23:11 +01:00
Magnus Larsen e0a3cfacea
Fix clientside storage Whitelists (#24063)
* Fix outdated component name in assaultbelt whitelist

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

* Move FlashOnTrigger, SmokeOnTrigger, Flash components to Shared

* Move LightReplacerComponent to Shared

* Move Utensil, Mousetrap components to Shared

* Move SprayPainterComponent to Shared

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

* Add trivial Produce and Seed components to Client

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

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 9cd6e4dccdfaa7e273417e3c94d66b5171c7d841)
2024-02-08 12:22:58 +01:00
Aexxie 16d77d483e
Move grenade components to shared (#22691)
* Moves FlashComponent.cs, FlashOnTriggerComponent.cs, and SmokeOnTriggerComponent.cs to Shared

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

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

HOW DID THIS GET IN HERE ITS NOT AHHHH

* Update Content.Client/Explosion/SmokeOnTriggerSystem.cs

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

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

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

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

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

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

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

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

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

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

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

* Update ExplodeOnTriggerComponent.cs

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

This reverts commit 29ee05f57de60eab5c92158d8eba5e3acba483c2.

* Fix?

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

* Fixes a network issue

* leftovers

* Fixes

---------

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

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

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

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

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

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

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

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

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

* Misc name changes and cleaning up the ZombieSystem

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

* Misc name changes and cleaning up the ZombieSystem

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

* Merged 2 if statements into 1 on the Zombiesystem.

* Cut down on code duplication in AntagStatusIconSystem

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

* Removed some duplication from the SharedRevolutionarySystem with generics.

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

* Addressed Reviews I think

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

* Replace war crimes with actual fixes for reviews

It was not clear to me what the reviews meant

* Addressed reviews by removing need for cvars.

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

* Update Content.Shared/Revolutionary/SharedRevolutionarySystem.cs

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit 8b19b7fab9dd8fb115f65794d97a26ebb9aa1142)
2024-02-08 12:22:54 +01:00
Repo f016a076c2
Fix aHelp relay to detect AFK Admins (#24482)
* Add AFK detection for aHelp relay and admin specific afk time.

* Correct query to new refactor

* Change AFK timeout to 10min or else Pancake closes my PR 😭

* It wasnt a bug it was a feature, way less aHelps that way.

* aHelp Colors arn't real!

* Update Content.Shared/CCVar/CCVars.cs

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit 00841217062ba60d38320dfd2b93288548bb4201)
2024-02-08 12:22:51 +01:00
deltanedas 215d861bb8
make dialog window not evil (#24677)
* add Placeholder and make default buttons flags consistent w old behaviour

* DialogWindow ops

* make QuickDialog use DialogWindow

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

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit 6b03aaaec78bd50c8f4730c9aa7d0f5cea76e782)
2024-02-08 12:21:02 +01:00
AJCM-git 8081242009
Cleanups PolymorphSystem/Components/Prototypes (#23721)
* Cleanups PolymorphSystem

* forgot this

* Nah

* Fix test

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit b8f0ed3975a4b887ca8dd75dcc07e0ac5ee11646)
2024-02-08 12:20:24 +01:00
metalgearsloth adddd74cff
Fix item toggles where no sound exists (#24807)
Oop

(cherry picked from commit bd86447f996e10a1befda16404f0155209efa0e1)
2024-02-08 12:20:04 +01:00
Arendian b98e16ff53
Spacelube slide (#24801)
* Space lube now makes you slide

* review

* oh lord he slippin

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 4f3b8d740cecfb736b018fd78a2be71f5397644d)
2024-02-08 12:17:49 +01:00
SlamBamActionman 69b3d47a60
Visitor job (#23972)
* Adds Visitor role and ShowInIdCardConsole property

* Add visitor to Agent ID card

* Fixes yaml test

* Fixes based on feedback

* Fixes based on feedback

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

* Exposes callbacks directly instead, takes effect immediately

* Cleaned up control flow, swapped cvar for client customization

* Switched to int, dictionary of callbacks, migration

* Update Content.Shared/Preferences/SpawnPriorityPreference.cs

* krunkle stan

---------

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

(cherry picked from commit ed0f2aa2213cc47b817476206a2dd0b4e7c176b1)
2024-02-08 12:16:20 +01:00
Ed 25dbae8f9c
Lock Anomaly generator to research access (#24464)
* small patch

* fix

* remove garbage

* fix

* moved to shared events

* fix

* LocId

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 498ad2d5d714c73d9212bda9d3d89d53b2001e04)
2024-02-08 12:11:07 +01:00
Sergey Dikiy f6f08bdc55
Added Warning state for AME (#24699)
added warning state for AME

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

(cherry picked from commit fed43f05d0e95d51e2426a80c7e8963d585c5521)
2024-02-08 12:10:34 +01:00
Jajsha 0b5c8fde9b
Tweak borg laws (#24698)
* Change emagged laws to append modifiers instead of completely changing them.

* Maybe fix everything not working

* bugfix

* Fix missing secrecy law and allow basic borgs to be emagged correctly

* Localization

* Actual localization

* test

* Test

* Remove dummy debug value

* Fix bad law ordering

* Tweak the secrecy law

* Minor law tweaks

* Remove obsolete argument

* Fix YAML

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

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

* Also this one

* Remove vehicles

* goodbye vehicles

* Remove this check

* sasd

* Cronch

* Add sprites back

* jani

(cherry picked from commit d2f20d8955a25a32aa5fb9b3631a41921b464cd4)
2024-02-08 12:06:49 +01:00
Ed 86a9930c71
Anomaly bug fix (#24783)
fix

(cherry picked from commit 884a5441202dfbfe715460d3cea76ebf0dbcc550)
2024-02-08 12:04:53 +01:00
metalgearsloth 36e28ecfcf
Firestarter fixes (#24647)
* Firestarter fixes

- Actually networks the action.
- Namespace fixes.

* No networky for you

(cherry picked from commit a6ea8b210db079d30823e7b4d8faa32aefa17582)
2024-02-08 12:04:52 +01:00
Kara d35e2f39a7
Roundstart variation game rules (#24397)
* Raise `StationPostInitEvent` broadcast

* Basic variation pass handling

* standardize names + rule entities

* why does it work like that?

* add to defaults

* light break variation pass

* ent spawn entry

* move some stationevent utility functions to gamerule + add one for finding random tile on specified station

* forgot how statistics works

* powered light variation pass is good now

* station tile count function

* public method to ensure all solutions (for procedural use before mapinit)

* move gamerulesystem utility funcs to partial

* ensure all solutions before spilling in puddlesystem. for use when spilling before mapinit

* trash & puddle variation passes!

* oh yeah

* ehh lets live a little

* std

* utility for game rule check based on comp

* entprotoid the trash spawner oops

* generalize trash variation

* use added instead of started for secret rule

* random cleanup

* generic replacement variation system

* Wall rusting variation rule

* account for modifying while enumerating

* use localaabb

* fix test

* minor tweaks

* reinforced wall replacer + puddletweaker

(cherry picked from commit cc24ba6a317c4bee84ffa1eda8397c255ca92be9)
2024-02-08 12:03:43 +01:00
Kara d4f1f1fdf5
Reduce throwing recoil further (#24759)
(cherry picked from commit e82964bbf44ce2e6b10c585090eec2dd0cd27237)
2024-02-08 12:03:00 +01:00
themias 1f1c07a622
Allow IdentityBlocker partial coverage (#24741)
* Allow IdentityBlocker partial coverage

* rename to TotalCoverage

(cherry picked from commit d75f6c3db4f638e9a479fe40c8d50f0e6c137556)
2024-02-08 12:02:46 +01:00
Nemanja 59b820aeff
make lathe visuals not required (#24757)
(cherry picked from commit bd46d7cc8ab6ad92a4d5a7cdd12dd1ce8f6265e9)
2024-02-08 12:02:20 +01:00
DrSmugleaf 55845b0537
Fix ClimbSystem removing the climbing fixture when it still has contacts (#24756)
(cherry picked from commit 83901cafc5722a2e89092817dbd9beddff5a680f)
2024-02-08 12:02:19 +01:00
Tayrtahn 10d25acc9c
Fix weird rotation when strapped to a bed (#24746)
* Gotta watch out for those tricky radians

* Change StrapComponent instead

(cherry picked from commit 652e2b7a41ae415bc2c1a548abc97edd2df5812e)
2024-02-08 12:02:04 +01:00
nikthechampiongr d9208ced9d
Fix improper prediction on unpryable doors (#24738)
Fix improper prediction on unpryable doors.

Entities that had CanPry to false on their components would get
improperly predicted as pryable on the client because the check was only
preformed on the server. Same problem existed for welded doors. Moved
the check from server to shared.

(cherry picked from commit 9bebdf57069f8c2e2b045009a98bcf46caa68732)
2024-02-08 12:01:53 +01:00
Kara 609b0b7421
Throwing item scaling animation + recoil (#24724)
(cherry picked from commit ef55039560814a98517552bd58493fc89a2a4812)
2024-02-08 11:57:27 +01:00
Tayrtahn 897aedb70c
Stop shift from cancelling follow as ghost (#24715)
Fixed pressing shift cancelling ghost follow

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

* added documentation

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

* added DeviceNetworkComponent and WirelessNetworkConnectionComponent to generator prototype

* made GeneratorSignalControlComponent nicer

* implemented auto-revving

* added back necessary dependency

* can't send do-after event manually

* repeat now works with auto revving

* fixed

* removed vv

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

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

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

* used resolve instead of TryComp

---------

Co-authored-by: Julian Giebel <juliangiebel@live.de>
Co-authored-by: Kara <lunarautomaton6@gmail.com>
(cherry picked from commit 5d2ddc0d8b313d80fbcecd6719c5048ec2aea3e7)
2024-02-08 11:56:22 +01:00
Kara 9d138e943b
Improve rotting examine text (#24689)
(cherry picked from commit 1a74311c9fc91e600f260f521176fc9d5fffe754)
2024-02-08 11:56:14 +01:00
Nemanja 3b3e9abb7b
Make procgen use weighted variants (#24669)
(cherry picked from commit 2a6705818bf510aee3026c7f3c3a4ed56f188189)
2024-02-08 11:54:39 +01:00
themias cd03dbac2b
Add inhand fill visuals (#24495)
* Add inhand fill visuals

* oops

* remove unused import

(cherry picked from commit bd100344a2f9f845e2dceb8351d36f8af913a5f1)
2024-02-08 11:54:38 +01:00
metalgearsloth ac052e4666
Revert "Make flare gun explode, damage and stun the player when used … (#24679)
* Revert "Make flare gun explode, damage and stun the player when used with the wrong ammo (#22349)"

This reverts commit e301378114b245fa6927372f83c19868cb90b13c.

# Conflicts:
#	Content.Shared/Weapons/Ranged/Components/GunComponent.cs
#	Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/shotgun.yml
#	Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/shotgun.yml

* Fix revert conflicts

* Update Content.Shared/Weapons/Ranged/Components/GunComponent.cs

(cherry picked from commit e1901aa6b602516f0f7cc3f29844c77e90c77977)
2024-02-08 11:52:32 +01:00
metalgearsloth 823d9dd892
BatteryWeaponFireModes refactor (#24502)
* BatteryWeaponFireModes refactor

Made the code a bit better but still needs integrating into attachments.

* murder

* Fix serialization

* weh

* weh

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

* Add docs

* Add VV readwrite to modified values

* Add more docs

* More docs

* Add Gun parameter to GunRefreshModifiersEvent

* Add another event for handling cartridge spread

* Fix pneumatic speed

(cherry picked from commit 4e8b1fb0d3ef23c79ea3ca0cec05932de03601f5)
2024-02-08 11:52:29 +01:00
Kara 5a88211bbe
Lower speech noise volume & refactor system (#24579)
* Lower speech noise sounds & refactor system christ fuck

* MORE

(cherry picked from commit 740c298d2fb5ec5fb74ded3eee667251c613fd64)
2024-02-08 11:51:58 +01:00
Nemanja d545b0ea0c
Add support clothing equip/unequip doafters (#24389)
* add clothing equip/unequip doafters

* boowomp

(cherry picked from commit 804c76f8c9ac5eec851aa1e5a65b4b3c11ce2f65)
2024-02-08 11:51:57 +01:00
emmafornash b301a9f4d0
Fixed syndicate bombs being unpurchasable (#24469)
* fixed syndicite bombs being unpurchasable

* removed previous attempt

* added restock condition to listing's equal method

* reverted id change

(cherry picked from commit af632690a1619703da0b6158dee1b9eae7ae7c6d)
2024-02-08 11:50:49 +01:00
Pieter-Jan Briers c2d69f2dd4
Security barriers take 5 seconds to (un)lock (#24637)
People are using these as unhackable and hard-to-tailgate airlocks into sec. They should not be trivial for security officers to move through.

Made LockComponent have configurable lock times to implement this.

(cherry picked from commit 8ca7cb59a3b83e86c9b27a9549bf85a9f914b6fe)
2024-02-08 11:49:24 +01:00
avery 1075c2e999
Hallway textscreens (#24189)
* hallway screen refactor pending comms console support

* comms console broadcasts

* screen and timer localization

(cherry picked from commit 7e16ee0b55fdef2ce77b13cd72dbc00b63d776c4)
2024-01-28 00:33:40 +01:00
Ed bee2b77eeb
Gravity anomaly rework (#24452)
* balance

* gorilla gauntlet fix

* magboots update

* some more buff

* randomwalk speed scales with severity

* nerf

* content

* Revert "content"

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

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

* Buff JRPACMAN to 8 kW.

Shifted all power values up by +3 kW.

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

* Change unit format helpers number format.

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

(cherry picked from commit f855cb2b0065083447128778c31c2a93bcd70a6a)
2024-01-28 00:32:20 +01:00
Ed 9f8b6d7df7
Rock and Meat anom rework (try 2) (#24449)
* rework

* bruh

* all fixed

* balance

* bb

* Update TileAnomalySystem.cs

* Update EntityAnomalySystem.cs

* spawn on shutdown variant

* fix entites, fix DataRecord

* fix some review

* god forgive me

* oh fuck wrong brench

* Revert "oh fuck wrong brench"

This reverts commit c81f57f7830c8e55fd47982500c57281af40b0dc.

(cherry picked from commit de9d7aed17f3fa5fe5bf43bea07e4ca07908d528)
2024-01-28 00:32:17 +01:00
MilenVolf fa80cfa5e0
Add price multiplier for armor component (#24561)
* Add price multiplier for armor component

* Fix datafiled

(cherry picked from commit 4f3265e950d3dd3446cea8bd41c6709169e071f1)
2024-01-28 00:27:48 +01:00
Blazeror 624257a400
Removed TilePryingDoAfterEvent (#24552)
(cherry picked from commit 505e4239639a7a3dce4710778ea97fff861f9ef1)
2024-01-28 00:27:32 +01:00
ike709 ee895733ab
Ports colored chat names (#24478)
* Ports colored chat names

* Update name color on every message

---------

Co-authored-by: ike709 <ike709@github.com>
(cherry picked from commit 6cbe4a8fb6d39745141e71233d386206c36a1e19)
2024-01-28 00:27:13 +01:00
metalgearsloth c1b8405c9b
Slight organ loss change (#24475)
Both should be sufficient to avoid the bandaid bug but this one is more accurate.

(cherry picked from commit 10b7ec5d299487ea0c7a46c278ba34612e5e2226)
2024-01-27 23:54:34 +01:00
metalgearsloth a50170cec4
Maybe fix dead bug (#24445)
(cherry picked from commit 016e535deabd4ea93688d4026be846d2e2f52acc)
2024-01-27 23:51:59 +01:00
Tayrtahn 4d5b3ba435
Holding the walk button no longer activates sprite movement state (#24455)
* Dancing is forbidden

* Suggested changes

(cherry picked from commit c1fd42202f35dcddbf2dc6215fcf462bf31e5ce3)
2024-01-27 23:51:45 +01:00
TinManTim 6bb29572eb
Adds explosion when attempting to microwave metal / bugfix (#23887)
(cherry picked from commit f499dfb63a73b2ee408c92d2e98c80ca03e4d71a)
2024-01-27 23:51:32 +01:00
Errant 42ac528eda
Suffocation alerts for nitrogen breathers (#24373)
* Respiratorsystem namespace

* WIP gas alert update, does not work

* Finally

(cherry picked from commit 2737c80169853223660948931aadba894723fcaf)
2024-01-27 23:50:55 +01:00
Ed 746db6552b
Revert "Start rebalancing anomalies - Rock and Flesh anomaly reworked" (#24448)
(cherry picked from commit 05a7eb07c27a0304285a4c8ef5f1e5b6bdd566a9)
2024-01-27 23:50:29 +01:00
Ed 7c72be35f8
Start rebalancing anomalies - Rock and Flesh anomaly reworked (#24381)
* rework

* bruh

* all fixed

* balance

* bb

* Update TileAnomalySystem.cs

* Update EntityAnomalySystem.cs

(cherry picked from commit b02c211e2f22a10901fa57a5c76a625be8be4a3d)
2024-01-27 23:50:26 +01:00
Nemanja 9bb057959b
Generalize tile prying to any tool quality (#24432)
* Generalize tile prying to any tool quality

* ballin

(cherry picked from commit 5e2e652165ee7ef3efb0d0f244d665049f5bd1c0)
2024-01-27 23:50:17 +01:00
themias 87108e5822
Add reagent specific footstep sounds (#24406)
* Add sticky footsteps

* Update Resources/Audio/Effects/Footsteps/attributions.yml

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

---------

Co-authored-by: ike709 <ike709@users.noreply.github.com>
(cherry picked from commit 557e5eb476235398c3cf95aad793f36ab4b48f55)
2024-01-27 23:48:14 +01:00
Dakamakat 1afa84e323
Use can attach check on shot attempt (#24396)
refactor(SharedGunSystem): use can attach check on shot attempt

(cherry picked from commit 7b2e382929204d4fa39ff599c3365c1b237de2e9)
2024-01-27 23:46:42 +01:00
Nemanja 7573dba496
Rip out remaining machine upgrades (#24413)
* Rip out remaining machine upgrades

* eek

(cherry picked from commit a9e89ab37221c4f5eff5a9e1d42e97c6f3e0753b)
2024-01-27 23:43:49 +01:00
LordCarve 3dfd479199
DamageSpecifier Total => GetTotal (#24160)
* DamageSpecifier [Obsolete] Total => GetTotal()

* Remove obsolete Total member from DamageSpecifier.

(cherry picked from commit c77eb8691dc08d384a88ddaf3b734f7777d741b5)
2024-01-27 23:42:35 +01:00
router c83c46e8b7
Change Tmax for fixed floating point epsilon limit (#24370)
This is the largest number that an epsilon of 1/64 = 0.015625K supports

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

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

* a

* fix weh

* Also usedelay

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

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

* Rely on the new OnTextChanged event

Because OnKeyBindUp only works for keys that have binds

* Add a similar indicator to nukies' war declaration UI

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

* Rename cvar slightly

* Refactor duplicated code to a helper method

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

* Rename to chat.max_announcement_length

(cherry picked from commit 8c5898b0065cd2cf196c0383bc99c57c0f11795b)
2024-01-27 23:40:23 +01:00
Ed 145c2158ca
Star Wars 14: Shuttle weapon update (#23644)
* setup codebase

* make auto-fire, but its broken

* collider problem

* fix rate, add toggle port

* add laser

* power cages

* ginormous cells

* fix inhand

* add pirate cannon

* salvage gun

* functional Nuke cannon

* rewrite to standart grenade

* fix naming, add emp sprite

* grenade cartridge

* thruster fix

* nuke cannon

* audio + visual polish

* balance tweak

* tweaks

* laser balance tweak: new Electronic damage modifier set, reduce structural cannon damage

* resprite energy cages, start implementing in game

* fix cage recharger craft

* add small laser gun

* fix colliders

* add  lasers and ptk to research and crafting

* finish implementing weapon to rnd and sec

* some fixes

* splitted grenades and cannon balls

* integrate new cannon balls

* tweaks stick

* move circuits to sectechfab, fix

* fix?

* add ability to E shoot, without signals

* fix!

* fix?!?! and naming tweak

* go!

* Lank fix

* oh

* mornings don't start with coffee.

* the morning starts with bug fixes.

* fucking bugs!

* finally

* it is now possible to craft projectiles separately from cartridges

* +2 fix

* refactor

* piu

* More weight

* add AutoShootGunComponent

* move autoshoot to partial

* SetEnabled()

* some fixes

* remove CanShootWithoutUser field

* remove null-checks ToCoordinates from AttemptShoot()

* war without reason

* return to home

* ?

* forgot remove it

* review

* Fix formatting and update path

---------

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

(cherry picked from commit a2d5d74b46060d330e5aa14e166692f32dcce7a9)
2024-01-27 23:40:06 +01:00
Krunklehorn 5f2c241f9e
Cancel CanBuckle before popup for foldable items (#24358)
* Cancel CanBuckle before popup for foldable items

* Moved to FoldableSystem

(cherry picked from commit b126aadd9cb867e9d64e10acce48d759385c1659)
2024-01-27 23:36:12 +01:00
Ed 378b1199ac
The glowing forest anomaly (#24351)
* sans

* Papyrus

* add to game

* tweak stick

* fixes

* Update Resources/Prototypes/Entities/Objects/Misc/kudzu.yml

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

* Update Resources/Prototypes/Entities/Structures/Specific/Anomaly/anomalies.yml

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

---------

Co-authored-by: Kara <lunarautomaton6@gmail.com>
(cherry picked from commit b3b64e6cf29f313a9782fb95ae8727f907b1836a)
2024-01-27 23:36:10 +01:00
GreyMario d41e3c8d41
Remove ability to start pulling while inside a container (#24235)
* why was this even possible

* what coding at 6am does to a mf

(cherry picked from commit 1085dbef6524ee8ba7c901459dcea8abf1f1993a)
2024-01-27 23:35:59 +01:00
Kot f82d17ab3b
Fix issue where round could reset all job priorities to high (#24340)
* Update job priorities when job requirements are getting updated

* Sort jobs by weight and then by the name

* Sort departments too

(cherry picked from commit 4f307a49be5796eaa7b02f5988a83ea04db95535)
2024-01-27 23:35:53 +01:00
Debug 122e99302b
Fix Delta stuff 2024-01-26 23:29:17 +01:00
Errant 41eef79cd0
Beacon localization (#24138)
* localize beacons

* No not like that

* Tesla beacons were already depreciated, time to give the reaper their due

* Entity name fallback

* The real treasure was the far easier solution we missed along the way

* weh

* Shared mapinit

* fix RT version

* a single line break

(cherry picked from commit efdc6f8d4c5dc8c593b6403c6592f0ddc6212266)
2024-01-26 23:17:32 +01:00
metalgearsloth 3ae0909195
Fix drag-drop buckle sound playing twice (#24321)
Buckle refactor somedayTM.

(cherry picked from commit bbbacf996b812d5bf2b4bb62671ef536a5e2f1b4)
2024-01-26 23:16:19 +01:00
Kacper Urbańczyk 734d7fd26f
Change what items can be fultoned while stopping anchored items from fultoning (#20628)
* Check and restrict players from fultoning their equipped items

* Changed fulton whitelist to items and anchorables

* Stop from anchored items being fultoned

* Moved containermanager check to CanFulton function

* review

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 1ff31f8b7a450bc7aa5a638a8a63b318a5cf5363)
2024-01-26 23:14:12 +01:00
Nemanja 47d24fc3e5
Fix cargo product groups (#24212)
(cherry picked from commit 21e77dffb00d631ea0e6a5c0ad55bed5dcbaa809)
2024-01-26 23:13:54 +01:00
Hannah Giovanna Dawson 0ce2cb5b29
Fixes round restart audio clipping (#24044)
* Fix round end audio clipping

* weh

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 5af1d0ea8b5a54cd1f1b48308176318032a457ea)
2024-01-26 23:13:43 +01:00
Arendian 46fe22709b
Prevent EntityStorages from being opened while inside another container (#24253)
* Prevent EntityStorages from being opened while inside a mech.

* compressed into few lines

* unneeded line

* Popup client

---------

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

* serilog my beloathed

(cherry picked from commit 73e94dfa92e0afe3ad0decd1d7248d13fa4f208c)
2024-01-26 23:12:38 +01:00
SpeltIncorrectyl 46b8eaad4b
Can emag artifact crusher (#23957)
* initial commit

* made it emaggable

* removed OnAttemptEmagEvent

* moved emagging to shared

* added local file to git

(cherry picked from commit fd673cf6e30599f5895d58c3281eba2901301401)
2024-01-26 23:11:10 +01:00
Kara 6ca85e719b
Destruction & impact sound rework pass 1 (#24282)
* Various sounds ported

* Replace wall_bonk.ogg

* Metal/metalglass break sound pass

* Replace metalbreak.ogg

* Replace woodhit

* Replcae tap.ogg n some smack uses

* Fix lint

* Replace bang.ogg and some instances of hit_kick.ogg

* couple more

* fix wood sound

* i may be stupid

* le attributing

* bro what

* standardize more destruction sounds

* fix melee hit sound cutting off

* window threshold sounds and remove `destroySound` it literally doesnt exist

(cherry picked from commit 818b07ecf82bdd72dc5524f6bc093067b2ef6472)
2024-01-26 23:10:41 +01:00
metalgearsloth e9bb444936
Fix gun bolt crash (#24283)
Deleting non-predicted entities moment.

(cherry picked from commit b535909a4983919b4764c72f7409d881cea02ae8)
2024-01-26 23:10:00 +01:00
metalgearsloth b51b6f65b5
Add ability to put spesos into cargo console (#24263)
I thought we had it already but maybe it was an unfinished pr or something.

(cherry picked from commit ad23facb7a9670bcc10e2f9e89d2e22db2052697)
2024-01-26 23:08:06 +01:00
Repo 13d79489a9
Restart votes check player count and ghost levels (#23453)
* Restarts have max player count

* Now counts ingame ghosts to determine if restart can be called

* consistant cvar name

* Added a player count with state conditional

(cherry picked from commit 7bf62f1d1904b591580b17b2b5079f0dfe769e4b)
2024-01-26 23:07:50 +01:00
DrSmugleaf 0cc941cb54
Fix error when starting a DoAfter while handling one on the same entity (#24218)
* Fix error when starting a DoAfter while handling one on the same entity

* Reuse array

(cherry picked from commit 9ad1ae5d963cf294d2f68d06ce07506dedbefe64)
2024-01-26 23:04:39 +01:00
0x6273 ebcdca5dfa
Use old reagent dispenser beaker slot ID (#24209)
Change the slot ID back to what it was to keep old map saves with an item in the slot loading correctly.

This also fixes the "You can't put this in the dispenser!" message not appearing when inserting an item without FitsInDispenserComponent because the whitelisted slot name wasn't changed.

(cherry picked from commit 7a7d0017b504dec4b1d390b941af9791d9677287)
2024-01-26 23:04:27 +01:00
Kevin Zheng 9cc361921b
Add limited-reagent dispensers (#23907)
* Add limited-reagent dispensers

* Add empty versions for all dispensers

* Fix lint

* Set initial window size so all buttons are visible

* Simplify logic, add parenthesis

* Use localized name for initial labels

* Adjust button style

* Avoid touching items before MapInit

* Remove pre-labeling

* Reduce diff

* Clean up YAML

* Fix test

* Really fix test

* Document

* Adjust based on review

* Add labels for obnoxiously long bottles

---------

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

* Fix jittering for offset sprites

(cherry picked from commit 1f92376579bb16480253c05125fccb1f88e18557)
2024-01-26 23:01:11 +01:00
DrSmugleaf 85352289aa
Move rotting stages and examine to shared (#24183)
(cherry picked from commit 890270127133884f5d1a9ddddb48f10ddb61412f)
2024-01-26 23:01:03 +01:00
Veritius 92695c274c
Executions (#24150)
* Execution (you monster)
not done

* woops

* more stuff

* Melee executions

* Prevent executing those who can interact

* Better checks for if you can execute

* Scale the execution time of a knife with its attack speed

* Translations for fucking up an execution

* rename some functions

* Properly scale execution speed of melee weapons

* Fix checks in CanExecuteWithAny

* Allow executing yourself (funny)

* More versatile localisation

* Suicide with guns

* Popups for successful gun executions

* whoops

* Stop flare guns crashing the game on executions

* Various tweaks

* Remove some old usings

* Pacifists can no longer execute

* Remove unnecessary check

* Use CanShoot in gunsystem

* Capitalisation in ftl string

* Fix melee executions not playing a sound

* localisation tweaks

(cherry picked from commit 2e83f5a0ecc5fea0177acd94e22133de0d614588)
2024-01-26 22:58:32 +01:00
Nemanja 23fb7d3180
Add a way for bulk abstracting prototypes (#24140)
* Ignored Prototypes

* respath it

* add multi-file support

(cherry picked from commit 1ed71f544e5e83e8257289f3e652af29e868d8d2)
2024-01-26 22:58:11 +01:00
Nemanja 730ed8ab56
try and purify cryosleeper code (#24165)
(cherry picked from commit e145a8f6963f1a61f49894c09047a0212c90931e)
2024-01-26 22:56:52 +01:00
Trevor Day f0c4daca24
Explosion log fix fix (#24136)
* Reaction and Explosion admin log coordinates

* Remove extraneous whitespace

(cherry picked from commit d571ed940fc0fc506f7cf07d32b4e8059b348df8)
2024-01-26 22:55:51 +01:00
Nemanja 16eb634bfd
fix cryo bed dragging (#24125)
(cherry picked from commit e075a904217cd60722ef6dcbb9dd4b70b2f7822c)
2024-01-26 22:53:28 +01:00
keronshb 89e2d1b145
Action, Action Container, and Action Upgrade changes (#24005)
* Added TransferActionWithNewAttached and TransferAllActionsWithNewAttached and OnActionAdded event method to ActionContainerSystem. These are needed where the action needs to have a different attached entity for usage.  Fixed a bug with not being able to upgrade actions between levels.  Added a way to grant and remove a singular action.

* adds an action container component to mind on action added to fix tests

* Swaps trycomp for hascomp

* Maybe this will fix the thests

* Grants action container to performer as well

* Wait that makes no sense, removing that

* fixes mind action grant logic

* Changes ent check back to netent check

* Reverts unintended container changes

(cherry picked from commit c8466055ef34f9a5cbd987546c7865889a54f5ed)
2024-01-26 22:51:47 +01:00
Nemanja e624317d37
Cryogenic Sleep Units (#24096)
* Cryogenic sleep units

* pause map support

* no more body deletion

* Cryogenic Storage Units

* boowomp

* no more emag, no more dropping present people

(cherry picked from commit 736b9dd7df6e35f07fed88686c7c863ac61af846)
2024-01-26 22:51:41 +01:00
Arendian deaeb6dff3
decelerator nerf and projectile penetration mini refactor (#24032)
* decelerator nerf and projectile fix

* datafield name difference

* forgot to add component

* missed datafield styling

* comment made summary

* CanPenetrateComponent and CollisionLayer check.

* Small comment changes

(cherry picked from commit 04a8761bb6c0a12fc8f07ccf3a24615c8bb8b591)
2024-01-26 22:51:16 +01:00
themias a83c773c3c
Grave digging and decomposition (#23646)
* Grave digging and decomposition

* fix

* update based on review comments

* code review

* remove unused field

(cherry picked from commit fd7ff690b1ad7b1cf6cd62deba3076684e3e9282)
2024-01-26 22:50:50 +01:00
Psychpsyo e439d50479
Plates & Cash gridinv visuals (#24075)
(cherry picked from commit a747e6dda407cc93f8184be0712941606b19263e)
2024-01-26 22:50:12 +01:00
AJCM-git 9a6fa17e72
Virtual items cleanup (#23912)
* Virtual items cleanup

* Detail

* Review

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 108f001731b9394f98d9ef712b9b777e5b3f8abc)
2024-01-26 22:49:14 +01:00
DrSmugleaf deea24e255
Fix error when the client gets an Eui state message before its open message (#23610)
* Fix error when the client gets an Eui state message before its open message

* Revert "Fix error when the client gets an Eui state message before its open message"

This reverts commit 440e2746ee8d77306f59ddea558eda32ec927f18.

* Make all Eui msgs reliable ordered

(cherry picked from commit 95ef20223c1abaf6ff0baaf76b73e92dfd921efb)
2024-01-26 22:49:13 +01:00
Dakamakat dfb3ff6836
Make throwable star damage stamina (#23527)
* feat(star.yml): make throwable star damage stamina

* feat(Components): add new StaminaTresholdDamageOnEmbedComponent

* feat(SharedProjectileSystem): update system with new events to change
stamins treshold on embeed projectile remove / add

* feat(StaminaSystem): update system with new subscriptions

* feat(throwing_stars): update yml with new component

* feat(StaminaDamageOnEmbed): add stamina damage on embeed

* cleanup unused / ajust numbers

* fix(StaminaSystem / OnEmbedComponent ) apply requested changes

* Rest of the review

* another warning

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit b80f7eed6ee05c9e4963477369cffaa44dda19e8)
2024-01-26 22:49:12 +01:00
deltanedas 149ad77eb5
Add TryGetPrimaryDepartment to jobs system (#23317)
* add primary departments

* make command and station specific secondary

* add a unit test

* fixy

* compile

* webedit ops

---------

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

(cherry picked from commit d1d11d09c7a2698fa723c11a910258f69c3d7b9e)
2024-01-26 22:48:20 +01:00
metalgearsloth 32216a1b03
Entitylookup method renames (#23519)
(cherry picked from commit 1f3a29c0926c2d3af7ce1ef8148a73d332c3302f)
2024-01-26 22:38:25 +01:00
Morb 781657f44d
Tail wagging (#19573)
* MVP

* Uncomment animated prototypes

* Disable wagging on death

* Move component to server

* Looped tail animation

* Apply front tail template

* Disable animated markings globally

* Add emote sending

* Update documentation

* Move locale

* Use static instantAction & remove action on comp del

* Use fluent POSS-ADJ

* Update docs

* Add copyright

* Update copyright

* Update license & copyright

* Move to main directory & format meta.json

* Fix path

* Change namespace

* Remove empty meta.json

* Update

* REMOVE unnecessary IsNullOrWhiteSpace check

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

* Move animated markings to main file

* Use emotes

* new

* fix

* fix

* Tests, pls

* fix dixel

* Remove networked from wagging comp

* Remove unused import

* Remove unused imports

* Move wagging comp to shared

* Revert the emotes

If we're getting it the action is better.

---------

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 9063cfe454263e2616d4d948648d6c73cbc039f9)
2024-01-26 22:38:24 +01:00
Tayrtahn 87d60504e3
Hackable intercoms (#23984)
* Enable wire interface for intercom

* Implement BlockListening component and system

* Implement ListenWireAction

* Added cooldown/overload to mic wire pulse

* Properly persist voicemask settings when user already has one.

* Addressed requested changes

* Added wire panel open/closed visuals

(cherry picked from commit 2d6d2aba0b1b2b41bbcafb9f60ead926e6b67d16)
2024-01-26 22:37:41 +01:00
Vasilis d62eb3a2b8
Cvar to allow whitelisted players to bypass panic bunker (#23885)
Among us

(cherry picked from commit 22c0b4425d7a955fd995d3b1b3f777cefe3884c8)
2024-01-26 22:37:39 +01:00
GreyMario 0fa31b334b
Pneumatic cannon accuracy buff (#23996)
make thrown item launchers stronger than hands more accurate

(cherry picked from commit 5962f6d6e9e8dcb79877eafd7e5d8b2dedcab872)
2024-01-26 22:35:07 +01:00
Nemanja 5a978c0430
Fix chem sources in guidebook (#23987)
* Fix chem sources in guidebook

* shabooya

(cherry picked from commit 0e45c63d2289387cbe3abc85665225fb2cfb114e)
2024-01-26 22:35:05 +01:00
Pieter-Jan Briers ea0318b2e0
Fix solution editor UI (#24004)
Fixes #23645

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

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

This is a bad workaround to manually synchronize the UI updates against game timing. It's not pretty but it works.

(cherry picked from commit 3a2cd95d7f8d2b6975ebfda715b4cbf858e74668)
2024-01-26 22:34:27 +01:00
keronshb 0c8d256d71
Moves ShootProjectile to shared (#24007)
(cherry picked from commit 2375a6cd1d2edfe6692c4a0ad388d2a3f5a3ce01)
2024-01-26 22:34:26 +01:00
Pieter-Jan Briers 0976f3ff12
Fix exception with gas overlay rendering (#24001)
I had to rewrite this code for #23745 and forgot to test it. Damnit.

(cherry picked from commit fa56750d30571514e5607cb73c8edcf951e229f7)
2024-01-26 22:34:21 +01:00
Pieter-Jan Briers 1c54b75da5
Dependency update / fixes / skrungle bungle (#23745)
* Give .props files 2-space indents.

* Move to Central Package Management.

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

* Update NuGet packages and fix code for changes.

Notable:

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

* Remove dotnet-eng NuGet package source.

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

* Remove Robust.Physics project.

Never used.

* Remove erroneous NVorbis reference.

Should be VorbisPizza and otherwise wasn't used.

* Sandbox fixes

* Remove unused unit test package references.

Castle.Core and NUnit.ConsoleRunner.

* Update NUnit to 4.0.1

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

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

* Add Robust.Analyzers.Test

* Update submodule

* commit to re-run CI

(cherry picked from commit a6c9c36b688a1ba78ff4c12502e81661cf607b6c)
2024-01-26 22:33:46 +01:00
nikthechampiongr 1caa663bb1
Fix double sound for shutters (#23975)
Fix double sound

(cherry picked from commit d312d871c8eb97a3a61a41eaad98a1b79a364876)
2024-01-26 22:33:44 +01:00
Fahasor a764a4eb3b
Whistle for security (second try) (#23945)
* Move Exclamation entity

* Add Whistle Component and Whistle System

* Add BaseWhistle prototype

* Add sound to BaseWhistle

* Add SecurityWhistle prototype

* Add Sprite and Icon to SecurityWhistle

* Add whistleExclamation prototype

* Fix SecurityWhistle prototype

Co-authored-by: lzk <124214523+lzk228@users.noreply.github.com>

* Add whistles to sec vendingMachine

* Revert "Add sound to BaseWhistle"

This reverts commit 0c2eeab1286fb778ed7a845e59c642f667582a4a.

* Add sounds for BaseWhistle

* Make atributions compact

* Remove unnecessary spaces

* Make WhistleSystem class sealed

* Remove possibility to exclamate one person from WhistleComponent

* Remove delay from WhistleSystem

Increase delay

* Remove unnecessary HashSet

* Try replace Resolve

* Refactor sound emmiting

* Rework spawn of exclamation

* Move WhistleComponent from Server to Shared

* Edit WhistleComponent because of moving

* Move WhistleSystem from Server to Client

* Edit WhistleSystem because of moving

* Add new event

* Add server part of WhistleSystem

* Modify system for prediction

* Add documentation to WhistleComponent

* Revert "Modify system for prediction"

This reverts commit 89abb290571ff47deb5491b0f720f6bde079110b.

* Revert "Add server part of WhistleSystem"

This reverts commit ca52ca081f30fb164f401c1818d08531f02af284.

* Revert "Add new event"

This reverts commit 5ca9694757c94c03ca72d5b2f56f5f23503a3263.

* Move system from client to shared

* Modify whistle system because of moving

* Separate checks and action

* Organize file folders according to conventions

* Make component Networked

* Change trigger component for WhistleSystem

* Put indents betwen methods

* Rework WhistleExclamation prototype

* Change variable name

* Add serializer to WhistleComponent

* Rename one variable

* add predict possibility to Shared

* add Client part of prediction

* Add Server part of prediction

* Increase whistle distance

* Prevent spawn for invisible entities

* WhistleComponent now use file-scoped namespace

* Delete unnecessary part from MakeLoudWhistle

* Add Resolve check

* Delete Server and Client part for prediction

* Make system prediction properly

* Change prediction behaviour

* Fix unexpected error occured

* Avoid using obsolete methods

* Add comments

* Update DataField to make it shorter

* Update size for new size system

* Prevent ping for invisible entities for real now

* Avoid triggering unnecessary debug asserts

---------

Co-authored-by: lzk <124214523+lzk228@users.noreply.github.com>
(cherry picked from commit fa3da1ab825c2140c8119e723028f292a7b772c3)
2024-01-26 22:33:18 +01:00
metalgearsloth 42643e8b94
NewsSystem fixes (#23969)
(cherry picked from commit abc5094a16aa98da45cb14399913f08f0fe4cb5a)
2024-01-26 22:33:17 +01:00
Tayrtahn 35ba9eb50d
Cuttable speaker wire for vending machines (#23873)
Implement SpeechWireAction

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

* tweaksies

* gah

* draw primitive

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

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

* casualties

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 1886941da6c807ec604cad902233a3ba559b2b25)
2024-01-26 22:27:10 +01:00
Arendian e36dd93b60
Fix borg becoming emag immune if emag attempted with panel closed. (#23729)
* Fix borg becoming emag immune if emag attempted with panel closed.

* new event

* removed code added in accessreader

* fix emag 1984

(cherry picked from commit 23e714e523f18ffe5c4a2e1e2186142371dbf0bb)
2024-01-26 22:26:05 +01:00
Arendian 918c917052
Fix roller skates debug assert (#23876)
Networkedcomponent

(cherry picked from commit 464f24d040f89447b57d365b68865f957b97d9cf)
2024-01-26 22:25:49 +01:00
metalgearsloth 8a2f414ef2
Fix tiledef reloads AKA void planet (#23864)
(cherry picked from commit cd1ef71e31ebdb5d335c55755d3df9789b1f21c3)
2024-01-26 22:25:33 +01:00
metalgearsloth 62c2728e38
Fix storage state (#23852)
slughands

(cherry picked from commit 24f8da8f0ce01b3523434e954d4d71e8193e75b5)
2024-01-26 22:22:41 +01:00
metalgearsloth dcc2baa5a5
Fix objects tab not showing nents (#23837)
* Fix objects tab not showing nents

* Fix everything

(cherry picked from commit 11701215322efe6e03c84a99645e60c766f0e2bb)
2024-01-26 22:22:36 +01:00
themias 35a7ade997
Wheelchair users can bump open doors (#23806)
(cherry picked from commit 4cc3c91805ff72f7cdfd1a0ea5841519c75e939d)
2024-01-26 22:21:20 +01:00
nikthechampiongr 0e9b07db94
Doors will no longer be pried open once the doafter finishes if they shouldn't. (#23818)
* Fix bug where prying would succeed even a door could no longer be pried.

* Remove redundant call to Resolve

* Remove redundant comment

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

* Fix state

(cherry picked from commit b22c9aa5e265994f87c9a3f41a95e0aef611b61d)
2024-01-26 22:17:53 +01:00
Kara 8c3b51b23c
Don't predict mind examine (#23769)
(cherry picked from commit 05d42dce9e0d1554f8a4fa1c98bc19912352e001)
2024-01-26 22:17:10 +01:00
Nemanja 703b4cb7cc
Quantum Spin Inverter (#23756)
(cherry picked from commit fdd18c9ae49cf98a766b5df484c67d9cf4f4418e)
2024-01-26 22:17:00 +01:00
Nemanja cd97df761d
Autoattacking weapons (#23765)
auto attacks

(cherry picked from commit 5db615af54acf04c9a9ba5653cfac4a360eff61b)
2024-01-26 22:16:34 +01:00
Kot b664c6d02b
Powered stasis bed prevents body decay (#23520)
* Powered stasis bed prevents body decay

* Update following CR comments

* Remove unused import

* Simplify if-statements

* Change implementation following CR suggestions

* Add comment & remove explicit get/set

(cherry picked from commit e97fd47a8764f973193e22e45512acb5335bdf17)
2024-01-26 22:16:32 +01:00
Tayrtahn 879e8b2cb3
Reduce vendor thank you message spam and add variety (#23746)
* Moved vendor thank you messages into AdvertisementPack, making them vendor-specific.
Wrote a few example messages.

* Only display thank yous when closing the UI after a purchase.

* Tweaked a few messages

* More custom messages

* Missed one

(cherry picked from commit eb9770efb91fab68696938008fedb5ab1a10f15f)
2024-01-26 22:14:58 +01:00
AJCM-git 87bdedfccf
Fixes ninja not being able to use abilities (#23748)
* Fixes ninja not being able to use abilities

* This was for testing

(cherry picked from commit a3127748d1685f78cdca991d562559cd868fb189)
2024-01-26 22:14:56 +01:00
metalgearsloth a6a7514b0d
Fix gun cursor popup spam (#23732)
(cherry picked from commit cce9bde4cdcce6cfaa22f0bcb1ed1507cfd328fb)
2024-01-26 22:12:07 +01:00
I.K 11497a9d03
Improve visibility of gun bolts (#23711)
* add overlay

* ??????

(cherry picked from commit dc994f9c66f13f8195b7938f849003dc5b37464d)
2024-01-26 22:11:55 +01:00
Nemanja 7a8c81f71d
Grappling fixes (#23709)
(cherry picked from commit c9b700a2d4ea7e25cfa014bf83720258bb43cae9)
2024-01-26 22:10:57 +01:00
DoutorWhite b755a71815
Fix RoundStartTimeSpan not being networked on client-side after reconnecting (#23707)
Fix RoundStartTimeSpan state not being networked on reconnections

(cherry picked from commit 31133ef788e546b9e989bf0341997a191264446e)
2024-01-26 22:10:56 +01:00
Arendian c2e20e568c
Fix duplicate popups in ripley (#23692)
Fix duplicate popups on switching selected equipment

(cherry picked from commit e1e99e16c7e239813f2c9ff046871736e52ef6a4)
2024-01-26 22:09:55 +01:00
Trevor Day e3a78e84b1
Update ChemicalReaction and ReagentEffect logs. (#23649)
* Update ChemicalReaction and ReagentEffect logs.

* Updated explosion log as well, and small cleanup.

(cherry picked from commit aa7fcb19ec2c5f93182da102579db6a3b17b80ec)
2024-01-26 22:08:19 +01:00
DrSmugleaf 9f4fa43635
Revert "Game server api (#23129)" (#23672)
This reverts commit dfc8ea6aee85776dd1676df601ff8c22ea205a08.

(cherry picked from commit c05a458de23469d2210629cfd705ce2b9c494351)
2024-01-26 22:07:25 +01:00
metalgearsloth b4e7da1f26
Fix asteroid UI determinism (#23661)
(cherry picked from commit d0f51def1ad1900f229c58c9b19b98bfab844061)
2024-01-26 22:05:11 +01:00
metalgearsloth e83344932e
Fix salvage magnet determinism (#23655)
Machine-specific moment, you'd think I'd remember from expeditions.

(cherry picked from commit fb24f9accf5ed5c92fdc18378df511295079cab2)
2024-01-26 22:05:09 +01:00
metalgearsloth df5c7a68b1
Fix master (#23656)
Proximity didn't pass CI.

(cherry picked from commit fed15b0330b277ff641bebe6d8b8faaec58be653)
2024-01-26 22:05:08 +01:00
Simon 3259264602
Game server api (#23129)
* Stuff

* Fix RoundStatus Action

* Rename stuff

* Also needs to run on the main thread

* minor stuff

* Move to not be an EntitySystem

* Part 1 of making this less shit

* Make some more stuff run on main thread

* Actor check, logging and remove token from log.

* Better log

* Change ActionKick to use Guid instead of username

* Fix build

* Bandaid fix for test fails

(cherry picked from commit dfc8ea6aee85776dd1676df601ff8c22ea205a08)
2024-01-26 22:04:36 +01:00
Trevor Day bf70e24d5b
Update dice state handling (#23643)
* Auto generate dice component state handling, and update data field annotations

* Missed one.

(cherry picked from commit 39e59cb77ff7cf43ebaaed84c4b22a70275e3b7b)
2024-01-26 22:04:22 +01:00
Jezithyr 09a489ecd3
Fixing performance issue with Proximity Detector (#23557)
* fixing access levels and removed strings from data defs

* Fixing proximity detector performance

- Re-added component filtering for the close entity search.
- Changed criteria functionality to only allow for searching for entities with all specified comps (matching any would be too unperformant)

(cherry picked from commit 3261962f8c37a90c4fe0591b422d3b0bcf7a7523)
2024-01-26 22:03:45 +01:00
deathride58 e7f53d8578
Limits the minimum base skin color brightness for species with Hue coloration (#23605)
adds a minimum skin tone for hue skin colors

(cherry picked from commit 43d1be51fb5e49c61c00aef441431f50890339ea)
2024-01-26 21:51:32 +01:00
Ed dee31da6a4
Barber scissors fix (#22895)
* barber!

* 5% change to maintenance

* some fixes

* refactor some

* ElectroJR fix merge

* aoa

* remvoe humanoid

* Magic mirror cleanup

* Cleanup

* Bunch more fixes

* Fix nohair + range bugs

* Fixes

---------

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

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

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

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

* Review

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 412f3f470c92bf2d974b13bc4e5e1c964d3a5346)
2024-01-26 21:49:51 +01:00
J. Brown d586983869
Restore correct table-bonk behaviour with clumsy mobs. (#23583)
(cherry picked from commit ed7a7879708904e2a96f514a929d1085e4733026)
2024-01-26 21:48:05 +01:00
Kara 03b3e36d43
Examine prediction (#23565)
* Initial prediction

* new group handling

* groups for all examines that use multiple rn

* compile

* why was it doing this??

* handle newlines with sorting properly

(cherry picked from commit 0ae3858b69b695697ea9300609460f8ddb70ebbf)
2024-01-26 21:48:02 +01:00