Commit Graph

4762 Commits

Author SHA1 Message Date
Bloop
46d84e6119 [MANUAL MISSED MIRROR] Replaces lava and chasm's "safeties" and ignoring turf slowdown on catwalks with traits and a new element (#22384)
Replaces lava and chasm's "safeties" and ignoring turf slowdown on catwalks with traits and a new element. (#76376)

This adds a new element for movables that grants turfs they're in
traits, changes lava and the chasm component to check for traits
instead, ditto for turf slowdown. It also implements another trait that
prevents wet floor from slipping people, as well as some other changes
(feel free to opine on them really):
- Tables and conveyor belts now stop turf slowdown, much like catwalks,
as I imagine people walking on them are not really touching the floor.
(I'd include protection against lava too... until they melt, but that'd
mean finding a way to have these objects burn in the first place, and
lava code is still stupid despite a years old refactor I did)
- Tables also stop slippery turfs from slipping (bananas, soaps etc.
still apply). I wish there were a way to make some objects slippery by
coating them in water vapor or splashing water/lube, but that's outside
the scope of this PR.
- Fixed an edge case in which a mob standing on a lava turf would be
left permanently visually on fire if the lava is changed to another kind
of turf.
- Removed unused code from stone tiles.

I'm going to include these traits in that global list for admin-added
traits... tomorrow perhaps. 💤

Replacing some hard-coded mechanics with easier to use traits and an
element, which I also need for the submerge element PR.

🆑
refactor: Replaced hardcoded "safeties" for lava, chasms and ignoring
turf slowdowns on catwalks with traits.
balance: much like catwalks, tables and conveyors also disable turf
slowdowns.
balance: slippery turfs won't slip you when walking on a table.
fix: Fixed an edge case in which a mob standing on a lava turf would be
left visually but permanently on fire if the lava is changed to another
kind of turf.
/🆑

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2023-07-18 00:06:04 -04:00
Bloop
b674e72ef1 [MISSED MIRROR] Macros multi-z code, removes the false premise of manual offsets (#76248) (#22531)
* Macros multi-z code, removes the false premise of manual offsets (#76248)

## About The Pull Request

[Removes the pretense of relative multiz
levels](0293fdc2bd)

Our multiz system does not support having a z level that is only
connected one way, or which goes down backwards or anything like that.

That's a fiction of the trait system, the actual backend has never
really supported this.

This pr removes the assumptions we were making backend around this, and
uses that to save cpu time.

I am also converting multiz_levels from an assoc list to a pure one,
which saves significantly on access times and cleans up the code
somewhat.

Also I'm making the get_below/get_above procs into macros, for the sake
of cpu time.

[Converts the starlight disease to use BYOND's directional defines
instead of our
own](7d698f02d9)

To some extent spurred on by
https://github.com/DaedalusDock/daedalusdock/pull/298, tho it was known
before

## Why It's Good For The Game

Faster multiz code, faster init, etc etc etc

* modular files how very dare you

---------

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2023-07-18 02:28:15 +00:00
GoldenAlpharex
db83be17da [MANUAL MIRROR] SPECIES NUKING 2023: Head flags 2: Electric Boogaloo (#76298) [MDB IGNORE] (#22506)
SPECIES NUKING 2023: Head flags 2: Electric Boogaloo (#76298)

Continues the work I started on
https://github.com/tgstation/tgstation/pull/76074
Fixes https://github.com/tgstation/tgstation/issues/73782

Implements a bunch of wrapper procs for hair style, facial hair style,
etc etc the whole nine yards.
Fixes many issues, especially with gradients because I did sloppy tired
code that didn't work there.
Makes head/get_limb_icon() not a disgusting mess (well, at least makes
it less of a disgusting mess).

Actually makes hair and lips depend entirely on the bodypart.

🆑
refactor: Head rendering code has been updated significantly... Again.
Please report any issues with hair, facial hair, lipstick and such.
/🆑

Co-authored-by: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com>
2023-07-16 18:16:12 -04:00
SkyratBot
e70a2b31f1 [MIRROR] Signalizes an AI card thing [MDB IGNORE] (#22507)
* Signalizes an AI card thing (#76869)

## About The Pull Request

Changes this code to be signalized on AI cards

76bddbd903/code/modules/mob/living/silicon/ai/death.dm (L44-L49)

Minor code improvements as well (Moving the sleep out from flushing into
its own async proc)

## Why It's Good For The Game

Cringe code

## Changelog

🆑 Melbert
code: AI cards should react more snap-ily to having their occupant
perish
/🆑

* Signalizes an AI card thing

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2023-07-16 16:42:23 -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
SkyratBot
0a03e8a2a7 [MIRROR] Machine list is now stored in SSmachines | Remove excessive use of global lists for specific machine types [MDB IGNORE] (#22481)
* Machine list is now stored in SSmachines | Remove excessive use of global lists for specific machine types

* Resolve merge conflicts

* Modular adjustments

* destroy this double return on destroy

---------

Co-authored-by: Zephyr <12817816+ZephyrTFA@users.noreply.github.com>
Co-authored-by: Giz <vinylspiders@gmail.com>
2023-07-15 22:51:23 -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
SkyratBot
fd2c6fb35b [MIRROR] Adds a new heavy weight space pirate variant: The space IRS! [MDB IGNORE] (#22365)
* Adds a new heavy weight space pirate variant: The space IRS!

* Fix merge conflicts, UpdatePaths

* Fixes some path changes

* Updates icon files, adds a new sprite for breacher slug box illustration

* Removes some skyrat edits and puts them in modular overrides instead

---------

Co-authored-by: Singul0 <127663818+Singul0@users.noreply.github.com>
Co-authored-by: Giz <vinylspiders@gmail.com>
2023-07-15 03:39:23 -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
Pinta
42134eeeb5 [Mirror Mistake] Fixes Warden's bag not showing up inside of warden's locker (#22435)
Update security.dm
2023-07-14 01:15:29 -04:00
SkyratBot
7b4b687157 [MIRROR] Allows players to rename the skeleton model [MDB IGNORE] (#22431)
* Allows players to rename the skeleton model (#76776)

Allows players to change the name and description of the skeleton model
using a pen.

* Allows players to rename the skeleton model

---------

Co-authored-by: Vladin Heir <44104681+VladinXXV@users.noreply.github.com>
2023-07-14 03:42:51 +00:00
SkyratBot
35e28a5b4a [MIRROR] Goliath basic mob [MDB IGNORE] (#22412)
* Goliath basic mob (#76754)

## About The Pull Request

Converts Goliaths to the basic mob framework and gives them some new
moves because I can't leave things well enough alone.
I am planning on touching all the lavaland fauna and then maybe even the
icebox ones if I haven't got bored. The Golaith is the first because it
is iconic.

https://www.youtube.com/watch?v=JNcKvMwT4-Q
Here's me getting killed by one as a demonstration. Despite my poor
performance I would contend that they aren't a _lot_ more dangerous, but
they are a little more dangerous.

The chief difference here is that they have two new attacks which they
will only use in response to being attacked.
If fired at from range, they will target the attacker with a line of
tentacles (it doesn't track you, so is easily sidestepped).
If attacked in melee, they will surround _themselves_ with tentacles, on
a longer cooldown.

Something else you may notice in this video: I discovered that basic
mobs are actually _too smart_ to be Lavaland fauna.
Typically (unlike their old form) a mob on our new AI system is smart
enough to attack someone _the moment they come into range_ rather than
only checking on predictable ticks, which would make using the Crusher
an essentially unviable prospect.
To counteract this, Goliaths now have a delayed attack component which
gives you a visual warning and short duration to get out of range before
they swing at you. I will probably put this on all mining fauna that get
reworked, it wouldn't be a terrible thing to put on other mobs to be
honest.

Other changes: The goliath stun is now a status effect with _buckles_
you to the tentacle as if grabbed, as well as its previous effects.
While this seems purely worse, any nearby helpers can now help-click on
you to instantly remove the debuff.
Experiencing the effect of a Lobstrosity Rush Gland makes you immune to
being grabbed by tentacles and an implanted one will automatically
trigger and free you if you are hit, and the explosive effect of
Brimdust also causes the tentacle to retract (although you'd need to
take damage for this to happen). Using the tools of the land, you can
make these creatures less threatening.

The ability for a Goliath to chain-apply the ability has now also been
reduced, it won't refresh its duration if you are hit when already
buckled.

When not occupied hounding miners, Goliaths will intermittently dig up
the asteroid sand and eat any worms that this produces.
I also made some new sprites for riding a Goliath because they've been
broken since the Lavaland mob update and also kind of were ugly before
then anyway:

![image](https://github.com/tgstation/tgstation/assets/7483112/90580403-d82f-4c29-b3e1-6c462e01edda)

Other code changes:
- I made an element which only lets an attached object move every x
seconds. This is because Goliaths are far too slow to use the speed
system (the glide just looks bugged as hell) but one thing I am invested
in when converting these is to make sure that they share the same
behaviour when player or AI controlled. This is disabled while you're
riding them because it was interminably slow.
- The Goliath tentacle trail uses a supertype object now shared with the
Meteor Heart which did something kind of similar.

## Why It's Good For The Game

It begins the process of moving one of our larger subsets of NPCs onto
the newer framework for NPC behaviour.
It adds a little bit more life to an iconic but slightly uninteresting
foe which mostly just walked at you slowly.
This PR contains a few components I expect to apply more widely to other
mobs in the future.

## Changelog

🆑
refactor: Goliaths now use the Basic Mob framework, please report any
unusual behaviour.
add: Goliaths learned a couple of new attacks which they will use in
self-defence.
balance: Help-clicking a miner grabbed by Goliath tentacles will
immediately free them, as will the effect of several items you can
scavenge from around Lavaland.
image: New sprites for the Goliath saddle.
/🆑

* Goliath basic mob

* Update ash_rituals.dm

* fixes icon diff

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
Co-authored-by: Pinta <68373373+softcerv@users.noreply.github.com>
Co-authored-by: Giz <vinylspiders@gmail.com>
2023-07-14 03:10:50 +00: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
SkyratBot
a9ec5785cd [MIRROR] Fixes a runtime where deployable turrets were spawning projectiles with no source [MDB IGNORE] (#22416)
* Fixes a runtime where deployable turrets were spawning projectiles with no source (#76693)

## About The Pull Request

Title.
## Why It's Good For The Game

Runtimes bad.
## Changelog
🆑
fix: Deployable turrets no longer runtime when firing
/🆑

* Fixes a runtime where deployable turrets were spawning projectiles with no source

---------

Co-authored-by: nikothedude <59709059+nikothedude@users.noreply.github.com>
2023-07-13 01:37:19 +00:00
SkyratBot
6396947e2d [MIRROR] Roller bed inhand sprite [MDB IGNORE] (#22408)
* Roller bed inhand sprite (#76761)

* Roller bed inhand sprite

---------

Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
2023-07-12 16:13:56 -07:00
SkyratBot
ee495653f8 [MIRROR] Puts garment bag in wardens locker as should [MDB IGNORE] (#22356)
* Gives Warden their own Garment Bag.

* Puts garment bag in wardens locker as should

* skyrat edits

* Merge conflict

---------

Co-authored-by: DATAxPUNGED <44149906+DATA-xPUNGED@users.noreply.github.com>
Co-authored-by: Helg2 <93882977+Helg2@users.noreply.github.com>
Co-authored-by: Pinta <68373373+softcerv@users.noreply.github.com>
Co-authored-by: Giz <vinylspiders@gmail.com>
2023-07-12 19:25:28 +00:00
SkyratBot
0e9e5b6c8e [MIRROR] makes morgue units not hold ghosts [MDB IGNORE] (#22342)
* makes morgue units not hold ghosts (#76685)

## About The Pull Request

makes them unable to hold any /mob/dead

## Why It's Good For The Game

Fixes #76632

## Changelog
🆑
fix: morgue units can no longer hold ghosts
/🆑

* makes morgue units not hold ghosts

---------

Co-authored-by: jimmyl <70376633+mc-oofert@users.noreply.github.com>
2023-07-12 11:28:06 -04:00
SkyratBot
fcb8f643a9 [MIRROR] Mini Fridges now have a grimy subtype, can go over tables, and start off anchored. [MDB IGNORE] (#22306)
* Mini Fridges now have a grimy subtype, can go over tables, and start off anchored. (#76517)

## About The Pull Request

/obj/structure/closet/mini_fridge is now a clean nice one, which only
spawns beverages and does not have that cockroach reference in the
description, and starts off anchored. now
/obj/structure/closet/mini_fridge/grimy works like the old mini-fridge,
with syndicake, moldy bread, and now the chance of an ACTUAL cockroach.
I've replaced them on maps according to each one's needs, So, as an
example, Northstar gets a regular one (it var edited it before) while
tram maints get the grimy subtype.
mini-fridges now can properly go over tables, so you don't have to
deconstruct said table to put it on top again.
## Why It's Good For The Game

I've found the need for a nice subtype while doing a ruin, and so has a
few other mappers apparently, as northstar had a var edited variant. The
fact that it couldn't go over tables and started off unanchored was
annoying on tram and icebox, where it is present on the kitchen and you
could easily push it to the ground and suffer.
## Changelog
🆑
qol: It has been issued brand new mini-fridges for our active stations,
Featuring more booze and less moldy pizza!
/🆑

* Mini Fridges now have a grimy subtype, can go over tables, and start off anchored.

---------

Co-authored-by: DATAxPUNGED <44149906+DATA-xPUNGED@users.noreply.github.com>
Co-authored-by: Giz <vinylspiders@gmail.com>
2023-07-12 12:43:09 +00:00
SkyratBot
25c40578df [MIRROR] Walking on conveyors, catwalks and tables no longer plays the footstep sound of the turf, and have theirs. [MDB IGNORE] (#22242)
* Walking on conveyors, catwalks and tables no longer plays the footstep sound of the turf, and have theirs. (#76391)

## About The Pull Request
Adds a footstep_override element to the game, that allows object to do
what it reads on the tin.
Only conveyor belts, catwalks and tables use it for now.

## Why It's Good For The Game
Consistency. If you're walking on a table or catwalk, the sound of shoes
trudging on snow or lava shouldn't be played. Tested.

## Changelog

🆑
sound: Walking on conveyors, catwalks and tables no longer plays the
footstep sound of the turf. They have theirs.
/🆑

* Walking on conveyors, catwalks and tables no longer plays the footstep sound of the turf, and have theirs.

---------

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
Co-authored-by: Bloop <vinylspiders@gmail.com>
2023-07-12 00:52:01 -04:00
SkyratBot
ebbf333b9e [MIRROR] Removes excess ID boxes from the HoP's office and adds silver IDs to their locker. [MDB IGNORE] (#22305)
* Removes excess ID boxes from the HoP's office and adds silver IDs to their locker. (#76448)

## About The Pull Request

Every ID, silver ID, and PDA box has been removed from the maps. You can
now only find ID boxes on the HoP's locker and PDAs must be bought from
the tech vendor. Said locker also had two instances of ID boxes, so i've
swapped one of them for the silver ID box
## Why It's Good For The Game

tram had, in total, 5 ID boxes. That's *35 IDs in total.* No one is ever
gonna lose that much, and having 7 is more than enough. If a situation
happens where you somehow need more, you can still buy it on the tech
vendor AND on cargo. I realized how many boxes the HoP had on the other
PR
## Changelog
🆑
del: Removed excess ID boxes on HoP's office
/🆑

* Removes excess ID boxes from the HoP's office and adds silver IDs to their locker.

---------

Co-authored-by: DATAxPUNGED <44149906+DATA-xPUNGED@users.noreply.github.com>
2023-07-11 20:40:08 -04:00
SkyratBot
b0e55b6857 [MIRROR] Janitor balloon alerts [MDB IGNORE] (#22087)
* Janitor balloon alerts

* Skyrat edits for liquid system

---------

Co-authored-by: Lufferly <40921881+Lufferly@users.noreply.github.com>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
2023-07-11 15:57:18 -05:00
SkyratBot
881fae88ad [MIRROR] Re-adds placing patients on surgical tables [MDB IGNORE] (#22319)
* Re-adds placing patients on surgical tables (#76643)

## About The Pull Request
This was removed by #75840, as it had a conflict that made it so that
trying to unbuckle someone that was buckled to a table would try to
place them again instead. This redoes that, unbuckling if the person
you're pulling is already buckled to said table.
## Why It's Good For The Game
It feels a bit less friendly that your only options are being buckled to
a table or shoved onto a table. Also, buckling requires both mobs to be
beside the table, where placing only requires the placer to be, which
makes things a lot less awkward in cramped operating rooms.
## Changelog
🆑
fix: You can once again directly place patients on operating tables
/🆑

* Re-adds placing patients on surgical tables

---------

Co-authored-by: FlufflesTheDog <piecopresident@gmail.com>
2023-07-09 13:10:28 -07:00
SkyratBot
c1633912da [MIRROR] Surgical Tables XVIII: The Return: The Saga Continues (final)[1] [MDB IGNORE] (#22313)
Surgical Tables XVIII: The Return: The Saga Continues (final)[1]

Co-authored-by: Jacquerel <hnevard@gmail.com>
2023-07-09 11:13:14 -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
3eb4468771 [MIRROR] Fixes a xenomorph egg / facehugger hard delete [MDB IGNORE] (#22163)
* Fixes a xenomorph egg / facehugger hard delete (#76418)

## About The Pull Request

The only time `child` is `null`ed correctly is if the egg is deleted
without it hatching, otherwise the hugger will hard-del

![image](https://github.com/tgstation/tgstation/assets/51863163/275523f5-8ab6-4e18-8a46-3ff5785bc252)

* Fixes a xenomorph egg / facehugger hard delete

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2023-07-03 17:52:52 -04:00
SkyratBot
588e8adb19 [MIRROR] urinal cake is decay proof [MDB IGNORE] (#22202)
* urinal cake is decay proof (#76475)

Urinal cake is not actual food and even the mold dont want it

fixes: #76465

🆑
fix: urinal cakes wont decay anymore
/🆑

* urinal cake is decay proof

---------

Co-authored-by: Time-Green <7501474+Time-Green@users.noreply.github.com>
2023-07-03 17:16:32 -04:00
SkyratBot
d3347d7fab [MIRROR] Adds an element for noisy movement (wheelchairs, office chairs, trashcarts etc. etc.) [MDB IGNORE] (#22172)
* Adds an element for noisy movement (wheelchairs, office chairs, trashcarts etc. etc.) (#76378)

## About The Pull Request
Converts generic, copypasted behavior into an element.

## Why It's Good For The Game
I'd rather not have someone just copypaste the old thing, since there're
a few more things to take into account now than just whether the item
has gravity, and if that ever has to change, we will only have to modify
one line than several.

## Changelog

🆑
fix: Fixed the office chair being silent. My bad.
/🆑

* Adds an element for noisy movement (wheelchairs, office chairs, trashcarts etc. etc.)

---------

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2023-07-01 14:15:34 -04:00
SkyratBot
2a94dfae6e [MIRROR] Makes you lie down when buckled to surgery tables, removes need for restraints [MDB IGNORE] (#22175)
* Makes you lie down when buckled to surgery tables, removes need for restraints (#75840)

## About The Pull Request

Makes you lie down when you are buckled to a surgery table, and also
removes the need to be cuffed in order to be buckled to one. Also
_technically_ makes surgery tables no longer climbable, but you can
still get on top of one by just buckling yourself to it and then
unbuckling.

## Why It's Good For The Game

This is a quality of life change for medbay (and anyone doing surgery).
It's kind of dumb that people stand up when buckled to surgery tables,
this makes you no longer have to ask them to lie down, especially nice
for dealing with patients who may still be AFK after getting out of
crit.

This also makes surgery a little easier on unwilling victims, no longer
requiring you use a regular/roller bed or crit them/keep them stunned.

## Changelog

🆑
qol: people now lie down when buckled to surgery tables, and you no
longer need cuffs to buckle someone to a surgery table
/🆑

* Makes you lie down when buckled to surgery tables, removes need for restraints

---------

Co-authored-by: JupiterJaeden <48777952+JupiterJaeden@users.noreply.github.com>
2023-07-01 14:08:56 -04:00
SkyratBot
fd3b832bb8 [MIRROR] Makes decals only caught on mapload & removes turf_loc_check [MDB IGNORE] (#22051)
* Makes decals only caught on mapload & removes turf_loc_check (#76130)

Theres one player-facing change in this PR and it's that I removed human
gibs from being valid in space turfs, making it more consistent with the
other gib decals.

I've cleaned up many instances of decals spawning in bad turfs on
mapload in https://github.com/tgstation/tgstation/pull/75189, but making
it error anytime in-game a decal is put over an invalid turf is bad as
it punishes contributors for not optimizing their decals properly.
This changes it so it only errors if it's on mapload, unit testing or
not.

I've also removed ``turf_loc_check`` and replaced instances of it with
overwriting ``NeverShouldHaveComeHere``, which gives us greater control
of where decals can be placed.
This let me remove 2 subtypes that were made to have decals in specific
places (which then got placed elsewhere, ruining it all).

Mappers are still able to set decals to be placed anywhere, they just
need to add it as a valid turf for that decal.

* Makes decals only caught on mapload & removes turf_loc_check

---------

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
2023-06-24 16:06:58 -07:00
Tom
157842ebcc Misc. multi-tile airlock fixes and improvements (#22017)
* updates multitile airlocks to not close on you

* I forgot to do the of hehabgggg

* also fixes the density of the assemblies cus uhhhh yolo

* generalisation and some other stuff I forgot

* deletes this other bit cus it doesnt seem to make a difference
2023-06-24 02:48:36 -07:00
SkyratBot
c004527c46 [MIRROR] Enhanced delam/tram counter [MDB IGNORE] (#22019)
* Enhanced delam/tram counter

* Update persistence.dm

* Update VoidRaptor.dmm

---------

Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
2023-06-23 16:01:53 -07:00
Hatterhat
a098bd21f8 Doohickey Sidequest - adds an Archangel rifle parts kit for funsies (#21799)
* the arch doohickey

* guy who changed the stock on his sportiv yesterday

---------

Co-authored-by: Hatterhat <Hatterhat@users.noreply.github.com>
2023-06-23 14:18:19 +01:00
SkyratBot
068089fb52 [MIRROR] Standardize Welder Fuel Usage [MDB IGNORE] (#21943)
* Standardize Welder Fuel Usage (#76021)

Remove welder fuel usage from all actions except attacking and leaving
it on
most welder tasks require a minimum of 1u of fuel, some longer tasks
require a minimum of 2 or 3u welders now drain 1u every 5 seconds
they're active
## About The Pull Request
Prior to this PR welder fuel usage was random, a lot of tasks didn't use
any welder fuel and welders were basically near infinite so long as you
didn't use them for combat, it took 26 seconds of activity to drain 1u
of fuel, that means an emergency welder alone could run for 5 minutes
straight before needing a refuel

After this PR all welders will drain 1u every 5 seconds instead of every
26 seconds, but welding objects won't require extra fuel anymore, making
the fuel usage much more consistent.

resolves #55018
## Why It's Good For The Game
Actually makes fuel tanks useful and relevant without making it
obnoxious to do repetitive quick tasks like turn rods into plates,
there's actually a reason to upgrade off the emergency welder now since
it lasts 50 seconds rather than 5 minutes
## Changelog
🆑
qol: Welders now have a more consistent fuel usage
/🆑

* Standardize Welder Fuel Usage

---------

Co-authored-by: Couls <coul422@gmail.com>
2023-06-20 09:39:49 -07:00
SkyratBot
3d4b8e19ba [MIRROR] Fix further/MetaStation [MDB IGNORE] (#21944)
* Fix further/MetaStation (#76158)

## About The Pull Request

Typo fixes. Further and fixes MetaStation's default name to match the
JSON.

## Changelog

🆑 LT3
spellcheck: Fixed a few typos
/🆑

* Fix further/MetaStation

---------

Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
2023-06-20 09:32:47 -07:00
SkyratBot
a863e7787d [MIRROR] Unit tests now catch decals in walls/space [MDB IGNORE] (#21862)
* Unit tests now catch decals in walls/space

* the fuck

* vr

* vr

---------

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
Co-authored-by: Jolly-66 <70232195+Jolly-66@users.noreply.github.com>
2023-06-20 10:28:46 -04:00
SkyratBot
7c3a6198a6 [MIRROR] Removes old palm tree and coconut overlay effects [MDB IGNORE] (#21820)
* Removes old palm tree and coconut overlay effects (#75966)

## About The Pull Request

Title.
## Why It's Good For The Game

Fixes https://github.com/tgstation/tgstation/issues/73827
## Changelog
🆑
fix: Trees and Coconuts are no longer immune to singularities.
/🆑

* Removes old palm tree and coconut overlay effects

---------

Co-authored-by: Zephyr <12817816+ZephyrTFA@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
Co-authored-by: Jolly-66 <70232195+Jolly-66@users.noreply.github.com>
2023-06-20 12:47:49 +00:00
SkyratBot
020a6d57ed [MIRROR] Fix logging for tabling and disposal shoving [MDB IGNORE] (#21828)
* Fix logging for tabling and disposal shoving (#76017)

## About The Pull Request
fixes #69837
## Why It's Good For The Game
accurate combat logs
## Changelog
🆑
admin: fix combat logs for tabling and disposal shoving
/🆑

* Fix logging for tabling and disposal shoving

---------

Co-authored-by: Couls <coul422@gmail.com>
2023-06-18 14:51:58 +01: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
SkyratBot
8b7bdc4959 [MIRROR] Shuttle events [MDB IGNORE] (#21917)
Shuttle events

Co-authored-by: Time-Green <timkoster1@hotmail.com>
Co-authored-by: ghost sheep <sheepwiththemask@gmail.com>
2023-06-18 15:02:04 +02:00
SkyratBot
372fb9ab93 [MIRROR] Cannot use departmental budget cards as source of credit withdraw [MDB IGNORE] (#21915)
* Cannot use departmental budget cards as source of credit withdraw (#76113)

Currently you can put cargo's budget card into your PDA, go into NT Pay
and send over the budget to any pay token you want including yours. This
just adds a check to ensure you aren't using that kind of card as
withdrawal source.

* Cannot use departmental budget cards as source of credit withdraw

---------

Co-authored-by: Pepsilawn <reisenrui@gmail.com>
2023-06-18 13:44:19 +01:00
SkyratBot
07c97d1ced [MIRROR] Proper broken tiles [MDB IGNORE] (#21727)
* Proper broken tiles (#75623)

![before-export](https://github.com/tgstation/tgstation/assets/3625094/505eaed3-b429-45c4-ab65-6c92d1c9e20e)

## About The Pull Request

The current broken tiles have some visual issues:

- There is an ambient occlusion shade when it touches normal tile
- It has a layer higher than it should be which leads to things that are
normally above the floor layer, render below it. Such as atmos
machinery, cleanable overlays, etc.

This PR makes the render on a proper layer and work like a partially
destroyed floor tile that can be reclaimed with crowbar.

Also, the cleanables are now on FLOOR_CLEAN_LAYER to make dirt appear
above catwalks and these new tiles.

And the flat dirt now has 4 variants of sprites, while dust uses the old
dirt sprite. It seems like dust was just dirt with different description
before.

## Why It's Good For The Game

A broken tiling with no visual bugs and proper floor-like logic.

## Changelog

🆑 MTandi, Borbop
fix: Dust now has dust icon, instead of dirt icon. Dust on all maps
replaced with dirt
image: Flat dirt now picks from 4 new sprites
refactor: Made broken tiling work more like tiling and have
corresponding visuals. Added directional mapping variants.
fix: Cleanables now use FLOOR_CLEAN_LAYER to make sure that trash is
visible above catwalks
/🆑

* Proper broken tiles

* Update north_star.dmm

* Update north_star.dmm

---------

Co-authored-by: Andrew <mt.forspam@gmail.com>
Co-authored-by: Jolly-66 <70232195+Jolly-66@users.noreply.github.com>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
2023-06-14 13:02:11 -07:00
jjpark-kb
16dbffd4da removal of the skirty (#21782) 2023-06-11 20:40:15 -07:00
SkyratBot
ff12ce83f4 [MIRROR] Late adjustments to my previous move_loop PR. [NO GBP] [MDB IGNORE] (#21730)
* Late adjustments to my previous move_loop PR. [NO GBP] (#75778)

## About The Pull Request
Lemon guy was a bit too late in reviewing #75732 because it got already
merged by someone else, and I too hadn't managed to make some adjustment
to that PR in time.

This PR applies suggested changes, turns a simple proc into a macro, and
makes it so that also waddling, squeaky shoes and swivel chair sounds
don't running when moved by conveyor belt.

This doesn't stop squeaking from happening when other
conveyor-belt-moved objects or mobs cross its tile. That'd be hacky and
I'm not here to fight sfx-spamming machines.

## Why It's Good For The Game
These are changes that should have been included in #75732 but couldn't.
See that PR for the general idea.

## Changelog

🆑
fix: waddling, squeaky shoes and swivel chair sound effects no longer
run when moved by conveyor belt.
/🆑

---------

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@ users.noreply.github.com>

* Late adjustments to my previous move_loop PR. [NO GBP]

---------

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@ users.noreply.github.com>
2023-06-10 19:27:42 -07:00
SkyratBot
8eca71d309 [MIRROR] Fixes xeno resin floor layer [MDB IGNORE] (#21717)
* Fixes xeno resin floor layer (#75888)

## About The Pull Request

Changes resin floor to MID_TURF_LAYER (turf decals are not shown!

## Why It's Good For The Game

Fixes #75876

## Changelog
🆑
fix: xeno resin floor layer
/🆑

* Fixes xeno resin floor layer

---------

Co-authored-by: jimmyl <70376633+mc-oofert@users.noreply.github.com>
2023-06-10 19:08:44 -07:00
SkyratBot
3cfa7121e5 [MIRROR] Trash bin sprite [MDB IGNORE] (#21610)
* Trash bin sprite (#75612)

* Trash bin sprite

---------

Co-authored-by: Andrew <mt.forspam@gmail.com>
Co-authored-by: ghost sheep <sheepwiththemask@gmail.com>
2023-06-07 13:38:21 +00:00
SkyratBot
18fe422bf6 [MIRROR] makes snow legions from portals drop skeletons (like tendril legions) [MDB IGNORE] (#21589)
* makes snow legions from portals drop skeletons (like tendril legions) (#75707)

## About The Pull Request
Exactly what it says on the tin (snow legions only dropping ashen
skeletons, like tendril legions).

Also changes the name of the "fromtendril" variable to "from_spawner",
and comments it. Not sure if that warrants a changelong comment, but
I'll go ahead and assume no.

## Why It's Good For The Game
being able to farm snow legion portals for an endless tide of bodies
and/or equipment is a bit weird. also puts it a bit more in line with
the legions of Lavaland

## Changelog

🆑
balance: The source of the demonic portals that endlessly deposits snow
legions onto the Icemoon no longer preserves the bodies nor gear of the
damned (read: demon portal snow legions now only drop skeletons).
/🆑

---------

Co-authored-by: Hatterhat <Hatterhat@ users.noreply.github.com>

* makes snow legions from portals drop skeletons (like tendril legions)

---------

Co-authored-by: Hatterhat <31829017+Hatterhat@users.noreply.github.com>
Co-authored-by: Hatterhat <Hatterhat@ users.noreply.github.com>
2023-06-03 18:37:21 -07:00
SkyratBot
f7d35bc80d [MIRROR] Stops shields getting broken by pillows and disablers. [MDB IGNORE] (#21588)
* Stops shields getting broken by pillows and disablers. (#75759)

## About The Pull Request
See the title. Doing so by adding a new arg for damage type to
`check_shields()` and `hit_reaction()`. The other way would had involved
a couple istype checks for item or projectile damage type, but this is a
longer term solution and can tackle more than just that.

## Why It's Good For The Game
Fixes #74876.

## Changelog

🆑
fix: Stops shields getting broken by pillows and disablers.
/🆑

* Stops shields getting broken by pillows and disablers.

---------

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2023-06-02 21:36:53 -07:00
SkyratBot
af5e9e1f7b [MIRROR] Wowie! Crates! [MDB IGNORE] (#21594)
* Wowie! Crates! (#75785)

Brand new crate sprites done by Viro, AKA Axietheaxolotl.

* Wowie! Crates!

---------

Co-authored-by: axietheaxolotl <86872535+axietheaxolotl@users.noreply.github.com>
2023-06-02 21:36:05 -07:00
SkyratBot
d684296092 [MIRROR] You can now sweep garbage into open trash bins (the crate subtype), not just disposal bins. [MDB IGNORE] (#21557)
* You can now sweep garbage into open trash bins (the crate subtype), not just disposal bins. (#75734)

## About The Pull Request
Re-read the title. I had to add a dcs signal to do this.

## Why It's Good For The Game
Empowering trash bins for the sake of consistency.

## Changelog

🆑
balance: You can now sweep garbage into open trash bins (the crate
subtype).
/🆑

* You can now sweep garbage into open trash bins (the crate subtype), not just disposal bins.

---------

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2023-06-01 16:22:39 -07:00
SkyratBot
30cfca6085 [MIRROR] Fixes grilles electrocuting or tesla-ing when there's a floor between the grille and the cable [MDB IGNORE] (#21529)
* Fixes grilles electrocuting or tesla-ing when there's a floor between the grille and the cable (#75703)

## About The Pull Request

Stops grilles from electrocuting or tesla-ing when there's a floor
between the grille and the cable.

## Why It's Good For The Game

Fixes #60541

## Changelog
🆑 Licks-the-Crystal
fix: Stops grilles from electrocuting or tesla-ing when there's a floor
between the grille and the cable.
/🆑

* Fixes grilles electrocuting or tesla-ing when there's a floor between the grille and the cable

---------

Co-authored-by: zeckle/licks-the-crystal <79835169+mikederkan@users.noreply.github.com>
2023-05-31 23:24:16 +12:00