Commit Graph

1122 Commits

Author SHA1 Message Date
SkyratBot cbad73c7d3 [MIRROR] Fixes cigarettes making you so lame that they spill the spaghetti from your pockets (and also keep falling off) (#6018)
* Fixes cigarettes making you so lame that they spill the spaghetti from your pockets (and also keep falling off) (#59352)

Wack

Fixes #59342
Changelog

🆑
fix: Smoking no longer spills spaghetti from your pockets
fix: Lit cigarettes no longer keep falling off
spellcheck: Removed extra "the" from item knockdown messages
/🆑

* Fixes cigarettes making you so lame that they spill the spaghetti from your pockets (and also keep falling off)

Co-authored-by: Mickyan <38563876+Mickyan@users.noreply.github.com>
2021-05-30 00:52:09 +01:00
SkyratBot 5dd0276e78 [MIRROR] Fixes human burgers not naming after the donor (#5996)
* Fixes human burgers not naming after the meat donor (#59286)

- Adds custom materials to result of grilling
- Adds custom materials to result of atom processing
- Adds source name and job to mob_meat material if available
- Makes processed atoms have same pixel offsets as their source but randomise with each subsequent one

* Fixes human burgers not naming after the donor

Co-authored-by: cacogen <25089914+cacogen@users.noreply.github.com>
2021-05-27 22:35:27 +01:00
SkyratBot c4bb902d6d [MIRROR] Fixes runtimes related to forensic components on deleted things. (#5992)
* Fixes runtimes related to forensic components on deleted things. (#59315)

* Fixes runtimes related to forensic components on deleted things.

Co-authored-by: AnturK <AnturK@users.noreply.github.com>
2021-05-27 22:34:52 +01:00
SkyratBot 48575b6d4d [MIRROR] Fixes an issue in how processing is done for gas leaks (#5985)
* Fixes an issue in how processing is done for gas leaks (#59322)

Couple issues fixed that were found in testing along side the stationary canister rework. Not sure how I missed this but I should have done thorough testing again after changing the processing list used after I had finished an earlier round of testing.

I don't think it will have any visible effects? Just runtime and hard dels.

How did I miss this

* Fixes an issue in how processing is done for gas leaks

Co-authored-by: Emmett Gaines <ninjanomnom@gmail.com>
2021-05-27 08:12:46 +01:00
SkyratBot 4839c5f8ea [MIRROR] [READY]Updates knockoff component and adds it to prescription glasses (#5978)
* [READY]Updates knockoff component and adds it to prescription glasses (#59006)

* [READY]Updates knockoff component and adds it to prescription glasses

Co-authored-by: Mickyan <38563876+Mickyan@users.noreply.github.com>
2021-05-27 00:30:06 +01:00
SkyratBot 54f74233aa [MIRROR] Makes canister leaking and blowing up use a component and element respectively (#5958)
* Makes canister leaking and blowing up use a component and element respectively (#59075)

I want to use this behavior on some other things so into a component and element it goes. Gas leaking is handled by a component so it can process whereas the object breaking and causing an explosion is handled by an element. Some minor changes were made so canisters were more consistent in leaking.

* Makes canister leaking and blowing up use a component and element respectively

Co-authored-by: Emmett Gaines <ninjanomnom@gmail.com>
2021-05-26 01:00:43 +01:00
SkyratBot 0a0835b833 [MIRROR] Integrated Circuits (Wiremod) (#5949)
* Integrated Circuits (Wiremod)

* AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-05-25 19:57:29 +01:00
SkyratBot 456f347dfa [MIRROR] USE SIGNAL_HANDLER REEEEEE (#5921)
* use SIGNAL_HANDLER REEEEEE (#59242)

makes as many procs as i can find use the SIGNAL_HANDLER define which i assumed they all already did

* USE SIGNAL_HANDLER REEEEEE

Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
2021-05-25 03:42:11 +01:00
SkyratBot c136449b91 [MIRROR] Fixes being unable to feed chickens to get eggs (#5913)
* Fixes being unable to feed chickens to get eggs (#59267)

Fixes being unable to feed chickens for eggs.
`eggs_left` is always less than `max_eggs_held` 'cause you can't give them food to increase the amount of eggs 'cause `eggs_left` is less than `max_eggs_held` 'cause you can't give them food to increase the amount of eggs 'cause...

* Fixes being unable to feed chickens to get eggs

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2021-05-25 03:41:08 +01:00
SkyratBot 2977a55932 [MIRROR] optimizes some internals of signal and component code (#5873)
* optimizes some internals of signal and component code (#59154)

* optimizes some internals of signal and component code

* comment and a better var name

* gets rid of DF_SIGNAL_ENABLED and all referencing code because its dumb

* gets rid of NONE | CallAsync(stuff)

* fixes conflicts

* puts NONE back in

* optimizes some internals of signal and component code

Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
2021-05-23 04:57:15 +01:00
SkyratBot e155684bb4 [MIRROR] Refactors both taming + egg laying + animal colors into components (#5866)
* Refactors both taming + egg laying + animal colors into components (#58919)

Co-authored-by: Floyd <Floydje123@ hotmail.com>

* Refactors both taming + egg laying + animal colors into components

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: Floyd <Floydje123@ hotmail.com>
2021-05-23 04:32:07 +01:00
SkyratBot da88f8e596 [MIRROR] Gives the hop a trapdoor (#5864)
* Gives the hop a trapdoor (#59081)

* Gives the hop a trapdoor

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
2021-05-23 04:31:51 +01:00
SkyratBot 22a553a0c4 [MIRROR] Removes SIGNAL_HANDLER_DOES_SLEEP and makes signals synchronous (#5845)
* Removes SIGNAL_HANDLER_DOES_SLEEP and makes signals synchronous (#59176)

* Removes SIGNAL_HANDLER_DOES_SLEEP and makes signals synchronous

* a

* Update peacekeeper_clothing.dm

* Update peacekeeper_clothing.dm

* Update peacekeeper_clothing.dm

Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-05-21 14:51:00 +01:00
SkyratBot ea9aed5554 [MIRROR] Replace alert usage with tgui_alert (#5815)
* Replace alert usage with tgui_alert

* a

* Update observer.dm

Co-authored-by: Celotajs <81999976+celotajstg@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-05-21 00:06:09 +01:00
SkyratBot 2e473b758e [MIRROR] makes LoadComponent() a macro like AddComponent() is so it supports named arguments (#5802)
* makes LoadComponent() a macro like AddComponent() is so it supports named arguments

* Update miscellaneous.dm

Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-05-20 23:27:18 +01:00
SkyratBot 37f63eee04 [MIRROR] Fixes a bug in signal unregistration code (#5822)
* Fixes a bug in signal unregistration code that was causing unrelated objects to lose their registration in a (#59116)

This was causing unrelated objects to lose their registration in a hyper rare case.

The process went something like:
when object foo is registered to something and object bar is registered to the same object with a different
signal it will remove foo's signal only when foo is the only one registered to the object with that signal
Why it's good for the game

This was breaking #58918 when blood wasn't qdel'd post test. I'm so happy I found this.
It's a rare case, so I doubt it'll effect a lot of things, but I can trust UnregisterSignal again, which is very nice.

* Fixes a bug in signal unregistration code

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2021-05-20 22:57:07 +01:00
SkyratBot d66b98b984 [MIRROR] Fix issue where Plumbing Reaction Chambers can get stuck filling (#5820)
* Fix issue where Plumbing Reaction Chambers can get stuck filling (#59131)

About The Pull Request

This Pull Requests aims to fix the issue #58993 by changing two parts of the logic I've seen the chambers get stuck on.

    Chamber gets stuck requesting a unit that is always rounded down to 0
    Chamber gets stuck requesting an insanely small number that gets eaten by float math

Part 1 Explanation
Take the example where a chamber is trying to request one unit of chemical from three synthesizers. A chamber will divide it's request amongst all suppliers who can satisfy it. In this case, 1 / 3 becomes asking each synthesizer for 0.33 (due to rounding). After one update, the chamber has 0.99 of the chemical, not 1. On the second update, it then requires 0.01 of the chemical and asks each chamber for 0.0033, which gets rounded down to 0. This means the chamber NEVER fills as it spends every update cycle doing the same logic and trying to transfer in parts of 0 in size.

This has been fixed by changing it from flat dividing the amount required by the number of suppliers to a more dynamic approach that looks at the target volume and how many requests it needs to make. This mean that instead of asking for 0.33 three times in the above example, it actually works out more to asking for 0.33 then 0.34 then 0.33. Meaning it gets the whole 1 it wanted in the first update, fixing the issue.

Part 2 Explanation
Even with the above fix, when working with the right numbers, floats do not add as expected. Take the above example. I lied. 1/3 as a float is NOT 0.33. 0.33 does not exist as a float, so the actual closest value is 0.32999998, which is what the code will use, even when rounding to 0.01. What this causes is, in some scenarios, chambers getting incredibly close to their target volume but never being able to actually reach it because currentVolume + missingAmount comes out as just currentVolume, due to the insanely small float that it's missing having no impact on the larger float when added together. Again, this is due to how floats work.

So to avoid a chamber getting stuck on 98.9999999998 when it needs 99, I'm adding the CHEMICAL_QUANTISATION_LEVEL constant (used elsewhere for similar issues) to the chamber's volume when checking if it has enough. This way, the chamber will exit the filling mode even though it was short by a tiny fraction. These discrepancies seem to get handled anyway in the actual reaction code so I haven't seen any changes/problems to my outputs. For all intents and purposes, 98.9999999998 is 99 in float arithmetic when rounding as we do.
Why It's Good For The Game

Fixes an incredibly annoying issue that plagues chemistry automation. Machines, in many scenarios, currently get stuck when they shouldn't. This means a chemist has to actively keep monitoring all their machines and then do some investigation when suddenly something stops. Eventually finding the problem chamber that is stuck on "Filling" and then plungering it. Not all Chemists know of this either and just assume it's something they have done or that it's just broken and unaware how to fix it.

Now a Chemist can move on to automating more or helping elsewhere rather than babysitting their setups.
Changelog

cl
fix: fixed issue where plumbing Reaction Chambers get stuck on "Filling"
/cl

* Fix issue where Plumbing Reaction Chambers can get stuck filling

Co-authored-by: mGuv <mguv.dev@gmail.com>
2021-05-20 22:56:45 +01:00
SkyratBot ef39c60f6a [MIRROR] Changes Duct Layer of Alkaline Input in Reaction Chamber to 4th (#5714)
* changes duct layer of alkaline input in reaction chamber to 4th (#59095)

* Changes Duct Layer of Alkaline Input in Reaction Chamber to 4th

Co-authored-by: Greniza <61635418+Greniza@users.noreply.github.com>
2021-05-15 19:51:37 +01:00
SkyratBot 11e1e4dadc [MIRROR] Stop singularities from consuming themselves (#5709)
* Stop singularities from consuming themselves (#58987)

This bug was fixed by one of the connect_loc PRs, but this is still useful as it contains a CRASH for when it happens if this bug comes back again.

* Stop singularities from consuming themselves

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2021-05-15 04:54:21 +01:00
SkyratBot 0fb6088b16 [MIRROR] Fixes a ci error caused by adding an element to something that'd being deleted (#5708)
* Fixes a ci error caused by adding an element to something that'd being deleted (#59108)

So that's why mythril coins kept harddeleting.
Man I'm glad I added an error on adding elements to qdeleted objects.

* Fixes a ci error caused by adding an element to something that'd being deleted

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2021-05-15 04:41:34 +01:00
SkyratBot dbfeabd7a7 [MIRROR] Adds deflection messages for no damage attacks against objects (#5694)
* Adds deflection messages for no damage attacks against objects (#58873)

* Adds deflection messages for no damage attacks

* Changes the addition to ", which doesn't leave a mark" instead

* Adds deflection messages for no damage attacks against objects

Co-authored-by: cacogen <25089914+cacogen@users.noreply.github.com>
2021-05-14 22:14:12 +01:00
SkyratBot f72d4c6ce5 [MIRROR] Fixes layering for piggyback rides (#5687)
* Fixes layering for piggyback rides (#59082)

* Fixes layering for piggyback rides

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2021-05-14 22:13:26 +01:00
SkyratBot bb4aeacfc6 [MIRROR] Componentizes Duffelbag Curse and turns it into an RPGloot modifier (+ curse announcement element) (#5683)
* Componentizes Duffelbag Curse and turns it into an RPGloot modifier (+ curse announcement element) (#59029)

Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>

* Componentizes Duffelbag Curse and turns it into an RPGloot modifier (+ curse announcement element)

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
2021-05-14 15:38:12 +01:00
SkyratBot 9096f96997 [MIRROR] Split malf AI antag datum away from traitor, enable malf AI roundstart ruleset. (#5635)
* Split malf AI antag datum away from traitor, enable malf AI roundstart ruleset.

* AAAAA

* AAAAA

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-05-13 15:13:09 +01:00
SkyratBot b8cf98da72 [MIRROR] Fixes some fucked Destroy()s (#5645)
* Fixes some fucked Destroy()s (#58973)

Some stuff was failing to return qdel hints, might as well sweep that upppppp
(Hey mothblocks I know you're reading this, we should really lint for this, but don't push yourself over it I
know you're busy as it is)

* Fixes some fucked Destroy()s

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2021-05-13 14:23:51 +01:00
SkyratBot 984837571f [MIRROR] fixes udders not performing some things (#5643)
* fixes udders not performing some things (#59025)

* fixes udders not performing some things

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
2021-05-13 14:23:31 +01:00
SkyratBot 02a489d4ac [MIRROR] Fixes typo in explodable.dm (#5639)
* Fixes typo in explodable.dm  (#59050)

* Fixes typo in explodable.dm

Co-authored-by: Swept <sweptwastaken@protonmail.com>
2021-05-13 14:23:13 +01:00
SkyratBot 7238f3198b [MIRROR] Issue #29019 medical borgs on skateboards look weird (#5638)
* Fixes medical borgs on skateboards look weird (#59059)

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

* Issue #29019 medical borgs on skateboards look weird

Co-authored-by: Paper Kristy <61478538+TaeruAlethea@users.noreply.github.com>
Co-authored-by: dragomagol <66640614+dragomagol@ users.noreply.github.com>
2021-05-13 14:23:06 +01:00
SkyratBot d7432b75cc [MIRROR] [SPEEDMERGE CANDIDATE] Validate THIS integration tests (#5600)
* validate THIS integration tests (#59024)

Hi, the #58882 PR missed that validate takes an item, no parent var lookup required.
Why It's Good For The Game

UNFUCKS MASTER

* [SPEEDMERGE CANDIDATE] Validate THIS integration tests

Co-authored-by: Funce <funce.973@gmail.com>
2021-05-11 13:22:31 +12:00
SkyratBot ed58570114 [MIRROR] Replace Maint. Drone machinery whitelist with last touched check & other tweaks (#5564)
* Replace Maint. Drone machinery whitelist with last touched check & other tweaks

* AAAAAAAA

* Update wires.dm

* AQ

Co-authored-by: Jonathan Rubenstein <jrubcop@gmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-05-10 15:59:15 +01:00
SkyratBot 3382214e90 Unfucks Master :) (#5588)
* fixes master (adds a name to the venomous prefix, fixes bad signal in udders.dm)

* Update signals.dm

* AAAAA

* Update udder.dm

* Update CentCom_skyrat_z2.dmm

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-05-10 15:26:09 +01:00
SkyratBot 01a2d62e9e [MIRROR] Kills BOTH /poison paths by turning poisonous into an element. (+fantasty prefix, sanity on attackingtarget signal, and more) (#5586)
* Kills BOTH /poison paths by turning poisonous into an element. (+fantasty prefix, sanity on attackingtarget signal, and more) (#58882)

* Kills BOTH /poison paths by turning poisonous into an element. (+fantasty prefix, sanity on attackingtarget signal, and more)

* AAAAAAAA

* Update spellbook.dm

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-05-10 15:12:34 +01:00
SkyratBot 0c7411edd8 [MIRROR] GOOFUDDERS: YOU CAN MILK ANYTHING (You can only milk cows, goats gutlunches but with componentized goodcode) (#5585)
* GOOFUDDERS: YOU CAN MILK ANYTHING (You can only milk cows, goats gutlunches but with componentized goodcode) (#58910)

Co-authored-by: 81Denton <32391752+81Denton@ users.noreply.github.com>
Co-authored-by: Qustinnus <Floydje123@ hotmail.com>

* GOOFUDDERS: YOU CAN MILK ANYTHING (You can only milk cows, goats gutlunches but with componentized goodcode)

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: 81Denton <32391752+81Denton@ users.noreply.github.com>
Co-authored-by: Qustinnus <Floydje123@ hotmail.com>
2021-05-10 14:27:04 +01:00
SkyratBot 1ca81d9b86 [MIRROR] adds #cargobus and gauntlets (also modernizes ntchat) (#5458)
* adds #cargobus and gauntlets (also modernizes ntchat)

* Update quartermaster.dm

* Update DeltaStation2_skyrat.dmm

* mirrors changes

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: KathrinBailey <53862927+KathrinBailey@users.noreply.github.com>
Co-authored-by: KathrinBailey <evesovereign@hotmail.co.uk>
2021-05-08 14:25:24 +01:00
SkyratBot 5880be0168 [MIRROR] (code bounty) refactors all uses of Crossed() and Uncrossed() into signals sent to loc, tracked by connect_loc (#5524)
* (code bounty) refactors all uses of Crossed() and Uncrossed() into signals sent to loc, tracked by connect_loc

* WHEW THAT WAS EASY

* Update ammo.dm

Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-05-07 22:39:27 +01:00
SkyratBot 0eb1f07cf8 [MIRROR] admins can add specific fantasy affixes to items (#5528)
* Add admin tool for adding specific fantasy affixes (#58884)

A new option when using VV on atom movables is to add a custom
fantasy "affixes".

* admins can add specific fantasy affixes to items

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
2021-05-07 22:33:08 +01:00
SkyratBot 42bd885efd [MIRROR] Fixes a fuck ton more harddels (#5476)
* Fixes a fuck ton more harddels (#58779)

Redoes how geese handle eating shit, it was fucking stupid and caused harddels, and while this method is technically slower in the best case, it's a fucking goose
Fixes action related harddels, I hate how they work but at least this way they won't hold refs.
Fixes the hierophont causing its beacon to harddel
Removes the M variable from megafauna actions, it was used like a typed owner and caused harddels, so I burned it
Fixes target and targets_from harddels, replaces all setters of target with LoseTarget and GiveTarget, which should help maintain behavior. I'm not sure if this breaks anything, but if it does we should fix the assumptions that code makes instead of reverting this change
Fixes more area_senstive_contents related harddels, we need to allow the mob to move before clearing out its list.
Fixes marked object harddels (I'm coming for you admin team)
Fixes a language based human harddel
Fixes managed overlay related harddels (This was just emissive blockers, but I think this is a good safety net to have. If we clear the overlay list we should clear this one as well)
Fixes bot core harddels, I hate the fact that this exists but it has no reason to know who its owner is
Adds a walk(src, 0) to simple_animal destroy, it's the best bang for the buck in terms of stopping spurious harddels. Walk related harddels aren't that expensive in the first place, since byond does the same thing I'm doing here, but this makes finding mob harddels easier, so let's go with it
I fixed another source of part harddels, I hate fullupgrade so much
Fixes all the sound loop harddels

* Fixes a fuck ton more harddels

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2021-05-05 17:46:22 +01:00
SkyratBot 260dd568ba [MIRROR] Component readme file now links to the Signals, Components, and Elements HackMD page instead of the forum (which links to the hackmd page now anyways) (#5463)
* Component readme file now links to the Signals, Components, and Elements HackMD page instead of the forum (which links to the hackmd page now anyways) (#58876)

* Component readme file now links to the Signals, Components, and Elements HackMD page instead of the forum (which links to the hackmd page now anyways)

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
2021-05-05 09:48:05 +01:00
BluBerry016 67c5c2fec0 Reverts Shipstation (#5414) 2021-05-02 22:58:31 +01:00
SkyratBot b88f65d26e [MIRROR] Resolve chameleon GAGS item issues (#5381)
* Resolve chameleon GAGS item issues

* AAAAAAAA

Co-authored-by: Celotajs <81999976+celotajstg@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-05-01 14:03:03 +01:00
SkyratBot 8d75246582 [MIRROR] Fixes gunboots shooting the wearer (#5345)
* Fixes gunboots shooting the wearer (#58651)

For whatever reason, gunboots could immediately shoot the person wearing them when they fired. This obviously isn't ideal, so this fixes that. Once the bullet has ricocheted off something, of course, they're once again fair game to be hit. This also kills the projectile_shooter component because it was pointless
Fixes: #58242 (Bullets fired from gunboots hit the wearer)

As if the trail of people trying to kill you for wearing this isn't bad enough, you don't need the shoes themselves doing you in

* Fixes gunboots shooting the wearer

Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
2021-04-30 13:05:56 +01:00
SkyratBot 681ecc7577 [MIRROR] Fixes infinite wiz shielded hardsuit charges (#5299)
* woops (#58757)

I was an idiot in #57797 and forgot to make the rune wizards can buy to add shield charges to their shielded hardsuits actually delete after being used, allowing you to use one rune infinitely. Oops! This PR fixes that.

No more invincible wizards

* Fixes infinite wiz shielded hardsuit charges

Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
2021-04-29 03:04:47 +01:00
SkyratBot 5b8a38af3a [MIRROR] Makes the explosive compressor and blastcannon actually use the TTVs they're given + the explosion changes to support that. (#5244)
* Makes the explosive compressor and blastcannon actually use the TTVs they're given + the explosion changes to support that. (#58015)

* Adds explosion SFX to the blastcannon and explosive compressor

- Extracts the explosion SFX and screenshake proc from the SSexplosions explosion handling proc and lets the explosive compressor and blastcannon use it.

* Miscellaneous changes

- Adds defines for the internal explosion arglist keys
- Reverses the values of the explosion severity defines
- Changes almost everything that uses `/proc/explosion` to use named arguments

- Removes a whole bunch of argname = 0 in explosion calls.

* Removes named callback arguments.

* Changes the explosion signals to just use the arguments list

Adds a simple framework to let objects respond to explosions occurring inside of them.

Changes a whole bunch of explosions to use the object being exploded as the origin of the explosion rather than the turf the object is on.

Makes the explosive compressor and blastcannon actually use the TTVs they are given.

Adds support for things responding to internal explosions.
Less snowflake code for the explosive compressor and blastcannon calculating bomb range.*
Less confusing explosion severity defines.
Less opaque explosion arguments

*does not guarantee that the solution to letting them actually use the TTV is any less snowflake.

* Makes the explosive compressor and blastcannon actually use the TTVs they're given + the explosion changes to support that.

Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
2021-04-27 01:53:17 +01:00
SkyratBot 374b0194fe [MIRROR] freezes addictions and sanity during death (#5207)
* freezes addictions and sanity during death

* Update life.dm

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-04-27 00:00:42 +01:00
SkyratBot 4ff4b5d15b [MIRROR] Convert jumpsuits, jumpskirts and sneakers to GAGS (#5181)
* Convert jumpsuits, jumpskirts and sneakers to GAGS (#58514)

* Convert jumpsuits, jumpskirts and sneakers to GAGS

* Update maint_loot_common.dm

Co-authored-by: Celotajs <81999976+celotajstg@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-04-26 23:59:18 +01:00
SkyratBot c9cee159a5 [MIRROR] Add Show Hiddenprints action to VV on atoms (#5212)
* Add Show Hiddenprints action to VV on atoms (#58657)

This displays the hiddenprint log from /datum/component/forensics in a simple to view form, sorted by last touch. I didn't make it fancy, it's very bare bones.

I could have refactored hiddenprints to use lists in lists, which would make getting data out a lot easier, but I worry about the additional memory overhead on every atom that gets touched, so I left it as strings in lists. I did reformat it a little bit, however, to make it simpler to sort, and it looks a little nicer. Namely moving the timestamp in front of the name.

It can help a lot in admin investigations on whodunnit. Right now they have to look at the forensics component, and that's if they even know about it. This way it is discoverable by using the VV tool.

* Add Show Hiddenprints action to VV on atoms

Co-authored-by: Jonathan Rubenstein <jrubcop@gmail.com>
2021-04-26 11:55:11 +01:00
SkyratBot 2ab15aecb5 [MIRROR] Remove all gamemodes except Dynamic (#5173)
* Remove all gamemodes except Dynamic

* qaaaaaaaa

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-04-25 21:20:30 +01:00
SkyratBot 16f36bf0cb [MIRROR] [s] Fixes uplink discount exploit. (#5149)
* [s] Fixes uplink discount exploit. (#58625)

* epic

* split em

* early return

* [s] Fixes uplink discount exploit.

Co-authored-by: Seth Scherer <supernovaa41@protonmail.com>
2021-04-24 03:21:19 +01:00
SkyratBot 084921405b [MIRROR] Full Auto Update: no crit firing, no spamclicking, more autofire, more balance (#5099)
* Full Auto Update: no crit firing, no spamclicking, more autofire, more balance

* aaa

* Update fullauto.dm

* aaaaa

Co-authored-by: Fikou <piotrbryla@onet.pl>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-04-23 22:21:53 +01:00
SkyratBot 4a7fe34e03 [MIRROR] Fixes pop restricted uplink items not properly unlocking (#5039)
* Fixes pop restricted uplink items not properly unlocking (#58542)

Makes it so if you become a traitor when specific items are pop locked, they will update accordingly as the population increases.

* Fixes pop restricted uplink items not properly unlocking

Co-authored-by: Seth Scherer <supernovaa41@protonmail.com>
2021-04-20 16:28:20 +01:00