Commit Graph

3839 Commits

Author SHA1 Message Date
SkyratBot
b7febcdc63 [MIRROR] Changes painting frame description to explain how they work (#2121)
* Changes painting frame description to explain how they work (#55414)

spellcheck: changed the description of painting frames to better explain how to remove paintings and whether the frame is persistent

* Changes painting frame description to explain how they work

Co-authored-by: Mickyan <38563876+Mickyan@users.noreply.github.com>
2020-12-11 00:26:15 +00:00
SkyratBot
66c207e19c [MIRROR] Reverts (#54963) due to timer spam (#2109)
* Revert "Refactors how movetype flags are added and removed and the floating animation (#54963)" (#55432)

This reverts commit b8425c003a.

* Reverts (#54963) due to timer spam

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2020-12-10 05:58:05 +01:00
SkyratBot
afce3e2a94 [MIRROR] pass_flags handling refactor + rewrites a part of projectiles for the n-th time (#2097)
* pass_flags handling refactor + rewrites a part of projectiles for the n-th time (#54924)

Yeah uhh this'll probably need testmerging even after it's done because yeah it's a bit big.
If y'all want me to atomize this into two PRs (pass flags vs projectiles) tell me please. Pass flags would have to go in first though, in that case, as new projectile hit handling will rely on pass_flags_self.
Pass flags:

Pass flags handling now uses an atom variable named pass_flags_self.
If any of these match a pass_flag on a thing trying to pass through, it's allowed through by default.
This makes overriding CanAllowThrough unnecessary for the majority of things. I've however not removed overrides for very.. weird cases, like plastic flaps which uses a prob(60) for letting PASSGLASS things through for god knows why.
LETPASSTHROW is now on pass_flags_self
Projectiles:

Not finalized yet, need to do something to make the system I have in mind have less unneeded overhead + snowflake

Basically, for piercing/phasing/otherwise projectiles that go through things instead of hitting the first dense object, I have them use pass_flags flags for two new variables, projectile_phasing and projectile_piercing. Anything with pass_flags_self in the former gets phased through entirely. Anything in the latter gets hit, and the projectile then goes through. on_hit will also register a piercing hit vs a normal hit (so things like missiles can only explode on a normal hit or otherwise, instead of exploding multiple times. Not needed as missiles qdel(src) right now but it's nice to have for the future).

I still need to decide what to do for hit handling proper, as Bump() is still preferred due to it not being as high-overhead as something like scanning on Moved(). I'm thinking I'll make Moved() only scan for cases where it needs to hit a non-dense object - a prone human the user clicked on, anything special like that. Don't know the exact specifics yet, which is why this is still WIP.

Projectiles now use check_pierce() to determine if it goes through something and hits it, doesn't hit it, or doesn't go through something at all (should delete self after hitting). Will likely make an on_pierce proc to be called post-piercing something so you can have !fun! things like projectiles that go down in damage after piercing something. This will likely deprecate the process_hit proc, or at least make it less awful.

scan_for_hit() is now used to attempt to hit something and will return whether the projectile got deleted or not. It will delete the projectile if the projectile does hit something and fails to pierce through it.

scan_moved_turf() (WIP) will be used for handling moving onto a turf.

permutated has been renamed to impacted. Ricocheting projectiles get it reset, allowing projectiles to pierce and potentially hit something again if it goes back around.

A new unit test has been added checking for projectiles with movement type of PHASING. This is because PHASING completely causes projectiles to break down as projectiles mainly sense collisions through Bump. The small boost in performance from using PHASING instead of having all pass flags active/overriding check_pierce is in my opinion not worth the extra snowflake in scan_moved_turf() I'd have to do to deal with having to check for hits manually rather than Bump()ing things.
Movement types

UNSTOPPABLE renamed to PHASING to better describe what it is, going through and crossing everything but not actually bumping.
Why It's Good For The Game

Better pass flags handling allows for less proc overrides, bitflag checks are far less expensive in general.

Fixes penetrating projectiles like sniper penetrators

This system also allows for better handling of piercing projectiles (see above) without too much snowflake code, as you'd only need to modify on_pierce() if you needed to do special handling like dampening damage per target pierced, and otherwise you could just use the standardized system and just set pass flags to what's needed. If you really need a projectile that pierces almost everything, override check_pierce(), which is still going to be easier than what was done before (even with snowflake handling of UNSTOPPABLE flag process_hit() was extremely ugly, now we don't rely on movement types at all.)

* pass_flags handling refactor + rewrites a part of projectiles for the n-th time

Co-authored-by: silicons <2003111+silicons@users.noreply.github.com>
2020-12-09 23:44:54 +01:00
SkyratBot
2ee5d422ae [MIRROR] Refactors how movetype flags are added and removed and the floating animation (#2096)
* Refactors how movetype flags are added and removed and the floating animation (#54963)

I wanted to refactor how movetype flags are added and removed into traits to prevent multiple sources of specific movement types from conflicting one other. I ended up also having to refactor the floating animation loop (the one that bobs up and down) code in the process.
Why It's Good For The Game

A way to avoid conflict from multiple sources of movement types.
This also stops melee attacks, jitteriness and update_transform() from temporarily disabling the floating movetype bitflag altogether until the next life tick.

Tested, but i'm pretty sure improvements could be made.
Changelog

cl
fix: jitteriness, melee attack animations and resting/standing up should no longer momentarily remove the floating movement type.
/cl

* Refactors how movetype flags are added and removed and the floating animation

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2020-12-09 23:43:42 +01:00
SkyratBot
81dc49d0bc [MIRROR] Windows "lag" fix (#2093)
* Windows "lag" fix (#55372)

Change to Move() to make only anchored windows to update the air when they move through the turfs (should prevent abusable situations of lag machines too)
Makes singulo from stage 2 unanchor windows when pulling them (low performance increment for singulo(?))
Why It's Good For The Game

less abusable lag good
Changelog

cl
tweak: only anchored windows call move_update_turf()
tweak: singularities from stage 2 and over will unanchor windows
/cl

* Windows "lag" fix

Co-authored-by: Ghilker <42839747+Ghilker@users.noreply.github.com>
2020-12-09 09:53:32 +01:00
SkyratBot
3a0491d3b4 [MIRROR] Small do-after refactor (#2074)
* Small do-after refactor (#55172)

This is an alternative to the PR Ryll made, it does some things similar e.g. the default limit of 1 interaction per target for a person, however, it refactors do_afters to support overrides for max interaction counts and unique sources.

For example, stripping uses the item being stripped as the source, allowing you to strip multiple items, but not the same item multiple times.

I've also fixed most other edge-cases this could cause where balance would be affected, but feel free to point out any I might've missed, this'll probably require some longer-term testmerging.

* Small do-after refactor

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
2020-12-07 22:46:59 +01:00
SkyratBot
2913364658 [MIRROR] Kills oldfood, Puts newfood on top. (#2041)
* Kills oldfood, Puts newfood on top. (#55160)

Slays the last of old-food, making new-food the new normal.

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

* Kills oldfood, Puts newfood on top.

* Update collars.dm

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
Co-authored-by: MrMelbert <kmelbert4@ gmail.com>
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@ users.noreply.github.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-12-04 16:46:26 +01:00
Azarak
424d15ca58 Update window.dm (#2033) 2020-12-04 01:38:17 +00:00
Azarak
3060b8c8de Update false_walls.dm (#1992) 2020-12-01 15:36:44 +00:00
SkyratBot
c487c73f39 [MIRROR] Grep for space indentation (#1969)
* Grep for space indentation

* aa

* Update species.dm

* Update species.dm

* Update maps.dm

* Update examine.dm

Co-authored-by: TiviPlus <57223640+TiviPlus@users.noreply.github.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-12-01 12:26:41 +01:00
Azarak
db2b08ad43 aaa (#1972) 2020-11-30 19:41:56 +00:00
ShadeAware
6422f8e2f9 [Semi-Modular] H Y P O S P R A Y W A V E (#1929)
* mmmmm, :b:yposprays

* cum

* based!

* Update readme.md

* Newlines...

Do these really matter THAT much?
2020-11-30 13:19:39 +00:00
SkyratBot
f6d60b49f4 [MIRROR] Removes a source of ian harddels, restores soul (#1871)
* Removes a source of ian harddels, keeps mcgruffs bed discription from getting overwritten at roundstart, moves the bed claiming feature to just the dogbed typepath, none of the subtypes, this applies to buckling too (#55158)

Removes a source of ian harddels, keeps mcgruff's bed description from getting overwritten at roundstart, moves the bed claiming feature to just the dogbed typepath, blacklisting subtypes. This applies to buckling too.

This means that a dogbed can only ever belong to one dog. Fuck you.
Remake of #54892, github doesn't like force pushes, not sure why

* Removes a source of ian harddels, restores soul

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2020-11-27 07:45:11 +00:00
SkyratBot
e6879819ea [MIRROR] CanUseTopic() refactor. (#1829)
* CanUseTopic() refactor. (#54747)

* CanUseTopic() refactor.

* Forgot about default_can_use_topic. Tested and working.

* Update bin.dm

* no-nonsense.

* CanUseTopic() refactor.

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2020-11-25 13:56:56 +01:00
SkyratBot
ed9698068b [MIRROR] tgui: Safe (#1818)
* tgui: Safe

* 0

* Update tgui.bundle.js

Co-authored-by: Arkatos1 <43862960+Arkatos1@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2020-11-24 23:59:06 +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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Gandalf
f9e3b58ecd Aesthetic Overhaul V3.0[SEMI-MODULAR][READY] (#1245)
* Begin

* few fixes

* WINDOWS

* Update airlock.dm

* Update status_display.dm

* Fixes plus rusty walls.

* Update walls.dm

* air alarm, intercom, apc updates, plasma windows, tinted, firealarm(todo)

* Update airlock.dm

* FINALLY FIXES THE DOORS

* Update airlock.dm

* firealarm and fixes.

* fixes

* mining vendor and washing machine

* firedoor

* blastdoor

* firealarm sound, shutters sound, blast door sounds.

* Delete window.dm

* Revert "Delete window.dm"

This reverts commit 4737c539eb9b49a526c784f45161c3189505ac57.

* fixes

* Update 2.0

newscaster DONE
bookshelf DONE
disposals chute DONE
chairs DONE
stools DONE
beds - Will upgrade later.
requests console DONE
light switch DONE
roller bed DONE
nanomed DONE
extinguisher cabnets DONE
extinguishers DONE
buttons
shield generators DONE
space heater DONE
emitter DONE
field generator DONE
rad collector DONE
cameras DONE
morgue units DONE
watercooler
bench Will upgrade later
E-N (corgi) port? Will do later.
plastic flaps Done
Guns - later

* fiox

* l o g i c

* Update extinguisher.dm

* V2.5

* racks and fixws

* computer typing noise

* gun sprite updates

* Update guns.dmi

* air alarm light mask

* better light overlays

* floors!

* gaygun, bench

* lasergun sounds - remove gun balance.

* no decals.

* Update intercom.dmi

* better directionals

* lasercannon, nucgun,

* Update laser.dm

* aaa

* aaa

* some sprite updates

* aaa

* shotgun suppressor+sound

* Update airlock.dm

* Update shieldgen.dmi

* chair fix, tools too.

* Update chairs.dmi
2020-11-01 16:35:39 +01:00
SkyratBot
7abcc2fbac [MIRROR] Fixes table stacking exploit (#1534)
* Fixes table stacking exploit (#54650)

Tables could be placed on top of each other, leading to stacking of glass tables, and infinite sin. This doesn't cover anything close to all of it, but it's a good patch for now.

* Fixes table stacking exploit

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-11-01 11:50:09 +01:00
SkyratBot
6d46c911bb [MIRROR] Corrects the Chisel Description (The Pettiest PR Ever Made) (#1532)
* Corrects the Chisel Description (#54711)

* Corrects the Chisel Description (The Pettiest PR Ever Made)

Co-authored-by: EOBGames <58124831+EOBGames@users.noreply.github.com>
2020-11-01 11:30:21 +01:00
SkyratBot
edf22edc9b [MIRROR] [READY] decorations loot crate! +3 new fancy carpets! (#1522)
* [READY] decorations loot crate!  +3 new fancy carpets! (#54612)

* base

* fixes

* crate

* Update code/game/turfs/open/floor/fancy_floor.dm

Co-authored-by: Fikou <piotrbryla@ onet.pl>

* adds the crate to the pool.

* the crate is pretty rare, why not let it drop four items?

* Update lootdrop.dm

Newline phone edit

* ungoofed

Co-authored-by: Fikou <piotrbryla@ onet.pl>

* [READY] decorations loot crate!  +3 new fancy carpets!

Co-authored-by: Krysonism <49783092+Krysonism@users.noreply.github.com>
Co-authored-by: Fikou <piotrbryla@ onet.pl>
2020-10-31 06:06:12 +00:00
SkyratBot
119dd2ea3d [MIRROR] Basepixels (#1512)
* Basepixels (#54652)

* Basepixels

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-10-30 17:30:11 +00:00
SkyratBot
6e79637004 [MIRROR] Holodeck bedsheets no longer drop cloth when cut (#1492)
* Holodeck bedsheets no longer drop cloth when cut (#54548)

they now check if they have HOLOFLAG_1 and if they do they dont drop cloth

* Holodeck bedsheets no longer drop cloth when cut

Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
2020-10-27 09:09:37 +00:00
SkyratBot
50f4b009f8 [MIRROR] Adds game logging to welding airlocks, firedoors and lockers. (#1471)
* Adds game logging to welding airlocks, firedoors and lockers (#54593)

* Adds game logging to welding airlocks, firedoors and lockers.

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
2020-10-26 09:12:31 +01:00
SkyratBot
1332fd26d1 [MIRROR] Fixes alien resin floors spreading to openspace tiles (#1465)
* no more floating resin (#54558)

Co-authored-by: Denton <d@ ent.on>

* Fixes alien resin floors spreading to openspace tiles

Co-authored-by: 81Denton <32391752+81Denton@users.noreply.github.com>
Co-authored-by: Denton <d@ ent.on>
2020-10-26 09:08:31 +01:00
SkyratBot
ed7e7b9cb8 [MIRROR] [READY] Multilayer plumbing machinery (#1440)
* [READY] Multilayer plumbing machinery (#54081)

* multilayer machinery!

* adds layer mode to plungers for changing plumbing layers

* minor fixes

* Adds more feedback to plunger layer mode and places proper checks for layer changing

* [READY] Multilayer plumbing machinery

Co-authored-by: Time-Green <timkoster1@hotmail.com>
2020-10-23 12:50:50 +02:00
SkyratBot
ff7ef130dc [MIRROR] Makes dressers not drop wood when they have the NODECONSTRUCT flag (#1435)
* Makes dressers not drop wood when they have the NODECONSTRUCT flag (#54534)

* Makes dressers not drop wood when they have the NODECONSTRUCT flag

Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
2020-10-23 05:12:55 +01:00
SkyratBot
6ecaa9a994 [MIRROR] Standardizes attack chain signal returns and fixes a tk bug (#1409)
* Standardizes attack chain signal returns and fixes a tk bug (#54475)

The attack chain is a bit of a mess, and the introduction of signals hasn't helped in simplifying it.

In order to take a step into untangling this, I re-ordered the attack signals to no longer be by source type and instead to be grouped more modularly, as they are all members of the attack chain and function similarly. They all share the trait of potentially ending the attack chain via a return, but had several different names for it. I joined it into one.

Additionally, fixed a tk bug reported by @ Timberpoes by adding a signal return check at the base of /mob/proc/RangedAttack

Lastly, removed the async call of /datum/mutation/human/telekinesis/proc/on_ranged_attack, which was added as a lazy patch to appease the linter complaining about a sleep on a signal handler (namely in /obj/singularity/attack_tk). Fixed the problem using timers.

Also cleaned some code here and there.

* Standardizes attack chain signal returns and fixes a tk bug

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-10-21 07:39:32 +02:00
SkyratBot
d1315d9474 [MIRROR] Audio falloff re-work, and increased audio range. (#1406)
* Audio falloff re-work, and increased audio range.

* a

* a

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-10-21 07:36:31 +02:00
SkyratBot
f02e30a50e [MIRROR] Implements timed_action_flags for do_after-like procs (#1385)
* Implements timed_action_flags for do_after-like procs (#54409)

Originally I wanted to fix an issue where the `get_up()` `do_after()` would ignore the callback checks, because it was `uninterruptible`, so that made me refactor these procs to allow for higher granularity on checks and standardize behavior a bit more.
There's more work to be done for them, but one thing at a time.

* Removes the `uninterruptible` check in favor of the more granular `timed_action_flags`
* Cleans code on the `do_atom`, `do_after_mob`, `do_mob` and `do_after` procs to standardize them a little better.

* Implements timed_action_flags for do_after-like procs

* Update horror_form.dm

Co-authored-by: Rohesie <rohesie@gmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-10-21 07:06:03 +02:00
SkyratBot
717c31d40c [MIRROR] Adds the New-and-Improved Training Machine, Training Toolbox! (#1345)
* Adds the New-and-Improved Training Machine, Training Toolbox! (#54133)

Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@ users.noreply.github.com>
Co-authored-by: ATH1909 <42606352+ATH1909@ users.noreply.github.com>
Co-authored-by: Rohesie <rohesie@ gmail.com>

* Adds the New-and-Improved Training Machine, Training Toolbox!

Co-authored-by: Emmanuel S <mrdoomboyo@gmail.com>
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@ users.noreply.github.com>
Co-authored-by: ATH1909 <42606352+ATH1909@ users.noreply.github.com>
Co-authored-by: Rohesie <rohesie@ gmail.com>
2020-10-17 00:39:34 +01:00
SkyratBot
ae61b17587 [MIRROR] Shuttle tweak and fix (#1330)
* Shuttle tweak and fix (#54395)

Fix lavaland podding
Make lavaland pod destinations hidden
Removed unused variables from connect_to_shuttle() proc
Shuttle consoles remove old custom port id from possible destinations when connects to new shuttle
Custom ports keeps clear from unwanted numbers.
Now shuttle machinery property connects to additional loaded shuttles.
Add some docking_port register logging and safety.

* Shuttle tweak and fix

Co-authored-by: Dennok <Deneles@yandex.ru>
2020-10-15 22:09:49 +01:00