* Renews Maintenance Drones
* And these have conflicts too, but you can't see them
* Skyrat Map Updates (Adding Supermatter Room Area)
Co-authored-by: Jonathan Rubenstein <jrubcop@gmail.com>
Co-authored-by: Funce <funce.973@gmail.com>
* Gives the slippery component a default whitelist of allowed slots (#58267)
* Gives the slippery component a default whitelist of allowed slots
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* Gives rotting things a timer before they become fully effective to give more leeway for cleanup. Lowers the max values for disease effect and proc chance significantly. Cleans up some silly zone selection code. (#58290)
* Makes rot more forgiving of slow cleanup
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
* Cleanup (#58234)
as x doesn't work properly when used in for loops over special lists.
One instance of as anything in get_turf() in crafting code was removed as entirely redundant. It was an untyped for loop anyway.
Two instances of as anything in contents changed for wheelchairs with warnings added to change them to as anything loops when we upgrade to 514.
* Cleanup some for loops that use "as contents" over special lists until we upgrade to 514.
Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
* Deletes recipient_reagents_holder on del (#57767)
* Deletes recipient_reagents_holder on del
* Cleans up recipient refs when recipient dels
* no one saw that
* Makes plumbing listen to component signal for finishing
* Unregisters enable call
* Deletes recipient_reagents_holder on del
Co-authored-by: Time-Green <timkoster1@hotmail.com>
* Refactors shielded hardsuits into a component, fixes kisses consuming shield charges (#57797)
Shielded hardsuits (like the syndie ones) and shielded cult robes, despite functioning very similarly, were actually implemented twice in their own pockets of clothing code. This merges them into one component that lets you block a certain number of attacks while your suit has charges, and have the suit recharge itself after going so long without being hit (optional, cult robes still don't regain lost charges).
This PR also fixes harmless kiss projectiles consuming charges on shielded suits, I'm sure to much disappointment. They'll now pass directly through though, so you can still try your luck to see if love truly conquers all (it probably won't).
One casualty of this is that you can no longer toggle the shield color of syndie hardsuits with a multitool since that it was annoying to componentize, not something that affected gameplay, and probably something noone knew you could do anyway.
Fixes: #57723
* Refactors shielded hardsuits into a component, fixes kisses consuming shield charges
Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
* Processable and grillables and microwavables now give helpful examines, some condiment containers also do (#57694)
* IM DONE LOOKING AT THE WIKI FOR BASIC SNIZZLE
* microwaved, too
* HOOH
* LINT, review
* review but this time im not lying :trollface:
* maybe i should just like test or something
* reviews i missed
* 🐑
* Processable and grillables and microwavables now give helpful examines, some condiment containers also do
Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
* TGUI Limbgrower + Limbgrower refactoring and design expansion (#57955)
Refactors the limbgrower to modernize the code. Now, the limbgrower can accept any type of reagent in limbgrower designs.
Adds simple plumbing demand to the limbgrower, so you can pipe synthflesh into it.
Adds monkey tails, felinid ears and tails, lizard digitigrade legs, lizard tongues, fake lizard tails (unusable in lizard-wine and similar recipes), plasmaman organs, and ethereal organs (minus the heart) to the limbgrower via limbgrower design disks. These disks can be printed from the medical lathe once the required technology has been researched.
Adds a technology node to unlock the limbgrower design disks after advanced biotech, xenoorgan biology. In the future, this could have an experiment requirement - maybe to scan multiple types of species.
Co-authored-by: Aleksej Komarov <stylemistake@ gmail.com>
* TGUI Limbgrower + Limbgrower refactoring and design expansion
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Aleksej Komarov <stylemistake@ gmail.com>
* autofire no longer does SIGNAL_HANDLER_DOES_SLEEP (#58066)
* autofire no longer does SIGNAL_HANDLER_DOES_SLEEP
Co-authored-by: Fikou <piotrbryla@onet.pl>
* Lowers rot disease chance (#58034)
Lowered the chance of disease creation by ~60%
Every round was having horrible breakouts, this ought to fix that
* Lowers rot disease chance
Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com>
* Fixes lights on people (#58000)
- Fixes light eaters not putting out lights on people.
* Fixes the light eater not eating lights people are holding.
Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
* Gibs/Dead bodies no longer produce miasma (#57957)
* Gibs/Dead bodies no longer produce miasma
Miasma production as it is now is too little over too long a time span, and it just ends up spreading across the
station and having little effect. My goal here is to remove a source of uninteresting gas from the station's
air, and make corpses and gib piles more infectious.
I've placed the cap on disease payout at a strength of 7, so there's a slight chance of a positive disease, but
I think it's counteracted by the danger presented by just infecting yourself till you get what you want.
I've rewriten the rot component to just run a percent chance to infect someone with a disease based on the type
of rot, and moved almost all of its behavior to signals. There's one portion I can't rewrite without making
significant changes to how I handle atmos sensitivity, so that'll come later.
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* Gibs/Dead bodies no longer produce miasma
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* You can now put food on plates, and plate no longer materialize out of nowhere as you cook
* Update dish_drive.dm
* aaaaaaaaaaaaaaa
Co-authored-by: Qustinnus <Floydje123@hotmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
* Makes deadchat control's examine only shows up for ghosts (#57926)
This PR early returns the on_examine proc for deadchat control if the examiner is not an observer.
So, only ghosts (deadchat) are allowed to see if something is under deadchat control. Humans don't need to know (or shouldn't know) if deadchat is expanding its reach into the physical realm.
* Makes deadchat control's examine only shows up for ghosts
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* Adds a plumbing layer manifold (#57494)
Adds a multilayer plumbing manifold, I also murdered the multilayer duct
You can now alt-click the plumbing RCD to change the layer it prints. I made a whole thing where right clicking changed the settings and you could use that to change machinery aswell. I even did that with the plunger, it was absolutely beautiful. Anyway that drained the life out of me because apparently there's no attack_obj_secondary and afterattack_secondary ALSO called attack_obj (left click). I just hate whoever made it with intensity
Plumbing now uses three layers. They should be easier to navigate. I tried to make layer connecting the same as cross-color connecting, but that would take more of my soul then there is to take
* Adds a plumbing layer manifold
Co-authored-by: Time-Green <timkoster1@hotmail.com>
* Ice cream revamp: Ice cream is a component and cones can hold multiple servings of ice cream now. (#57415)
* Ice cream rework WIP
* I'm done!
* i'll deal with my verbose engrish at a later date. I'm dead tired.
* linter aaaaaa
* Take a bite!
* FINALLY, A COMPONENT!
* ghost macro.
* Review, typos, beheading of a lame comsig.
* Typo. Now I'm self-obliged to test it again.
* It works.
* Ice cream revamp: Ice cream is a component and cones can hold multiple servings of ice cream now.
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
* Autodocs the slippery component + changes the hardcoded slot whitelist to a variable (#57878)
* Autodocs the slippery component + changes the hardcoded slot whitelist to a variable
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* Full-Automatic Guns (#57084)
* fullauto component
* eh
* h
* brap
* it works!
* FUCK SHITUP
* dumbass
* l6
* oops
* GOD
* THE LAST 10% OF A PROJECT IS 90% OF THE WORK
* slopwer projecitles, replaces the tesla gun
* heavy
* minigun
* minigun stuff
* runtime fixes, pointer icon
* nuh uh
* makes modifeirs things
* nerf this
* yes
* aghh
* agh
* real high intensity changes here
Co-authored-by: Ryll-Ryll <3589655+Ryll-Ryll@ users.noreply.github.com>
* Full-Automatic Guns
Co-authored-by: Fikou <piotrbryla@onet.pl>
Co-authored-by: Ryll-Ryll <3589655+Ryll-Ryll@ users.noreply.github.com>
* You can now clean pies off of your face in the sink (#57789)
Fixes#55649Fixes#57039
Allows you to wash pies off of your face using the sink
* You can now clean pies off of your face in the sink
Co-authored-by: Seth Scherer <supernovaa41@protonmail.com>
* Makes it so you cant apply component to qdeleted targets (#57773)
This shouldn't be happening but it seems it does in at least one case with forensics component being applied to some qdeleted gibs.
* Makes it so you cant apply component to qdeleted targets
Co-authored-by: Emmett Gaines <ninjanomnom@gmail.com>
* twohandend-required items shouldn't fall down when equipped on another slot. (#57429)
`component/twohanded/on_drop` as it is right now causes items that require two hands to be held to fall off if worn on non-hand inventory slots, as shown in #57411. This PR aims to fix that nuisance by adding another argument to the proc.
* twohandend-required items shouldn't fall down when equipped on another slot.
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
* Items now properly unset the IN_STORAGE flag when removed from storage. (#57660)
* Items now properly unset the IN_STORAGE flag when removed from storage.
Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
* Making blood less frustrating (#57085)
Two changes.
1. If a splatter of blood isn't bloody enough, the character will not get bloody shoes.
2. Characters with light steps trait won't get bloody clothes if they step on a bloody tile without shoes.
3. added: Blood dries over time. Usually, 3 or 6 minutes. If a splatter is big enough, it can stay wet up to 15 minutes.
Why It's Good For The Game
The entire crew won't have bloody shoes anymore.
Less time wasted looking for showers or sinks to wash their shoes after stepping on a near invisible blood decal.
Characters without shoes (or who don't want to get their clothes bloody after taking them off) will get more use from a near useless trait.
Changelog
cl
qol: Blood splatters only make your shoes or feet bloody if the tile is bloody enough,
qol: Light steps trait prevents clothing from being covered in blood if you step on a bloody tile with your shoes off.
add: Blood dries over time. Usually, 3 or 6 minutes. If a splatter is big enough, it can stay wet up to 15 minutes.
/cl
(grammaticly impoved by @ maxymax13)
* Making blood less frustrating
Co-authored-by: Kush1Push1 <78963858+Kush1Push1@users.noreply.github.com>
* Fix issues with custom reagent holder (#57132)
Co-authored-by: Jordan Brown <Cyberboss@ users.noreply.github.com>
* Fix issues with custom reagent holder
Co-authored-by: Jack LeCroy <3073035+jacklecroy@users.noreply.github.com>
Co-authored-by: Jordan Brown <Cyberboss@ users.noreply.github.com>
* Adds a hotkey that puts you in throw mode aslong as you hold it (#57331)
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* Adds a hotkey that puts you in throw mode aslong as you hold it
* a
Co-authored-by: Qustinnus <Floydje123@hotmail.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
* Removes the upgraded version of the h2 axe, the one with lifesteal (#57476)
I intended to clear this up before the pr adding this got merged, but I overslept. Don't ask
It's a very hard to get tool, but it's just kinda like, a fire axe but with slightly more damage and lifesteal.
Endgame atmos content should be atmos related, not just a good weapon. Also it's way too time consuming to
acquire, so its overpoweredness is balanced by its rarity. I don't like tools that are setup like this, since
they just end up bloating wiki articles.
* Removes the upgraded h2 axe
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
* Dog AI 2.0 (#57186)
Now that JPS and AI movement datums are fully merged, I'm here to take another (my third actually) crack at giving dogs fun AI. Here's a video demonstration (somewhat WIP), and a quick rundown of everything dogs will be able to do. Basically all of these behaviors are generic and can be extended to other simple mobs,
Commands and Friendship
Fetching
Attack/Harass
Heel
Play Dead
* Dog AI 2.0
Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
* Tweaks cryostylane to use the new reaction mechanics, incorporating stasis iceblocks, freezing, temporary organ decay prevention and surgery speed modifiers.
* Update holder.dm
* Update holder.dm
Co-authored-by: Thalpy <33956696+Thalpy@users.noreply.github.com>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
* Fixes crafted foods not getting reagents from its contents (#57258)
* Fixes crafted foods not getting reagents from its contents
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* Fix stacking of blast doors and shutters from crafting (#57360)
* Fix stacking of blast doors and shutters from crafting
Co-authored-by: Ghilker <42839747+Ghilker@users.noreply.github.com>
* At first i thought that i was being forced to add a feature 🤮 but then i realized i was being encouraged to refactor 😄. Electrified chair is now a component instead of a failure (#57117)
* At first i thought that i was being forced to add a feature 🤮 but then i realized i was being encouraged to refactor 😄. Electrified chair is now a component instead of a failure
Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
* Rework plumbing reaction chamber, purity support (#57071)
Currently does four things:
The reaction chamber now supports purity! It has a yellow (acid) and green (basic) input for buffers, aswell as a setting to automatically dispense either an acidic or alkalic buffer when above/below a certain pH! Now you can make a 100% pure meth factory! The buffer connects are on an alternate layer.
Probably going to be less loved, but I removed the reaction chambers ability to pick reagents from the net. Instead, it will pull untill a set volume is reached. Then it'll start reacting. While this means that players will have to be more creative and use a wider array of machinery.
Also new machine! Buffers! They fill the hole that reagent chambers left. They can be set with a threshold volume and will only start putting out chems when ALL of their neighbouring buffers also are also above this threshold. You might have a lot of one chem and have to wait for a more specialized chem to be produced, and with the cleverness of reaction chambers gone, bufferers can do just that: wait.
I also removed all but two layers. I want to make it obvious what layer the buffer connects are on. Also layers are basically unusable and I'm gonna give them a rework very soon. I'll put the things back in then when they actually have something to contribute
* Reworks plumbing reaction chamber, purity support
Co-authored-by: Time-Green <timkoster1@hotmail.com>
* Adds unit test for spawned food edibility (#57232)
* Adds unit test for spawned food having reagents
- Adds stack trace for biting food failing due to a lack of reagents
- Adds checks for seed var being set under food/grown's initialize() in grown.dm
- Fixes issue with gondola meat code duplicated for penguin meat slabs resulting in a runtime and being unable to slice penguin meat
- Adds seeds for bombananas
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* Adds unit test for spawned food edibility
Co-authored-by: cacogen <25089914+cacogen@users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>