Commit Graph

14220 Commits

Author SHA1 Message Date
SkyratBot
02a713f379 [MIRROR] Fixes PDA bombing have equal chances to work on PDAs without manifest access vs PDAs with it (#1812)
* Fixes PDA bombing have equal chances to work on PDAs without manifest access vs PDAs with it (#55036)

* Makes extra difficulty actually work

0

* Actually fixes it as of what Fikou suggested

* no space, sorry

Co-authored-by: ATH1909 <42606352+ATH1909@ users.noreply.github.com>

Co-authored-by: ATH1909 <42606352+ATH1909@ users.noreply.github.com>

* Fixes PDA bombing have equal chances to work on PDAs without manifest access vs PDAs with it

Co-authored-by: Bond <58570888+TheBonded@users.noreply.github.com>
Co-authored-by: ATH1909 <42606352+ATH1909@ users.noreply.github.com>
2020-11-24 11:37:40 +01:00
SkyratBot
87976343b7 [MIRROR] Fixes flat dough element bug (#1803)
* path funeneee (#55119)

* Fixes flat dough element bug

Co-authored-by: ArcaneDefence <51932756+ArcaneDefence@users.noreply.github.com>
2020-11-24 11:32:40 +01:00
SkyratBot
e52038974a [MIRROR] Foam darts and other unembeddable bullets will no longer leave ghost shrapnel (#1796)
* Foam darts and other unembeddable bullets will no longer leave ghost shrapnel (#54994)

Projectiles are assigned the ability to try embedding by the presence of a shrapnel_type variable being set on them, whether or not they actually have a set of embedding stats in their embedding var. By default, children of /obj/projectile/bullet have a shrapnel type set to a generic embedded bullet item, including things like foam darts and lollypop projectiles which shouldn't be able to embed (and certainly not embed as a bullet). While they had their embedding vars set to null, they still had their shrapnel_type set to the embedded bullet type, meaning shooting a person with a dart gun or whatever would leave a failed shrapnel item on the ground where they weren't supposed to.

This fixes that by requiring both a defined shrapnel_type AND a defined embedding var for the embedding stats. Any projectiles without both won't be able to try embedding. I also manually put 'shrapnel_type = null' on any bullet subtypes with embedding = null just to be safe and for consistency.

* Foam darts and other unembeddable bullets will no longer leave ghost shrapnel

Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
2020-11-24 08:34:46 +00:00
SkyratBot
7d653f1f6b [MIRROR] Moves grown food to newfood (#1794)
* Moves grown food to newfood (#55040)

Moves grown food to newfood
Gives trash element support for callbacks for item creation override

* Moves grown food to newfood

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
2020-11-23 22:35:35 +00:00
SkyratBot
1e040f5f1e [MIRROR] Makes it so living crate creatures can pass plastic flaps as god intended. (#1788)
* Makes it so living crate creatures can pass plastic flaps as god intended. (#55088)

* Makes it so living crate creatures can pass plastic flaps as god intended.

Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
2020-11-23 20:46:15 +00:00
SkyratBot
3f22ac0cee [MIRROR] Removed effect/dummy/phased_mob copypasta. Fixed squeak component triggering from abstract effects & co. (#1784)
* Removed effect/dummy/phased_mob copypasta. Fixed squeak component triggering from abstract effects & co. (#54783)

* Removed effect/dummy/phased_mob copypasta. Fixed squeak component triggering from abstract effects & co.

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2020-11-23 18:29:54 +00:00
SkyratBot
aba49c29de [MIRROR] Lockers, Bluespace Bodybags, and all their subtypes, now properly prevent you from access internal, sub-level boxes storages. (#1780)
* Salt the earth of these god damn gym lockers (#55081)

* Lockers, Bluespace Bodybags, and all their subtypes, now properly prevent you from access internal, sub-level boxes storages.

Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
2020-11-23 09:17:48 +01:00
SkyratBot
742559ebde [MIRROR] Properly differentiates the nanodrug and nanomed vending machines. (#1776)
* Properly differentiates the nanodrug and nanomed vending machines. (#55069)

This repaths the nanodrug and nanomed vending machines, as well as visually tweaks the nanodrug vending machine from the nanomed vending machine, in order to
A) Fix the correct vending refills working on the correct vending machines.
B) Not make 2 different vending machines with different contents sell look identical.

Allows for visual clarity between 2 distinct, different vending machines. I got lazy and didn't do it the first time, and now they've been confusing players, apparently.
Additionally, makes them actually deconstruct able and constructible as a result of the fix to the circuit board.

* Properly differentiates the nanodrug and nanomed vending machines.

Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
2020-11-22 22:36:11 +00:00
SkyratBot
40015ba64d [MIRROR] Minor refactor to signal handlers to remove potential sleeps (#1777)
* Minor refactor to signal handlers to remove potential sleeps (#54649)

About The Pull Request

These are legacy sleepers, the remaining 12 are non-trivial to fix.

* Minor refactor to signal handlers to remove potential sleeps

Co-authored-by: spookydonut <github@spooksoftware.com>
2020-11-22 22:35:37 +00:00
SkyratBot
da8886ddbc [MIRROR] moves dough to newfood (#1767)
* moves dough to newfood (#55039)

* moves dough to newfood

* moves dough to newfood

Co-authored-by: Fikou <piotrbryla@onet.pl>
2020-11-22 18:21:02 +00:00
SkyratBot
3967da22e1 [MIRROR] Fixing a 18.18% chance of gibs streaking 50 tiles away. (#1745)
* Fixing a 18.18% chance of gibs streaking 50 tiles away. (#55035)

* Fixing a 18.18% chance of gibs streaking too far away.

* ascended bug, not a new feature. :rolleyes:

* Fixing a 18.18% chance of gibs streaking 50 tiles away.

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2020-11-20 12:12:55 +01:00
SkyratBot
90373657be [MIRROR] AIs can now select portraits as their display (#1739)
* AIs can now select portraits as their display

* a

* Update tgui.bundle.js

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-11-20 11:19:18 +01:00
SkyratBot
6b98d55573 [MIRROR] Makes ladders craftable (#1736)
* Makes ladders craftable (#54485)

* Makes ladders craftable

Co-authored-by: wesoda25 <37246588+wesoda25@users.noreply.github.com>
2020-11-19 23:58:30 +00:00
SkyratBot
6ee9837409 [MIRROR] [WIP] Remove fusion from reactions, add hypertorus fusion machinery (#1719)
* [WIP] Remove fusion from reactions, add hypertorus fusion machinery

* a

* Merge branch 'master' into upstream-merge-54379

* Update tgui.bundle.js

Co-authored-by: Ghilker <42839747+Ghilker@users.noreply.github.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-11-19 07:27:51 +01:00
SkyratBot
89a8cb991a [MIRROR] moves misc food to newfood code (#1725)
* moves misc food to newfood code (#54788)

misc food is now using newfood code

* moves misc food to newfood code

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
2020-11-19 07:21:23 +01:00
SkyratBot
d9606e5d0a [MIRROR] Scalpel can now cut pizza. (#1724)
* Scalpel can now cut pizza. (#55012)

Enables scalpel tools to cut pizza. Consolidated a bunch of pizza-specific `MakeProcessable` proc defines that were just copy+pastes of each other.

* Scalpel can now cut pizza.

Co-authored-by: Josh <josh@jaw.sh>
2020-11-19 07:20:56 +01:00
SkyratBot
4dc077b884 [MIRROR] Food processors and microwaves now respect food trays (#1716)
* Food processors and microwaves now respect food trays (#54927)

Really it's a bandaid as it would be better to wait until the refactor is done, but it turned out to be a rather easy fix.
Food trays may now once again mass insert both new and old food into the microwaves and food processors.

Prevents any manual handing when cooking large quantities of food at once.
Also, you get the switch gathering mode button when being given the serving tray again.

* Food processors and microwaves now respect food trays

Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
2020-11-19 06:45:07 +01:00
SkyratBot
9c5041509a [MIRROR] Spraycans now consume charges in the right order when spraying graffiti. (#1712)
* Spraycans now consume charges in the right order when spraying graffiti.  (#54929)

Spraycans now check the cost of placing down a new spray before performing the do_after countdown, then uses the charge immediately after the do_after is completed.

Spraycans should check and only use a charge AFTER their cooldown timer is complete.

* Spraycans now consume charges in the right order when spraying graffiti.

Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
2020-11-17 21:28:05 +00:00
SkyratBot
964adb7828 [MIRROR] Fixes disabled limbs from compound fractures, only robotic limbs can be disabled by pure damage now (#1709)
* Fixes disabled limbs from compound fractures, only robotic limbs can be disabled by pure damage now (#54922)

* Fixes disabled limbs from compound fractures, only robotic limbs can be disabled by pure damage now

Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
2020-11-17 00:50:36 +01:00
SkyratBot
1c065882f7 [MIRROR] [ready] Reverts metabolism on stomachs, keep them as important to eating (#1690)
* Reverts metabolism on stomachs, keep them as important to eating (#54632)

* [ready] Reverts metabolism on stomachs, keep them as important to eating

* Merge branch 'master' into upstream-merge-54632

* Update food_reagents.dm

* Update alcohol_reagents.dm

Co-authored-by: NightRed <nightred@gmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-11-15 06:47:17 +01:00
SkyratBot
c0cdf25886 [MIRROR] Arconomy: Amputating the Invisible Hand of Income. (#1687)
* Arconomy: Amputating the Invisible Hand of Income.

* Update tgui.bundle.js

Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-11-14 21:52:07 +01:00
SkyratBot
9e88359f04 [MIRROR] Re-assesses 99% of vending prices through Arconomics to match player resources and round-length. (#1686)
* Re-assesses 99% of vending prices through Arconomics to match player resources and round-length. (#54715)

* The Re-pricening

* Rewritten and adjusted for paycheck defines.

* I made the map changes finally.

* And the refills too.

* "OH YEAH REPLACING IT ALL WITH DEFINES AND SCALING IT THE EXCEL DOCUMENT WILL BE EASY, ARCANE!!!"

* And the premium ones too.

* Accidently spoiled a future pr due to dme bleedover

* Re-assesses 99% of vending prices through Arconomics to match player resources and round-length.

Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
2020-11-14 21:49:11 +01:00
SkyratBot
6733d6debb [MIRROR] fixes the flags of some shocks (#1685)
* fixes the flags of some shocks (#54906)

## About The Pull Request

The shocks from the shock touch mutation now ignore insulated gloves, because you're touching your victim's body, not giving them a handshake.

The shocks from punching charged energy fields (special holosigns from emagged cyborgs) now DON'T ignore insulated gloves, because you're literally punching them with your hand.

The shocks from running into charged energy fields now DON'T ignore insulated gloves, to be consistent with things like electrified doors.

The shocks from the on_mob_life() effect of liquid electricity now ignore insulated gloves, like the shocks from the on_mob_life() effect of teslium do (thanks for pointing this out, Angustmeta!).

## Why It's Good For The Game

Logical sense and consistency in what forms of protection shocks check for are good things, I think.

* fixes the flags of some shocks

Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>
2020-11-14 21:33:12 +01:00
SkyratBot
5adb2790a0 [MIRROR] Spider Rework (#1667)
* Spider Rework

* Update giant_spider.dm

Co-authored-by: IndieanaJones <47086570+IndieanaJones@users.noreply.github.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-11-11 18:32:13 +01:00
SkyratBot
e768cef297 [MIRROR] /obj/screen --> /atom/movable/screen (#1646)
* /obj/screen --> /atom/movable/screen

* Update storage.dm

* Update radial.dm

* a

Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-11-11 04:12:50 +01:00
SkyratBot
bfaa5be1c0 [MIRROR] Pies are now refactored for new foods. (#1677)
* Pies are now refactored for new foods. (#54751)

Moves over pies to the newfood typepaths, as well as the few select pie slices.

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

* Pies are now refactored for new foods.

Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@ users.noreply.github.com>
2020-11-11 02:55:01 +00:00
SkyratBot
eedf2362cc [MIRROR] Refactored 'IsAdvancedToolUser' into a macro plus relative trait. Tweaked 'can_hold_items'. (#1674)
* Refactored 'IsAdvancedToolUser' into a macro plus relative trait. Tweaked 'can_hold_items'. (#54665)

The PR aims to allow advanced tool users to be defined by traits rather than a hardcoded proc.
Also necessary for the CanUseTopic refactor I'm working on, which will be PRed separately for atomization purposes.
This PR also fixes an inconsistency with can_hold_items (since monkeys can actually hold items).

* Refactored 'IsAdvancedToolUser' into a macro plus relative trait. Tweaked 'can_hold_items'.

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2020-11-11 02:52:32 +00:00
SkyratBot
47febd0ae5 [MIRROR] Beauty component improvements. Two new fantasy component prefixes (#1673)
* Beauty component improvements. Two new fantasy component prefixes (#54622)

Title. Changed the component backend code slightly to allow a single component to hold the total score instead of spawning new components. This should fix cases, such as material stacks without the MATERIAL_NO_EFFECTS flag, where multiple set_costum_materials calls can be made and new beauty components spawned.

* Beauty component improvements. Two new fantasy component prefixes

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2020-11-11 02:52:18 +00:00
SkyratBot
186f4bd4c2 [MIRROR] Fixes a few bugs with greyscale stacks. (#1670)
* Fixes a few bugs with greyscale stacks. (#54858)

    Fixes greyscale floor tiles merging regardless of their materials.
    Fixes greyscale floor tiles voiding materials when splitting the stack.
    Fixes greyscale floor tile stacks being created with no mats_per_unit and only enough custom materials for a single unit.
    Fixes greyscale tile flooring being created with the wrong amount of materials.
    Fixes greyscale tile flooring not producing floor tiles/producing floor tiles with 0 units.

* Fixes a few bugs with greyscale stacks.

Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
2020-11-11 02:51:23 +00:00
SkyratBot
8db24d79e6 [MIRROR] Fix royal alien pixel offset, change getter to variable (#1641)
* Fix royal alien pixel offset, change getter to variable (#54706)

Fixed a bug where royal aliens would have their base pixel offset applied twice, making them off-center (https://i.imgur.com/BtspaM0.png)

Changed the mob/living procs get_standard_pixel_x_offset() and get_standard_pixel_y_offset() to variables (body_position_pixel_x_offset and body_position_pixel_y_offset), to match the contribution guidelines.

Also corrected a few random things that weren't using base pixels but should have been.

* Fix royal alien pixel offset, change getter to variable

* Update pixel_shift.dm

Co-authored-by: Yenwodyah <yenwodyah@gmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-11-11 02:47:05 +00:00
SkyratBot
2ff5f9b259 [MIRROR] Move death(), gib(), and dust() from /mob to /mob/living (#1634)
* Move death(), gib(), and dust() from /mob to /mob/living

* a

Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-11-10 22:01:47 +01:00
SkyratBot
28a869925a [MIRROR] Fixed inconsistencies with the extradimensional blade nullrod. (#1656)
* Fixed inconsistencies with the extradimensional blade nullrod. (#54868)

* Fixed inconsistencies with the extradimensional blade nullrod.

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2020-11-09 20:19:04 +00:00
SkyratBot
37fedce4ff [MIRROR] Poker table dismantling now respects carpet subtypes (#1654)
* Poker table dismantling now respects carpet subtypes (#54869)

* Poker table dismantling now respects carpet subtypes

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2020-11-09 20:18:07 +00:00
SkyratBot
8894ac50fb [MIRROR] Grep for proc(var/bad) (#1652)
* Grep for proc(var/bad) (#54848)

* Grep for proc(var/bad)

Co-authored-by: TiviPlus <57223640+TiviPlus@users.noreply.github.com>
2020-11-09 20:17:31 +00:00
SkyratBot
13c953e150 [MIRROR] The clown PDA now has in-built comedy detection for when something happens to the clown and plays a fitting sound. (#1644)
* The clown PDA now has in-built comedy detection for when something happens to the clown and plays a fitting sound. (#54695)

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

* The clown PDA now has in-built comedy detection for when something happens to the clown and plays a fitting sound.

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@ users.noreply.github.com>
2020-11-09 20:13:41 +00:00
SkyratBot
665a7d3673 [MIRROR] Easier Medipen Identification, Medipen Box (#1619)
* Easier Medipen Identification, Medipen Box (#54698)

* Medipen Differences

Adds a box for medipens, and gives each of the "common" pens a new look.

* Adds medipen box to craftables.

* Lighter first aid pen.

* Easier Medipen Identification, Medipen Box

Co-authored-by: Winter Flare <7543955+Owai-Seek@users.noreply.github.com>
2020-11-08 01:06:21 +00:00
SkyratBot
6b1e0272bb [MIRROR] Adds a few walls and airlocks to the big derelict space ruin to keep atmos diffs down when entered. (#1614)
* Adds a few walls and airlocks to the big derelict space ruin to keep atmos diffs down when entered. (#54749)

* Oh right the commit

* Removes snowflake pathing for alien resin window.

* Missed one.

* Actually this whole map is just a var-edit hell

* Adds a few walls and airlocks to the big derelict space ruin to keep atmos diffs down when entered.

Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
2020-11-07 22:05:46 +00:00
SkyratBot
4df9bf0979 [MIRROR] Speargun: Now actually a gun! Again! (#1610)
* Speargun: Now actually a gun! Again! (#54289)

Turns the speargun from the syndikit bundle into a bolt action rifle instead of a pnuematic cannon.

The spears the rifle fires embeds using the new bullet embedding system by Ryll. The spears do a lot of fucking damage.

The new bundle includes:

The Ballistic Harpoon Gun

The weapon is a single shot rifle that can be loaded with harpoons. The rifle, being bolt action, requires pulling back the bolt, loading the new harpoon, then locking the bolt every time you wish to fire the weapon. This is more busy work than the pnuematic cannon version, but more reliable in functionality without any messy business with throwing.

The harpoons do 60 force, have a high wound chance against unarmored targets and very high embed chance, with a 100% against unarmored targets. They also have considerable armor piercing at 50, letting you nearly entirely shoot through a ballistic vest.

The weapon is essentially a powered-up single shot mosin or a significantly more powerful improvised shotgun filled with slugs.

The Quiver

Now a bag that goes on your belt. It holds up to 40 harpoons for your harpoon gun. This change was done because the harpoons cannot be retrieved, unlike the magspears, which were simply hacky ninja stars and could be pulled out with surgical tools/wirecutters. Previously you had 20 magspears, which because of their retrievable nature lasted a little longer than you would expect.

Sprites

New back sprites for the harpoon gun, ensuring nobody is missing it when you have it. Additionally, the Mosin Nagant now has it's back sprite as a suit storage sprite.

New sprite for the quiver.

* Speargun: Now actually a gun! Again!

Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
2020-11-07 15:43:22 +00:00
SkyratBot
cc1d3acc95 [MIRROR] Fix runtime with RPD unwrenching. (#1606)
* Fix runtime with RPD unwrenching. (#54773)

[01:44:12] Runtime in RPD.dm, line 392: Cannot read 1.type

/obj/machinery/atmospherics/wrench_act can return a boolean instead of an object under the following scenarios:
You cannot unwrench the machine.
You can unwrench the machine, but use_tool later returns FALSE instead of TRUE.

use_tool can fail when you stack wrench_acts ontop of eachother. The first wrench_act will work as expected and return the deconstructed version of the pipe, all other stacked wrench_acts will have use_tool fail and will instead just return TRUE.

This PR prevents stacking of wrench_act-based do_afters and guards against unexpected runtimes by CRASHing when wrench_act returns something unexpected.

* Fix runtime with RPD unwrenching.

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
2020-11-07 15:42:27 +00:00
SkyratBot
4af1148b13 [MIRROR] Non-human mobs can now benefit from held id cards and economy. (#1603)
* Non-human mobs can now benefit from held id cards and economy. (#54647)

* Non-human mobs can now benefit from held id cards and economy.

* Moved these getters toward the upper end.

* oui?
...
dump eet.

* .tee pump
      ...
     ?iuo

* Non-human mobs can now benefit from held id cards and economy.

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-11-07 05:08:36 +00:00
SkyratBot
94fe50294d [MIRROR] Fixing GBJ cases where the disposal holder is forcemoved outside a pipe. (#1602)
* Fixing GBJ cases where the disposal holder is forcemoved outside a pipe. (#54643)

Title. Also turned movable/pipe_eject() into a comsig, since it was used only for gibs.

* Fixing GBJ cases where the disposal holder is forcemoved outside a pipe.

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2020-11-07 05:06:41 +00:00
SkyratBot
5d2c3da593 [MIRROR] Adds record of toilet combat (#1600)
* Adds record of toilet combat (#54836)

Logs a direct method of dealing damage to a person that wasn't logged previously

* Adds record of toilet combat

Co-authored-by: ArcaneDefence <51932756+ArcaneDefence@users.noreply.github.com>
2020-11-07 05:05:57 +00:00
SkyratBot
4e49fe926c [MIRROR] Fixes catwalks smoothing with lattices (#1596)
* Fixes catwalks smoothing with lattices (#54829)

* Fixes catwalks smoothing with lattices

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2020-11-07 05:05:15 +00:00
SkyratBot
6f814b118d [MIRROR] Fixes being able to commit suicide with an UNREAL SORD (#1594)
* Fixes being able to commit suicide with an UNREAL SORD (#54831)

The UNREAL SORD null rod form's suicide_act() now closely matches the suicide_act of an actual SORD.

For reference, an actual SORD's suicide_act() is:
```
/obj/item/sord/suicide_act(mob/user)
	user.visible_message("<span class='suicide'>[user] is trying to impale [user.p_them()]self with [src]! It might be a suicide attempt if it weren't so shitty.</span>", \
	"<span class='suicide'>You try to impale yourself with [src], but it's USELESS...</span>")
	return SHAME
```

And the UNREAL SORD null rod form's new suicide_act() is:
```
/obj/item/nullrod/sord/suicide_act(mob/user) //a near-exact copy+paste of the actual sord suicide_act()
	user.visible_message("<span class='suicide'>[user] is trying to impale [user.p_them()]self with [src]! It might be a suicide attempt if it weren't so HOLY.</span>", \
	"<span class='suicide'>You try to impale yourself with [src], but it's TOO HOLY...</span>")
	return SHAME
```

* Fixes being able to commit suicide with an UNREAL SORD

Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>
2020-11-07 05:04:32 +00:00
SkyratBot
9b204ff733 [MIRROR] You can now unbuckle others from the toolbox training machine with altclick. (#1593)
* Merge pull request #54798 from Ghommie/Ghommie-tg38

You can now unbuckle others from the toolbox training machine with altclick. (Lemon: Cleans up some issues with remote toolbox removal too)

* You can now unbuckle others from the toolbox training machine with altclick.

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2020-11-07 00:33:06 +00:00
SkyratBot
3fb7ff47ab [MIRROR] Improves admin logging for when TTV valves get opened. (#1588)
* Improves admin logging for when TTV valves get opened. (#54776)

Basically just reformats the logging code for TTVs when valves get opened. It's a bit more verbose, giving a bit more detail in general. It also has line breaks, because it makes things easier to read.

I've also added the ability for signals to hold a logging string. In this case, a signaller creates a signal and attaches a logging string. If the signal is received by any signallers attached to a TTV, it stores the last logging string associated with that signal. Functionally, this means that TTVs can now ask their attached signaller for the logging string of the last signal it received and display it as part of the logging string.

* Improves admin logging for when TTV valves get opened.

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
2020-11-07 00:31:35 +00:00
SkyratBot
879ddd1da1 [MIRROR] Fix #54806 (#1584)
* Merge pull request #54811 from Dennok/patch-2

Fix #54806

* Fix #54806

Co-authored-by: Jordan Brown <Cyberboss@users.noreply.github.com>
2020-11-06 19:37:07 +00:00
SkyratBot
b7122f2d6e [MIRROR] Converting art component into element. (#1562)
* Converting art component into element. (#54616)

* Only art is now an element. There have been some issues with beauty.

* Typo.

* Update art.dm

* Update art.dm

* Maintainer suggestions. Reversing order of switch(impress) for correct moodlets.

* Fixing some pre-existing oddities with art element.

* stating the right var.

* simplifying the component.

* Update art.dm

* lowercasing pronoun.

* Converting art component into element.

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2020-11-04 00:35:26 +00:00
SkyratBot
56b1cf499e [MIRROR] Fixes nullrod hand replacements being put into slots they shouldn't be (#1560)
* Fixes nullrod hand replacements being put into slots they shouldn't be (#54750)

* Fixes nullrod hand replacements being put into slots they shouldn't be

Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
2020-11-04 00:35:06 +00:00
SkyratBot
30fc6c78ac [MIRROR] Turns transparency for turfs into an element, and gives it to datum materials. (#1567)
* Turns transparency for turfs into an element, and gives it to datum materials. (#54250)

* Turns transparency for turfs into an element, and gives it to datum materials.

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
2020-11-04 00:33:49 +00:00