Commit Graph

843 Commits

Author SHA1 Message Date
SkyratBot
3d5138261f [MIRROR] The great Spectral Blade permanent ghost trap unGBJing - 10/10 ghosts currently hate this blade (#622)
* The great Spectral Blade permanent ghost trap unGBJing - 10/10 ghosts currently hate this blade (#53324)

Fixes a bug caused by transferring an orbiter component to a parent where one already exists. Causing the old original orbiter to update the added ghosts positions when the parent moves, but not allowing them to ever break orbit and also setting the ref to null for the component on the whole due to old signals it would seem.

Also tweaks the blades use in hand ghost notification message to remove the redundant (Orbit) link.

* The great Spectral Blade permanent ghost trap unGBJing - 10/10 ghosts currently hate this blade

Co-authored-by: Wayland-Smithy <64715958+Wayland-Smithy@users.noreply.github.com>
2020-09-02 03:16:39 +02:00
SkyratBot
53788ced26 [MIRROR] Adds TCG Decks in order to play with them like a TCG. (#594)
* Adds TCG Decks in order to play with them like a TCG. (#53200)

* Card Decks n shuffling.

* the "crackling with sexual energy" update
}
Kept you waiting, hunh?
This adds a new multi-faceted object to the game, the TCG Card Pile. Using any 2 cards together on each other will create a pile, and the first card in the pile will determine if the card pile is face-up, or face-down. Depending on the orientation of the card pile, you'll draw cards out of it in the orientation. So, a "deck" card pile would be flipped face down, and would allow you to draw cards out of it also face down, and vis versa.
Decks can be renamed with a pen, and use a radial menu in order to enable quick action on the Trading Card game battlefield.
image

    Draw allows you to draw a single card from the deck, again based on the orientation of the cards used to build the deck.
    Shuffle calls the shuffle() proc on the deck, and (should) randomize the order of the cards in the deck for use.
    Pick up puts the deck into your hands instead of the nonsense dragging required with regular playing cards.
    Flip flips the orientation of the cards in the deck, turning a face up pile into a facedown pile, and a facedown, faceup. Also, calls reverseRange() on the contents of the deck, which should put the bottom of the deck on top, and vis verse, ALSO enabling you to put cards on the bottom or the top of your deck easily.

Card piles also operate with a custom storage component, so you can search for cards in your deck if need be, but also handle edge cases like when you only have 1 card in a pile left, or when you dump out a deck of cards like you would a bag.

This basically adds in more sane hands, more sane decks and discard piles, and a massive QOL update to the trading card game to make it actually playable (once potato actually puts the card stats and effects on the cards themselves.)

* Adds TCG Decks in order to play with them like a TCG.

Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
2020-09-02 02:50:47 +02:00
SkyratBot
24f7e8fff6 [MIRROR] Converted check_obscured_slots() output to bitfield instead of list (#586)
* Converted check_obscured_slots() output to bitfield instead of list (#53241)

* Converted check_obscured_slots() output to bitfield instead of list

Co-authored-by: Donkie <daniel.cf.hultgren@gmail.com>
2020-09-02 02:45:57 +02:00
SkyratBot
cd0d700a85 [MIRROR] Mecha refactor 2020 (#579)
* Mecha refactor 2020

* Update effects.dm

Co-authored-by: TiviPlus <57223640+TiviPlus@users.noreply.github.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-09-02 02:16:51 +02:00
SkyratBot
8177144397 [MIRROR] Bring back painting arbitrary objects with spray cans (#570)
* Bring back painting arbitrary objects with spray cans (#52936)

Brings back the behavior removed from #52186 with cleaner code.

Differences in the code:

    No more explicit type checks in the spray paint code, other than a broad isobj.
    Checking for dark colors is now based on luminosity, rather than unscientifically summing all the RGB components and checking an arbitrary number.
    Removes the paintable component. This was used on one item, and its behavior is replicated in the spray can.
    Instead of checking for windows specifically and changing opacity through there, atoms can now specify through init flags whether or not they allow dark colors. Windows set this flag.
    Adds a COMSIG_OBJ_PAINTED signal. Windows use this signal to dynamically update opacity, just like how they did before.

This was a fun cosmetic feature that I'm not sure anyone had a problem with. The original reason for removal seemed to be because of code quality, and not because of negatives about the feature.

Makes canvasses unpaintable

* Bring back painting arbitrary objects with spray cans

Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
2020-08-30 05:25:02 +02:00
SkyratBot
d247931b07 [MIRROR] Adds a food trash element (#574)
* Adds a food trash element (#53225)

adds a food trash element, for dumping trash when u eat food

unused now, needed for food refactor. spawns trash in your hands (or on the floor) when the food this is attached to is eaten.

* Adds a food trash element

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
2020-08-30 05:18:37 +02:00
SkyratBot
656ee54f39 [MIRROR] Refactors burgers to use components & auto-eating (#569)
* Refactors burgers to use components & auto-eating (#53224)

* Refactors burgers to use components & auto-eating

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
2020-08-30 05:13:44 +02:00
SkyratBot
ec09510459 Bools and returns super-pr (#53221) (#565)
Replaces like 70-80% of 0 and such, as a side effect cleaned up a bunch of returns
Edit: Most left out ones are in mecha which should be done in mecha refactor already
Oh my look how clean it is

Co-authored-by: TiviPlus <TiviPlus>
Co-authored-by: Couls <coul422@gmail.com>

Co-authored-by: TiviPlus <57223640+TiviPlus@users.noreply.github.com>
Co-authored-by: Couls <coul422@gmail.com>
2020-08-30 05:12:59 +02:00
SkyratBot
a35183463d [MIRROR] Waterworks: Plumbing enabled sinks, tanks, plant trays, and showers. (#562)
* Waterworks: Plumbing enabled sinks, tanks, plant trays, and showers. (#52865)

https://cdn.discordapp.com/attachments/326831214667235328/740812723956482118/2020-08-06_02-04-14.mp4
For everything in this PR working at the same time, watch this video!

Alright, from the top:
Sinks now need plumbing to pump out liquids.

All sinks now has a demand-only plumbing pipe face the opposite direction of the sink itself. A standard iron sink will hold 100 units of water, and must be constructed from a sink frame. To complete the frame, a new stock part, the water recycler must be applied to the frame. Once the sink is constructed, it will only hold those 100 units of water until new water is piped in.
This however doesn't extend just to water, as a result. Any reagent can be piped into the sink, and will be used 5 units at a time per use. This means water isn't just an infinite resource, and will need to be resupplied to the station if, somehow, you're using a metric ton of water somehow.
image
A basic sink setup with water being plumbed in.
Showers now need plumbing to wash you off.

Want to dispense reagents faster on your Patients Victims Friends Coworkers? Well, you may also construct a shower frame, in a similar fashion to a sink frame, and pipe in your own reagents into the loop. The shower drains reagents much faster than the shower, and also preforms vapor and touch reagent reactions, resulting in a constant stream of chemicals being processed. This can lead to horrible situations, like a chemical heater hooked up to a vat of cooking oil being pumped into a shower.
Additionally, showers will display the reagents they're pumping out visually based on the color of their chemical contents. As a result, dangerous or unique showers are going to look noticeably different if their contents are dangerous looking.
image
A safe shower.
image
A very unsafe shower.
Wait what was that bit about cooking oil?

So, reagent dispensers, like water/fuel tanks, Virus Food, Cooking Oil Vats, Pepperspray, and the like, can now be converted into a stationary tank of reagents by using a sheet of metal on it, allowing it to behave as a simple supply of their respective contents, and can be pumped into a plumbing network. This means rolling water tanks can be used to resupply sinks and showers, as well as allow for inventive uses of otherwise unused chemicals located all around the station. Pump welding fuel into a resupply line to fight a blob! Pump pepper spray into the dorms showers! Create a deep fryer shower! The possibilities are LIMITED (Because we have very few reagent dispensers)! Still, this will prevent sinks and showers from being completely unfix-able should all the water run out, as cargo can purchase many of these chemical tanks at will.
Hydroponics is now also plumbing enabled.

So there I was, thinking, have I gone mad? Is the barking I hear in my noggin my own dogs rattling and raging against the eternal ocean tide, or are these the hounds of tindalos come to finally rip me to shreds within the sea of causality?
The answer to this is quite simple: I added plumbing simple-demand components to hydroponics.
Now, the trays will accept a pumping input, which can provide the plants themselves a reagent input for their nutrients, and SHOULD (current not fixed yet) also contribute to refilling the trays water. As a check to this horrible decision, there are very few plumbing chems that don't suffer from some kind of downside if exclusively pumped into the trays, so this should be done delicately and with forethought applied, or you'll have a row of plants with dead stats because they OD'd on ammonia.
image
Holy damn why are you doing this

I'm thinking this pr is probably in need of some serious trimming and will probably be closed as a result of the need to atomize this down, but this way I can start to get some feedback and ideas on which aspects would be better suited towards the current design direction of plumbing/bio-chem/reagent heavy jobs. As far as I'm aware, this is all in accordance with the relevant design docs, but this way I'll know for sure 🤷‍♂️
To-do before being 100% sparkly and clean

Fix hydroponics trays adding water to the nutrient reagents slot (NOT A TRUE FIX, SEE COMMENTS BELOW PLEASE)
Make disconnected sinks/showers slowly regenerate water so that a stationwide plumbing net isn't required so Anturk doesn't snap my kneecaps off
Make water/fuel tanks use their snowflaked stationary tank sprites instead of the custom overlay version

    Yeet out the existing psudo-plumbing from hydroponics

Why It's Good For The Game

We've discussed adding plumbing into the game for forever now, and with all the new and tangentally related plumbing content we have, almost everything we have now perfectly enables servers to properly create a station-wide plumbing network.

Sinks and showers provide an infinite supply of water all shift long, and since they can be produced with any material, anywhere, practically for free, that was the first and foremost reason why I made this PR, to make water slightly more precious on station, to justify the 20+ water tanks mapped across every station. Plus, no more meatsink spam in the middle of the hallways.

Hydroponics has a built in feature that was intended to work similar to plumbing, before we had plumbing, for sharing resources/water, but it was pretty rough and is still exceptionally difficult to make look very pretty on live servers. By integrating them with actual plumbing pipes, this enables one step closer to integrating chemistry and botany to merge going forward, and give them an incentive to include each other in their supply chains each shift.

On the reagent tank conversion, That's just an interesting feature I felt the need for while testing everything else, and found pretty great success in. Being able to pipe in large supplies of a single reagent that ordinarily would just sit on a wall or in mait somewhere proved extra useful, and would be beneficial for refilling plumbing heavy areas like bathrooms/medbay, etc.

* Waterworks: Plumbing enabled sinks, tanks, plant trays, and showers.

Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
2020-08-29 20:34:23 +01:00
SkyratBot
f3a0fd3231 [MIRROR] Componentizes Food Storage (#561)
* Componentizes Food Storage (#53116)

Moves the food storage behavior on (formerly) bread, cheese wheels, and cakes from /food/snacks/store/ to a component.
This lets just about any food/edible thing be used for storing fun things like glass shards, which is pretty neat. Also helps work towards the food refactor.

* Componentizes Food Storage

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2020-08-29 20:32:58 +01:00
SkyratBot
0a2d016002 [MIRROR] Smooth Movement: Resurrection: Resurgence: Revengeance 4: The Return of Smooth Movement: Smooth Edition Director's Cut (#550)
* Smooth Movement: Resurrection: Resurgence: Revengeance 4: The Return of Smooth Movement: Smooth Edition Director's Cut (#52515)

Automatic glide size adjustment based on move delay.
Essentially a port of https://github.com/yogstation13/Yogstation/pull/8132 but that was mostly my code with some fixes.

Why again? well it turns out the recent byond fixes to glide size actually worked and solved the issues that were unsolvable.
https://file.house/0B3u.mp4
Glide size no longer incorrectly scales at fps, so it works as intended at any framerate with the only stuttering being normal byond suck stuttering.

* Smooth Movement: Resurrection: Resurgence: Revengeance 4: The Return of Smooth Movement: Smooth Edition Director's Cut

Co-authored-by: Rob Bailey <actioninja@gmail.com>
2020-08-29 20:27:18 +01:00
SkyratBot
d355e433d7 [MIRROR] Execution/gunpoint shots work properly with pellet clouds, buffs piercing wounds a bit (#541)
* Execution/gunpoint shots work properly with pellet clouds, buffs piercing wounds a bit (#52995)

Made a few changes to gunpoints and some related mechanics while tidying up and adding docs. Here's a quick list

-Execution (point blank help intent shot aimed at the mouth) and gunpoint shots now apply their bonuses to every pellet fired rather than only the first, generally making them gushier. They also buff wound power as well as damage
-You can no longer punch yourself while holding someone up to trigger the charged shot
-You can no longer purposely fail executions and gunpoints with pax or whatever to endlessly spike the damage in a loaded round
-Attacks with extremely high wounding power can now outright dismember limbs regardless of mangled status. The threshold is high enough that it mostly applies for admin edited weapons or execution shots with shotguns (or people with the frail quirk!)
-Piercing wounds make further wounds a bit easier to apply to give them a bit more power
-Hellguns now cost 2250 credits instead of 2000 to make them a bit harder for random crew to get
-Adds special bouncy L6 rounds for admins to use to bounce off anything and everything en-masse

Also as a minor note

Projectiles with no trajectory (meaning they were likely spawned in manually) now qdel themselves on bumping something, rather than runtiming helplessly

* Execution/gunpoint shots work properly with pellet clouds, buffs piercing wounds a bit

Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
2020-08-27 03:14:47 +02:00
SkyratBot
1331a5531d Fixes master, again (#539)
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-08-27 03:13:13 +02:00
SkyratBot
e6f770410a [MIRROR] Bloody feet update (#538)
* Bloody feet update (#53109)

Componentized the bloody feet feature.

* Hardsuits and other feet-covering clothing can now get bloody feet as well and spread gunk around.
* Bare feet can now get bloody as well and spread gunk around.
* Shoes/feet won't get bloody if something is covering them.
* Improved blood spreading behaviour. Previously, magic numbers were used in the blood pick up and drop off process. Now, when you step in blood, you and the floor share the blood volume. When you step on a non-bloody tile, you give away half of your shoe blood to the tile, and so on. This means the total blood volume always stays constant when moving around. * Blood doesn't appear out of thin air, nor get flushed to bluespace.
* Lowered footprint minimum opacity. Because it looks better, imo.
* Improved footprint exit/enter dirs.
* Improved footprint examine.
* Removed code for cult magic where a spell can suck up blood on your shoes. I'm pretty sure this code didn't work anyway. Implementing that for this new system would require a new signal and I just don't think it's worth it.

How can this game make you spend 20 hours on fucking spaceman footprints

Hardsuits will become "fully bloody" by just stepping in blood. This is a limitation of the current forensics system, as that is what is used to determine if an item is bloody or not. I'm aware of this but I don't think it fits to fix that in this PR.

cl
add: Footprints and bloody shoes major update. Hardsuits and bare feet can now get bloody as well. Improved blood spreading behaviour.
fix: Shoes will no longer get bloody while wearing something that covers them.
/cl

* Bloody feet update

Co-authored-by: Donkie <daniel.cf.hultgren@gmail.com>
2020-08-27 03:12:11 +02:00
SkyratBot
fb3d8baf27 [MIRROR] [Ready] Wedding Content! Crate with tuxedo, wedding dress, cummerbund, veil, and craftable bouquets (#534)
* [Ready] Wedding Content! Crate with tuxedo, wedding dress, cummerbund, veil, and craftable bouquets (#52733)

Adds wedding content.

* [Ready] Wedding Content! Crate with tuxedo, wedding dress, cummerbund, veil, and craftable bouquets

Co-authored-by: OnlineGirlfriend <50865623+OnlineGirlfriend@users.noreply.github.com>
2020-08-27 03:08:55 +02:00
SkyratBot
a5306924c3 [MIRROR] Makes reagent exposure methods bitflags (#527)
* Makes reagent exposure methods bitflags (#53164)

* Makes reagent exposure methods bitflags

Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
2020-08-26 02:37:07 +02:00
SkyratBot
dc3663a8d1 [MIRROR] Adds an action speed modifier system (#522)
* Adds an action speed modifier system (#53023)

* Adds an action speed modifier system

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
2020-08-26 01:40:42 +02:00
SkyratBot
7bbe8ec530 [MIRROR] [READY] Vatgrowing: Third time's the charm (#508)
* Merge pull request #53020 from Qustinnus/fatgrowing

[READY] Vatgrowing: Third time's the charm

* [READY] Vatgrowing: Third time's the charm

Co-authored-by: 81Denton <32391752+81Denton@users.noreply.github.com>
2020-08-25 01:36:10 +02:00
SkyratBot
f733bc21a8 [MIRROR] Mobility refactor and code cleanup - lacking appendages edition (#509)
* mobility refactor (#52929)

* Mobility refactor and code cleanup - lacking appendages edition

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-08-25 01:34:46 +02:00
SkyratBot
f88809d883 [MIRROR] Tackling now disables throwmode when you hit something + a few small buffs/changes (#504)
* Tackling now disables throwmode when you hit something + a few small buffs/changes (#53050)

* hugboxes tackling

* gorilla gloves a bit better

* update comments

* health update

* update

* less annoying doc

* Tackling now disables throwmode when you hit something + a few small buffs/changes

Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
2020-08-25 00:03:00 +02:00
SkyratBot
3bd294f26f [MIRROR] Defines damage flags. (Hopefully without 50+ commits) (#491)
* Defines damage flags. (#53158)

* Defines damage flags. (Hopefully without 50+ commits)

Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
2020-08-24 22:52:31 +02:00
SkyratBot
0b65cc596b [MIRROR] Overlay lighting component (#469)
* Overlay lighting component (#52413)

Sparks no longer lag, projectile beams move super smoothly, same with mobs and whatnot. This also allows for easy expansion into directional lights, field-of-view, wee-woo rotating lights or whatever.

It does have a downside: things right-clicked or checked through the alt+click tab will show the light overlay:


This is a BYOND limitation, very well worth it IMO.

🆑
add: Smooth movable lighting system implemented. Projectiles, sparks, thrown flashlights or moving mobs with lights should be much smoother and less laggy.
balance: Light sources no longer stack in range, though they still do in intensity.
/🆑

* Overlay lighting component

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-08-23 20:17:12 +02:00
SkyratBot
6da6b33009 [MIRROR] Food refactor part 1: Bread destruction and processable element (#447)
* Food refactor part 1: Bread destruction and processable element (#53047)

* Food refactor part 1: Bread destruction and processable element

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
2020-08-21 14:15:57 +01:00
SkyratBot
8c8df2d6e1 [MIRROR] Monkeys are now disarmed like humans (#439)
* Monkeys are now disarmed like humans (#53036)

Previously, monkey disarming was the old system of RNG stun/lose item. This PR makes disarming monkeys the same as disarming humans.

* Monkeys are now disarmed like humans

Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
2020-08-20 17:08:55 +01:00
SkyratBot
e65a48e91f [MIRROR] Adds SIGNAL_HANDLER and SIGNAL_HANDLER_DOES_SLEEP to prevent signal callbacks from blocking (#430)
* Adds SIGNAL_HANDLER and SIGNAL_HANDLER_DOES_SLEEP to prevent signal callbacks from blocking (#52761)

Adds SIGNAL_HANDLER, a macro that sets SHOULD_NOT_SLEEP(TRUE). This should ideally be required on all new signal callbacks.

Adds BLOCKING_SIGNAL_HANDLER, a macro that does nothing except symbolize "this is an older signal that didn't necessitate a code rewrite". It should not be allowed for new work.

This comes from discussion around #52735, which yields by calling input, and (though it sets the return type beforehand) will not properly return the flag to prevent attack from slapping.

To fix 60% of the yielding cases, WrapAdminProcCall no longer waits for another admin's proc call to finish. I'm not an admin, so I don't know how many behinds this has saved, but if this is problematic for admins I can just make it so that it lets you do it anyway. I'm not sure what the point of this babysitting was anyway.

Requested by @optimumtact.
Changelog

cl
admin: Calling a proc while another admin is calling one will no longer wait for the first to finish. You will simply just have to call it again.
/cl

* Adds SIGNAL_HANDLER and SIGNAL_HANDLER_DOES_SLEEP to prevent signal callbacks from blocking

Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
2020-08-19 20:17:28 -04:00
SkyratBot
d2778728a5 [MIRROR] Removes "availible" mispellings in codebase (#427)
* Removes "availible" mispellings in codebase (#53046)

* AVAILABLE

* Rebuild tgui

Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>

* Removes "availible" mispellings in codebase

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
2020-08-19 20:14:11 -04:00
SkyratBot
72c69368b6 [MIRROR] Opacity refactor (#405)
* Opacity refactor (#52881)

    Moves all opacity var manipulation to a proc which sends a signal.
    light_blocker element for movable opaque atoms made, which tracks its movement and updates the affected turfs for proper lighting updates.
    has_opaque_atom boolean replaced by the opacity_sources lazylist to keep track of the sources, and a directional_opacity which serves a similar function but also allows for future expansion with on-border opaque objects (not yet implemented).
    Some opacity-related sight procs optimized as a result of this.
    Some variables moved to the object's definition.
    A define or two added into the mix for clarity.
    Some code cleaning, like turning booleans into their defines.
    One file renamed for clarity.

Changelog

cl
balance: Mechs no longer block sight. It's a non-trivial cost for the lighting system with little to no gain.
/cl

* Opacity refactor

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-08-19 04:48:14 +02:00
SkyratBot
f424b7853e [MIRROR] cleanup the corpse file, cleanup stationstuck component, adds stationstuck to the reanimated skeleton (and zombie, why not) (#403)
* cleanup the corpse file, cleanup stationstuck component, adds stationstuck to the reanimated skeleton (and zombie, why not) (#52940)

all living spawners in corpse.dm are now in ghost_role_spawners. I hate having to search two different files to HOPEFULLY find which ghost role I need to edit.

Added a disclaimer about giving guidance or at least stationstuck component to stuff so this doesn't happen again

Cleaned up stationstuck. Man, I know I made this, but damn I did kind of a shit job

* cleanup the corpse file, cleanup stationstuck component, adds stationstuck to the reanimated skeleton (and zombie, why not)

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
2020-08-19 04:46:47 +02:00
SkyratBot
b4fcb9dd32 [MIRROR] Fix runtime with CANT_WOUND weapons that use pellet_cloud (#391)
* Fix runtime with CANT_WOUND weapons that use pellet_cloud (#53001)

In /datum/component/pellet_cloud/proc/pellet_hit if the projectile's wound_bonus is CANT_WOUND, then wound_info_by_part[hit_part] never gets a value set.

This causes an issue in /datum/component/pellet_cloud/proc/finalize() where it assumes that wound_info_by_part[hit_part] has always been set to a list(x,y,z).

I added a quick if check to skip this where there's no wound info for a part.

Weapon this behaviour manifested on: DRAGnet on net mode. Due to the runtime, I didn't notice it dealing any stamina damage. This should fix that scenario as well as any other CANT_WOUND projectiles and prevent them from runtiming early.

* Fix runtime with CANT_WOUND weapons that use pellet_cloud

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
2020-08-19 02:39:54 +02:00
SkyratBot
c5d6d62db8 [MIRROR] you can no longer stuff a bajillion live mice into your chef's hat (#346)
* you can no longer stuff a bajillion live mice into your chef's hat (#52640)

* fuck

* Update code/datums/components/storage/concrete/pockets.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

Co-authored-by: Rohesie <rohesie@gmail.com>

* you can no longer stuff a bajillion live mice into your chef's hat

Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>
Co-authored-by: Rohesie <rohesie@gmail.com>
2020-08-15 02:01:13 +01:00
SkyratBot
4325c025ef [MIRROR] Fixes staminacrit not paralyzing (#331)
* Fixes staminacrit not paralyzing (#52906)

Additionally removes the now-superfluous stam_paralyzed variable. We can already track this with the incapacitated effect from the stamina source.

* Fixes staminacrit not paralyzing

Co-authored-by: Rohesie <rohesie@gmail.com>
Co-authored-by: Useroth <37159550+Useroth@users.noreply.github.com>
2020-08-13 05:37:02 +02:00
SkyratBot
05565c1b9c [MIRROR] Various Paper bug fixes (#302)
* Various Paper bug fixes (#52470)

* Ugh too tired fix latter

* Ok think its fixed, still need to make the stamp working

* Major fixes done, but still the ui dosn't pop up once you examine the door

* Ok you can read doors now, that was annoying.

Ok we done

* Update paper.dm

oh fix

* I have DONE it! Alright

* Miner fixes on order

* Update tgui.bundle.js

* Update code/modules/paperwork/paper.dm

Sure

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/paperwork/paper.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Alright some fixes

* Update tgstation.dme

* Revert "Update tgstation.dme"

This reverts commit 3eaa48d9fcfa2645663420165c39643c3ae5d939.

* Update tgui.bundle.js

* Update code/datums/components/honkspam.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/datums/components/honkspam.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/paperwork/paper.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/paperwork/paper.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Bahhh...me..so..tired

* pointless uistate gooone

* Update tgui.bundle.js

Co-authored-by: Rohesie <rohesie@gmail.com>

* Various Paper bug fixes

Co-authored-by: WarlockD <warlockd@gmail.com>
Co-authored-by: Rohesie <rohesie@gmail.com>
2020-08-12 11:29:35 +01:00
SkyratBot
2409f77637 [MIRROR] you can now make extendohands with a right and left arm (#294)
* you can now make extendohands with a right and left arm (#52826)

* you can now make extendohands with a right and left arm

Co-authored-by: Fikou <piotrbryla@onet.pl>
2020-08-12 11:26:32 +01:00
SkyratBot
e551ebd990 [MIRROR] Immobilized trait (#280)
* immobilized (#52578)


    Adds an immobilized trait.
    Adds procs for several variable changes so we can respond to their events.
    Adds some signals for said variables changing.

Need to turn the variation in number of usable legs and arms (get_num_legs() and get_num_arms()) into events we can respond to, but they are pretty annoying to do so. Probably for a different PR.

* Immobilized trait

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-08-11 04:08:31 +01:00
SkyratBot
9228782297 [MIRROR] Added the ability to upload honk viruses to doors, machines and computers. Added new sound_player component. (#278)
* Added the ability to upload honk viruses to doors, machines and computers. Added new sound_player component. (#52593)

* Added the ability to upload honk viruses to airlocks.

* Removed shoes requirements. Added charge gain sound.

* Revert "Removed shoes requirements. Added charge gain sound."

This reverts commit 641fe91a1c936c2de0cdd8104304d7f25bc831a8.

* Added ping on charge gain.

* Refactored to use components and signals.

* Now works on all machines / computers.

* implements suggested changes

Co-authored-by: Rohesie <rohesie@gmail.com>

* Moved signals around.

* WIP

* Finally added sound_playing component.

* Rohesie provides good code

Co-authored-by: Rohesie <rohesie@gmail.com>

* More Rohesie goodies

Co-authored-by: Rohesie <rohesie@gmail.com>

* Everything is fucked oh god

* Clean sweep

* Update code/game/objects/items/devices/PDA/PDA.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/game/objects/items/devices/PDA/PDA.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

Co-authored-by: Rohesie <rohesie@gmail.com>

* Added the ability to upload honk viruses to doors, machines and computers. Added new sound_player component.

Co-authored-by: KathyRyals <65850818+KathyRyals@users.noreply.github.com>
Co-authored-by: Rohesie <rohesie@gmail.com>
2020-08-11 00:39:56 +01:00
SkyratBot
88ca8f8d54 [MIRROR] RPG Loot's summoning affix can no longer summon mecha pilots and elites (#273)
* RPG Loot's summoning affix can no longer summon mecha pilots and elites (#52781)

* jesus christ

* webbit

* RPG Loot's summoning affix can no longer summon mecha pilots and elites

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
2020-08-10 23:22:15 +01:00
SkyratBot
f9a2fc2495 [MIRROR] Blacklist fix for self crafting (#253)
* Blacklist fix for self crafting  (#52804)

* First fix

* Ugggh

* Blacklist fix for self crafting

Co-authored-by: WarlockD <warlockd@gmail.com>
2020-08-10 17:30:40 +01:00
SkyratBot
c34dae28ac [MIRROR] You can no longer beetlejuice yourself (#251)
* beetlejuice fix (#52806)

* You can no longer beetlejuice yourself

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
2020-08-10 17:28:55 +01:00
SkyratBot
ee324ab3c2 [MIRROR] Cleanup up all instances of using var/ definitions in proc parameters. (#240)
* Cleanup up all instances of using var/ definitions in proc parameters. (#52728)

* var/list cleanup

* The rest of the owl

* plushvar bad

* Can't follow my own advice.

* Cleanup up all instances of using var/ definitions in proc parameters.

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
2020-08-07 18:26:21 +01:00
SkyratBot
5078f16108 [MIRROR] Fixes setting turnconnects to false making plumbing ducts invisible (#214)
* Merge pull request #52721 from Time-Green/fix-plumbing-turn-connects

Fixes setting turnconnects to false making plumbing ducts invisible

* Fixes setting turnconnects to false making plumbing ducts invisible

Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
2020-08-06 01:02:28 +01:00
SkyratBot
c5c00fc6ff [MIRROR] Confusion will no longer continue to confuse after being cured (#213)
* Confusion will no longer continue to confuse after being cured (#52286)

* Confusion will no longer continue to confuse after being cured

* Grammar comment fix

* Move to status effect

* Remove test per request

* Make confusion a status effect, confusion curing now completely neuters the confusion

* set_confusion changes, get_confusion

* Fix confusion going down twice per tick

* Change strength = to proc

* Move procs to status_procs

* Confusion will no longer continue to confuse after being cured

Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
2020-08-06 01:02:19 +01:00
SkyratBot
6c0a9dd8cb [MIRROR] Riders will now turn with their vehicle (#200)
* Riders will now turn with their vehicle (#52612)

* Riders will now turn with their vehicle

* Remove new signal, refactor to accept a direction

* Update code/datums/components/riding.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

Co-authored-by: Rohesie <rohesie@gmail.com>

* Riders will now turn with their vehicle

Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
Co-authored-by: Rohesie <rohesie@gmail.com>
2020-08-05 10:11:12 +02:00
SkyratBot
5dfd1cc353 [MIRROR] Adds a coder override emote so manual custom emotes work properly (#186)
* Adds a coder override emote so manual custom emotes work properly (#52602)

* Adds a coder override emote to skip dumb shit with me

* I know this sucks, I can't comprehend how to do this cleanly without a full rewrite

* cleaner now

* Adds a coder override emote so manual custom emotes work properly

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2020-08-03 16:38:29 +02:00
SkyratBot
ef60d386dd [MIRROR] mood multipliers are applied once instead of per moodlet (#181)
* mood multiplier no longer applies per moodlet (#52632)

* mood multipliers are applied once instead of per moodlet

Co-authored-by: Theos <theubernyan@gmail.com>
2020-08-03 16:35:56 +02:00
SkyratBot
99a084fbd7 [MIRROR] Componentizes Surgery-Initiation Devices (#174)
* Componentizes Surgery-Initiation Devices (#52295)

* meow

* doc moment

* meow

* Componentizes Surgery-Initiation Devices

Co-authored-by: girl <11748095+ExcessiveUseOfCobblestone@users.noreply.github.com>
2020-08-03 07:48:34 +01:00
SkyratBot
5e92c6f05b [MIRROR] Fixers for telekinesis and the defibrillator interactions (#149)
* Fixers for telekinesis and the defibrillator interactions (#52571)

* tk and the defib

* fixed range check

* extra check that is not needed

* only show ear damage on threshold pass

* wrong branch am bad

* is living check

* Fixers for telekinesis and the defibrillator interactions

Co-authored-by: NightRed <nightred@gmail.com>
2020-07-31 14:06:48 +02:00
SkyratBot
676952afe0 [MIRROR] Dismemberment wound tweaks, zombies are easy to wound/dismember, tweaks to head vulnerability (#130)
* Dismemberment wound tweaks, zombies are easy to wound/dismember, tweaks to head vulnerability (#52534)

* adds wound armor to helmets + such, nerfs standard head resist

* dismember + wound species balance, retitle traits

* Dismemberment wound tweaks, zombies are easy to wound/dismember, tweaks to head vulnerability

Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
2020-07-31 00:22:04 +02:00
Couls
35f50b14de Drinks can now carry diseases, Wipe down your glasses with rags bartenders! (#52421)
* Drinks can now infect you, Wipe down your glasses with rags bartenders!

* Apply suggestions from code review

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/datums/components/infective.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/datums/components/infective.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-07-29 20:08:37 -04:00
Gandalf
65895fa8e3 Merge pull request #122 from Skyrat-SS13/upstream-merge-52477
[MIRROR] Cleanable cleanup
2020-07-30 00:33:12 +01:00
Gandalf
ad687de510 Merge pull request #120 from Skyrat-SS13/upstream-merge-52314
[MIRROR] Simple skill/skillchip framework
2020-07-30 00:31:04 +01:00