Commit Graph

971 Commits

Author SHA1 Message Date
Bloop
00498217f1 Fixes eye emissives not scaling properly with height (#22705)
* Fixes eye emissives not scaling properly with height

* Fixes the lying down emissives issue
2023-07-30 20:43:05 -04:00
SkyratBot
7d3a0672f7 [MIRROR] Bargain bin organ quirks: Prosthetic organ and Tin Man [MDB IGNORE] (#22297)
* Bargain bin organ quirks: Prosthetic organ and Tin Man

* Update organs.dmi

* Update quirks.dm

---------

Co-authored-by: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-07-20 16:37:43 -04:00
SkyratBot
07fa5992a4 [MIRROR] Adds p_They (and friends) for capitalized pronoun helpers [MDB IGNORE] (#22555)
* Adds p_They (and friends) for capitalized pronoun helpers

* Fixes modular pronouns

* Merge conflict

* Update spank_related.dm

---------

Co-authored-by: tattle <66640614+dragomagol@users.noreply.github.com>
Co-authored-by: Bloop <vinylspiders@gmail.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-07-18 22:10:59 -04:00
Bloop
a9c80a29a3 [MISSED MIRROR] Implements a macro for checking mind traits (#76548) (#22447)
* Implements a macro for checking mind traits (#76548)

![image](https://github.com/tgstation/tgstation/assets/82850673/f85d0556-1806-40bf-92b8-597e46ccb4af)
Seeing this pattern repeated over various sections of code was starting
to piss me off

Lessens chance to cause errors with mind traits, ensures consistent
behavior, makes it easier to change how mind traits work if necessary.

hopefully not player facing

---------

Co-authored-by: san7890 <the@san7890.com>

* modular stuff

---------

Co-authored-by: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com>
Co-authored-by: san7890 <the@san7890.com>
2023-07-18 21:32:47 -04:00
SkyratBot
be81a68d12 [MIRROR] Unit test organ damage cap [MDB IGNORE] (#22167)
* Unit test organ damage cap (#76439)

## About The Pull Request

Requires #76438 be merged

Tests that organ damage cap is respected on all organs.

Adds a cheeky clamp to ear damage. Not sure if it's necessary but I've
witnessed ear damage bypass the cap in the past even before this bug.
~~Why does use it's own damage system so saaaaaaaaaaaad~~

Co-authored-by: tattle <66640614+dragomagol@ users.noreply.github.com>

* Unit test organ damage cap

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: tattle <66640614+dragomagol@ users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2023-07-18 17:51:01 -04:00
SkyratBot
b262fa48ce [MIRROR] Fix organ damage being uncapped [MDB IGNORE] (#22161)
* Fix organ damage being uncapped

* Update damage_procs.dm

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Bloop <vinylspiders@gmail.com>
2023-07-18 16:52:09 -04:00
SkyratBot
2e76fd64af [MIRROR] Makes sure viruses check for virus immunity BEFORE attempting to infect. [MDB IGNORE] (#22541)
* Makes sure viruses check for virus immunity BEFORE attempting to infect. (#76884)

* Makes sure viruses check for virus immunity BEFORE attempting to infect.

---------

Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
Co-authored-by: Pinta <68373373+softcerv@users.noreply.github.com>
Co-authored-by: Bloop <vinylspiders@gmail.com>
2023-07-18 16:39:48 -04:00
GoldenAlpharex
4aec91cc06 [MANUAL MIRROR] Fixes carbon bodytypes not always being synchronized with bodyparts + Fixes dumb usage of TRAIT_LIVERLESS_METABOLISM i caused [MDB IGNORE] (#22519)
* Fixes carbon bodytypes not always being synchronized with bodyparts (#76522)

Fixes https://github.com/tgstation/tgstation/issues/76481
TLDR /mob/living/carbon/human/species subtypes were NOT updating their
bodytypes on spawn due to absurd and wacky carbon bodypart creation code
that meant try_attach_limb() never got called (What the FUCK?)

* Fixes CI too

* [NO GBP] Fixes dumb usage of TRAIT_LIVERLESS_METABOLISM i caused (#76500)

## About The Pull Request

TRAIT_LIVERLESS_METABOLISM should do what it implies, and make you
always metabolize as if you were liverless.
This was a stupid mistake on my part because I wasn't aware
TRAIT_STABLELIVER was a thing.

## Why It's Good For The Game

TRAIT_LIVERLESS_METABOLISM and TRAIT_STABLELIVER should not behave the
exact same.

## Changelog

Not quite player facing.

* I fucking swear I fixed this before

---------

Co-authored-by: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com>
2023-07-16 20:33:33 -04:00
SkyratBot
2f552919c1 [MIRROR] Icons folder cleaning wave two [MDB IGNORE] (#22454)
* Icons folder cleaning wave two

* Merge conflict resolution

* Modular path hell

* hmm

* Update 2022-10.yml

* Another modular thing

---------

Co-authored-by: YesterdaysPromise <122572637+YesterdaysPromise@users.noreply.github.com>
Co-authored-by: Giz <vinylspiders@gmail.com>
2023-07-16 00:41:18 -04:00
Zergspower
bb3d041572 [Manual Mirror Fix] Removes shitty "status" variable on organs, makes them use organ_flag (#22480)
* Removes shitty "status" variable on organs, makes them use organ_flags instead (#76350)

Title.

Seriously this shit pisses me off, why are ORGAN_SYNTHETIC and
ORGAN_ROBOTIC two different things?

not applicable unless i fucked up

---------

Co-authored-by: Time-Green <7501474+Time-Green@users.noreply.github.com>

* Modulars

* Some merge skew

* More diffs

---------

Co-authored-by: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com>
Co-authored-by: Time-Green <7501474+Time-Green@users.noreply.github.com>
Co-authored-by: Giz <vinylspiders@gmail.com>
2023-07-15 17:27:49 -04:00
SkyratBot
e264ee3644 [MIRROR] Adds an extra malf AI ability: Remote emagging. Also tidies up emag code and coverts a lot of things to balloon alerts [MDB IGNORE] (#22469)
* Adds an extra malf AI ability: Remote emagging. Also tidies up emag code and coverts a lot of things to balloon alerts

* Update communications.dm

* Modular override

* Some modular adjustments, removes 'emagged' vars in favor of obj_flags

* whoops, mobs don't have obj_flags.

---------

Co-authored-by: nikothedude <59709059+nikothedude@users.noreply.github.com>
Co-authored-by: Giz <vinylspiders@gmail.com>
2023-07-15 16:46:17 -04:00
GoldenAlpharex
7a827df807 [MIRROR] SPECIES NUKING 2023: Nukes species_traits, good night sweet prince [MDB IGNORE] (#22458)
* SPECIES NUKING 2023: Nukes species_traits, good night sweet prince (#76297)

IT'S OVER.

Species traits are a relic of a time before the trait system was added
to generalize this kind of behavior.
They are clunky and overall less useful than inherent_traits -
Converting these makes it easier to make these behaviors modular and
usable not only by species.

🆑
refactor: A significant species refactor happened, report any issues on
the github.
/🆑

---------

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>

* Makes it all work

* Fix widespread vampirism (#76414)

## About The Pull Request

Removing code you think is not necessary but is actually is always a
recipe for disaster (#76297)


![image](https://github.com/tgstation/tgstation/assets/51863163/8ea9fdcc-2f95-47d4-a00f-cc8ebeb319f9)

## Changelog

🆑 Melbert
fix: Fix everyone being vampires
/🆑

* Whoops, missed one!

---------

Co-authored-by: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com>
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2023-07-14 21:38:54 -04:00
SkyratBot
b6f130d011 [MIRROR] SPECIES NUKING 2023: Makes tongues handle liked/disliked food instead of species datum [MDB IGNORE] (#22066)
* SPECIES NUKING 2023: Makes tongues handle liked/disliked food instead of species datum

* Fixes all of the left-over issues

* https://github.com/Skyrat-SS13/Skyrat-tg/pull/22137

https://github.com/tgstation/tgstation/pull/76359

* Applies https://github.com/Skyrat-SS13/Skyrat-tg/pull/22251

https://github.com/tgstation/tgstation/pull/76537

---------

Co-authored-by: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2023-07-14 16:54:10 -04:00
SkyratBot
73cc6f2cf0 [MIRROR] [NO GBP] Fixes my fuckups with species livers [MDB IGNORE] (#22094)
[NO GBP] Fixes my fuckups with species livers

Co-authored-by: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2023-07-14 15:52:58 -04:00
Bloop
0702837c38 [MISSED MIRROR] Fixes a runtime with cybernetic hearts being EMP'd outside of mobs (#76587) (#22440)
Fixes a runtime with cybernetic hearts being EMP'd outside of mobs (#76587)

## About The Pull Request

This proc made a false assumption owner always was set when emp'd, when
hearts can just be emp'd out in the wild

## Why It's Good For The Game

Runtimes

## Changelog

🆑 Melbert
fix: Fixed EMPing a cybernetic heart not implanted in a body not
applying effects (stopping the heartbeat temporarily)
/🆑

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2023-07-14 14:01:44 -04:00
SkyratBot
44e8be8991 [MIRROR] SPECIES NUKING 2023: Mein leber! Allows livers to handle reagents in special ways, instead of the species datum doing it [MDB IGNORE] (#22047)
* SPECIES NUKING 2023: Mein leber! Allows livers to handle reagents in special ways, instead of the species datum doing it

* Fixes another conflict that it decided not to take in

* Fixes the linters!

---------

Co-authored-by: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2023-07-13 19:12:37 -04:00
SkyratBot
2f5c7f8389 [MIRROR] Icon folder cleaning wave one [MDB IGNORE] (#22374)
* Icon folder cleaning wave one

* Fixe a merge conflict

* Fixes some more merge conflicts

* Fixes some modular icon paths

* Fixes even more modular icon paths...

Hopefully that's the last of them

* Fixes some merge discrepencies

* More merge issues

* ok

* not ok

---------

Co-authored-by: YesterdaysPromise <122572637+YesterdaysPromise@users.noreply.github.com>
Co-authored-by: Giz <vinylspiders@gmail.com>
2023-07-13 16:24:33 -04:00
lessthanthree
68614e0be8 Fix liver damage on alcohol processing (#22310)
* alcohol tolerance

* are YOU drunk, LT3?
2023-07-12 12:59:00 -04:00
SkyratBot
250317a033 [MIRROR] Jetpack component & Modsuit module signal clean-up & fixes [MDB IGNORE] (#22153)
* Jetpack component & Modsuit module signal clean-up & fixes (#76133)

## About The Pull Request
1. Removed the `get_mover` callback, the mover can be retrieved during
activation itself
2. Fixes #76116
the user is passed correctly during activation & deactivation same for
modsuit modules and this also fixes the same bug for
`/obj/item/organ/internal/cyberimp/chest/thrusters` as it's signal was
also not registered correctly with the user
3. Timestop module on `on_module_triggered()` accepts user as 2nd param

## Changelog

🆑
fix: jetpack modules work on mod suits again
fix: jetpack cyber implants also work
refactor: removed `get_mover` callback, user is retrieved during
activation
refactor: timestop module on `on_module_triggered()` accepts user as 2nd
param
/🆑

* Jetpack component & Modsuit module signal clean-up & fixes

---------

Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com>
2023-07-09 15:44:27 -04:00
SkyratBot
ab4cc06c55 [MIRROR] Coroner Update: Pickle-Eating Morbid Weirdo Obsessed with Death and Perfectionism [MDB IGNORE] (#22155)
* Coroner Update: Pickle-Eating Morbid Weirdo Obsessed with Death and Perfectionism

* skyrat edits

---------

Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
2023-07-09 12:05:05 -07:00
SkyratBot
7a504490f0 [MIRROR] SPECIES NUKING 2023: Refactors a bunch of species traits into flags for the head bodypart [MDB IGNORE] (#21991)
* SPECIES NUKING 2023: Refactors a bunch of species traits into flags for the head bodypart

* Makes it all compile, for now

* Fixes eye emissives not working right.

* Fixes the plasmaman head (oof conflicts)

* Fixes the screenshot tests

---------

Co-authored-by: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2023-07-08 15:25:17 -04:00
Bloop
f6fc0bc210 [MODULAR] Visor modules now retract alongside helmets, adds support to hide other modules (#22210)
* Visors modules now retract alongside helmets, adds support to hide other modules

* Fixes some lingering issues

Turns out that mod overlays were not being updated on deploy/retract.

* Some formatting nitpicks

* diffs

* Just makes it a weakref instead so we don't have to worry about clearing refs

* This is a better var name, I would say

* comments

* comments

because I cannot type

* Revert "This is a better var name, I would say"

This reverts commit ff642562590df582380f5d6ab1c2459d866f00ad.

* fixing diffs

* cleanup weakref when we're done with it

* the last typo
2023-07-04 03:49:02 -07:00
SkyratBot
0f251a5a59 [MIRROR] Petrify Smite [MDB IGNORE] (#22213)
* Petrify Smite (#75538)

## About The Pull Request
adds a smite to petrify someone forever, works like the wizard spell.
Adds support to make petrification brainless.
Creates a var to remove those annoying "you can not move while buckled
to X" messages for abstract items like statues.
## Why It's Good For The Game
Smite good. Message spam bad.
## Changelog
🆑 itseasytosee
spellcheck: You should see a lot less "you can not move while bucked too
X" messages where they don't make sense.
admin: Added a petrify smite. Try it out on your least favorite player!
/🆑

---------

Co-authored-by: san7890 <the@ san7890.com>

* Petrify Smite

---------

Co-authored-by: itseasytosee <55666666+itseasytosee@users.noreply.github.com>
Co-authored-by: san7890 <the@ san7890.com>
2023-07-03 18:02:05 -04:00
SkyratBot
7eab51aa18 [MIRROR] Arm implants can be properly EMP'd again; Organic implants will NOT be EMP'd. [MDB IGNORE] (#22010)
* Arm implants can be properly EMP'd again; Organic implants will NOT be EMP'd. (#76242)

## About The Pull Request

Reverses the logic of an early return in the EMP proc of arm implants.
Rather than returning if the implant is robotic, it returns if it is
organic.

## Why It's Good For The Game

It appears arm implant emp act was broken for about...like 2 years? But
today, I discovered that my vorpal scythe was EMP vulnerable.

I thought 'Oh someone didn't do a proper check that's an easy fix'

Turns out, robotic implants were immune to EMPs this whole time, but the
very few organic arm implants were vulnerable instead!

Well, it's fixed now. I blame the penguin maint.

## Changelog
🆑
fix: Arm implants properly handle EMPs depending on whether it is
robotic or organic. No longer can you EMP an organic organ!
/🆑

* Arm implants can be properly EMP'd again; Organic implants will NOT be EMP'd.

---------

Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
2023-07-01 16:15:02 -04:00
SkyratBot
f2988e0498 [MIRROR] Do not add external organs if not needed and not rendered. [MDB IGNORE] (#21946)
* Do not add external organs if not needed and not rendered.

* Fixes the conflicts

---------

Co-authored-by: Zephyr <12817816+ZephyrTFA@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2023-07-01 15:33:35 -04:00
SkyratBot
426829d079 [MIRROR] Refactors Silverscale tongue action into cooldown action, buffs it slightly [MDB IGNORE] (#22182)
* Refactors Silverscale tongue action into cooldown action, buffs it slightly (#76426)

## About The Pull Request

Action? With a cooldown? That isn't a cooldown action?

- Refactors Silverscale tongue action into a cooldown action

- Removes side effects on destroy, replaces it with destruction /
deconstruction signals

- Buffs the statue itself slightly, since I'm here
  - Gives it some pretty decent innate armor (it didn't have any prior)
  - Makes it reflect lasers

- Also just for consistency:
  - Also makes it require you not be lying down

## Why It's Good For The Game

- The previous method was very clunky, by making it a cooldown action it
is much easier to use.

- The statue was very weak before, so weak it was actually a downside if
you tried to use it. This might help a bit. ~~Do not say "I'll still
never use it" in the comments~~

## Changelog
🆑 Melbert
qol: Sivlerscale Tongue action is now a cooldown action, making it
significantly easier to use
balance: Buffed the silverscale statue every so slightly, it now has
innate armor and can reflect lasers shot at it. But it also requires you
not by lying down to activate.
/🆑

* Refactors Silverscale tongue action into cooldown action, buffs it slightly

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2023-07-01 12:31:14 -07:00
SkyratBot
90f2ff4854 [MIRROR] Moves species brutemod and burnmod to be handled by bodyparts [MDB IGNORE] (#21903)
* Moves species brutemod and burnmod to be handled by bodyparts

* Fixes compilation issues and updates the brute and burn mods on our own species

* Re-ticks the ashwalker bodyparts

---------

Co-authored-by: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2023-07-01 15:25:44 -04:00
SkyratBot
4d91adc2e6 [MIRROR] TTS Improvements: Improved Audio Quality, Pitch Adjustment, Preference Silicon Voices, Per-Character Voice Disable Toggle, Tongue Voice Filters, Reworked Silicon and Vending Machine Filters [MDB IGNORE] (#22120)
* TTS Improvements: Improved Audio Quality, Pitch Adjustment, Preference Silicon Voices, Per-Character Voice Disable Toggle, Tongue Voice Filters, Reworked Silicon and Vending Machine Filters

* [MIRROR FIX] Removes a skyrat edit that was upstreamed. (#22121)

---------

Co-authored-by: Iamgoofball <iamgoofball@gmail.com>
2023-06-29 18:43:50 -04:00
Bloop
655e8da32d [NO GBP] Hotfix - Fixes moth suits not hiding wings like they're supposed to (#21922)
Fixes moth suit not hiding wings like it's supposed to
2023-06-23 15:29:21 -07:00
SkyratBot
6dfe17306c [MIRROR] Pulls apart the vestiges of components still hanging onto signals [MDB IGNORE] (#21738)
* Pulls apart the vestiges of components still hanging onto signals

* update modular

---------

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2023-06-18 13:18:23 +00:00
Bloop
352f40d4fb Fixes certain wings being unhideable (#21819)
* Fixes certain wings being unhideable

* Actually fixes the issue now

There was an upstream proc that does not call the parent. We are just going to pretend like it doesn't exist and go straight to calling parent.

Also fixes another potential oversight

* Adds special case for moth wings

because moths just have to be annoying like that.

* Merge branch 'wings' of https://github.com/vinylspiders/Skyrat-customization-expansion into wings

* comment

* Changes the param to be self-explanatory

* fixes an oops
2023-06-15 13:59:06 +01:00
SkyratBot
7537ed425e [MIRROR] Assistants get a liver trait + Officer's sabre banes against them [MDB IGNORE] (#21763)
* Assistants get a liver trait + Officer's sabre banes against them (#75933)

## About The Pull Request

Assistants get a new liver trait, maintenance metabolism. This trait
only lets them process maintenance drugs, grey bull, and pump-up for 20%
more time and gives them a probably-positive 2 minute moodlet when
ingesting these.

The officer's sabre has gained a small amount of bloodthrist for
assistants!

Fixed liver masters being unable to inspect the liver of scientists.

## Why It's Good For The Game

> Assistants get a new liver trait, maintenance metabolism. This trait
only lets them process maintenance drugs, grey bull, and pump-up for 20%
more time and gives them a probably-positive 2 minute moodlet when
ingesting these.

This trait is pretty much entirely here for the actual
liver-identification of assistants the sabre uses, though I didn't want
to just add an empty trait so I gave it the above effects as pretty damn
harmless effects. I'm sure the maints will dislike even this so I'm open
to anything.

> The officer's sabre has gained a small amount of bloodthirst for
assistants! Or at least their livers.

I find the concept of the sabre having a bane against assistants
amusing, and it wouldn't hurt to give them something that may help
against tiders. As a smidgen of fairness, the detection is tied to the
liver - if they want to take less damage they can have it replaced,
though the captain can also help with that by disemboweling organs. The
liver being used for something that isn't reagents processing might be a
bit controversial, but like I said, I'd rather have that than have it
permanently, intrinsically tied to a job.

> Fixed liver masters being unable to inspect the liver of scientists.

Ballmer metabolism quacks like a duck, traits like a duck, and thus
should be able to be duck inspected by the duck master, since there is
no practical difference between it and other 'official' metabolisms.

## Changelog

🆑
add: Assistants get a new liver trait, maintenance metabolism. This
trait only lets them process maintenance drugs, grey bull, and pump-up
for 20% more time and gives them a probably-positive 2 minute moodlet
when ingesting these.
add: The officer's sabre has gained a small amount of bloodthrist for
assistants!
fix: Fixed liver masters being unable to inspect the liver of
scientists.
/🆑

---------

Co-authored-by: san7890 <the@ san7890.com>

* Assistants get a liver trait + Officer's sabre banes against them

---------

Co-authored-by: carlarctg <53100513+carlarctg@users.noreply.github.com>
Co-authored-by: san7890 <the@ san7890.com>
2023-06-10 19:43:38 -07:00
SkyratBot
c470fd2d00 [MIRROR] fixes reviver implant looping players between soft and hard crit [MDB IGNORE] (#21667)
* fixes reviver implant looping players between soft and hard crit (#75780)

## About The Pull Request

Currently the reviver implant stops working the first tick the player is
above hard crit, meaning it leaves them right on the border between soft
crit and hard crit. This, of course, means the player then falls right
back into hard crit. And then the implant kicks in for a very short
time, looping the player between hard and soft crit.

## Why It's Good For The Game

It doesn't seem like this could possibly be intended, so, bugfix that
prevents the player from looping between soft and hard crit
indefinitely.

closes https://github.com/tgstation/tgstation/issues/75139 (Thanks
Sealed101 and timothymtorres)

## Changelog

🆑
fix: The reviver implant will no longer leave its user looping between
soft and hard critical states.
/🆑

* fixes reviver implant looping players between soft and hard crit

---------

Co-authored-by: YehnBeep <86855173+YehnBeep@users.noreply.github.com>
2023-06-05 14:26:45 -07:00
SkyratBot
1f05a0233f [MIRROR] Prevents silent station wipe from tritium poisoning [MDB IGNORE] (#21396)
* Prevents silent station wipe from tritium poisoning (#75500)

## About The Pull Request

Right now you can cull the entire station by releasing a few moles of
tritium in a hall.

This amount is non-scrubbable, invisible and people don't get any
notification that they're choking, they just silently take 1 toxin
damage with each breath. Air alarms do not consider this amount as
dangerous either.

People just start vomiting for unknown reason and eventually die if they
won't figure out that it's due to air being bad.

This PR makes it so that take damage only when tritium is visible in the
air.

## Why It's Good For The Game

Prevents easy silent murdering. I'm not sure that it's good actually.

Fixes #74760

## Changelog

🆑
fix: You receive damage from tritium only when there are enough moles to
make it visible
/🆑

* Prevents silent station wipe from tritium poisoning

---------

Co-authored-by: Andrew <mt.forspam@gmail.com>
2023-05-24 16:32:40 +02:00
SkyratBot
a5c0871613 [MIRROR] Fix two sources of color_cutoffs runtimes, then give it a better error [MDB IGNORE] (#21228)
* Fix two sources of color_cutoffs runtimes, then give it a better error (#75446)

50% of rounds.

`color_cutoffs` must always be a 3-item list. I couldn't find any more
cases where this assumption could be wrong.

```
[2023-05-05 04:04:21.144] runtime error: list index out of bounds
 - proc name: blend cutoff colors (/proc/blend_cutoff_colors)
 -   source file: colors.dm,91
 -   usr: Varuna Maddox (/mob/living/carbon/human)
 -   src: null
 -   usr.loc: the plating (122,145,2) (/turf/open/floor/plating)
 -   call stack:
 - blend cutoff colors(/list (/list), /list (/list))
 - Varuna Maddox (/mob/living/carbon/human): update sight()
 - the pressure-resistant enginee... (/obj/item/clothing/glasses/meson/engine): toggle mode(Varuna Maddox (/mob/living/carbon/human), 1)
 - the pressure-resistant enginee... (/obj/item/clothing/glasses/meson/engine): attack self(Varuna Maddox (/mob/living/carbon/human))
 - the pressure-resistant enginee... (/obj/item/clothing/glasses/meson/engine): ui action click(Varuna Maddox (/mob/living/carbon/human), Toggle Mode (/datum/action/item_action/toggle_mode))
 - Toggle Mode (/datum/action/item_action/toggle_mode): Trigger(null)
 - Toggle Mode (/atom/movable/screen/movable/action_button): Click(null, "mapwindow.map", "icon-x=10;icon-y=15;left=1;but...")
 - Toggle Mode (/atom/movable/screen/movable/action_button):  Click(null, "mapwindow.map", "icon-x=10;icon-y=15;left=1;but...")
 - /datum/callback/verb_callback (/datum/callback/verb_callback): Invoke()
 - world: push usr(Varuna Maddox (/mob/living/carbon/human), /datum/callback/verb_callback (/datum/callback/verb_callback))
 - /datum/callback/verb_callback (/datum/callback/verb_callback): InvokeAsync()
 - Input (/datum/controller/subsystem/verb_manager/input): run verb queue()
 - Input (/datum/controller/subsystem/verb_manager/input): fire(0)
 - Input (/datum/controller/subsystem/verb_manager/input): fire(0)
 - Input (/datum/controller/subsystem/verb_manager/input): fire(0)
 - Input (/datum/controller/subsystem/verb_manager/input): ignite(0)
 - Master (/datum/controller/master): RunQueue()
 - Master (/datum/controller/master): Loop(2)
 - Master (/datum/controller/master): StartProcessing(0)
```

* Fix two sources of color_cutoffs runtimes, then give it a better error

---------

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2023-05-16 20:52:28 +01:00
SkyratBot
aba26adc5f [MIRROR] Refactors High Luminosity Eyes, fixes a ton of bugs related to it as well as qol improvements [MDB IGNORE] (#21048)
* Refactors High Luminosity Eyes, fixes a ton of bugs related to it as well as qol improvements

* Update eyes.dm

---------

Co-authored-by: Bloop <vinylspiders@gmail.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-05-10 02:19:58 +01:00
SkyratBot
aac6045ba8 [MIRROR] Golem Rework [MDB IGNORE] (#21001)
* Golem Rework

* SECT 9

* ok

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-05-09 03:56:30 +01:00
SkyratBot
6da55f3d10 [MIRROR] Makes organs not double on delimbing [MDB IGNORE] (#21018)
* Makes organs not double on delimbing (#75220)

A bugfix and a refactor from a while back kinda clashed and caused some
weird behaviour. Extorgans would be double-referencd upon delimbing and
feature restyling looked at the wrong list (technically the right list
at the time because stuff was a bit fucked)

🆑
fix: Loose limbs will not duplicate organs anymore
/🆑

* Makes organs not double on delimbing

---------

Co-authored-by: Time-Green <timkoster1@hotmail.com>
2023-05-09 03:52:01 +01:00
SkyratBot
fc1471c818 [MIRROR] Deadchat Announcement Variety Pack 1 [MDB IGNORE] (#20957)
* Deadchat Announcement Variety Pack 1 (#75140)

## About The Pull Request

Adds announce_to_ghosts()/notify_ghosts() calls to a bunch of different
things.

**THIS INCLUDES:**
- Powersink being activated/reaching critical (explosion) heat capacity.
- His Grace being awoken.
- Hot Potatoes being armed.
- Ascension Rituals being completed.
- Eyesnatcher victims.
- Ovens exploding as a result of the Aurora Caelus event.
- Wizard Imposter spawns.
- Rock-Paper-Scissors with death as the result of Helbital consumption.
- BSA impact sites.
- Spontaneous Appendicitis.
- The purchasing of a badass syndie balloon.
- The Supermatter beginning to delaminate.

This was everything that I could think of that would be worth announcing
to deadchat. These were all chosen with consideration to questions like
"how easy would it be to spam deadchat with this?" and "will observers
actually see the interesting thing happen, or just the aftermath?".

Not gonna lie, I've really become an observer main as of recently. Maybe
that's being reflected in my recent PRs. Who's to say? Deadchat
Announcement Variety Pack 2 will probably never come out. Sorry.
## Why It's Good For The Game

Gives deadchat a better indiciation of when/where something **REALLY
FUNNY** is about to happen. Draws attention to certain things that are
likely to gather an audience anyways, but sooner (for your viewing
pleasure). In simple terms, it helps the observers observe things
better.

Some cases, such as the aurora caelus or helbitaljanken, are occurrences
so rare that they deserve the audience.
## Changelog
🆑 Rhials
qol: Observers now recieve an alert when a powersink is activated/about
to explode.
qol: His Grace being awoken now alerts observers, to give you a
headstart on your murderbone ghost ring.
qol: Ascension Rituals being completed will also alert observers, for
basically the same reason.
qol: Arming a hot potato will now alert observers. Catch!
qol: Eyesnatcher victims will now notify observers, and invite them to
laugh at their state of misery and impotence.
qol: Observers will be notified of any acute references to The Simpsons
or other 20th Television America copyright properties.
qol: Wizard Imposter spawns alert observers, much like any other ghost
role event should.
qol: Playing Rock-Paper-Scissors with death will now alert the observers
and invite them to watch. Better not choke!
qol: Observers now get an orbit link for BSA impact sites. Why does it
keep teleporting me to the AI upload??
qol: Spontaneous Appendicitis now alerts deadchat.
qol: The purchasing of a badass syndie balloon now alerts deadchat. You
might not be any more powerful, but at least you have an audience.
qol: When beginning to delaminate, the Supermatter will alert observers
and invite them to watch the fireworks.
/🆑

* Deadchat Announcement Variety Pack 1

---------

Co-authored-by: Rhials <Datguy33456@gmail.com>
2023-05-05 15:34:05 -07:00
SkyratBot
c4d4e1da63 [MIRROR] Minerals have been refactored so costs and minerals in items are now in terms of mineral defines. [MDB IGNORE] (#20916)
* Minerals have been refactored so costs and minerals in items are now in terms of mineral defines.

* AI GEN RUN ONE

---------

Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-05-03 22:48:10 +01:00
SkyratBot
e6f66d3a4a [MIRROR] Experiment with replacing weakrefs in AI blackboard with deleting signals, ideally making it easier to work with and harder to cause hard deletes [MDB IGNORE] (#20719)
* Experiment with replacing weakrefs in AI blackboard with deleting signals, ideally making it easier to work with and harder to cause hard deletes (#74791)

## About The Pull Request

Replaces weakref usage in AI blackboards with deleting signals

All blackboard var setting must go through setters rather than directly

## Why It's Good For The Game

This both makes it a ton easier to develop AI for, and also makes it
harder for hard deletes to sneak in, as has been seen with recent 515
prs showing hard deletes in AI blackboards

(To quantify "making it easier to develop AI", I found multiple bugs in
existing AI code due to the usage of weakrefs.)

I'm looking for `@ Jacquerel` `@ tralezab` 's opinions on the matter, also
maybe `@ LemonInTheDark` if they're interested

## Changelog

🆑 Melbert
refactor: Mob ai refactored once again
/🆑

* Experiment with replacing weakrefs in AI blackboard with deleting signals, ideally making it easier to work with and harder to cause hard deletes

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2023-04-26 21:17:15 +01:00
SkyratBot
014104cf21 [MIRROR] skeletons healing off milk works like it used to 3 years ago [MDB IGNORE] (#20769)
* skeletons healing off milk works like it used to 3 years ago (#74470)

## About The Pull Request
skeletons healing off milk was changed in the pr that made stomachs be
what handles chems
this doesnt acutally work and its been broken for 3 years
so we just revert back to the old way of doing it

## Why It's Good For The Game
its over

## Changelog
🆑
fix: skeletons get boosted heals from milk again
/🆑

* skeletons healing off milk works like it used to 3 years ago

---------

Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
2023-04-25 19:32:43 -07:00
SkyratBot
8cb96fad58 [MIRROR] Fixes body purist headrevs from getting mad at their implant by making them unaware of it [MDB IGNORE] (#20616)
* Fixes body purist headrevs from getting mad at their implant by making them unaware of it

* Update surgery.dm

---------

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-04-21 03:53:01 +01:00
SkyratBot
9a594755f3 [MIRROR] Renames delta time to be a more obvious name [MDB IGNORE] (#20507)
* Renames delta time to be a more obvious name

* updates to our code

---------

Co-authored-by: oranges <email@oranges.net.nz>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-04-12 20:45:43 +01:00
SkyratBot
fe8fc4d010 [MIRROR] Split weapons_and_items.dmi icons into their own categories [MDB IGNORE] (#20360)
* Split weapons_and_items.dmi icons into their own categories

* update modular

* I hate the dme

* random ass define removal fix

* missing icons fix

---------

Co-authored-by: Tim <timothymtorres@gmail.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-04-12 19:53:43 +01:00
SkyratBot
bdf2cd517c [MIRROR] Sleep immune will make you immune to N2O [MDB IGNORE] (#20489)
* Sleep immune will make you immune to N2O (#74647)

## About The Pull Request

Currently sleep immunity makes you immune to the sleeping status effect.
I was originally gonna do the same for Unconscious, but I don't think we
want sleep immunity to block all instances of that

![image](https://user-images.githubusercontent.com/53777086/230962330-682c996f-fced-4251-9a69-6a08f16bb382.png)

## Why It's Good For The Game

If you're immune to sleep, you shouldn't be falling asleep from the
sleepy gas. N2O setting you unconscious is meant as a way to give
players a chance at getting away/putting internals on, before being put
to sleep, however if you're immune to sleep, you'll endlessly fall
unconscious.

## Changelog

🆑
fix: People immune to sleep will not fall asleep from N2O
/🆑

* Sleep immune will make you immune to N2O

---------

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
2023-04-11 20:08:56 -07:00
SkyratBot
4c3372a0fc [MIRROR] Activating arm implant items in hand now automatically retracts and opens the radial menu [MDB IGNORE] (#20426)
* Activating arm implant items in hand now automatically retracts and opens the radial menu (#74300)

## About The Pull Request

Activating arm implant items in hand now automatically retracts and
opens the radial menu. Only if there's more than one item in the list

### Mapping March

Ckey to receive rewards: N/A

## Why It's Good For The Game

Makes these neat implants less unbelievably clunky to use, making 'em
actually worthwhile. Welders don't work so well but you can still right
click in your hand.

## Changelog

🆑
qol: Activating arm implant items in hand now automatically retracts and
opens the radial menu, unless it's a welding tool.
/🆑

* Activating arm implant items in hand now automatically retracts and opens the radial menu

---------

Co-authored-by: carlarctg <53100513+carlarctg@users.noreply.github.com>
2023-04-08 18:01:57 -07:00
SkyratBot
38c2cc3dd4 [MIRROR] Fixes ploux, adds conversion support to breath code [MDB IGNORE] (#20155)
Fixes ploux, adds conversion support to breath code

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-04-01 02:55:02 +01:00
SkyratBot
3464b6bfb2 [MIRROR] Refactors Regenerate Organs, and a few organ helpers [MDB IGNORE] (#20094)
* Refactors Regenerate Organs, and a few organ helpers

* MERGE CONFLICTS

* GETORGANSLOT > GET_ORGAN_SLOT

* GETORGAN > get_organ_by_type

* lint repairs

* more lint

* Update tgstation.dme

* Update surgery_step.dm

---------

Co-authored-by: Zephyr <12817816+ZephyrTFA@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-04-01 02:51:06 +01:00
Gandalf
e4b4d4d3c0 MISSED MIRROR [Lints Against Unmanaged Local Defines] (#20204)
* https://github.com/tgstation/tgstation/pull/74333

https: //github.com/tgstation/tgstation/pull/74333
Co-Authored-By: tattle <66640614+dragomagol@users.noreply.github.com>

* var stuff

Co-Authored-By: tattle <66640614+dragomagol@users.noreply.github.com>

* vars

* Update sol_fed.dm

---------

Co-authored-by: tattle <66640614+dragomagol@users.noreply.github.com>
2023-04-01 01:15:22 +01:00