Commit Graph

4474 Commits

Author SHA1 Message Date
brainfood1183
e4d5e7f1ae 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
2024-03-18 15:29:48 -06:00
DoutorWhite
8d40bc36a9 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
2024-03-19 00:56:12 +11:00
deltanedas
7561bef6a7 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>
2024-03-18 18:23:25 +11:00
Kevin Zheng
153d2815fc Fix pressure damage calculations (#26217) 2024-03-17 21:16:31 -08:00
Golinth
21de5e9a08 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.
2024-03-17 21:37:00 -04:00
Pieter-Jan Briers
b5138b245e 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...
2024-03-17 22:37:28 +01:00
LordCarve
eeaea6c25b Unify Content's EntitySystem logging (#26216)
Use Log with generated sawmill name rather than explicitly named one for all non rule-based Content EntitySystems.
2024-03-18 07:30:27 +11:00
LordCarve
7d275a4b5e Obsolete Logger cleanup for EntitySystems part 2 (#26159)
* Kill the static InRangeUnOccluded

* Adjusted 4 more EntitySystems that were missed.
2024-03-17 18:31:09 +11:00
Ed
c35ff87e14 SlowContactsSystem to SpeedModifierContactsSystem mini rework (#26110)
* rework

* update logic
2024-03-17 13:27:22 +11:00
LordCarve
d8a7b33b43 Fix anomaly decay logs (#26180)
Fix anomaly decay logs (#26122)
2024-03-16 13:31:21 -04:00
Krunklehorn
8ecb78ee5a Fix StrippableSystem blunders (#26166)
* Fixes target hand check when no hands were needed.

* Adds missing CanStripX checks.

* Whitespace.

* Fixed bad math causing instant strips.
2024-03-16 14:50:53 +11:00
Hannah Giovanna Dawson
41093ab03c 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>
2024-03-15 19:28:00 -04:00
Ed
4aa72af574 Convert "IgnoreWeatherComponent" into "BlockWeatherComponent" (#26135)
* ignore

* doc
2024-03-15 18:36:09 -04:00
Magnus Larsen
15a7520df1 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!
2024-03-15 21:03:18 +11:00
Ed
986ac589b4 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
2024-03-15 18:37:12 +11:00
Krunklehorn
41ca8f3dfc StrippableSystem doafter overhaul (#25994)
* Initial commit

* Fixed short circuiting

* Use DebugTools

* Use Entity<TComp> more, and make them nullable

* Bring these two together
2024-03-15 13:57:52 +11:00
Pieter-Jan Briers
0ecc5e8c96 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.
2024-03-14 19:00:47 +11:00
Mr. 27
3cb1c585c5 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>
2024-03-14 15:27:08 +11:00
Mr. 27
3981173a15 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>
2024-03-13 21:02:10 +11:00
veprolet
ad6ac73f6f Cycle injector transfer amount on alt. use (#25566)
* Add toggle verb for injector transfer amount

* Fix injector verb priority scalability

---------

Co-authored-by: veprolet <>
2024-03-13 21:00:45 +11:00
Vyacheslav Kovalevsky
0d0edbba4a Fix cream pie bomb when eaten or sliced (#25928)
* fix bomb activation when eaten

* no swap / no eject

* activate when sliced
2024-03-13 19:36:08 +11:00
liltenhead
56ac86a5c1 Buff Zombie Infection (#25954)
* Infection chance

* Infection Damage
2024-03-12 14:44:08 -04:00
Arendian
60b9d89e4d 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
2024-03-11 14:12:52 +11:00
Errant
84a07315dd 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
2024-03-10 20:01:32 -07:00
metalgearsloth
a41772a006 Shuttle map IFF tweaks (#25897)
- HideLabel just means it won't have its name / button drawn whereas Hide will block it completely.
2024-03-11 13:11:46 +11:00
nikthechampiongr
b0ffed1607 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>
2024-03-11 12:55:19 +11:00
nikthechampiongr
deac5a6842 Fix misprediction of emergency access (#25973)
The EmergencyAccess bool on the AirlockComponent would not get synced to the client
2024-03-11 12:50:09 +11:00
LordCarve
aafe815122 Obsolete Logger cleanup for EntitySystems (#25941)
* Small obsolete Logger cleanup

* Fixed three EntitySystem logs that weren't doing it right.
2024-03-10 01:15:13 +01:00
Nemanja
f3f4616c49 Add a toggle for colorblind friendly progress bar colors (#25318)
* Add a toggle for progress bar colors

* yeah this thing

* PJB review

* optimization
2024-03-09 12:43:19 +01:00
Plykiya
5cb48c922f 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>
2024-03-09 11:19:03 +01:00
exincore
370a79fbc8 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
2024-03-06 18:23:16 +01:00
Tayrtahn
0738829510 Add SharedPopupSystem.PopupPredicted (#25811)
* Added SharedPopupSystem.PopupPredicted

* Documentation improvement
2024-03-06 02:59:05 +01:00
Tayrtahn
f4976a3288 Add prediction to hand labeler labels (#25869)
Added prediction to labels
2024-03-06 12:33:28 +11:00
exincore
68bb57bbaf Fixed Emag wiping door access without bolting open (#25836) 2024-03-05 18:20:38 +11:00
deltanedas
550612a37f 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>
2024-03-05 14:13:50 +11:00
Ed
ace8285440 Mineshaft (#25733)
* content

* catwalks

* fix fucking icons

* finish PR

* +1 room

* fix
2024-03-03 23:32:33 -07:00
Plykiya
4f7ff56e87 Syringe QoL improvements (#25480)
Co-authored-by: Plykiya <plykiya@protonmail.com>
2024-03-04 01:07:11 -04:00
metalgearsloth
92872e546a Fix FTLToDock (#25803)
* Fix FTLToDock

- Removed Enabled coz unneeded really.
- Fixed SetCoordinates call that got dumped at some point oop.

* Fix this docking check
2024-03-03 21:14:16 +11:00
metalgearsloth
c5486873db 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
2024-03-03 18:39:19 +11:00
Nemanja
9a795b35ad patch QSI container issues (#25700)
* patch QSI exception

* fuck don't die
2024-03-03 17:45:26 +11:00
LordCarve
06d755a860 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.
2024-03-03 16:37:34 +11:00
Tayrtahn
4943151111 Add prediction for puddle and spillable examines (#25794)
Prediction for puddle and spillable examines
2024-03-03 16:36:36 +11:00
Fildrance
4c87dcd3cb 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>
2024-03-02 15:40:04 -05:00
Errant
ecd2d5a644 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
2024-03-03 01:07:05 +11:00
Krunklehorn
c775410370 Weight based AreaInsert and Dumpable delay, a janitor qol tweak (#24899)
Weight based delay, retuned average, fixed comments
2024-03-03 00:57:44 +11:00
DrSmugleaf
30ccde0a47 Make the round end sound collection a cvar (#25741)
* Make the round end sound collection a cvar

* Fix comment

* Clarity
2024-03-01 21:08:48 +11:00
deltanedas
ad3f3a5d36 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>
2024-03-01 13:48:43 +11:00
Nemanja
2852483b5c remove doorslam sound (#25737) 2024-03-01 11:58:52 +11:00
LordCarve
c47391011d 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.
2024-02-29 16:44:28 -05:00
Rainfey
4e6c59cfe5 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>
2024-02-29 17:25:10 +11:00