* 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)
* 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)
* 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)
Oops
In #26217 I re-organized the logic for the calculation. Part of that was moving the logic for GetFeltLowPressure and GetFeltHighPressure to be done before we actually check the hazard thresholds. What I didn't realize is that, with how our pressure protection is set up, these functions can return values so extreme they rebound into the other category.
For example, according to the math, when you're wearing a hardsuit in a low-pressure environment you have "felt" pressure of 1000 kPa. Yeah that's not right.
Now these functions clamp their result to OneAtmosphere, in the appropriate direction (101.3 kPa).
Fixes#26234
(cherry picked from commit db81438d30f83a542abe6c81c2ce4a5040aa3ddb)
* 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)
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)
Use Log with generated sawmill name rather than explicitly named one for all non rule-based Content EntitySystems.
(cherry picked from commit eeaea6c25b496106eb741e93738f2ab8503949ba)
* Added 18 new bounties + tags, couple of balance tweaks
* Oops, 2 corn tags.
* Fixed another duplicate from merge conflict
* Fixed all arbitrage issues
* Removed metamorphic glass/manly dorf bounty
* Removed manly dorf bounty
* Removed manly dorf bounty
* Removed manly dorf bounty
* Changed hiviz tag, removed commented out bounty
* Removed extra line
* Change HiViz tag
* Removed unused tag
* Removed LaceupShoes, changed HiViz
* Changed flavor text for fruit bounty
* Removed live mouse bounty
(cherry picked from commit 4357b9ef08fee0e08c4fdf4eeef714fa8eb38112)
* Kill the static InRangeUnOccluded
* Adjusted 4 more EntitySystems that were missed.
(cherry picked from commit 7d275a4b5e4188db424cc417c609dced3f9aca89)
* 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)
* Initial commit
* Fixed short circuiting
* Use DebugTools
* Use Entity<TComp> more, and make them nullable
* Bring these two together
(cherry picked from commit 41ca8f3dfcb986432e1e509247bf239cac137836)
* Make radio jammer block suit sensors
* Fix stupid
Use CancellableEventArgs instead of doing what the hell I was doing before.
* Address Reviews.
Change the event from a CancellableEntityEventArgs to a ByRefEvent.
(cherry picked from commit dce24dfd03b3ddfe1044297edf9d35bc9f75c523)
* 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)
* Added new Buy & Sell specific cargo pallets
* Remapped trading outpost with new pallets, tweaked texture
* Removed debug message
* Fixed/Compacted conditional checking to let old pallets still work for backwards compatability
* Update Content.Server/Cargo/Components/CargoPalletComponent.cs
Alright, updating all the references to it.
Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
* Changed textures, changed to enum instead of string for pallet type check
* Few minor code tweaks/formatting fixes
* Missed the prototype change
* Update Content.Server/Cargo/Components/CargoPalletComponent.cs
* Update Content.Server/Cargo/Systems/CargoSystem.Shuttle.cs
---------
Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit c0bbbc33c19eafcc8defaa7f1ec2df42e485b435)
* Fix butcherable handling
* ItemSlots for clown shoes
* Return if handled
* Handle if popup
* Whitespace, spoons are metal
* Zero damage plastic utensils, blacklist by metal+melee
* Hmmm truthy
* Plastic knives are knives too, just use that
* Delete unused tag
* Always true if doAfter
* Raw rat meat should be sliceable too
(cherry picked from commit 674b42b3a0ab9fa607887c1401f38ca1f8bb3911)
Syringe delay based on amount in syringe
Co-authored-by: Plykiya <plykiya@protonmail.com>
(cherry picked from commit 37cd12524e85b6a3b31827e4751a94ca51268694)
* Fix rounds restarting in the next round
Doesn't fix them restarting in lobby I think but should fix most of it.
* delta india sierra charlie oscar romeo delta
(cherry picked from commit 02cc9c05ddf853b613361690b88ba893ce57bab3)
The exact time when the Nuke Music starts is now derived from the music's duration
(cherry picked from commit 680cf5fec13b92f09355acec9892f2db51f3e80e)
Fix arrivals not working on spinning stations
Increases the tolerance to .15 instead of .1
(cherry picked from commit 9e2e51431938b2df9391939fe499f8963b297292)
* More solution edit windows
* Fix error when closing euis after round restart
---------
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
(cherry picked from commit 0da09db99ac556e0efdce40268e60eb5a06a0694)
* Add logs to things
* Make the message log be saved as msg because I forgor before.
* Log fails when getting an entity that doesn't exist
---------
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
(cherry picked from commit 2b8415b378c181fd0222cdf7f4d005a70ebe8044)
* 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)
* Small obsolete Logger cleanup
* Fixed three EntitySystem logs that weren't doing it right.
(cherry picked from commit aafe81512258b5a80776ada1f471b58e7507ca2d)