Commit Graph

2276 Commits

Author SHA1 Message Date
lessthanthree
b9fe8cc6ba [SEMI-MODULAR] Advanced engineering response team (#20040)
* advanced atmos

* radio defines

* turn radio on

* doc

* security level

* Update modular_skyrat/modules/alerts/code/security_level_procs.dm

Co-authored-by: Pinta <68373373+softcerv@users.noreply.github.com>

* Update security_level_procs.dm

* not needed

* Update adv_engineering.dm

* move sec level proc

* Update sol_fed.dm

* Update sol_fed.dm

* charge 15k per tech

* remove armor from jumpsuit

---------

Co-authored-by: Pinta <68373373+softcerv@users.noreply.github.com>
2023-03-27 04:12:11 +01:00
SkyratBot
2728bbe9a9 [MIRROR] Polishes some side sources of light and color [MDB IGNORE] (#19860)
* Polishes some side sources of light and color (#73936)

## About The Pull Request

[Circuit Floor
Polish](6b0ee98132)

Circuit floors glow! but it looks like crap cause it's dim and the
colors are washed out.
I'd like to make them look nicer. Let's make them more intense and
longer range, and change the colors over to more vivid replacements.

While I'm here, these should really use power and turn on and off based
off that.
Simple enough to do, just need to hook into a signal (and add a setter
for turf area, which cleans up other code too).

[Desklamp
Upgrade](8506b13b9c)

Desklamps look bad. They're fullwhite, have a way too large
range.Crummy.
Let's lower their lightrange from 5 to 3.5, and make the ornate ones
warmer, and the more utilitarian ones cooler. The clown one can be
yellow because it's funny

I'm renaming a color define here so I'm touching more files then you'd
expect

[Brightens
Niknacks](835bae28e9)

Increases the light range of request consoles, status displays,
newscasters, and air alarms (keycard machines too, when they're awaiting
input at least)
Increases the brightness of air alarms, I think they should be on par
with apcs, should be able to tell when they're good/bad.
Increases the brightness of vending machines (I want them to light up
the tiles around them very lightly, I think it's a vibe)

Fixes a bug with ai status displays where they'd display an emissive
even if they didn't have anything on their screen, looking stupid.
This was decently easy but required a define. Looked really bad tho

## Why It's Good For The Game

Pretty

<details>
<summary>
Circuit Floors
</summary>

Old

![image](https://user-images.githubusercontent.com/58055496/224534470-c6eac5f5-5de6-40e9-897d-3212b8796d81.png)

![image](https://user-images.githubusercontent.com/58055496/224534477-ad412ad9-f7c4-44ae-ad75-a1a2c9bd17be.png)

New

![image](https://user-images.githubusercontent.com/58055496/224534486-b7b408a3-546c-4f90-aa9f-0e58bf8128ad.png)

![image](https://user-images.githubusercontent.com/58055496/224534496-626458f7-ab63-429c-a5db-eae9c784d06a.png)
</details>

<details>
<summary>
Desk Lights
</summary>

Old

![image](https://user-images.githubusercontent.com/58055496/224534513-9868b0b8-bc73-4b45-b986-8445078a8653.png)

![image](https://user-images.githubusercontent.com/58055496/224534518-bbbc8c6d-b59e-4f28-a31c-6c6a7e2c2885.png)

New

![image](https://user-images.githubusercontent.com/58055496/224534529-7988f440-03be-42ef-894c-b9e77f577ae5.png)

![image](https://user-images.githubusercontent.com/58055496/224534532-c3f2c6bf-c925-4a59-a8f9-10bb955a9942.png)
</details>

The niknack changes are more minor so I'm not gonna grab photos for
them. I can if you'd like but I don't think it's necessary. Mostly a
vibes in dark spaces sorta thing

## Changelog

🆑
add: I made circuit floors brighter and more vivid.
add: Made air alarms, vending machines, newscasters, request consoles,
status displays and keycard machines slightly "brighter" (larger light
range, tho I did make air alarms a bit brighter too)
add: Tweaked desklamps. Lower range, and each type gets its own coloring
instead of just fullwhite.
fix: AI displays are no longer always emissive, they'll stop doing it if
they aren't displaying anything. Hopefully this'll look nicer
/🆑

* Polishes some side sources of light and color

* yellow

* Update dance_machine.dm

* Merge branch 'upstream-merge-73936' of https://github.com/Skyrat-SS13/Skyrat-tg into upstream-merge-73936

---------

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
Co-authored-by: lessthnthree <three@lessthanthree.dk>
2023-03-26 01:39:17 -07:00
SkyratBot
0d2ba72250 [MIRROR] Replaces internal_organs with organs [MDB IGNORE] (#19871)
* Replaces internal_organs with organs

* Makes all of the necessary internal_organs -> organs in our files to compile

And it seems to work too!

---------

Co-authored-by: Time-Green <timkoster1@hotmail.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2023-03-24 13:27:48 -04:00
SkyratBot
f8f2abb11f [MIRROR] Refactor, improve, and rename canUseTopic to be can_perform_action [MDB IGNORE] (#19391)
* Refactor, improve, and rename canUseTopic to be can_perform_action

* updoot

* https://github.com/tgstation/tgstation/pull/72876

https://github.com/tgstation/tgstation/pull/72876

---------

Co-authored-by: Tim <timothymtorres@gmail.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-03-10 04:19:25 +00:00
SkyratBot
7f29afc8ec [MIRROR] Refactors species mutanthands into human component [MDB IGNORE] (#19355)
* Refactors species mutanthands into human component

* wew

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-03-10 02:39:41 +00:00
SkyratBot
595da5b21a [MIRROR] Flares and candles are now made of plastic [MDB IGNORE] (#19472)
* Flares and candles are now made of plastic (#73505)

## About The Pull Request

Flares and candles are now made of plastic.

![image](https://user-images.githubusercontent.com/12107211/219854793-378aba49-78e7-4b6d-95de-8cc1062de0ea.png)

That's close enough to wax, right? I'm sure those chemical-smelling
fumes are nothing to worry about.

## Why It's Good For The Game

Fixes https://github.com/tgstation/tgstation/issues/73495 (arguably)

## Changelog

🆑
fix: candles are made of a more appropriate material
/🆑

* Flares and candles are now made of plastic

---------

Co-authored-by: skylord-a52 <skylord-a52@users.noreply.github.com>
2023-02-21 00:29:31 +00:00
SkyratBot
ae4598ac3f [MIRROR] Fixes health analyzers checking for missing stomachs and tongues [MDB IGNORE] (#19373)
* Fixes health analyzers checking for missing stomachs and tongues (#73421)

## About The Pull Request

Healthanalyzer's check for missing tongues and stomachs were incorrect.
They only printed the message for those organs if the target's species
lacked them, and the organ was missing as intended (examples: abductors
for stomachs, cardboard golems for tongues). This PR fixes this, and the
healthanalyzer will only complain about the lack of those organs, if the
targets are supposed to have them in the first place.

## Why It's Good For The Game

It is good to be told that your patient is missing a vital organ or two
before booting them out of medbay.

## Changelog

🆑
fix: Health analyzers will properly report missing stomachs and tongues
/🆑

* Fixes health analyzers checking for missing stomachs and tongues

---------

Co-authored-by: Profakos <profakos@gmail.com>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
2023-02-18 20:36:09 -08:00
SkyratBot
1fe0d145a3 [MIRROR] Converts blindness and nearsightedness to status effects, scratches some VERY dumb blindness handling that resulted in mobs becoming "incurably" blind [MDB IGNORE] (#18760)
* Converts blindness and nearsightedness to status effects, scratches some VERY dumb blindness handling that resulted in mobs becoming "incurably" blind

* Fixes the conflicts and makes shit compile!

* Fixes other things that didn't show up because I hadn't updated

* Fixes the lints.

* Okay NOW it's ready (please don't add anything else that touches blindness I beg you)

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2023-02-03 16:08:32 -05:00
SkyratBot
9186ba3541 [MIRROR] Replace most uses of say() on tape recorder with balloon alerts to reduce spam [MDB IGNORE] (#19137)
* Replace most uses of say() on tape recorder with balloon alerts to reduce spam (#72784)

## About The Pull Request
The tape recorder would spam the chat with multiple spoken lines when
Play was pressed on an empty tape or when playback ended. This fixes
that by replacing the spoken lines with balloon alerts only visible to
the user of the tape recorder.

Playback still uses say().
## Why It's Good For The Game
Less chat spam
## Changelog
🆑
qol: Tape recorder actions (e.g. starting/stopping playback) now use
balloon alerts instead of say() to reduce chat spam
fix: You can no longer get a tape stuck in the tape recorder by
unspooling it before inserting
/🆑

---------

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

* Replace most uses of say() on tape recorder with balloon alerts to reduce spam

---------

Co-authored-by: cacogen <25089914+cacogen@users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
2023-02-03 15:54:29 +00:00
SkyratBot
075b2d3ccf [MIRROR] Shuffles around the reagent scan readout to display as empty when only invisible reagents are present [MDB IGNORE] (#19033)
Shuffles around the reagent scan readout to display as empty when only invisible reagents are present (#72915)

<!-- Write **BELOW** The Headers and **ABOVE** The comments else it may
not be viewable. -->
<!-- You can view Contributing.MD for a detailed description of the pull
request process. -->

## About The Pull Request

Formerly, the reagent scan would provide a header based on whether or
not reagents are present in a person's blood/stomach. This works, until
you get cases where a user only has invisible reagents in their system,
in which case the "Subject contains the following reagents" header would
appear, but no chemical readouts would be present.

The blood/stomach reagent readouts on the scanner now put their contents
into a separate list, before adding it to the master readout list. This
alternate list is checked for length, rather than whether or not the
user has any reagents in their system at all, to determine what readout
header to give. If there are no reagent readouts to provide, the scanner
will report as if there is nothing present.

In summary: If you have only invisible reagents in your system, the
health scanner will provide the same readout as if you had nothing in
you at all.

<!-- Describe The Pull Request. Please be sure every change is
documented or this can delay review and even discourage maintainers from
merging your PR! -->

## Why It's Good For The Game

Closes #72311.

<!-- Argue for the merits of your changes and how they benefit the game,
especially if they are controversial and/or far reaching. If you can't
actually explain WHY what you are doing will improve the game, then it
probably isn't good for the game in the first place. -->

## Changelog

<!-- If your PR modifies aspects of the game that can be concretely
observed by players or admins you should add a changelog. If your change
does NOT meet this description, remove this section. Be sure to properly
mark your PRs to prevent unnecessary GBP loss. You can read up on GBP
and it's effects on PRs in the tgstation guides for contributors. Please
note that maintainers freely reserve the right to remove and add tags
should they deem it appropriate. You can attempt to finagle the system
all you want, but it's best to shoot for clear communication right off
the bat. -->

🆑 Rhials
fix: The chemical scanner will now properly display that "no" reagents
are present in a subject when only invisible reagents are present.
/🆑

<!-- Both 🆑's are required for the changelog to work! You can put
your name to the right of the first 🆑 if you want to overwrite your
GitHub username as author ingame. -->
<!-- You can use multiple of the same prefix (they're only used for the
icon ingame) and delete the unneeded ones. Despite some of the tags,
changelogs should generally represent how a player might be affected by
the changes rather than a summary of the PR's contents. -->

Co-authored-by: Rhials <Datguy33456@gmail.com>
2023-01-31 02:07:43 +00:00
SkyratBot
e5b1668462 [MIRROR] Light Replacer Fixes & clean up [MDB IGNORE] (#18918)
Light Replacer Fixes & clean up (#72883)

## About The Pull Request
Fixes #72877

- Bluespace light replacer can only fix lights & turfs containing lights
in its line of sight
- No more spam beaming turfs which has no light sources
- Code clean up i.e early returns

## Changelog
🆑
fix: bluespace light replacer from fixing lights/turfs containing lights
not in its line of sight
fix: beaming any turf even those not containing lights from causing lag
/🆑

Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com>

Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com>
Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com>
2023-01-23 17:04:16 -05:00
SkyratBot
dcc96177df [MIRROR] Fix tape recorder recording null messages (fixes #72858) [MDB IGNORE] (#18915)
Fix tape recorder recording null messages (fixes #72858) (#72870)

## About The Pull Request

Fixes #72858

Tape recorder was using `message` instead of `raw_message` in the `Hear`
callback:
`/obj/item/taperecorder/Hear(message, atom/movable/speaker,
message_langs, raw_message, radio_freq, spans, list/message_mods =
list(), message_range)`

Other instances of the callback being used seem to use `raw_message`.
Additionally, `living_say` as well as `say` call `Hear` with `message`
being just always being `null`.

Changed tape recorder to use `raw_message` as well

## Why It's Good For The Game

Tape recorders work!

## Changelog

🆑
fix: Tape recorders are not deaf anymore
/🆑

Co-authored-by: Inari-Whitebear <inari_whitebear@fastmail.jp>
2023-01-23 10:14:28 -08:00
SkyratBot
c5ca08fd01 [MIRROR] Adds spaces around logical operators [MDB IGNORE] (#18776)
* Adds spaces around logical operators

* Update code/modules/admin/verbs/admingame.dm

Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2023-01-21 22:16:43 -08:00
nevimer
b2e7e489cb Missed Mirror: Fix incorrect calls to UnregisterSignal (#68698) (#18856)
Fix incorrect calls to UnregisterSignal (#68698)

Fix calls to UnregisterSignal

(cherry picked from commit aba3bc80e0)

# Conflicts:
#	code/_onclick/hud/new_player.dm
#	code/datums/status_effects/debuffs/debuffs.dm
#	code/game/objects/items/devices/geiger_counter.dm

Co-authored-by: Gamer025 <33846895+Gamer025@users.noreply.github.com>
2023-01-21 22:15:23 -08:00
SkyratBot
815ede9b8d [MIRROR] Ashwalker Improvements - Torches, Drying Racks, Seeds, and Smoke Pipes [MDB IGNORE] (#18864)
Ashwalker Improvements - Torches, Drying Racks, Seeds, and Smoke Pipes (#72683)

## About The Pull Request
This does the following:

- Replaces all of the lamps in the ashwalker ruin with torches (torches
have ~30 mins of fuel)
- Leaves a single lamp in the center
- Adds 2 porcini seeds and an additional towercap seed
- Adds a crafting recipe to make smoke pipes using wood
- Changes drying racks to require no power

This allows Ashwalkers to make more torches if needed AND grow their own
version of mushroom tobacco.

## Why It's Good For The Game
Makes Ashwalkers more cavelike.

## Changelog
🆑
add: Add torches, porcini mushroom seeds, towercap seeds to ash walker
ruin.
add: Change drying racks to not require power.
add: Add crafting recipe for smoking pipe that uses wood
/🆑

Co-authored-by: Tim <timothymtorres@gmail.com>
2023-01-21 20:44:21 -05:00
SkyratBot
18dc1abc43 [MIRROR] Refactor lighting items that use fuel [MDB IGNORE] (#18545)
* Refactor lighting items that use fuel (#72146)

Fixes #71826

This does the following:
- Makes candles a subtype of flare
- Fixes candles having lighting inconsistencies
- Fixes burning items (welder, candles, flares, etc.) not causing
ignition effects when held in hand
- Adds burnt flares and melted candles to maint loot and trash spawners
- Add match lighting sound when candles are lit
- Add time defines for fuel amounts and rounded them (ex. instead of
32.3333 minutes, it's now 35 minutes)
- Light sources that burn will now spawn a trash item once fuel is spent
- Light sources that burn now have a welder hitsound
- Light sources that burn can now be extinguished by a fire extinguisher
(except flares)
- Light sources that burn can now be used to ignite another object on
fire (ex. a lit candle can be used to light a cigarette)
- Light sources that burn and are lit now do `BURN` damage while
attacking

Code is more cleaner and consistent.  Also fixes some bugs.

🆑
soundadd: Candles will now use the match lighting sound when lit
soundadd: Light sources that burn will now have a welding hitsound
fix: Fix candle light behaving erratically
fix: Fix burning items that are held in hand will now have an ignition
effect on the turf. (ex. lit welders in hand will now ignite plasma in
the air)
balance: Light sources that burn and are lit now do `BURN` damage while
attacking
balance: Light sources fuel amounts were rounded to exact numbers (ex.
instead of 32.3333 minutes, it's now 35 minutes)
qol: Light items that burn can now be extinguished by a fire
extinguisher (except flares), used to ignite another object on fire, and
will now leave a trash item once fuel is used
qol: Add burnt flares and melted candles to trash spawners
refactor: Refactor lighting items that use fuel to be more robust
/🆑

Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>

* Modular!

* Toggle Light

Co-authored-by: Tim <timothymtorres@gmail.com>
Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
Co-authored-by: Funce <funce.973@gmail.com>
2023-01-17 14:37:02 +13:00
SkyratBot
2785d37cf0 [MIRROR] Cutting the Burdened Cheese Part 1: Removes free burden points from removing unnecessary or cosmetic organs. [MDB IGNORE] (#18493)
* Cutting the Burdened Cheese Part 1: Removes free burden points from removing unnecessary or cosmetic organs. (#71938)

Burdened organs now only count for the main organs only. Cyberimplants
don't count, alien organs don't count, etc. This is because someone
could get a bunch of extra organs, and then take the burdened sect and
remove them for free burden points.

Useless organs for species also do not count (stomachs given to species
that do not hunger, for instance)

Removes the error on burden points clamping on negative values. This can
happen when someone previously disabled takes burden sect.

Cheese is being used to bypass the unique gameplay goals burdened sect
provides. Will throw another pr when fikou finishes bat mutants ;)

🆑
fix: Removed some cheese strategies from burdened sect.
/🆑

Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>

* Modular!

* Aaaaaa

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
Co-authored-by: Funce <funce.973@gmail.com>
2023-01-17 14:06:18 +13:00
SkyratBot
4524dc21a0 [MIRROR] Fixes ERT Headsets not starting with their key [MDB IGNORE] (#18756)
* Fixes ERT Headsets not starting with their key (#72716)

## About The Pull Request
fixes an accident and assigns the second keyslot to null instead of the
first which removed the ability for ERT's to communicate.

## Why It's Good For The Game

Having comms when you're sent in somewhere deadly is a good thing

## Changelog
🆑
fix: ERT Headsets have the proper key
/🆑

* Fixes ERT Headsets not starting with their key

Co-authored-by: Zergspower <Griffinj88@yahoo.com>
2023-01-15 21:01:03 -08:00
SkyratBot
0fd25257a9 [MIRROR] Fix blood overlays on energy daggers [MDB IGNORE] (#18682)
* Fix blood overlays on energy daggers

* CLANG

* has this ever worked?

Co-authored-by: Tim <timothymtorres@gmail.com>
Co-authored-by: John Doe <gamingskeleton3@gmail.com>
2023-01-13 21:56:37 -08:00
SkyratBot
c092ac78e1 [MIRROR] Light Replacer cleanup and afterattack improvement [MDB IGNORE] (#18694)
* Light Replacer cleanup and afterattack improvement (#72566)

## About The Pull Request

Makes a few code improvements to the light replacer.

* increment, decrement, and bulb shards were three values unnecessarily
stored as vars on the light replacer. They are now defines, as they were
static values either way.
* Autodocs variables on the light replacer.
* Everything uses snake case, and the single-character vars have all
been smote from existence.
* Changes some 0/1 use to FALSE/TRUE

In addition to this cleanup, the afterattack chain has been cleaned up a
lot. It now allows you to click on either the light, OR the turf under
it to replace a light. As a bonus, you now get some balloon alerts when
trying to replace lights while empty.
## Why It's Good For The Game

Closes #72557.

Cleans up the code I had to shuffle through to do so.
## Changelog
🆑 Rhials
qol: the light replacer now allows you to click on either the light, or
the floor beneath it, to refill lights.
code: light replacer code is now a bit prettier.
/🆑

* Light Replacer cleanup and afterattack improvement

Co-authored-by: Rhials <Datguy33456@gmail.com>
2023-01-13 14:53:26 -08:00
SkyratBot
be18901411 [MIRROR] [ready] unit tests all worn icons [MDB IGNORE] (#18491)
* [ready] unit tests all worn icons (#72370)

Fixes #71692

🆑 ShizCalev
code: Added a unit test for ALL worn icons.
fix: Fixed a bunch of broken worn icons!
/🆑

* [ready] unit tests all worn icons

* Should have fixed most of the failures now

* Here, hopefully that should fix what was left

* Okay maybe it just hadn't been fixed yet

* I can be a bit dumb sometimes

* Okay, now it's going to work, I promise

* I'm so tired of this

Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2023-01-09 21:10:28 -05:00
SkyratBot
ae713bf18a [MIRROR] Crafting/Cooking menu update [MDB IGNORE] (#18334)
* Crafting/Cooking menu update

* Yeeted away all of the merge conflicts, time to fix the code

* Okay, now it compiles, and after testing, it seems to work just fine

* Actually, early addition of an upstream fix, so those that don't have hunger can still open the cooking menu

* Fixes the units tests by removing the extra comma in the Stuffed Muli Pod recipe

Co-authored-by: Andrew <mt.forspam@gmail.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2023-01-08 15:02:18 -05:00
SkyratBot
011fefdd81 [MIRROR] Refactors armor into dedicated subtypes [MDB IGNORE] (#18291)
* Refactors armor into dedicated subtypes

* start

* most tg things

* pain (#18584)

* shit

* non-mod changes

* compile

Co-authored-by: John Doe <gamingskeleton3@gmail.com>

* #18291

* compile fix

* ???

Co-authored-by: Zephyr <12817816+ZephyrTFA@users.noreply.github.com>
Co-authored-by: John Doe <gamingskeleton3@gmail.com>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
2023-01-07 20:06:16 -08:00
SkyratBot
650d64f6d4 [MIRROR] afterattack now returns a flag if it's reasonable to suspect the user intends to act on an item [MDB IGNORE] (#18519)
* afterattack now returns a flag if it's reasonable to suspect the user intends to act on an item

* Update _neck.dm

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
2023-01-07 06:55:38 +00:00
SkyratBot
01348f3964 [MIRROR] psyker gang fixes [MDB IGNORE] (#18471)
* psyker gang fixes (#72330)

## About The Pull Request
adds more ammunition, and also signing on the psyker ship
fixes some minor stuff
you can see other echolocation receivers as fully purple now, rather
than just their outline
echolocating people have night vision, to prevent bugs with them not
being able to see echolocated tiles
psyker pirates have headsets that increase their echolocation range
partially fixes the shuttle docker. need someone smarter to look at it
with me though, you can physically use it at least, just cant see yet.

## Why It's Good For The Game
they are not very playable right now

## Changelog
🆑
balance: adds more ammunition, and also signing on the psyker ship
qol: you can see other echolocation receivers as fully purple now,
rather than just their outline
fix: echolocating people have night vision, to prevent bugs with them
not being able to see echolocated tiles
add: psyker pirates have headsets that increase their echolocation range
fix: partially fixes the psyker ship shuttle docker
/🆑

* psyker gang fixes

Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
2023-01-02 08:06:23 -08:00
SkyratBot
5c6c91144c [MIRROR] Changes the missing food icon test to cover ALL /obj's [MDB IGNORE] (#18139)
* Changes the missing food icon test to cover ALL /obj's

* Update implant.dm

* Hopefully fixes all the failing integration tests!

* Fixes more missing icons

* Even more icon fixes

* Hopefully that was all of them

* Okay now SURELY that's all of them

* I'm tired of this shit man

* Hopefully that's all, for real this time!

Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2022-12-28 19:30:05 -05:00
SkyratBot
15faaa54f5 [MIRROR] Rewrites how action buttons icons are generated, makes them layer nicer. Allows observers to see a mob's action buttons. [MDB IGNORE] (#17907)
* Rewrites how action buttons icons are generated, makes them layer nicer. Allows observers to see a mob's action buttons.

* conflicts

* Modular!

* update modular

* icon icon icon icon icon

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
Co-authored-by: Funce <funce.973@gmail.com>
2022-12-16 16:01:41 +00:00
SkyratBot
57e99cbc5a [MIRROR] Refactors to add directly to desc less [MDB IGNORE] (#18160)
* Refactors to add directly to desc less (#71996)

## About The Pull Request
Refactors some of the desc += calls to instead use examine() additions
## Why It's Good For The Game
There were a few parts in the code where the description was directly
written to after an action, where that extra note is information on the
status of the item. Moving it to examine() lets you call those procs
multiple time without worry and makes it look more consistent to players
(extra item info displayed as notice/warning spans under desc)
## Changelog
🆑
refactor: moved some description edits to examine hooks
/🆑

Co-authored-by: etherware-novice <candy@ notarealaddr.com>

* Refactors to add directly to desc less

Co-authored-by: texan-down-under <73374039+etherware-novice@users.noreply.github.com>
Co-authored-by: etherware-novice <candy@ notarealaddr.com>
2022-12-15 16:30:41 -05:00
SkyratBot
a388d294a6 [MIRROR] Saycode refactor, unit tests, and fixes [MDB IGNORE] (#18032)
* Saycode refactor, unit tests, and fixes

* parrot

* SR tweaks

* say tests from pstream/71873

Co-authored-by: Tim <timothymtorres@gmail.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2022-12-15 15:00:29 -05:00
SkyratBot
6d723d38f4 [MIRROR] Moves speaking verbs to tongues + subtypes, moves wing sprites to wing subtypes, bodypart damage examines to limbs, fixes sign language not working without a tongue [MDB IGNORE] (#17889)
* Moves speaking verbs to tongues + subtypes, moves wing sprites to wing subtypes, bodypart damage examines to limbs, fixes sign language not working without a tongue

* I forgor

* Modular!

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
Co-authored-by: Funce <funce.973@gmail.com>
2022-12-10 19:12:10 -05:00
SkyratBot
fd529d158e [MIRROR] Fixes invisible light replacers [MDB IGNORE] (#17994)
* Fixes invisible light replacers (#71766)

## About The Pull Request

The icon state was getting a double 0 (or 01) and going INVISIBLE.
So now it just adds "" instead of "0" for un-emagged stuff.

Also renames it to "emagged" instead of "1". "1" sucks.

The sprites are unchanged, if that wasn't obvious.

## Why It's Good For The Game

What's the point in replacing the lights if you can't even see your
tools anyway?

![light_replacer](https://user-images.githubusercontent.com/8881105/205796187-f896d95f-a8d3-45e9-ae6f-b6c1d5bf3405.png)

## Changelog
🆑
fix: Light replacers will no longer turn invisible.
/🆑

* Fixes invisible light replacers

Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2022-12-08 13:36:13 +00:00
SkyratBot
f12c3ff6c3 [MIRROR] Fixes being able to get to centcomm and move through floors when in mechs/boxes [MDB IGNORE] (#17738)
* Fixes being able to get to centcomm and move through floors when in mechs/boxes (#71486)

## About The Pull Request
Fixes #71484 - Adds a check to the down verb to make sure a z level
exists below before trying to move.
Changes some step() in relay_move procs to use zMove instead if they
have a direction of up/down, as this was causing you to be able to phase
through floors if you were in a cardboard box/mech/etc
## Why It's Good For The Game

![dreamseeker_LuXqZUhvNg](https://user-images.githubusercontent.com/22856555/203672877-6b7da56c-494a-49dc-a8c8-13b15c2133eb.gif)
## Changelog
🆑
fix: Fixed being able to move through floors and get to centcomm when
moving up/down while inside mechs and similar movable objects.
/🆑

* Fixes being able to get to centcomm and move through floors when in mechs/boxes

* update modular

Co-authored-by: GoblinBackwards <22856555+GoblinBackwards@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2022-12-07 15:44:43 +00:00
SkyratBot
6074568bbc [MIRROR] Don't update radio icon unless necessary, don't create radios in vending machines until needed -- Saves 0.091s of init time [MDB IGNORE] (#17943)
* Don't update radio icon unless necessary, don't create radios in vending machines until needed -- Saves 0.091s of init time

* Update code/modules/vending/_vending.dm

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2022-12-07 03:05:41 +00:00
Hatterhat
6b6c81e4ae webedit health analyzer rmb fix (#17919)
* dear cell component: shit yourself

* grug

Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>

Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2022-12-05 15:38:24 -08:00
YakumoChen
4ec9d1055d Removed cell component from health analyzer (#17866)
Update health_analyzer.dm
2022-12-03 13:21:05 +00:00
SkyratBot
f4d302d5e5 [MIRROR] Removes Bombgers, by vibe checking your TTV bomb in the deep frying process [MDB IGNORE] (#17865)
* Removes Bombgers, by vibe checking your TTV bomb in the deep frying process (#71550)

<!-- Write **BELOW** The Headers and **ABOVE** The comments else it may
not be viewable. -->
<!-- You can view Contributing.MD for a detailed description of the pull
request process. -->

## About The Pull Request

TTVs now open their valve when deep fried. This either KERBLOOEYS the
kitchen, or proves the TTV is inert, and as such we don't care if it
goes in custom food or whatever. But that's a separate problem, letting
larger items enter smaller foods, or rather letting smaller foods stay
small when large items enter them

Fixes #71547
Closes #71548

## Why It's Good For The Game

God never intended for TTVs to be turned into easily concealed,
explosively delicious food. But I like my solution more than a
blacklist~

## Changelog

<!-- If your PR modifies aspects of the game that can be concretely
observed by players or admins you should add a changelog. If your change
does NOT meet this description, remove this section. Be sure to properly
mark your PRs to prevent unnecessary GBP loss. You can read up on GBP
and it's effects on PRs in the tgstation guides for contributors. Please
note that maintainers freely reserve the right to remove and add tags
should they deem it appropriate. You can attempt to finagle the system
all you want, but it's best to shoot for clear communication right off
the bat. -->

🆑
fix: TTVs can have an explosive reaction from deepfrying.
/🆑

<!-- Both 🆑's are required for the changelog to work! You can put
your name to the right of the first 🆑 if you want to overwrite your
GitHub username as author ingame. -->
<!-- You can use multiple of the same prefix (they're only used for the
icon ingame) and delete the unneeded ones. Despite some of the tags,
changelogs should generally represent how a player might be affected by
the changes rather than a summary of the PR's contents. -->

Co-authored-by: Time-Green <timkoster1@ hotmail.com>

* Removes Bombgers, by vibe checking your TTV bomb in the deep frying process

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: Time-Green <timkoster1@ hotmail.com>
2022-12-02 00:01:42 +00:00
YakumoChen
304ac65570 Removed cell component from megaphone (#17868)
Update megaphone.dm
2022-12-01 15:55:36 -08:00
SkyratBot
24fbd712a9 [MIRROR] Overlays for notifying when radios are on broadcast [MDB IGNORE] (#17630)
* Overlays for notifying when radios are on broadcast (#71006)

## About The Pull Request
Adds overlays for when the radios are on broadcast snd speaker

Theres 4 overlay settings, an "idle" (broadcasting or speaker enabled)
and "active" (flicked when recieving or sending a radio msg)

### SBR
The base icon is the screen being off, and the bars are seperated into
ovelays with the top one being broadcasting. The idle overlay displays
the bar short, while the active will make the bars animate like the
current animation)

having both off will make the antenna go down since its "not being used"

### Intercoms
Intercoms are simpler, just having lights on the speaker flash green if
the corresponding mode is active

### Headsets
Headsets are unaffected because of the small sprites.

except miner and explo headsets where the antenna will go down if both
are disabled bc its "not being used"

## Why It's Good For The Game
Helps you tell whether somone (like ai) is spying, makes it easier to
notice whether youee in broadcasting range of an intercom, and its a
cool immersion thing to ""see"" the mic readings on a sbr
## Changelog
🆑
add: radios have overlays for showing broadcasting settings
/🆑

Co-authored-by: candycanes <eastereggman@ nothing.com>
Co-authored-by: etherware-novice <candy@ notarealaddr.com>
Co-authored-by: Candycaneannihalator <candycane@ thisisnotarealaddr.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>

* Overlays for notifying when radios are on broadcast

* SR sprite updates

Co-authored-by: texan-down-under <73374039+etherware-novice@users.noreply.github.com>
Co-authored-by: candycanes <eastereggman@ nothing.com>
Co-authored-by: etherware-novice <candy@ notarealaddr.com>
Co-authored-by: Candycaneannihalator <candycane@ thisisnotarealaddr.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2022-12-01 10:26:56 -05:00
SkyratBot
1d6f69a4fa [MIRROR] Undertile Element Logic Refactor, or Catwalks Aren't Affected by Ambient Occlusion Anymore [MDB IGNORE] (#17845)
* Undertile Element Logic Refactor, or Catwalks Aren't Affected by Ambient Occlusion Anymore (#71555)

## About The Pull Request
It was bugging me how catwalks would just be stuck rendering on the game
plane in order to be above the pipes and all the other underfloor
objects, because it meant that they stood out due to being affected by
ambient occlusion.

So I decided to change that, and the best change I could come up with,
was to refactor the logic of `/datum/element/undertile` in order to
actually allow us to do exactly what we wanted by having three different
states of underfloor visibility, which in turn allowed me to slap
everything that wasn't accessible on the floor plane rather than
whatever plane they were on, effectively making it so catwalk tiles
wouldn't need to be on the game plane anymore. :)

Also fixes https://github.com/tgstation/tgstation/issues/63590 while I'm
at it :)

## Why It's Good For The Game
Seeing ambient occlusion on catwalks make them stand out in a jarring
way, now that won't be the case anymore!

Now, instead, you get something like this, which _absolutely_ looks like
it fits in!

![image](https://user-images.githubusercontent.com/58045821/204106823-95b77a6b-b9c1-4494-b2f8-3b586c42428c.png)

## Changelog

🆑 GoldenAlpharex
refactor: Refactored the way the undertile component works, to allow it
to have a bit more granularity as to when it's meant to be covered, but
still visible, like for catwalks!
fix: Catwalks no longer are affected by ambient occlusion, and now
properly feel like actual floor tiles.
/🆑

* Undertile Element Logic Refactor, or Catwalks Aren't Affected by Ambient Occlusion Anymore

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2022-11-30 18:13:35 -05:00
SkyratBot
a82fb5ba19 [MIRROR] Quantum keycards change color depending on the linked pad's location [MDB IGNORE] (#17796)
* Quantum keycards change color depending on the linked pad's location (#71518)

## About The Pull Request
aka: quantum pads with gags

Quantum keycards now light up depending on the linked pads
location/status, and the pads location will be visible on examine.
The card will be white if no pad is linked, the color of the department
the linked pad is in, or dark gray as a fallback.
## Why It's Good For The Game
Quantum keycards are impossible to organize, especially if you have
multiple on you. Differentiating your secret way into CE's office or
space could be vital. This helps to differentiate them and keep you
'safe'.
## Changelog
🆑
qol: quantum keycards light up with the department theyre in (or grey as
a fallback)
qol: quantum keycards are custom renamable w/ pen, to help keep em
organized
/🆑

Co-authored-by: etherware-novice <candy@ notarealaddr.com>
Co-authored-by: Candycaneannihalator <candycane@ thisisnotarealaddr.com>

* Quantum keycards change color depending on the linked pad's location

Co-authored-by: texan-down-under <73374039+etherware-novice@users.noreply.github.com>
Co-authored-by: etherware-novice <candy@ notarealaddr.com>
Co-authored-by: Candycaneannihalator <candycane@ thisisnotarealaddr.com>
2022-11-28 09:37:12 -05:00
SkyratBot
257feb1be7 [MIRROR] More horrible 515 proc compatibility. [MDB IGNORE] (#17671)
* More horrible 515 proc compatibility.

* Feex

* Hopefully we're done now

Co-authored-by: AnturK <AnturK@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2022-11-27 14:46:36 -08:00
SkyratBot
abd6980402 [MIRROR] Limits when Icebox's snow will alert you [MDB IGNORE] (#17746)
* Limits when Icebox's snow will alert you (#71485)

## About The Pull Request
Limits when you get alerted to icebox, to when you would need to know it

When youre in a mining area
If you're a miner
and If you can see the snow outside
then it will alert you, otherwise it hides the alert
and ghosts always get alerted
## Why It's Good For The Game
Getting alerted about incoming storms is annoying when you're indoors
for 80-100% of the shift, and just serves to clutter chat. Also, the way
its set up is modular and can be applied to any other weather condition
you'd want
## Changelog
🆑
fix: limits how much you get alerted by icebox storms
/🆑

Co-authored-by: Candycaneannihalator <candycane@ thisisnotarealaddr.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
Co-authored-by: etherware-novice <candy@ notarealaddr.com>

* Limits when Icebox's snow will alert you

Co-authored-by: texan-down-under <73374039+etherware-novice@users.noreply.github.com>
Co-authored-by: Candycaneannihalator <candycane@ thisisnotarealaddr.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
Co-authored-by: etherware-novice <candy@ notarealaddr.com>
2022-11-25 14:22:07 +00:00
SkyratBot
b9b6a803b0 [MIRROR] Throws a bunch of parenthesis around to ensure dear Aunt Sally is always properly excused. [MDB IGNORE] (#17654) 2022-11-22 19:44:59 -08:00
SkyratBot
fa9d8869e1 [MIRROR] Moves flick_overlay to atom instead of being global [MDB IGNORE] (#17529)
* Moves flick_overlay to atom instead of being global (#71045)

## About The Pull Request
Moves flick_overlay and flick_overlay_view to atom instead of being a
global proc
## Why It's Good For The Game
General performance and syntaxical improvements, makes it easier to
retrieve iconstates
## Changelog
🆑
fix: flick_overlay is an atom proc
/🆑

Co-authored-by: etherware-novice <candy@ notarealaddr.com>
Co-authored-by: Candycaneannihalator <candycane@ thisisnotarealaddr.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>

* Moves flick_overlay to atom instead of being global

* modular flick

Co-authored-by: texan-down-under <73374039+etherware-novice@users.noreply.github.com>
Co-authored-by: etherware-novice <candy@ notarealaddr.com>
Co-authored-by: Candycaneannihalator <candycane@ thisisnotarealaddr.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2022-11-17 17:26:07 -08:00
SkyratBot
441edb59ec [MIRROR] Ports Beestation's radio uplink [MDB IGNORE] (#17519)
* Ports Beestation's radio uplink (#71210)

## About The Pull Request
A port of https://github.com/BeeStation/BeeStation-Hornet/pull/7363

The radio uplink is now reworked to require saying a codeword over the
secret .d channel. This means that you can do it hands free, but people
around you can hear you whispering the codeword
## Why It's Good For The Game
Current radio uplink is dumb, it has a lot of drawbacks (losing common
radio, fiddling with the tgui slider, having to reset the frequency
after) that its almost unusable. This new uplink has a more unique
trigger method with its own ups and downs
## Changelog
🆑
add: New radio uplink! Simply speak your codeword into the :d channel to
unlock it
code: new COMSIG_RADIO_NEW_MESSAGE signal
/🆑

Co-authored-by: Candycaneannihalator <candycane@ thisisnotarealaddr.com>
Co-authored-by: Zephyr <12817816+ZephyrTFA@ users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>

* Ports Beestation's radio uplink

Co-authored-by: texan-down-under <73374039+etherware-novice@users.noreply.github.com>
Co-authored-by: Candycaneannihalator <candycane@ thisisnotarealaddr.com>
Co-authored-by: Zephyr <12817816+ZephyrTFA@ users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
2022-11-17 17:16:21 -08:00
SkyratBot
b58bdfb28d [MIRROR] Bluespace Light Replacer icon fix [MDB IGNORE] (#17530)
* Bluespace Light Replacer icon fix (#71148)

## About The Pull Request
update_icon broke the iconstate since it was hardcoded to use the
originals icons, this wasnt caught in development because update_icon
was originally overwritten
## Why It's Good For The Game
consistency
## Changelog
🆑
fix: bluespace light replacer displays icon correctly
/🆑

Co-authored-by: etherware-novice <candy@ notarealaddr.com>
Co-authored-by: Candycaneannihalator <candycane@ thisisnotarealaddr.com>

* Bluespace Light Replacer icon fix

Co-authored-by: texan-down-under <73374039+etherware-novice@users.noreply.github.com>
Co-authored-by: etherware-novice <candy@ notarealaddr.com>
Co-authored-by: Candycaneannihalator <candycane@ thisisnotarealaddr.com>
2022-11-17 17:37:29 -05:00
SkyratBot
618bb34eea [MIRROR] Strays away from GLOB.machines when possible [MDB IGNORE] (#17478)
* Strays away from GLOB.machines when possible (#71100)

## About The Pull Request

This replaces needless GLOB.machines with more precise lists whenever
one existed, plus adding a new one for CTF machines.

## Why It's Good For The Game

GLOB.machines holds every single /obj/machinery in the game, so checking
the whole list for stuff is pretty big. This aims to cut that down by
using smaller lists whenever possible. I also gave CTF a new list
because it checked machines very often.

## Changelog

Nothing player facing.

* Strays away from GLOB.machines when possible

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
2022-11-16 11:14:48 -05:00
Zonespace
f7c26bbf25 515 Compat (#17465)
* ONLY SKYRAT CHANGES

* ACTUALLY SKYRAT CHANGES

* yolo, revert later

* Update alternate_byond_versions.txt

Co-authored-by: AnturK <AnturK@users.noreply.github.com>
2022-11-15 06:59:06 +00:00
SkyratBot
b5bd312379 [MIRROR] Add investigate_deaths [MDB IGNORE] (#17424)
* Add investigate_deaths

* merge changes other than giant_spider which deps on tg/70848

* gib

* dust

* death

Co-authored-by: tattle <66640614+dragomagol@users.noreply.github.com>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2022-11-11 14:44:33 -05:00
SkyratBot
72950b1f6d [MIRROR] color codes job laser pointers [MDB IGNORE] (#17291) 2022-10-31 18:45:53 -07:00