Commit Graph

1499 Commits

Author SHA1 Message Date
SkyratBot
e3c1100920 [MIRROR] Add locking into portals with right click on hand tele, refactor hand tele code, add pre_attack_secondary (#3242)
* Add locking into portals with right click on hand tele, refactor hand tele code, add pre_attack_secondary (#56700)

Refactors hand tele code with better variable names, splitting procs, fixing C&P code, etc.
Adds pre_attack_secondary, the right click version of pre_attack.
Adds a new alternate function to hand teles, which will reopen the last location you opened. Works based off locations, not turfs. For example, right clicking after locking in "None (Dangerous)" will not teleport you to the same place.

* Add locking into portals with right click on hand tele, refactor hand tele code, add pre_attack_secondary

Co-authored-by: Mothblocks <35135081+Jared-Fogle@users.noreply.github.com>
2021-02-09 19:44:07 +00:00
SkyratBot
b3e8ecac81 [MIRROR] M90 changes (#3227)
* M90 changes (#56667)

The m90 is now 14tc instead of 18. Its grenades can be bought from the uplink in boxes for 6tc, instead of individual grenades for 2tc each. You can also fire the m90's grenade launcher with right click.

* M90 changes

Co-authored-by: TJatPBnJ <69724863+TJatPBnJ@users.noreply.github.com>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
2021-02-09 16:49:21 +00:00
SkyratBot
c6efd50cf2 [MIRROR] Refactors plane masters a bit and introduces plane master controllers (#3228)
* Refactors plane masters a bit and introduces plane master controllers (#56717)

* plane master controllers

* small adjustments

* bro its a comment CHILL OUT

* powerful

* Refactors plane masters a bit and introduces plane master controllers

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
2021-02-09 09:47:23 +00:00
SkyratBot
367311f25f [MIRROR] Renames the _alt attacks to _secondary for clarity (#3222)
* Renames the _alt attacks to _secondary for clarity (#56752)

* Renames the _alt attacks to _secondary for clarity

Co-authored-by: Rohesie <rohesie@gmail.com>
2021-02-09 09:45:54 +00:00
SkyratBot
53df094bab [MIRROR] Add pAI internal GPS to possible software (#3184)
* Add pAI internal GPS to possible software (#56404)

pAIs are now a useful space travelling companion, they can help you
navigate if lost (although only the pAI has the GPS view, so they'll
need to communicate the information). If you're holding a GPS, then the
pAI can find you even if you get separated.

* Add pAI internal GPS to possible software

Co-authored-by: coiax <yellowbounder@gmail.com>
2021-02-08 23:38:53 +00:00
SkyratBot
7acbd68644 [MIRROR] Add alternate attack procs (#3134)
* Add alternate attack procs (#56663)

Adds alternate attack procs for right-clicking. Updates the gunpoint code to use this new proc as an example (though I suspect this is being changed soon, so oops).

This makes it easier to add new behavior to right click, which we should be doing.

* Add alternate attack procs

Co-authored-by: Mothblocks <35135081+Jared-Fogle@users.noreply.github.com>
2021-02-06 00:50:15 +00:00
SkyratBot
25df6e7da3 Cleaning up robot code: modules renamed to models & DOGBORG REWORK (#2837)
* Cleaning up robot code: modules renamed to models

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

* [PR Fix] Modular_Skyrat borgos (#3019)

* No more linter complaining

* Halfway (or full way, I don't know) through moving stuff around

* Caps!

* a

Co-authored-by: dragomagol <66640614+dragomagol@users.noreply.github.com>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
Co-authored-by: Funce <funce.973@gmail.com>
2021-02-05 21:28:06 +00:00
SkyratBot
e890b1282b [MIRROR] Replaces intents with combat mode (#3063)
* Replaces intents with combat mode

* updates

* a

* Update living_defense.dm

* https://github.com/tgstation/tgstation/pull/56638/files

* gunsafety!

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
2021-02-05 16:58:16 +01:00
SkyratBot
7e9d3f21ad [MIRROR] Cleans up blob code, removes a lot of hardcoded stuff, many new defines (#3029)
* Cleans up blob code, removes a lot of hardcoded stuff, many new defines (#56306)

Cleaned up, commented on, and (hopefully) improves a lot of blob code.
Put pretty much everything balance-related (except for the strains themselves) into a define file, for easier viewing, changing, and balancing.
Added a bunch of new functionality that new strains (some of which I plan to add in the future) could use: from increased expansion range to more spores per factory.

* Cleans up blob code, removes a lot of hardcoded stuff, many new defines

Co-authored-by: NotRanged <rangedvdk@gmail.com>
2021-02-03 09:23:24 +00:00
SkyratBot
70024ef6ad [MIRROR] Reverts Adds Neon Carpet (#55782) (#3040)
* reverts Adds Neon Carpet (#55782), it appears to have been causing massive amounts of maptick (#56496)

It appears to have been causing massive amounts of maptick, this'll need a testmerge so we can test my hypothesis

* Reverts Adds Neon Carpet (#55782)

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2021-02-03 10:22:43 +01:00
SkyratBot
2ccfc29da1 [MIRROR] Martial arts combo meter (#3022)
* Martial arts combo meter (#56520)

* Martial arts combo meter

Co-authored-by: Jack LeCroy <3073035+jacklecroy@users.noreply.github.com>
2021-02-02 19:03:41 +00:00
Azarak
311089f611 [WIP] Combat rework - less lethality, less hardstuns, nonlethal takedowns. Focus on combat ineffectivity (#1285)
* woo

* ye

* base done

* some stuff

* weh

* bang bang

* Update carbon_defense.dm

* stuff

* Update stunbaton.dm

* flash

* Update carbon.dm

* weh

* weh

* Update stun.dm

* weh

* Update combat.dm

* a

* aaa

* a

* aaaa

* aa

* hh

* h

* Update combat.dm

* a

* Update other_reagents.dm

* a

* Update pie.dm

* Update combat.dm

* Update pie.dm

* Update combat.dm

* Update combat.dm

* Update combat.dm

* aaa

* aaa

* a

* aaa

* Update combat.dm

* Update combat.dm

* aa

* aaa

* Update carbon_defense.dm

* Update living.dm

* aaa

* Update combat.dm

* aaaa

* Update combat.dm

* aaaa

* Update combat.dm

* Update cat2_medicine_reagents.dm

* Update combat.dm

* Update misc.dm

* Update misc.dm

* Update misc.dm

* Update door.dm

* a

* Update life.dm

* aaa

* aaa

* Update code/_onclick/item_attack.dm

* Update code/game/machinery/doors/airlock.dm

* Update code/game/machinery/doors/door.dm

* Update code/game/machinery/doors/door.dm

* Update code/game/objects/items/grenades/flashbang.dm

* Update modular_skyrat/master_files/code/modules/mob/living/carbon/carbon_say.dm

* Update modular_skyrat/modules/blueshield/code/game/objects/items/melee/misc.dm

* Update modular_skyrat/modules/blueshield/code/game/objects/items/melee/misc.dm

* Update modular_skyrat/modules/blueshield/code/game/objects/items/melee/misc.dm

* Update code/modules/surgery/bodyparts/parts.dm

* Update code/game/objects/items/grenades/flashbang.dm

* Update code/game/objects/items/grenades/flashbang.dm

* Update code/game/objects/items/grenades/flashbang.dm

* Update code/game/objects/items/melee/misc.dm

* Update code/game/objects/items/melee/misc.dm

* Update code/game/objects/items/melee/misc.dm

* Update code/game/objects/items/melee/misc.dm

* Update code/game/objects/items/melee/misc.dm

* Update code/game/objects/items/melee/misc.dm

* Update code/game/objects/items/melee/misc.dm

* Update code/game/objects/items/stunbaton.dm

* Update code/game/objects/items/stunbaton.dm

* Update code/game/objects/items/stunbaton.dm

* Update code/game/objects/items/stunbaton.dm

* Update code/game/objects/items/stunbaton.dm

* Update code/game/objects/items/stunbaton.dm

* Update code/game/objects/items/stunbaton.dm

* Update code/game/objects/items/stunbaton.dm

* Update code/game/objects/items/stunbaton.dm

* Update code/game/objects/items/stunbaton.dm

* Update code/game/turfs/open/_open.dm

* Update code/game/turfs/turf.dm

* Update code/modules/antagonists/abductor/equipment/abduction_gear.dm

* Apply suggestions from code review

* Update modular_skyrat/master_files/code/modules/mob/living/carbon/carbon_say.dm

Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-01-29 23:16:05 +00:00
SkyratBot
902f0a06d7 [MIRROR] Adds Neon Carpet (#2882)
* Adds Neon Carpet

* HARDSET

* Update tgstation.dme

Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
2021-01-25 17:01:58 +00:00
SkyratBot
764b5b9a0b [MIRROR] 1:1 HUD layout fix (#2842)
* 1:1 HUD layout fix (#56321)

* 1:1 HUD layout fix

Co-authored-by: Arkatos1 <43862960+Arkatos1@users.noreply.github.com>
2021-01-23 17:34:58 +00:00
SkyratBot
d4b939c2c9 [MIRROR] Replacing magic numbers with defines in robot code (#2801)
* Replacing magic numbers with defines in robot code (#56241)

While scouring robot code for some (hopefully upcoming) fixes, I found a bunch of gross numbers. These numbers are now letters.

* Replacing magic numbers with defines in robot code

Co-authored-by: dragomagol <66640614+dragomagol@users.noreply.github.com>
2021-01-20 02:40:05 +00:00
SkyratBot
4a20510766 [MIRROR] Fixes parallax runtime when observing someone without client (#2736)
* Fixes parallax runtime when observing someone without client (#56092)

When observing someone without client (because they for example disconnected) a runtime happened:
This was because update_parallax didn't take a mob as parameter but instead always updated the parallax of the mob to which the HUD datum belonged (which was the HUD of the person who you tried to observe)
If that mob had no client this caused a runtime.
If you observe someone now the game updates parallax for your client and not the client of the person you tried to observe.

* Fixes parallax runtime when observing someone without client

Co-authored-by: Gamer025 <33846895+Gamer025@users.noreply.github.com>
2021-01-17 13:15:29 +01:00
SkyratBot
b8cde47f70 [MIRROR] Telekinesis can throw non items (vending machines, lockers) only 1 tile far (#2626)
* Telekinesis can throw non items (vending machines, lockers) only 1 tile far (#56063)

Telekinesis users can now only throw items 10 tiles, everything else can only be thrown 1 tile

* Telekinesis can throw non items (vending machines, lockers) only 1 tile far

Co-authored-by: Gamer025 <33846895+Gamer025@users.noreply.github.com>
2021-01-10 23:18:35 +01:00
SkyratBot
beb6459e68 [MIRROR] Fixes plasma alerts not showing up (#2474)
* Merge pull request #55869 from LemonInTheDark/fixes-plasma-alerts

Fixes plasma alerts not showing up

* Fixes plasma alerts not showing up

Co-authored-by: 81Denton <32391752+81Denton@users.noreply.github.com>
2021-01-03 15:00:35 +01:00
SkyratBot
8bad10a1c9 [MIRROR] Fixes two bugs with Blob strain rerolling (#2440)
* Fixes two bugs with Blob strain rerolling (#55833)

* tested locally and it works

* As suggested

Co-authored-by: Ranged <nickvanderkroon@ gmail.com>

* Fixes two bugs with Blob strain rerolling

Co-authored-by: NotRanged <rangedvdk@gmail.com>
Co-authored-by: Ranged <nickvanderkroon@ gmail.com>
2021-01-02 13:19:15 +01:00
SkyratBot
d7f054b035 [MIRROR] Refactors monkeys into a species (#2379)
* Refactors monkeys into a species

* aaa

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-12-31 21:08:07 +01:00
SkyratBot
d6fb024d57 [MIRROR] Fixing zero damage items with set attack verbs not showing chat messages anyway. (#2362)
* Fix zero damage items not showing explicitly set attack verbs in chat (#55509)

Borked exactly five months ago by #52890.

This will close #55219.

* Fixing zero damage items with set attack verbs not showing chat messages anyway.

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2020-12-29 02:39:22 +00:00
SkyratBot
5b373aaf92 [MIRROR] Fixes mech equipment being unusable for AIs (#2345)
* Fixes mech equipment being unusable for AIs (#55248)

Adds a signal listener on mechs that listens for middle clicks, and calls a proc that will, in turn, call the normal click proc if the user is an AI.

Middle clicks now pass through params just like left clicks.

* Fixes mech equipment being unusable for AIs

* Add CI-conform #2347 to this.

Co-authored-by: zxaber <37497534+zxaber@users.noreply.github.com>
Co-authored-by: Alex 'Avunia' Takiya <git@takiya.cloud>
2020-12-28 15:23:22 +01:00
SkyratBot
3730ad96a2 [MIRROR] Generalizes the hands-blocked trait as UnarmedAttack block (#2263)
* Generalizes hands blocked as unarmed attack block (#55579)

I suppose for bots there's a certain level of abstraction involved, but it makes sense within the context.
There's a pretty bad bug associated with shades here that this fixes.

* Generalizes the hands-blocked trait as UnarmedAttack block

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-12-21 19:56:19 +00:00
SkyratBot
8edeb0fcbc [MIRROR] Rerolling blob strains now uses a radial menu, and lets you see what the strain does before picking it (#2258)
* Rerolling blob strains now uses a radial menu, and lets you see what the strain does before picking it (#55559)

Also provides a generic, forward proof way to provide information to radial menu choices.
Why It's Good For The Game

    input is old and crummy.
    Blob is a very wiki reliant mechanic. This moves a bit of it into the game itself to fix that.
    Provides a real cancel option, whereas the old one had none. This is not a balance change, but a QoL one--everyone just moved the input window off to the side.

* Rerolling blob strains now uses a radial menu, and lets you see what the strain does before picking it

Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
2020-12-21 19:55:37 +00:00
SkyratBot
35aaa84a84 [MIRROR] Filterrific! (#2233)
* Filterrific!

* a

Co-authored-by: Rob Bailey <actioninja@gmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-12-19 06:29:54 +01:00
SkyratBot
ed2487f201 [MIRROR] [READY] Kitchen Rework part 1: I just want to griddle! (#2173)
* [READY] Kitchen Rework part 1: I just want to griddle! (#55319)

This PR essentialy moves away from the extremely microwave dependent cooking we have for meat right now, and making it a bit more sensical by making you use a grill to grill meat. The grill takes a different time (with variation) for different grilled things. Once finished it will turn that food into something else.

Yes, this does mean creating burgers takes longer, but in return you can make more patties at once, and you are not required to stay at the grill while its going. This lets you cook as much as you want at once, just make sure your meat doesn't burn!

In the future, I hope to move more things like this to machines similar to this (Pasta boiling, putting eggs on the griddle, soup making, etcetera) to create for a more interesting cooking experience.

* [READY] Kitchen Rework part 1: I just want to griddle!

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
2020-12-14 02:01:55 +01:00
SkyratBot
9dfb7a1189 [MIRROR] Everything that uses maptext now uses the class that makes it actually readable (#2116)
* Everything that uses maptext now uses the class that makes it actually readable

* Update chatmessage.dm

Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2020-12-11 00:40:04 +00: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
c930b76b03 [MIRROR] Removes a rogue arg from a register signal (#2042)
* Removes a rogue arg from a register signal (#55310)

* Removes a rogue arg from a register signal

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
2020-12-04 11:03:00 +00:00
NotRanged
b4fade2405 tested and working (#2024)
Co-authored-by: Ranged <nickvanderkroon@gmail.com>
2020-12-03 17:22:04 +00:00
SkyratBot
6307794db3 [MIRROR] unfucks hitting simplemobs with melee attacks (sorry!) (#1998)
* unfucks hitting simplemobs with melee attacks (sorry!) (#55269)

Adds a single "!" to the code I added (in #55023) to make it not make most simplemobs immune to being hit with most melee weapons.

* unfucks hitting simplemobs with melee attacks (sorry!)

Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>
2020-12-01 20:31:37 +01: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
SkyratBot
19a920a268 [MIRROR] Makes the usage of force_threshold in the attackby() proc for simplemobs consistent with the way it's used everywhere else (#1970)
* Makes the usage of force_threshold in the attackby() proc for simplemobs consistent with the way it's used everywhere else (#55023)

## About The Pull Request

Namely, this means that a simplemob's immunity to melee attacks of force X or lower now accounts for that simplemobs damage multipliers to various damage types. It also means that simplemobs with a force_threshold of X are now immune to melee attacks of force X or lower, not melee attacks with a force less than X (<= vs. <).

## Why It's Good For The Game

**tldr;
This make the code for simplemob "your stick must be this strong to deal damage" thresholds more consistent.**

Xenomorphs, xenomorph larvae, barehanded monkeys, slimes, and simplemobs in general all multiply the damage of their attacks by the relevant damage resistance multiplier BEFORE checking it against the force_threshold of the simplemob they're attacking, and also check to see if their damage is <= the force_threshold of the simplemob they're attacking (instead of requiring it to be strictly < the force_threshold of the simplemob they're attacking).

As for balance concerns, while this will affect juggernauts *slightly* (as they'll now be immune to force <= 10 melee weapons instead of just force < 10 melee weapons), I'm not too worried about that. What I _am_ worried about is blobbernauts, who, after this change, will be immune to brute melee weapons of force 20 or lower (due to their 0.5 brute damage multiplier). You will, of course, still be able to welder them just as effectively as you could before, but I'm worried that this could make blob-aligned blobbernauts even stronger than they already are.

* Makes the usage of force_threshold in the attackby() proc for simplemobs consistent with the way it's used everywhere else

Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>
2020-11-30 18:33:12 +00:00
SkyratBot
8d130ce006 [MIRROR] Fix 'your mind won't reach that far' message when clicking moodlet with TK (#1773)
* Fix 'your mind won't reach that far' message when clicking moodlet with TK (#55070)

The mood /atom/movable/screen, instead of having a Click() override, instead has its COMSIG_ATOM_CLICK registered in the mood component. This has the side effect of normal attack chain protocol being ran on it, meaning that if you click it with TK you will get a message saying "Your mind won't reach that far". This fixes that by overriding attack_tk into a noop.

* Fix 'your mind won't reach that far' message when clicking moodlet with TK

Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
2020-11-22 18:22:26 +00: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
eedf2362cc [MIRROR] Refactored 'IsAdvancedToolUser' into a macro plus relative trait. Tweaked 'can_hold_items'. (#1674)
* Refactored 'IsAdvancedToolUser' into a macro plus relative trait. Tweaked 'can_hold_items'. (#54665)

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

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

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2020-11-11 02:52:32 +00:00
SkyratBot
2b51110471 [MIRROR] radial menus ignore the anchor's alpha, color and transform now. (#1662)
* radial menus ignore the anchor's alpha, color and transform now. (#54870)

* radial menus ignore the anchor's alpha, color and transform now.

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2020-11-11 02:50:22 +00:00
SkyratBot
03d81cfb75 [MIRROR] Fixes the attack chain (#1520)
* Fixes the attack chain

* a

Co-authored-by: Rohesie <rohesie@gmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-10-31 15:58:00 +01:00
SkyratBot
cb880bb359 [MIRROR] Adds layer switching with mouse wheel to the RPD. (#1491)
* Adds layer switching with mouse wheel to the RPD. (#54458)

Adds a signal that gets sent to items in currently active hand on mouse scroll
and makes RPD listen to this and change the piping layer accordingly.

* Adds layer switching with mouse wheel to the RPD.

Co-authored-by: TheChosenEvilOne <34602646+TheChosenEvilOne@users.noreply.github.com>
2020-10-27 09:09:25 +00:00
SkyratBot
b3d0512b47 [MIRROR] Adds 👏 High 👏 Fives 👏 (#1445)
* Adds 👏 High 👏 Fives 👏 (#54516)

This PR lets you post up for high-fives with your buds so you can slap some skin and show off how well you vibe together. To initiate a high-five, simply stand next to another person with a slapper (the *slap emote one) in hand, and hit the offer item button (default G) to let the people adjacent to you know you're available. They'll get an alert that you're offering a high-five, and clicking it will follow through and award you both a small positive moodlet, or they can just walk away and leave you hanging, earning you a negative moodlet.

Is a high-five not enough to show the world how tight your crew is? Double the fun! If whoever initiates the high-five has a slapper in both hands, and the taker has two hands free, you'll go for the mythical high-ten for a louder slap and extra emphasis! Woo!

* Adds 👏 High 👏 Fives 👏

Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
2020-10-24 01:05:55 +01:00
SkyratBot
991c7c6306 [MIRROR] Adds a runechat plane to fix the issues related to the chat messages (#1428)
* Adds a runechat plane to fix the issues related to the chat messages (#54522)

Previously your chat messages would be obstructed by the blackness of blocked turfs, aswell as dark lighting and some other effects. This fixes that
It still has backdrop ambient occlusion like it used to.

* Adds a runechat plane to fix the issues related to the chat messages

Co-authored-by: Azarak <azarak10@gmail.com>
2020-10-22 23:03:03 +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
28472fa8f3 [MIRROR] Moves screen objects from mob to hud (#1336)
* Moves screen objects from mob to hud (#54400)

This moves screen images from icons/mob to icons/hud
Makes more sense and it is easier to find

* Moves screen objects from mob to hud

* Update radial.dm

Co-authored-by: nicbn <nicolas.nattis@gmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-10-16 03:37:54 +02:00
MLGTASTICa
ed689a2069 Ports AI/Cyborg QoL updates, Allows AI to examine and adds more QoL features. (#1167)
* Update ai.dm

* Update cyborg.dm

* travis

* Revert

* spacing

* Update ai.dm

* Update cyborg.dm

* Update cyborg.dm

* Create Silicon_QoL

* Add files via upload

* Delete Silicon_QoL

* Update _onclick.dm

* Update _onclick.dm

* Create readme.dm

* Update readme.dm

* Rename readme.dm to readme.md

* Update ai.dm
2020-10-14 00:11:18 +01:00
SkyratBot
b8d9874c27 [MIRROR] Converts all A && A.B into A?.B (#1292)
* Converts A && A.B into A?.B (#54342)

Implements the ?. operator, replacing code like A && A.B with A?.B

BYOND Ref:
When reading A?.B, it's equivalent to A && A.B except that A is only evaluated once, even if it's a complex expression like a proc call.

* Converts all A && A.B into A?.B

Co-authored-by: ZeWaka <zewakagamer@gmail.com>
2020-10-13 23:19:25 +02:00
SkyratBot
79035bbebe [MIRROR] Enables a click cooldown on throws (#1272)
* Enables a click cooldown on throws (#54331)

* Enables a click cooldown on throws

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-10-12 23:23:47 +02:00
SkyratBot
970a2b03d6 [MIRROR] Mobility refactor: no more update_mobility() (#1233)
* Mobility refactor: no more update_mobility()

* Update robot.dm

Fixes robots.

* megadumb

* Update robot.dm

* weh

* Update gunpoint_datum.dm

Co-authored-by: Rohesie <rohesie@gmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-10-10 02:31:35 +02:00
SkyratBot
ec5324bc1a [MIRROR] [READY] Highlander mode now includes silicons (#1122)
* Merge pull request #53702 from zxaber/kiltborg

[READY] Highlander mode now includes silicons

* [READY] Highlander mode now includes silicons

Co-authored-by: nemvar <47324920+nemvar@users.noreply.github.com>
2020-10-02 19:10:58 +02:00
SkyratBot
9be3a7b8f6 [MIRROR] Moblity refactor: hands blocked and restrained edition. (#1051)
* Moblity refactor: hands blocked and restrained edition.

* Update carbon_defense.dm

* Update emotes.dm

Co-authored-by: Rohesie <rohesie@gmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-09-29 13:57:02 +02:00