Commit Graph

4225 Commits

Author SHA1 Message Date
themias d7eb3b1c5c
Allow t-ray to penetrate carpets and puddles (#25276)
* Allow t-ray to penetrate carpets and puddles

* handle edge cases
2024-02-16 16:37:56 -07:00
Golinth bced73f676
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>
2024-02-16 10:58:28 -05:00
Pieter-Jan Briers 3a45d519dc
Nuke fancification (#25297)
Actually use more icon states for deployed/armed/about to explode

Also unlit layer.

Also examine text
2024-02-15 16:26:45 -08:00
Vasilis 7e44c50d19
Made ghost.role_time a server modifiable only cvar (#25292)
Fix
2024-02-16 00:30:55 +01:00
Jezithyr be29a054de
Death acidifier fix (#25251) 2024-02-14 17:37:56 -08:00
Pieter-Jan Briers 6d8be538c9
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.
2024-02-14 16:05:01 -07:00
Errant 5a9ab3b315
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
2024-02-14 14:08:45 +11:00
Guilherme Ornel ff92025026
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>
2024-02-14 12:14:51 +11:00
James Simonson 25f73f6406
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
2024-02-13 17:16:00 -05:00
Ed ae321151ca
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
2024-02-13 17:12:32 -05:00
Tayrtahn 75e47fff9e
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
2024-02-13 17:08:07 -05:00
Pieter-Jan Briers 68ce53ae17
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>
2024-02-13 16:48:39 -05:00
Vasilis c50aee2f9f
Allow inspecting ID's and Health of people behind glass (#25163)
Hops will love me
2024-02-13 17:41:56 +11:00
deltanedas f41ece37c3
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>
2024-02-11 23:45:51 -07:00
SlamBamActionman 247be5b5c7
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
2024-02-10 22:38:55 -08:00
Jajsha 402051c670
Fix borgs being able to emag themselves (#24748)
* Fix self emagging borgs

* Add popup on self emag failure.
2024-02-10 22:23:32 -08:00
metalgearsloth 05a2ddff1c
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
2024-02-11 14:19:45 +11:00
Jezithyr 8e59b4f505
Gibbing contents hotfix (#25114)
Fixing gibbing contents not respecting Include/Exclude container lists. This is currently unused
2024-02-10 16:37:32 -08:00
Jezithyr 541d8f8715
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>
2024-02-10 15:37:06 -08:00
themias f7a3ea6dcf
Flipped caps real (#24961)
* Flipped caps real

* oops

* whoops

* flip not fold

* fix formatting

* cargosoft formatting
2024-02-10 00:44:19 -08:00
deltanedas 55dbe26019
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>
2024-02-08 17:24:24 +11:00
Tayrtahn 9cee54e5a1
Improved output distribution of RoundToLevels (#25026)
* Improved output distribution of RoundToLevels

* Updated tests

* Oops
2024-02-08 10:37:24 +11:00
Rainfey 4129c77a5b
Make Health Analysers UI continuously update (#22449) 2024-02-06 09:20:09 -04:00
Kot bedccf8e31
Allow opening doors mid-deny animation, if you have the access (#24969)
Allow opening doors mid-deny animation, if you have access ofc
2024-02-05 18:31:21 -05:00
deltanedas 9b1c88b78b
move criminal records console component to shared (#24957)
* move criminal records console component to shared

* todone

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-02-05 23:55:39 +11:00
keronshb b88a8f0bb2
Actually fix store action upgrades (#24960)
actual fix this time
2024-02-05 15:56:59 +11:00
keronshb e79d2b5561
Store Action Upgrade Fix (#24959) 2024-02-04 22:02:46 -05:00
deltanedas 683591ab04
criminal records revival (#22510) 2024-02-04 19:29:35 -04:00
metalgearsloth 042feae2e9
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.
2024-02-04 13:23:16 +11:00
themias b503fe5864
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
2024-02-04 11:52:44 +11:00
keronshb 257909fd97
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>
2024-02-04 11:48:51 +11:00
Jezithyr c15b0691ec
Emergency revert for pulling (#24923)
Revert "Pulling rework (#20906)"

This reverts commit 0d8254b2a2.
2024-02-03 10:32:30 -08:00
Arendian 9e484c4b61
Fix sliding bug (#24846)
* Fix slip bug

* debug assert

* count

* DebugAssert
2024-02-03 19:10:50 +11:00
Krunklehorn d01d75073c
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
2024-02-03 19:09:20 +11:00
Krunklehorn 778a704b58
Fixed unable to select None for character spawn priority (#24897)
Allows None to be selected
2024-02-03 19:06:44 +11:00
Nemanja 5db6a3eafc
Decouple panels and wires (#24840)
decouple panels and wires
2024-02-03 15:24:33 +11:00
metalgearsloth 0d8254b2a2
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
2024-02-03 14:36:09 +11:00
Tayrtahn 79e3a6630d
Update FollowerSystem's fix to use new helper property (#24889)
Updated FollowerSystem's fix to use new helper property
2024-02-03 14:17:05 +11:00
Jajsha e4f6a4bea6
Various borg law fixes (#24870)
* Various fixes

* Fix bad ordering with scrambled law orders
2024-02-02 21:29:40 -05:00
Tayrtahn 31207006f5
Fix pressing shift while held triggering escape (#24878)
* We meet again, my old friend.

* Helper property
2024-02-03 13:14:20 +11:00
Bixkitts b98dc66974
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
2024-02-03 12:00:14 +11:00
Leon Friedrich 3ffa15ce34
Fix storage destruction/deletion bug (#24882) 2024-02-03 11:54:48 +11:00
Psychpsyo ba0ca39a7a
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
2024-02-02 13:39:12 +01:00
deltanedas 58e28b5136
fix spray paint popup spam on invalid door (#24857)
fix popup spam on invalid door

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-02-02 15:53:46 +11:00
metalgearsloth 606c5a8c8b
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.
2024-02-01 23:25:58 -05:00
deltanedas c49c78bafa
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>
2024-02-02 09:30:46 +11:00
metalgearsloth 52808694e0
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
2024-02-02 00:39:43 +11:00
Magnus Larsen 9cd6e4dccd
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>
2024-02-02 00:33:57 +11:00
Aexxie 467e983ba9
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>
2024-02-02 00:29:01 +11:00
nikthechampiongr 8b19b7fab9
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>
2024-02-02 00:08:03 +11:00
Repo 0084121706
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>
2024-02-02 00:03:49 +11:00
deltanedas 6b03aaaec7
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>
2024-02-01 23:56:40 +11:00
AJCM-git b8f0ed3975
Cleanups PolymorphSystem/Components/Prototypes (#23721)
* Cleanups PolymorphSystem

* forgot this

* Nah

* Fix test

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2024-02-01 23:17:02 +11:00
metalgearsloth bd86447f99
Fix item toggles where no sound exists (#24807)
Oop
2024-02-01 22:43:06 +11:00
Arendian 4f3b8d740c
Spacelube slide (#24801)
* Space lube now makes you slide

* review

* oh lord he slippin

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-02-01 21:39:10 +11:00
SlamBamActionman 1862f8aa17
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
2024-02-01 21:13:44 +11:00
Krunklehorn ed0f2aa221
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>
2024-02-01 21:12:09 +11:00
Ed 498ad2d5d7
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>
2024-02-01 19:45:24 +11:00
Sergey Dikiy f3ff35dcfa
Added Warning state for AME (#24699)
added warning state for AME
2024-02-01 19:40:57 +11:00
Kot fed43f05d0
Fix SSD indicator (#24589)
Fix ssd indicator
2024-02-01 19:30:07 +11:00
Jajsha 27592ba898
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
2024-02-01 00:02:49 -05:00
metalgearsloth d2f20d8955
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
2024-02-01 11:33:10 +11:00
Ed 884a544120
Anomaly bug fix (#24783)
fix
2024-01-31 16:05:28 -05:00
metalgearsloth a6ea8b210d
Firestarter fixes (#24647)
* Firestarter fixes

- Actually networks the action.
- Namespace fixes.

* No networky for you
2024-02-01 00:01:52 +11:00
Kara cc24ba6a31
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
2024-01-30 21:52:35 -08:00
Kara e82964bbf4
Reduce throwing recoil further (#24759) 2024-01-30 21:00:40 -08:00
themias d75f6c3db4
Allow IdentityBlocker partial coverage (#24741)
* Allow IdentityBlocker partial coverage

* rename to TotalCoverage
2024-01-30 19:49:19 -08:00
Nemanja bd46d7cc8a
make lathe visuals not required (#24757) 2024-01-31 13:50:40 +11:00
DrSmugleaf 83901cafc5
Fix ClimbSystem removing the climbing fixture when it still has contacts (#24756) 2024-01-31 13:10:57 +11:00
Tayrtahn 652e2b7a41
Fix weird rotation when strapped to a bed (#24746)
* Gotta watch out for those tricky radians

* Change StrapComponent instead
2024-01-30 16:23:30 -07:00
nikthechampiongr 9bebdf5706
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.
2024-01-30 13:03:15 -05:00
Kara ef55039560
Throwing item scaling animation + recoil (#24724) 2024-01-30 21:50:41 +11:00
Tayrtahn b0bd0689ce
Stop shift from cancelling follow as ghost (#24715)
Fixed pressing shift cancelling ghost follow
2024-01-29 17:33:34 -08:00
SpeltIncorrectyl 5d2ddc0d8b
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>
2024-01-29 15:56:29 +01:00
Kara 1a74311c9f
Improve rotting examine text (#24689) 2024-01-28 23:50:17 -08:00
Nemanja 2a6705818b
Make procgen use weighted variants (#24669) 2024-01-29 13:41:59 +11:00
themias bd100344a2
Add inhand fill visuals (#24495)
* Add inhand fill visuals

* oops

* remove unused import
2024-01-28 20:38:06 -05:00
metalgearsloth e1901aa6b6
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 e301378114.

# 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
2024-01-29 11:20:34 +11:00
metalgearsloth 58b55ba06c
BatteryWeaponFireModes refactor (#24502)
* BatteryWeaponFireModes refactor

Made the code a bit better but still needs integrating into attachments.

* murder

* Fix serialization

* weh

* weh
2024-01-29 11:09:56 +11:00
DrSmugleaf 4e8b1fb0d3
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
2024-01-29 10:32:42 +11:00
Kara 740c298d2f
Lower speech noise volume & refactor system (#24579)
* Lower speech noise sounds & refactor system christ fuck

* MORE
2024-01-28 21:49:55 +11:00
Nemanja 804c76f8c9
Add support clothing equip/unequip doafters (#24389)
* add clothing equip/unequip doafters

* boowomp
2024-01-28 21:48:42 +11:00
emmafornash af632690a1
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
2024-01-28 14:23:39 +11:00
Pieter-Jan Briers 8ca7cb59a3
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.
2024-01-28 11:28:02 +11:00
avery 7e16ee0b55
Hallway textscreens (#24189)
* hallway screen refactor pending comms console support

* comms console broadcasts

* screen and timer localization
2024-01-27 08:51:24 -05:00
Ed a923beb21b
Gravity anomaly rework (#24452)
* balance

* gorilla gauntlet fix

* magboots update

* some more buff

* randomwalk speed scales with severity

* nerf

* content

* Revert "content"
2024-01-27 04:15:05 -08:00
Pieter-Jan Briers f855cb2b00
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.
2024-01-26 21:53:43 -05:00
Ed de9d7aed17
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.
2024-01-26 21:52:07 -05:00
MilenVolf 4f3265e950
Add price multiplier for armor component (#24561)
* Add price multiplier for armor component

* Fix datafiled
2024-01-25 17:04:01 -05:00
Blazeror 505e423963
Removed TilePryingDoAfterEvent (#24552) 2024-01-25 08:31:32 -05:00
ike709 6cbe4a8fb6
Ports colored chat names (#24478)
* Ports colored chat names

* Update name color on every message

---------

Co-authored-by: ike709 <ike709@github.com>
2024-01-25 01:39:00 -07:00
metalgearsloth 10b7ec5d29
Slight organ loss change (#24475)
Both should be sufficient to avoid the bandaid bug but this one is more accurate.
2024-01-24 18:06:49 -07:00
metalgearsloth 016e535dea
Maybe fix dead bug (#24445) 2024-01-23 18:42:55 -08:00
Tayrtahn c1fd42202f
Holding the walk button no longer activates sprite movement state (#24455)
* Dancing is forbidden

* Suggested changes
2024-01-24 12:26:45 +11:00
TinManTim f499dfb63a
Adds explosion when attempting to microwave metal / bugfix (#23887) 2024-01-23 18:59:09 -04:00
Errant 2737c80169
Suffocation alerts for nitrogen breathers (#24373)
* Respiratorsystem namespace

* WIP gas alert update, does not work

* Finally
2024-01-23 15:17:40 -05:00
Ed 05a7eb07c2
Revert "Start rebalancing anomalies - Rock and Flesh anomaly reworked" (#24448) 2024-01-23 15:40:37 +03:00
Ed b02c211e2f
Start rebalancing anomalies - Rock and Flesh anomaly reworked (#24381)
* rework

* bruh

* all fixed

* balance

* bb

* Update TileAnomalySystem.cs

* Update EntityAnomalySystem.cs
2024-01-23 15:32:05 +03:00
Nemanja 5e2e652165
Generalize tile prying to any tool quality (#24432)
* Generalize tile prying to any tool quality

* ballin
2024-01-22 23:45:40 -08:00
themias 557e5eb476
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>
2024-01-22 23:18:33 -05:00
Dakamakat 7b2e382929
Use can attach check on shot attempt (#24396)
refactor(SharedGunSystem): use can attach check on shot attempt
2024-01-22 23:15:00 -05:00
Nemanja a9e89ab372
Rip out remaining machine upgrades (#24413)
* Rip out remaining machine upgrades

* eek
2024-01-23 09:13:04 +11:00
LordCarve c77eb8691d
DamageSpecifier Total => GetTotal (#24160)
* DamageSpecifier [Obsolete] Total => GetTotal()

* Remove obsolete Total member from DamageSpecifier.
2024-01-21 18:59:14 -07:00
router 4bb670a59c
Change Tmax for fixed floating point epsilon limit (#24370)
This is the largest number that an epsilon of 1/64 = 0.015625K supports
2024-01-21 16:33:06 -06:00
metalgearsloth 9bb2781bfc
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
2024-01-21 22:16:46 +11:00
Kot 8c5898b006
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
2024-01-21 20:14:01 +11:00
Ed a2d5d74b46
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>
2024-01-21 19:58:40 +11:00
Krunklehorn b126aadd9c
Cancel CanBuckle before popup for foldable items (#24358)
* Cancel CanBuckle before popup for foldable items

* Moved to FoldableSystem
2024-01-21 17:32:47 +11:00
Ed b3b64e6cf2
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>
2024-01-20 17:31:12 -08:00
GreyMario 1085dbef65
Remove ability to start pulling while inside a container (#24235)
* why was this even possible

* what coding at 6am does to a mf
2024-01-20 18:40:01 -05:00
Kot 4f307a49be
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
2024-01-20 17:03:10 -05:00
Errant efdc6f8d4c
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
2024-01-20 19:59:41 +11:00
metalgearsloth bbbacf996b
Fix drag-drop buckle sound playing twice (#24321)
Buckle refactor somedayTM.
2024-01-20 01:22:19 -05:00
Kacper Urbańczyk 1ff31f8b7a
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>
2024-01-20 15:57:05 +11:00
Nemanja 21e77dffb0
Fix cargo product groups (#24212) 2024-01-20 14:47:08 +11:00
Hannah Giovanna Dawson 5af1d0ea8b
Fixes round restart audio clipping (#24044)
* Fix round end audio clipping

* weh

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-01-20 14:40:00 +11:00
Arendian e89be95d4c
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>
2024-01-20 13:50:14 +11:00
Nemanja 73e94dfa92
Lathe Categories (#24247)
* Lathe Categories

* serilog my beloathed
2024-01-19 17:45:03 -07:00
SpeltIncorrectyl fd673cf6e3
Can emag artifact crusher (#23957)
* initial commit

* made it emaggable

* removed OnAttemptEmagEvent

* moved emagging to shared

* added local file to git
2024-01-19 10:35:02 -05:00
Kara 818b07ecf8
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
2024-01-19 10:33:07 -05:00
metalgearsloth b535909a49
Fix gun bolt crash (#24283)
Deleting non-predicted entities moment.
2024-01-19 21:14:41 +11:00
metalgearsloth ad23facb7a
Add ability to put spesos into cargo console (#24263)
I thought we had it already but maybe it was an unfinished pr or something.
2024-01-19 18:23:07 +11:00
Repo 7bf62f1d19
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
2024-01-19 18:10:05 +11:00
metalgearsloth a7388e5c05
Add trade stations (#23863)
* puters

* Start on fulfillment

* weh

* Smol update

* FTL sound fixes or smth iunno

* Add consoles

* More tweaks

* Make it unanchorable

* final wehs

* weh

* Fix 1 test

* Shrimply bump the distance

* cat
2024-01-19 13:02:28 +11:00
DrSmugleaf 9ad1ae5d96
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
2024-01-18 00:01:58 -08:00
0x6273 7a7d0017b5
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.
2024-01-17 17:30:30 -08:00
Kevin Zheng 9394a26245
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>
2024-01-17 16:43:48 -05:00
Kara 1f92376579
Reagent grinder jittering (#24190)
* Reagent grinder jittering

* Fix jittering for offset sprites
2024-01-17 06:14:32 -07:00
DrSmugleaf 8902701271
Move rotting stages and examine to shared (#24183) 2024-01-17 01:49:21 -08:00
Veritius 2e83f5a0ec
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
2024-01-17 01:45:45 -07:00
Nemanja 1ed71f544e
Add a way for bulk abstracting prototypes (#24140)
* Ignored Prototypes

* respath it

* add multi-file support
2024-01-16 21:39:14 -08:00
Nemanja e145a8f696
try and purify cryosleeper code (#24165) 2024-01-16 16:02:26 -07:00
Trevor Day d571ed940f
Explosion log fix fix (#24136)
* Reaction and Explosion admin log coordinates

* Remove extraneous whitespace
2024-01-16 00:53:46 -07:00
Nemanja e075a90421
fix cryo bed dragging (#24125) 2024-01-15 17:40:18 -05:00
keronshb c8466055ef
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
2024-01-14 23:37:38 -07:00
Nemanja 736b9dd7df
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
2024-01-14 23:35:28 -07:00
Arendian 04a8761bb6
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
2024-01-14 15:39:09 -08:00
themias fd7ff690b1
Grave digging and decomposition (#23646)
* Grave digging and decomposition

* fix

* update based on review comments

* code review

* remove unused field
2024-01-14 11:47:31 -05:00
Psychpsyo a747e6dda4
Plates & Cash gridinv visuals (#24075) 2024-01-14 11:44:17 -05:00
AJCM-git 108f001731
Virtual items cleanup (#23912)
* Virtual items cleanup

* Detail

* Review

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-01-14 21:18:47 +11:00
DrSmugleaf 95ef20223c
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
2024-01-14 20:18:45 +11:00
Dakamakat b80f7eed6e
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>
2024-01-14 20:10:50 +11:00
deltanedas d1d11d09c7
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>
2024-01-14 19:18:34 +11:00
metalgearsloth 1f3a29c092
Entitylookup method renames (#23519) 2024-01-14 19:10:38 +11:00
Morb 9063cfe454
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>
2024-01-14 18:52:07 +11:00
Tayrtahn 2d6d2aba0b
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
2024-01-14 16:37:28 +11:00
Vasilis 22c0b4425d
Cvar to allow whitelisted players to bypass panic bunker (#23885)
Among us
2024-01-14 16:27:32 +11:00
GreyMario 5962f6d6e9
Pneumatic cannon accuracy buff (#23996)
make thrown item launchers stronger than hands more accurate
2024-01-13 00:29:19 -07:00
Nemanja 0e45c63d22
Fix chem sources in guidebook (#23987)
* Fix chem sources in guidebook

* shabooya
2024-01-13 18:16:47 +11:00
Pieter-Jan Briers 3a2cd95d7f
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.
2024-01-13 15:52:42 +11:00
keronshb 2375a6cd1d
Moves ShootProjectile to shared (#24007) 2024-01-13 15:52:02 +11:00
Pieter-Jan Briers fa56750d30
Fix exception with gas overlay rendering (#24001)
I had to rewrite this code for #23745 and forgot to test it. Damnit.
2024-01-13 00:22:10 +01:00
Pieter-Jan Briers a6c9c36b68
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
2024-01-12 23:22:01 +01:00
nikthechampiongr d312d871c8
Fix double sound for shutters (#23975)
Fix double sound
2024-01-12 13:35:31 -07:00
Fahasor fa3da1ab82
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>
2024-01-12 01:05:28 -07:00
metalgearsloth abc5094a16
NewsSystem fixes (#23969) 2024-01-12 01:04:55 -07:00
Tayrtahn b8de514237
Cuttable speaker wire for vending machines (#23873)
Implement SpeechWireAction
2024-01-12 01:03:02 -07:00
Nemanja 1886941da6
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>
2024-01-12 00:14:20 +11:00
Arendian 23e714e523
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
2024-01-10 17:01:38 -05:00
Arendian 464f24d040
Fix roller skates debug assert (#23876)
Networkedcomponent
2024-01-10 16:38:24 -05:00
metalgearsloth cd1ef71e31
Fix tiledef reloads AKA void planet (#23864) 2024-01-10 23:28:42 +11:00
metalgearsloth 24f8da8f0c
Fix storage state (#23852)
slughands
2024-01-10 02:07:35 -07:00
metalgearsloth 1170121532
Fix objects tab not showing nents (#23837)
* Fix objects tab not showing nents

* Fix everything
2024-01-10 01:30:20 -07:00
themias 4cc3c91805
Wheelchair users can bump open doors (#23806) 2024-01-09 17:06:28 -05:00
nikthechampiongr 88045afcf0
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
2024-01-09 17:05:02 -05:00
metalgearsloth b22c9aa5e2
Fix storagecomp serialization (#23780)
* Fix storagecomp serialization

* Fix state
2024-01-09 03:47:51 -07:00
Kara 05d42dce9e
Don't predict mind examine (#23769) 2024-01-09 01:02:38 -07:00
Nemanja fdd18c9ae4
Quantum Spin Inverter (#23756) 2024-01-09 00:37:55 -07:00
Nemanja 5db615af54
Autoattacking weapons (#23765)
auto attacks
2024-01-09 00:25:07 -07:00
Kot e97fd47a87
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
2024-01-09 01:40:52 -05:00
Tayrtahn eb9770efb9
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
2024-01-08 18:34:47 -07:00
AJCM-git a3127748d1
Fixes ninja not being able to use abilities (#23748)
* Fixes ninja not being able to use abilities

* This was for testing
2024-01-08 19:15:00 -05:00
metalgearsloth cce9bde4cd
Fix gun cursor popup spam (#23732) 2024-01-08 23:10:26 +11:00
I.K dc994f9c66
Improve visibility of gun bolts (#23711)
* add overlay

* ??????
2024-01-07 23:23:41 -07:00
Nemanja c9b700a2d4
Grappling fixes (#23709) 2024-01-08 12:15:46 +11:00
DoutorWhite 31133ef788
Fix RoundStartTimeSpan not being networked on client-side after reconnecting (#23707)
Fix RoundStartTimeSpan state not being networked on reconnections
2024-01-07 19:30:10 -05:00
Arendian e1e99e16c7
Fix duplicate popups in ripley (#23692)
Fix duplicate popups on switching selected equipment
2024-01-07 16:32:46 -07:00
Trevor Day aa7fcb19ec
Update ChemicalReaction and ReagentEffect logs. (#23649)
* Update ChemicalReaction and ReagentEffect logs.

* Updated explosion log as well, and small cleanup.
2024-01-07 14:23:18 -05:00
DrSmugleaf c05a458de2
Revert "Game server api (#23129)" (#23672)
This reverts commit dfc8ea6aee.
2024-01-07 02:04:21 -08:00
metalgearsloth d0f51def1a
Fix asteroid UI determinism (#23661) 2024-01-07 15:21:05 +11:00
metalgearsloth fb24f9accf
Fix salvage magnet determinism (#23655)
Machine-specific moment, you'd think I'd remember from expeditions.
2024-01-07 14:23:44 +11:00
metalgearsloth fed15b0330
Fix master (#23656)
Proximity didn't pass CI.
2024-01-07 14:23:25 +11:00
Simon dfc8ea6aee
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
2024-01-06 17:47:29 -08:00
Trevor Day 39e59cb77f
Update dice state handling (#23643)
* Auto generate dice component state handling, and update data field annotations

* Missed one.
2024-01-06 17:30:21 -08:00
Jezithyr 3261962f8c
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)
2024-01-06 17:04:33 -08:00
deathride58 43d1be51fb
Limits the minimum base skin color brightness for species with Hue coloration (#23605)
adds a minimum skin tone for hue skin colors
2024-01-06 20:40:29 +11:00
Ed f0097d4963
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>
2024-01-06 20:19:45 +11:00
mr-bo-jangles 412f3f470c
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>
2024-01-06 18:31:20 +11:00
J. Brown ed7a787970
Restore correct table-bonk behaviour with clumsy mobs. (#23583) 2024-01-05 23:07:25 -08:00
Kara 0ae3858b69
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
2024-01-06 17:53:13 +11:00
Vigers Ray 5492cc5fd1
Login tips (#22234)
* Init coomit

* meh

* okay

* Revert "okay"

This reverts commit bb638aa4baa8dbd0e285c3435aabf83171a4806a.

* enable-d

* Update Content.Client/Launcher/LauncherConnectingGui.xaml.cs

Co-authored-by: Kara <lunarautomaton6@gmail.com>

* review

---------

Co-authored-by: Kara <lunarautomaton6@gmail.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-01-06 17:06:49 +11:00
Nemanja a448e5fa56
Allow storage to specify a default orientation for stored items. (#23594)
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-01-06 14:19:01 +11:00
Hannah Giovanna Dawson a9075e5d24
Fix Round Restarted Announcements not playing (#23387)
* Fix Round Restarted Announcements not playing

Just make the RoundFlow manager play the funny
announcement sound effect, rather than pass it
through to players in an event that doesn't work.

Only three round end announcements probably
isn't enough. Maybe it is time for fresh memes.

* Remove the handling in ClientGameTicker.

* Pass in a specific filepass to broadcast.

* you make one line change in vscode and the linter
goes AH-HAH I CAN HELP YOU LET ME CLEAN
THIS UP and I'm like 😔 and have to revert
2024-01-06 14:15:28 +11:00
metalgearsloth 8b7bec2f1d
Fix throwing asserts (#23562)
* Fix throwing bad regencontacts call

Throwing needs throwing out the window but this stops it causing problems with anomalies.

* Bandaid throwing
2024-01-06 13:38:37 +11:00
LankLTE 4c179d69e7
add secret weight prototype cvar (#23564)
Add cvar
2024-01-05 18:30:00 -05:00
Kot 3d911a64c7
Fix atmos UI decimal separator bug (#23009)
* Fix atmos UI inconsistent culture usage

* Remove the need to pass localization manager
2024-01-04 21:18:09 -08:00
KISS 920d7068e5
Fixed client console flooding with warnings on RGB color slider changes (#21333)
added reparent bool for this kinds of unequips

Co-authored-by: Yurii Kis <yurii.kis@smartteksas.com>
2024-01-04 21:04:11 -08:00
Adrian16199 78f4bec3e1
Allows a possibility for a new reagant to work on dead if applied. (#23298)
* Allows a possibility for a new reagant to work on dead if applied.

To use it, go to Resources\Prototypes\Reagents\medicine.yml and add worksOnTheDead: true to any reagent.

* Update Content.Shared/Chemistry/Reagent/ReagentPrototype.cs

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

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

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

---------

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
2024-01-04 22:40:57 -05:00
metalgearsloth 7c66bebbef
Revert "Revert "Electric anomaly rework"" (#23549)
Revert "Revert "Electric anomaly rework" (#23546)"

This reverts commit 9acbe38e53.
2024-01-04 21:14:10 -05:00
Emisse 9acbe38e53
Revert "Electric anomaly rework" (#23546)
Revert "Electric anomaly rework (#23173)"

This reverts commit 05ee6eb308.
2024-01-04 17:35:24 -07:00
Jezithyr c242e05cde
Created Proximity Detection and Beeper Systems (#23177) 2024-01-04 15:56:23 -08:00
AJCM-git 3502f5d3db
Fixes UseDelay accumulating time sometimes (#23529)
a
2024-01-04 12:50:11 -05:00
PrPleGoo eed663e8b4
Add health bar overlays for eye equipment (#21980)
* PR 1

* fix an error with health bar overlay (#1292)

* Revert "Revert "Replace `ResourcePath` with `ResPath` (#15308)" (#155… (#15566)

* [1612] change ShowHealthBarsComponent's DamageContainer field to a list (#1662)

* fix build

* no crit entities from not updating

* cleanup

* namespace

* undu irrelevant changes

* undo icon change

* make health bar 1 px taller and icon 1 px shorter

* fix medibot

* fix comment

* don't show health bar ratio when in crit

* fix build

* put the crit bar back

* don't render healthbars for mobs that are in containers

* draw more boxes without the background sprite

* fine status icon for all bio mobs

* add wacky mandatory things

* attempt 2

* whoops wrong file

* cool, this works too

* move null check to top

* only 1 init

* security huds

* remove shader

* fix build after cleanup

* slight cleanup

* little more cleanup

* Remove clothing grant component system

* security HUD now shows a job icon on entities with a body

* remove sec stuff and do similar changes to split off PR + remove unused comp

* process comments

* don't return

* update to ComponentAddedOverlaySystemBase

* no cache

* colors and not rendering out of sight

* touch ups

* fix build & cleanup

* undo

* remove shader from icons

* process comments

* documentation

* fix licence

* validate prototype id

* just use args

* rename method and append in method

* type

* just fucken delete the command

* space

* undo

* remove

* don't use LocalPlayer

* re-add showhealthbars command, but working

* rename icon lists and conform health icon code to the others

* space

* undo

* update command

* oops

---------

Co-authored-by: Rane <60792108+Elijahrane@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2024-01-04 11:48:57 -05:00
Bakke a9b797a091
Fix robusted dionas not being recoverable (#21636)
* Fix robusted dionas not being recoverable

* Implement a polymorph cooldown field, used for TreeMorph

Allows the polymorphed Diona some time to work off robust harvest
without immediately polymorphing again.

* Minor adjustment to polymorph cooldown timing

* Apply suggestions from code review

Co-authored-by: Kara <lunarautomaton6@gmail.com>

* fix: trigger polymorph revert on destruction

As suggested by mirrorcult, DamageThresholdReached is not the ideal
candidate for reverting a polymorph on destruction, as there exists a
DestructionEventArgs to listen for instead.

---------

Co-authored-by: Kara <lunarautomaton6@gmail.com>
2024-01-04 06:10:04 -07:00
VMSolidus 84a2356831
Adding PAI Slot to PDA (#21086)
* Adding PAI Slot to PDA

* Update PdaComponent.cs

* Update pda.yml

* Update tags.yml

Sorting it alphabetically

* Adding PDA UI Elements.

* Addressing reviews

* Update PdaComponent.cs

* Update Content.Shared/PDA/SharedPdaSystem.cs

Co-authored-by: faint <46868845+ficcialfaint@users.noreply.github.com>

* Update Content.Shared/PDA/SharedPdaSystem.cs

Co-authored-by: faint <46868845+ficcialfaint@users.noreply.github.com>

* Update Resources/Prototypes/Entities/Objects/Devices/pda.yml

Co-authored-by: faint <46868845+ficcialfaint@users.noreply.github.com>

* Update PdaComponent.cs

* Update PdaComponent.cs

---------

Co-authored-by: faint <46868845+ficcialfaint@users.noreply.github.com>
2024-01-04 05:56:14 -07:00
brainfood1183 b06d9cb64a
Adds Hellspawn (Nar'Sie demon mob) (#20291)
* HellSpawn Mob

* added spawner

* summary for the namespace

* larger collider, cannot enter single tile corridors.

* fix

* remove duplicate from yml, fix attributions.

* moved action to shared, moved comp to shared, networked comp, separated heal, fixed attributions

* removed flammable from hellspawn
removed the healing effect from firestarter ability (healing can be separate ability).

* Update attributions.yml

fix attributions

* fix

* fix
2024-01-04 05:53:15 -07:00
Ilya246 ca529178e2
scram implant (#23122)
* implement

* fix charges

* add listing

* fixes

* fix locale, probably all done

* fix

* fix of fix

* move query init

* cleanup

* unbrokey rt
2024-01-04 05:38:02 -07:00
Geekyhobo 94a4e4ca10
Aghost Now Can Drop Things Wherever They Want (#23502)
* Aghost Now Can Drop Things Wherever They Want

* update admin CL

* Update Resources/Changelog/Admin.yml

* Update Resources/Prototypes/tags.yml

* Update Resources/Prototypes/tags.yml

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2024-01-04 16:31:58 +11:00
LankLTE 01082c6c27
Add cvar to show new players in ahelp (#23265)
* Implement cvar

* Enable cvar on Wizden
2024-01-04 15:45:23 +11:00
SpeltIncorrectyl 082bde40ca
The Flatpacker 1001 can now make flatpacks for computers. (#23471)
* moved ComputerBoardComponent to Content.Shared

* made flatpacker accept computer boards

* made flatpack system and ui function with computer boards

* fixed it so that flatpacks of computers are correctly coloured to fit their computer board colour

* unhardcoded the computer flatpack assembly cost

* Combined GetFlatpackCreationCost(...) with GetflatpackCreationCostForComputer(...)

* removed code duplication in SharedFlatpackSystem

* removed code duplication from FlatpackCreatorMenu.xaml.cs

* remove code duplication from FlatpackSystem (on the server)

* fixed indentation error
2024-01-03 23:23:47 -05:00
metalgearsloth bf79acd127
Salvage magnet revamp (#23119)
* Generic offering window

* More work

* weh

* Parity

* Progression meter

* magnet

* rona

* PG asteroid work

* code red

* Asteroid spawnings

* clams

* a

* Marker fixes

* More fixes

* Workings of biome asteroids

* A

* Fix this loading code

* a

* Fix masking

* weh

* Fixes

* Magnet claiming

* toe

* petogue

* magnet

* Bunch of fixes

* Fix default

* Fixes

* asteroids

* Fix offerings

* Localisation and a bunch of fixes

* a

* Fixes

* Preliminary draft

* Announcement fixes

* Fixes and bump spawn rate

* Fix asteroid spawns and UI

* More fixes

* Expeditions fix

* fix

* Gravity

* Fix announcement rounding

* a

* Offset tweak

* sus

* jankass

* Fix merge
2024-01-04 14:25:32 +11:00
metalgearsloth 8659a21916
Use IComponentState for compstates (#21905) 2024-01-04 13:50:48 +11:00
AJCM-git 9c522c8b19
UseDelay + ItemCooldown merge (#22502) 2024-01-03 21:33:09 -04:00
themias 7c22a1cc59
Increase zombie prying time for bolted doors (#23383) 2024-01-03 17:41:39 -07:00
deathride58 4d0d2e4c5a
Kobold variety - allows kobolds to have random colors and horns (+ allows RandomSpriteComponent to uh. Actually choose random sprites for specific layers) (#23393)
* kobold variety - allows kobolds to have random colors and horns

* hey lets maybe not crash in this case, lets maybe let the color continue being null in this case

* excuse us vscode what the fuck is this

* brightens kob base, makes kob outline more bold, fixes to the prototype because our code spaghett

* okay yeah angler horns just dont work At All. the floppy kobold ears, however? MWAH. chef's kis

* we've been staring at these critters all day - makes base color line up with the base color of some of the markings
2024-01-03 17:39:00 -07:00
Nemanja 4662d463b8
Chill bounties + fixes (#23411)
* Chill bounties + fixes

* localize

* fix arbitage
2024-01-03 17:34:47 -07:00
Chief-Engineer 7ecd7668a1
Enable panic bunker by default (#23252)
* update cvars

* vote 1984

* rip

* add custom reason

* make panic_bunker.enabled a server cvar

I am kind of guessing

---------

Co-authored-by: DrSmugleaf <drsmugleaf@gmail.com>
2024-01-03 03:26:13 -06:00
deathride58 aa6645c8e9
Blindness rework - damaged eyes are now a stylized simulation of legal blindness (#23212)
* blindness rework - damaged eyes now simulate legal blindness

* hEY THATS FOR DEMONSTRATION PURPOSES ONLY AAA

* attributions

* makes eyeclosecomponent adminbus compatible

* useshader(null)
2024-01-03 01:07:02 -08:00
deathride58 1a531342c5
Glowy lights - light fixtures now actually glow (#23428)
* glowy lights - makes light fixtures actually physically glow when active

* serviced the lights

* ya sure
2024-01-03 19:46:11 +11:00
metalgearsloth 2166958bd0
AutoCompState + ItemToggle fixes (#23422)
* AutoCompState + ItemToggle fixes

Fix a lot of the comp states that are never actually networked and also cleaned up ItemToggle events a bunch. ItemToggle will still need some future work for lights and sounds.

* Also catch these
2024-01-03 17:24:02 +11:00
Nemanja 58d518a2a0
Fix small logic issue in item slot swapping (#23378)
fix swapping item slots sometimes failing
2024-01-03 17:16:37 +11:00
Nemanja 1c11332fa4
Flatpacks and the Flatpacker 1001 (#23338)
* Flatpacker and flatpacks

* ok that's good enough

* convert solars/AME to flatpacks

* mats, mats, we are the mats

* basic mechanics are DONE

* thing

* final UI

* sloth

* rped jumpscare

* rename
2024-01-03 17:16:02 +11:00
Skye fbe72c848a
ChemMaster buffer preserves list ordering (#23352)
ChemMaster now maintains list order on reagent removal
2024-01-02 10:51:21 -05:00
Ilya246 49dbbc5721
fix emagged lathes (#23318)
* implement

* pass uid

* fix

* fix dementia

* event implementation

* fix
2024-01-02 02:11:13 -05:00
Leon Friedrich 383271c8fa
Fix GravityGridTest (#23348) 2024-01-02 17:24:01 +11:00
Ed 05ee6eb308
Electric anomaly rework (#23173)
* add content

* remove using

* update

* Update ElectricityAnomalyComponent.cs

* 2-5 lightnings

* tweaks

* remove tesla comment (sorry)
2024-01-01 02:24:38 -08:00
deltanedas 984cd643fe
light ciggies with fire structures (#23196)
the pro ops

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-01-01 00:10:48 -08:00
themias 9115994abf
fix cauterization (#23264)
* fix cauterization

* remove if statement

* revert DamageTest change

* fix
2024-01-01 00:08:25 -08:00
Kara f9355c6151
Remove ambient sound from lv/mv/pipes + up default ambience volume (#22536)
* Remove remaining ambientsound enabled overrides on maps

* Disable LV and MV ambience altogether

* hv enable default

* not necessary bc subfloor

* up default volume

* no pipe ambience

* pepis
2023-12-31 23:57:33 -08:00
Nemanja 2b01899d63
Make the material ejection control completely generic (#23308)
* Finish decoupling material ejection from lathes

* commented
2023-12-31 23:16:25 -08:00
Nemanja ad5f7a5c76
Give throwing a cooldown (#23311) 2024-01-01 14:24:37 +11:00
LankLTE e76d8390bd
add cvar for custom panic bunker reason (#23267)
Panic bunker cvar
2023-12-31 21:53:49 -05:00
LordCarve 24f07b203f
Fix formatting to match .editorconfig (IDE0055 warnings) (#23301) 2023-12-31 21:20:02 -05:00
Nemanja a425bc78c5
Fix chem guide data build fail (#23289) 2023-12-31 12:11:29 -05:00
Nemanja f538a2e34a
Add reagent sources to the guidebook (#22627)
* source in my guidebook

* finish it!

* sir yes sir oorah

* network that bitch, baby
2023-12-30 23:34:59 -08:00
Hannah Giovanna Dawson f850047341
Migrate Lathe Material Ejection Code to MaterialStorage (#23199)
* SS14-23184 Migrate Lathe Material Ejection Code to MaterialStorage

The lathe material ejection code acts as a do-nothing
man-in-the-middle system that does work that would be
reasonable for any MaterialStorage-using machine to
use. This has been fixed by migrating the ejection
code to MaterialStorage, allowing anything that uses
the system to eject mats it is storing.

* Fix some YAML references. Science!!
2023-12-30 20:08:33 -05:00
lzk 83bd937267
Make mime stamp silent (#23221)
* good commit

* Revert "good commit"

This reverts commit 2559a9ad8b642827446e151adc90057d667be60d.

* EVEN BETTER PR

* even more better
2023-12-30 18:15:02 -05:00
Guillaume E 4fe93cf456
Artifact analyzer now pauses on power-loss (#22974)
* Artifact analyzer now pauses on power-loss

Instead of just cancelling the current scan, the artifact analyzer
will now pause in case of power-loss.

Scanning will automatically resume when power returns.

* Improve artifact scanning pausing

This builds upon the latest improvements in artifact scanning
regarding UI update.
2023-12-30 12:49:24 -05:00
Nemanja c3f81bfe03
Hyper convection lathes and industrial ore processor (#23202)
* Hyper-convection lathes and industrial ore processor

* balance

* gold... why not?

* review

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2023-12-31 03:18:58 +11:00
TemporalOroboros d23c8d5c19
Revert 'Revert 'Solution Entities'' (#23168) 2023-12-29 08:47:43 -04:00
metalgearsloth 4023134cf0
Add UI click sounds (#22410)
* Add UI click sounds

* tweaks

* Significant cleanup

* Audio options and numerous fixes

* Fix the remaining UI elements

* new click sound

---------

Co-authored-by: Kara <lunarautomaton6@gmail.com>
2023-12-29 15:43:36 +11:00
Emisse 938d6d9945
Revert "Solution Entities" (#23160)
Revert "Solution Entities (#21916)"

This reverts commit d75e743dd7.
2023-12-28 20:45:42 -07:00
TemporalOroboros d75e743dd7
Solution Entities (#21916)
* Creates Content.Shared.Chemistry.Solutions
Copies Solution class to new namespace
Obsoletes old Solution class

* Switches over to the Solutions.Solution Solution

* Creates Content.Shared.Chemistry.Containers
Copies relevant components/systems to the new namespace
Obsoletes old versions

* Switches over to the Containers.XYZ namespace

* Creates SolutionSystem and obsoletes old SolutionContainerSystem methods

* Start using SolutionSystem for Solution manipulation

* EnumerateSolutions

* Move TryGetMixableSolution

* Move EnsureSolution to Server

* Create Solution Entities

* Stop using obsolete solution system methods

* Fix prototype component tests

* Add using ..Audio.Systems; back

* Wrap solution container slots in ContainerSlots

* Actually add the slot to the solution container map

* Dirty SolutionContainerComponent when ensuring solutions

* Revert namespace changes

* Remerge SolutionSystem and SolutionContainerSystem

* SolutionContainerManagerComponent refactor

* Avoid wrapping necessary code in DebugTools.Assert as it is removed when compiling for release

* Readd examine reagent sorting

* Fix errors

* Poke tests

* Fix solution names not being applied

* Fix WoolyComponent including statement

* Fix merge skew

* Fix compile errors

* Make reactions use solntities

* Reindent solution class namespace

* Field attribute changes

* AutoGenerateComponentState for SolutionContainerComponent

* SolutionContainerComponent -> ContainedSolutionComponent

* ref ReactionAttemptEvent

* Denetwork preinit solutions

* Misc 1

* Nullable TryGetSolution out vars

* Cache associated solutions

* Fix merge skew

* Use explicit regions in SharedSolutionContainerSystem.Capabilities

* Add debug assert

* Use explicit regions in SharedSolutionContainerSystem.Relay + ref SolutionContainerChangedEvent

* ContainedSolutionComponent.Name -> ContainedSolutionComponent.ContainerName

* SolutionComponent doc comments

* Implicit DataField names and property purge

* ReagentEffect DataField names

* Local variables for readability

* Sort using statements + Entity<T> event handlers

* Fix compile erros

* Fix compile errors

---------

Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
2023-12-28 17:58:14 -08:00
AJCM-git a4dd4828cf
Access logs tweaks and fixes (#23096)
* Fix AccessRecord not serializing correctly on map saves

* record struct my beloved

* Final tweaks

* pro

* This is no longer necessary
2023-12-28 19:32:46 -05:00
Nemanja 99d78c4b97
Station beacons (#23136)
* Station beacons

* crate

* remove navmap from warp points

* ack

* oh damn

* okay emisser
2023-12-28 17:02:21 -07:00
Nemanja 526b966f09
Fix zipties/makeshift cuffs dropping multiple broken entities on removal (#23095) 2023-12-28 16:50:08 -07:00
Ed 88d7cfb4c0
Tesla (#21124)
* upload all textures
finished easiest part - TeslaGenerator

* Added Tesla energy logic

* add lightning pulse priority

* work

* optimise lightning arc system

* now tesla moving to LightningTarget entity and consume it

* some audio work
add airlock and computers to the LightningTarget

* add nice visual and explosions
add crashing to game

* rsi meta fix

* disabling explosions (crashing server)
I'll get back to that problem later.

* adding important admin logging

* a little bit of cleaning and documentation

* Persistent attempts to fix the server crashing on explosions. Accidental cleaning of everything I see.

* now the tesla incinerates everything it touches except the containment field.

* colliders work

* fix falling tesla on ground after being exploded

* add consume sound, add spawn and collapses sound

* added TeslaGenerator to cargo trading console

* add all tesla part to cargo trading console

* Tesla coils: Turn on and off, get energy from lightning, give energy to the grid.

* tesla coil is ready

* tesla grounding rod is ready

* clean up

* clean up 2

* grounding rods now working without power

* add LightningResistance parameter for LightningTarget Component

* add chaotic teleport

* eletrocution remove?

* deltanedas fix pack

* more fixes

* FIXES

* FIIIXEEES

* The "Grounding Rod" component is removed, and replaced with "LightiningSparking", which is responsible for changing the visuals when hit by lightning. Duplicate code from the coil is removed.

* ops

* fix

* nah, is escaped anyway

* increase tesla collider size

* keron bb

* try fix test?

* fix

* bruh

* check turn off sus comp

* prototype cleaning

* FIIX

* return and fix sus component

* fix tesla eating lightnings, now mini tesla is electrocuted

* commented some issues

* remove linq sorting
fix jumping system
minor fixes

* fix second Linq

* fix tesla colliders! Yeah, it works

* fix componentregistration

* Just retests

* not fix

* FIX TESLA

* fixes

* store targets

* back

* make dictionary of hashsets

* some sloth fixes

* stump

* playtest balance energy generation, return to unpotimized (but working) lightning shoot

* parity

* work on

* some new fix, some new bug (chasingComponent not chasing)

* comment

* fix ChasingWalkSystem

* fix collider tesla problem

* revert old unoptimized shoot lightning

* new fix pack

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2023-12-28 13:11:50 +00:00
TemporalOroboros 7a77d6d5dd
Content ecs containers (#22484) 2023-12-28 01:30:03 -04:00
Nemanja 9bd03824ac
GORILLA Gauntlets (#23012)
* GORILLA gauntlets

* oh shit this too
2023-12-27 20:11:13 -07:00
Leon Friedrich d82767be7d
Revert to v196.0.0 (#23074) 2023-12-28 10:57:48 +11:00