Commit Graph

16514 Commits

Author SHA1 Message Date
SkyratBot
d9dfd52908 [MIRROR] OOC-ifies the Bluespace Tag [MDB IGNORE] (#20254)
* OOC-ifies the Bluespace Tag

* Update weapon_description.dm

---------

Co-authored-by: EOBGames <58124831+EOBGames@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-04-01 22:04:37 +01:00
SkyratBot
90e8f5f70f [MIRROR] "Biscuit" cards, and also now slip papers are actually paper! [MDB IGNORE] (#20240)
* "Biscuit" cards, and also now slip papers are actually paper! (#74329)

## About The Pull Request
**This is not a literal biscuit which you eat. "Biscuit" is just a
nickname of this kind of snap-cards.**
Slip paper is now actually paper, before that, it was just literally
nothing, an object which does nothing. Because of that, the paper cutter
was useless as well, as it turned normal paper into useless paper slips.
Because of this now paper cutters are placed at:

- Bridge
- HoP office
- Warden office
- Cargo

Also adds biscuit cards. If you have no idea what it is, it's a kind of
card placed around a piece of paper usually to conceal some document and
it can be opened by cracking it with a crunchy sound (that's why it's
named a biscuit). Those are usually only opened in certain situations or
emergencies (The most famous example is the US president's nuclear
biscuit, which contains nuclear codes)

There are 2 biscuits: Normal and Confidential.
Normal is a plain biscuit with nothing really special, can be coloured
if you want as it's white.

![image](https://user-images.githubusercontent.com/42353186/229195802-4ac5ad96-6083-47dc-9ccd-13d132f690bf.png)

The confidential biscuit is blue and has "NT" on it.

![image](https://user-images.githubusercontent.com/42353186/229195753-207d64f1-1f17-418e-a01a-8bfa2c4abc51.png)

There is a not-sealed biscuit you can print in autolathe, it starts open
so you can put paper in and seal later making it a normal crackable one.

Now spare ID safe code automatically spawns in a confidential biscuit in
a new paper slip subtype - corporate slip paper. It's a plastic card
which is sturdier than the normal paper clip.

![image](https://user-images.githubusercontent.com/42353186/229195696-07075f78-c736-43a9-bd14-5cf9ca36ddc9.png)

You can also create the corporate paper slip paper using - normal paper
slip, plastic, and captain rubber stamp (making this paper having a rare
status)

![image](https://user-images.githubusercontent.com/42353186/229195599-75807483-02f9-44cb-ae24-d3388b509ccd.png)

![image](https://user-images.githubusercontent.com/42353186/229195610-5a264ed4-8b04-4452-9032-5755e2419423.png)

## Why It's Good For The Game
Paper slips being not paper is stupid and has no point in being that
way. This also made the paper cutter useless; hence, it was never placed
on any map (and never used).
This PR makes it paper, so it's usable when crew members need a paper
slip instead of a full-size sheet.

Placing paper cutters around the station makes it so the crew can
produce paper slips when they need them, this also gives it finally a
use and place on the station.

The 'biscuits' are cool and give more flavour to the spare ID safe
codes, as well as to other documents people might put in future PRs.
This also makes those paranoid captains which are scared of their spare
ID safe code being stolen and read can sleep tight, as now if someone
opens it up it's really obvious. Now also you can really make sure if
that head is lying about "not touching the spare ID", _but not as anyone
cares really._

**Okay, it's draft for now just so I can add some new things, and fix
the dupe bug:**

- [x] Being able to fax the paper biscuits
- [x] Make it impossible to cut paper slips into paper slips
- [x] Make corporate paper slips craftable or printable
- [x] Make confidential biscuits craftable or printable
- [x] Make paper cutters orderable at the cargo

_CRUNCH_
## Changelog
🆑 DrDiasyl aka DrTuxedo#0931
add: Added 'biscuit' cards! They can contain documents and can only be
accessed by cracking them open, you can't close them back. Nanotrasen
now stores spare ID safe codes in them.
add: Placed paper cutters around the station. They're in Bridge, HoP
office, Warden office, and Cargo.
add: Now you can order paper cutters at cargo.
fix: Now the paper slip is actually paper.
imageadd: The paper slips sprite was slightly tweaked to have text lay
more logically, added the corporate paper slip.
/🆑

---------

Co-authored-by: san7890 <the@ san7890.com>

* "Biscuit" cards, and also now slip papers are actually paper!

---------

Co-authored-by: DrTuxedo <42353186+DrDiasyl@users.noreply.github.com>
Co-authored-by: san7890 <the@ san7890.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-04-01 21:19:17 +01:00
SkyratBot
7a64573c8b [MIRROR] Atmos QOL + Small Sprite Fix [MDB IGNORE] (#20243)
* Atmos QOL + Small Sprite Fix (#74251)

## About The Pull Request
Added screentips and balloon alerts to many atmos machines/pipes
Volume pump overclocking overlay is much slower and less seizure
inducing
RPD screentips for right clicking pipes to copy settings
Removed (RPD) from the RPD's name since having an abbreviation in the
name is ugly
Crystallizer and electrolyzer use ctrl+click and alt-click to turn on
On examine electrolyzer tells you about anchoring to drain from APC
instead of cell
## Why It's Good For The Game
QOL for atmos stuff, user friendliness and better experience
## Changelog
🆑
fix: Volume pump overclocking animation is much slower, no more
headaches
qol: Added screentips to the RPD; screentips and balloon alerts to many
atmos machines and devices
🆑

* Atmos QOL + Small Sprite Fix

---------

Co-authored-by: 13spacemen <46101244+13spacemen@users.noreply.github.com>
2023-04-01 21:12:18 +01:00
SkyratBot
b6601a2405 [MIRROR] March into Mapness: Meateor [MDB IGNORE] (#20233)
* March into Mapness: Meateor (#74070)

* March into Mapness: Meateor

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
2023-04-01 05:39:55 -04:00
SkyratBot
c14b1cf921 [MIRROR] Two small throw impact things [MDB IGNORE] (#20238)
* Two small throw impact things (#74386)

## About The Pull Request

- No use of weight class define in item throw impact
- No parent call in plate throw impact, despite checking `.`

## Changelog

🆑 Melbert
fix: Plates are no longer ephemeral when throwing at people.
/🆑

* Two small throw impact things

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2023-04-01 05:42:52 +01:00
SkyratBot
3464b6bfb2 [MIRROR] Refactors Regenerate Organs, and a few organ helpers [MDB IGNORE] (#20094)
* Refactors Regenerate Organs, and a few organ helpers

* MERGE CONFLICTS

* GETORGANSLOT > GET_ORGAN_SLOT

* GETORGAN > get_organ_by_type

* lint repairs

* more lint

* Update tgstation.dme

* Update surgery_step.dm

---------

Co-authored-by: Zephyr <12817816+ZephyrTFA@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-04-01 02:51:06 +01:00
Gandalf
e4b4d4d3c0 MISSED MIRROR [Lints Against Unmanaged Local Defines] (#20204)
* https://github.com/tgstation/tgstation/pull/74333

https: //github.com/tgstation/tgstation/pull/74333
Co-Authored-By: tattle <66640614+dragomagol@users.noreply.github.com>

* var stuff

Co-Authored-By: tattle <66640614+dragomagol@users.noreply.github.com>

* vars

* Update sol_fed.dm

---------

Co-authored-by: tattle <66640614+dragomagol@users.noreply.github.com>
2023-04-01 01:15:22 +01:00
SkyratBot
823cdf33b2 [MIRROR] Changes some silly visible messages [MDB IGNORE] (#20200)
* Changes some silly visible messages (#74353)

## About The Pull Request

These are not visible messages, they're audible messages pretending to
be visual for some reason.

## Why It's Good For The Game

Deafness consistency

## Changelog

🆑 Melbert
qol: Some sound related messages from Iv drips, turrets, and the nuke
toy are now audible to the blind / hidden from the deaf
/🆑

* Changes some silly visible messages

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2023-03-31 03:03:01 +01:00
SkyratBot
4e2e129d05 [MIRROR] Peacekeepers don't get a message about being confused [MDB IGNORE] (#20196)
* Peacekeepers don't get a message about being confused (#74235)

## About The Pull Request

Cyborgs don't get a message about phantom confusion during using of harm
alarm.

## Why It's Good For The Game

A fix(QOL)? for #71237

## Changelog

🆑 SishTis
qol: Peacekeepers cyborgs don't get message about being confused while
using harm alarm
/🆑

---------

Co-authored-by: san7890 <the@ san7890.com>

* Peacekeepers don't get a message about being confused

---------

Co-authored-by: Kush1Push1 <78963858+Kush1Push1@users.noreply.github.com>
Co-authored-by: san7890 <the@ san7890.com>
2023-03-31 03:01:43 +01:00
SkyratBot
fd112cfe9c [MIRROR] Adds the Dark Matt-eor when you emag a stupid amount of meteor shields + lots of meteor file sorting + qol + dark matter singularity + dark matt-eor summoning final traitor objective [MDB IGNORE] (#20178)
* Adds the Dark Matt-eor when you emag a stupid amount of meteor shields + lots of meteor file sorting + qol + dark matter singularity + dark matt-eor summoning final traitor objective

* singularity

* Update singularity_s1.dmi

---------

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: lessthnthree <three@lessthanthree.dk>
2023-03-29 21:25:00 -07:00
SkyratBot
6f622dba4a [MIRROR] Minor Nukie Thing: Bolt-action Sniper Rifle, balance coding, and some ammo changes [MDB IGNORE] (#20146)
* Minor Nukie Thing: Bolt-action Sniper Rifle, balance coding, and some ammo changes

* Update sniper.dm

---------

Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-03-29 23:20:58 +01:00
SkyratBot
41396aab45 [MIRROR] Adds IS_TRAITOR macro [MDB IGNORE] (#20153)
* Adds IS_TRAITOR macro (#74293)

## About The Pull Request
i was making another PR and found that we have cultist, heretic, and
nuke op IS macros but not one for traitors
this adds one and then replaces it where applicable, mostly in checks
where a traitor device does something different if you are not a traitor

## Why It's Good For The Game

better for people making traitor only devices to have this macro, as it
is more clear and also cleaner in general i think

## Changelog

🆑
code: adds IS_TRAITOR macro
/🆑

* Adds IS_TRAITOR macro

---------

Co-authored-by: Sol N <116288367+flowercuco@users.noreply.github.com>
2023-03-29 22:30:56 +01:00
SkyratBot
ba96aedf6d [MIRROR] Adds The Sturdy Shako (HoS Hat) [MDB IGNORE] (#20123)
* Adds The Sturdy Shako (HoS Hat) (#74277)

## About The Pull Request

Adds a new craftable HoS shako, made from the standard peaked cap and
some plasteel and gold.

![shako](https://user-images.githubusercontent.com/5479091/227799392-ad2ea145-5c58-45d7-8763-a76e9323ec09.png)

Moves the HoS cap into a subtype `/obj/item/clothing/head/hats/hos/cap`
to avoid catching the beret in the crafting recipe, the base type
`/obj/item/clothing/head/hats/hos` is now a generic subtype which should
never exist.

(Yes there's a TF2 reference included with the hat)

## Why It's Good For The Game

Adds an additional level of style for an HoS willing to put a little
effort into gathering the required materials. As it is crafted as a
one-to-one trade with another headgear there is no additional spare
headgear introduced.

## Changelog
🆑
add: The Nanotrasen Costuming Department has released specifications for
how to convert the Head of Security's cap into a shako.
/🆑

---------

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

* Adds The Sturdy Shako (HoS Hat)

---------

Co-authored-by: Thunder12345 <Thunder12345@users.noreply.github.com>
Co-authored-by: Jacquerel <hnevard@ gmail.com>
Co-authored-by: Fikou <23585223+Fikou@ users.noreply.github.com>
2023-03-29 22:25:53 +01:00
SkyratBot
fcd1b8bea0 [MIRROR] Remove janitor key UnregisterSignal [NO GBP] [MDB IGNORE] (#20122)
* Remove janitor key UnregisterSignal [NO GBP] (#74280)

## About The Pull Request

Removes UnregisterSignal when the janitor access key ring is destroyed.
Signal will clean itself up. Mentions adding janitor keys to the
Custodial Locator, which I forgot on the last PR
https://github.com/tgstation/tgstation/pull/74181

## Changelog
🆑 LT3
qol: Janitor access keys now show up on the Custodial Locator tablet app
/🆑

* Remove janitor key UnregisterSignal [NO GBP]

---------

Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
2023-03-29 22:25:32 +01:00
SkyratBot
88aa29085a [MIRROR] Adds bacteria rich moldy food to random trash spawners. [MDB IGNORE] (#20114)
* Adds bacteria rich moldy food to random trash spawners. (#74276)

## About The Pull Request
So, as bacteria bread from perma vendor was nerfed, the only way to
obtain mold for cytology is from the mini-fridges. And they won't even
spawn when needed. Correct me if i'm wrong.

And so this adds moldy breadslices and pizzaslices to
`random/trash/garbage` spawner which appears in trashcarts and in
trashbagsfrom the trashcarts. Also added it to `grille_or_waste` spawner
so it can just randomly spawn on the floor.

About the damp rag. Just thought that there should be at least some
piece of cloth at pile of garbage, as there is none at the moment. And
it's quite usefull also, you can clean yourself or your fingerprints
with it. Can cut it out if needed, not a big deal.
## Why It's Good For The Game
More chances to find what you want to do cytology.
Cytology slightly more practical.
Damp rag is usefull.
## Changelog
🆑
add: Bacteria rich moldy food (like breadslices and pizzaslices) now
spawn in trashcarts, trashbags and randomly on the floor.
add: Damp rag now spawns in the trashcarts and etc.
/🆑

* Adds bacteria rich moldy food to random trash spawners.

---------

Co-authored-by: Helg2 <93882977+Helg2@users.noreply.github.com>
2023-03-29 22:21:16 +01:00
SkyratBot
b780983464 [MIRROR] Debug ID Cards Can Now Use Vending Machines [MDB IGNORE] (#20113)
* Debug ID Cards Can Now Use Vending Machines (#74278)

## About The Pull Request

![image](https://user-images.githubusercontent.com/34697715/227799119-abbcf947-10ef-416d-a353-239b0544f56d.png)

This always pissed me off, and has been pissing me off for the last year
or so. I decided to sit down and figure out how to stop this from
occurring, and got it.
## Why It's Good For The Game

When I'm debugging several types of stuff regarding payment in my
pre-fabbed debug suit, I really don't want to fucking have to spawn yet
another ID card with an actual job on it and transfer money to that just
so I can use a vending machine, I WANT TO JUST USE THE VENDING
MACHINE!!! TIME IS PRECIOUS!!!

It does still draw from the station budget, but that's fine because this
is a debug card that is meant to be dangerous to hand out. It's a
debugger's tool. If you're concerned on people somehow getting it from
an admin and beign able to buy smokes from vending machines, they were
still able to withdraw money by alt-clicking on it before this change.
## Changelog
Nothing that really concerns players.

* Debug ID Cards Can Now Use Vending Machines

---------

Co-authored-by: san7890 <the@san7890.com>
2023-03-29 22:21:07 +01:00
SkyratBot
9faf2a16ec [MIRROR] Removes bepis Techweb and reworks tech disks in general [MDB IGNORE] (#20102)
* Removes bepis Techweb and reworks tech disks in general

* e

Co-Authored-By: san7890 <the@san7890.com>

* e

* it will be done

---------

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: Paxilmaniac <paxilmaniac@gmail.com>
2023-03-29 22:19:32 +01:00
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
79bb4facfc [MIRROR] Removes networks from the game [MDB IGNORE] (#20083)
* Removes networks from the game (#74142)

## About The Pull Request

This is a continuation of
https://github.com/tgstation/tgstation/pull/74085 - I announced in the
comments there that this would be my next PR, and this is it.

Removes SSnetwork, ``/datum/ntnet``,
``/datum/component/ntnet_interface``, ``var/network_root_id``, the
network unit test, and a lot of other things related to networks.

- NTNet circuits now check for an Ntnet relay, and uses signals to
operate.
- Logs in Wirecarp is now only for PDA and Ntnet Relay things, so you
can no longer see what ruins exist using it (why should Wirecarp know
that Oldstation spawned? The flavor is that they dont know its there).
- Removed it from MULEbots entirely, I don't think it even did anything
for them? Botkeeper seems to work without it, so it's possibly there
from pre-tgui PDAs.
- Moves assigning random names to a base proc instead of being tied to
network, this is things like random-naming scrubbers/vents. The behavior
hasn't changed at all.
- Makes Ntos work for consoles when relays are down, as the comments
said they're supposed to (because they're wired). I think this was an
accidental change on my part, so this is a revert of that.

## Why It's Good For The Game

Ntnet is ancient code that hasn't given us much that we can't do with
already existing alternatives, we've been slowly moving away from it for
init times, and though a large portion of that was limited to airlocks,
I still don't think this is a system worth keeping around.
It's way too complex to expect feature coders to do anything with it,
and too old with better alternatives for anyone to want to improve any
of it.

## Changelog

🆑
fix: Computers are now properly connected to Ethernet, and can use Ntos
when Relays are down.
refactor: Removes Ntnet and Ntnet interfaces, which was only used by
Ntnet circuits (which now directly checks for a Relay to work) and
MULEbots, which did nothing with it.
balance: Wirecarp no longer tells you what ruins spawned in a round,
instead it's limited to PDA logs, and tells you the source too. This
means the RD can catch someone running illegal programs if they don't
make any attempt at hiding it.
qol: Wirecarp logs is now set to save 300 at once, instead of 100 and
being increased to 300 by the RD during the round. This is pretty
insignificant, since there's no reason to NOT want as many logs as
possible.
/🆑

---------

Co-authored-by: Zephyr <12817816+ZephyrTFA@ users.noreply.github.com>

* Removes networks from the game

---------

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: Zephyr <12817816+ZephyrTFA@ users.noreply.github.com>
2023-03-27 03:28:18 +01:00
SkyratBot
6e029611ac [MIRROR] Implements AddTraits and RemoveTraits procs for adding/removing multiple traits + swag unit test [MDB IGNORE] (#19959)
* Implements AddTraits and RemoveTraits procs for adding/removing multiple traits + swag unit test

* MISSED MIRROR https://github.com/tgstation/tgstation/pull/71606

* Update modules_supply.dm

* Update tgstation.dme

---------

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-03-27 03:26:52 +01:00
SkyratBot
6d08ad8984 [MIRROR] Machines can now be pried open multiple times and maintain their initial densities [MDB IGNORE] (#20044)
* Machines can now be pried open multiple times and maintain their initial densities (#74163)

## About The Pull Request
These changes fix how machines are pried open with crowbars. Currently,
most machines can be pried open, but many of them have no method for
being closed again. This means they can be pried once, and then never
again (as their internal logic has them stuck in an "open" state).

Additionally, the densities of these machines is also inconsistent, as
density is tied to the procs for opening/closing machines (open =
non-dense, closed = dense). Thus, these new changes allow desired
densities to be passed to `open_machine()` and `close_machine()`, as
well as `default_pry_open()`, meaning that atypical machine densities
can be maintained (e.g. machines that should remain dense when open, or
non-dense when closed).

I've also added a `close_after_pry` boolean parameter to the
`default_pry_open()` proc, which determines whether to immediately close
a machine after opening it. This is useful for machines that don't
really have a use case for remaining open, often lacking a sprite to
represent this state as well.
* Note: Opening and immediately closing machines with this boolean will
still drop their contents onto the floor, but will now immediately
"close" in their logic, allowing for further prying attempts in the
future.

It's worth noting that this implements default density values for these
procs, which match the existing behavior for machines, so as to
(hopefully) not disrupt existing or expected machine behavior.

Two caveats to these changes currently exist:
1. On machines that immediately close after prying, the prying action
can now be spammed to the chat with repeated clicking. I'm uncertain if
this needs some sort of spam protection or if it's fine as is.
2. I've only been able to manually test this code. I'd love to write
unit tests for it, as it affects a lot of different machines, but don't
know where to begin with DM Unit Testing (or which files would be good
examples to reference in the code base).
* Note: I did manually test each and every machine that calls
`default_pry_open()` and they all seem to be working correctly. (Except
for `obj/machinery/plumbing/sender`, but that doesn't seem to need
prying, as it has no contents to drop, only reagents.)

As always, let me know if any improvements/changes should be made.

This closes #26833.

## Why It's Good For The Game
These changes allow crowbar prying to correctly occur multiple times on
any machine, which is intended behavior. It prevents player confusion
that could occur when a machine couldn't be pried open a second time
during a shift, even though it had previously been pried before, forcing
players to question themselves. (Are they missing something? Did they
perform the action a different way last time? Is the machine actually
still powered on instead of off? Etc.)

These changes also maintain the correct density for machines after
prying, preventing scenarios where a machine might behave differently
once it had been pried open. (An example of this was being able to walk
through a smartfridge after prying it open.) Additionally, players are
no longer required to know/use workarounds (such as machine disassembly)
to retrieve a powered-off machine's contents.

Overall, these changes improve consistency around machines, creating
more scenarios where they behave as players would expect.

## Changelog
🆑
fix: machines can now be pried open more than once.
fix: machines now have the correct density when pried open.
/🆑

---------

Co-authored-by: san7890 <the@ san7890.com>

* Machines can now be pried open multiple times and maintain their initial densities

* wew

---------

Co-authored-by: Antonio Tosti <5588048+atosti@users.noreply.github.com>
Co-authored-by: san7890 <the@ san7890.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-03-27 02:36:29 +01:00
SkyratBot
e9e7d7a461 [MIRROR] Minigame DLC - Intergalactic Basketball League [MDB IGNORE] (#20048)
* Minigame DLC - Intergalactic Basketball League (#72459)

## About The Pull Request
New DLC bout to drop.

![dreamseeker_45s0qiPMXE](https://user-images.githubusercontent.com/5195984/210466427-35b90d46-6620-45e2-8b21-66d1dcada76f.png)

Lots of new things included:
- New basketball minigame that can be played between 2-7 players
- Crafting recipe for basketballs using leather sheets
- Crafting recipe for basketball hoops using metal, rods, and durathread
- New basketball sounds for the ball and hoops
- New scorecard that can be reset using CtrlClick
- Basketball hoops can be rotated using a wrench and AltClick
- Dunking and shooting animations.

### New basketball mechanics that now utilize stamina:

- Dunking costs large stamina and you must be directly adjacent to the
hoop and click on it.
- Shooting costs medium stamina and uses RMB. Shooting lets you aim the
ball over peoples heads, meaning anyone obstructing your path will be
bypassed. There is a half second delay during shooting where someone can
bump or push to prevent the shot from succeeding.
- Shooting from further away results in less accuracy. If you do not
click directly on the hoop, there is also an accuracy penalty!
- Passing costs no stamina and uses LMB. Trying to score into the hoop
via passing results in a reduced chance.
- Spinning costs medium stamina while holding the ball. It gives a
reduced chance for the ball to be stolen but decreases accuracy for
shooting.
- Pushing a player using RMB will attempt to steal the ball and drain
their stamina.
- The chance to steal the ball is based on the stamina of both players
and the direction they are facing. If the person with the ball is at low
stamina, and the person stealing is at full stamina, they will have a
higher chance. Likewise, if the person with the ball is face to face
with the stealer, then there is a higher chance for the ball to be
stolen. If the person has their back to the stealer, then it's a lower
chance.
- Shooting from more than 2 tiles away, results in 3 points. See below
picture to know the distance.

![dreamseeker_1iFLhQGx01](https://user-images.githubusercontent.com/5195984/210469319-162b9745-fcae-4261-92ef-228388eb4f6f.png)

### Now to introduce the teams:

<details>
<summary>Nanotrasen Basketball Department</summary>

![dreamseeker_baSqp2nipv](https://user-images.githubusercontent.com/5195984/210469887-9e0a92d5-d4bd-4da8-9e73-b11d91fdfcd8.png)

</details>

<details>
<summary>Greytide Worldwide</summary>

![dreamseeker_quzZ3KnwpX](https://user-images.githubusercontent.com/5195984/210469923-ed774656-f5cc-43bc-8314-f8309a01c474.png)

</details>

<details>
<summary>Lusty Xenomorphs</summary>

![dreamseeker_VDeT3JQkNF](https://user-images.githubusercontent.com/5195984/210469944-a229e0cc-4b2e-4754-a0b4-6b36953dca2e.png)

</details>

<details>
<summary>Space Surfers</summary>

![dreamseeker_Dh91fznQbN](https://user-images.githubusercontent.com/5195984/210469963-9a85b4e3-b69d-4b66-8c96-4e2ff2b3b983.png)

</details>

---

Big shoutout to the nukie round a few weeks ago where the nuke ops
challenged the crew (and clown) to a basketball match on their rebuilt
basketball shuttle. The nukies won, but it made me realize that the
basketball mechanics were very raw and needed some polishing.

#### TODO LIST

- [x] Fix bug where ball only goes over peoples heads if they are 1 tile
away
- [x] Remove leftover code comments and procs
- [x] Rebalance stamina values (maybe move this to different ball types)
- [x] Fix basketball stadium template runtiming from wall smoothing
during load
- [x] Fix space surfer stadium having an air breach somewhere
- [x] Add more sounds for when ball is passed, shot, or dunked
- [x] Make it so that holding a ball while on the floor isn't possible
(to avoid those meta cheese strats)
- [x] Drop basketball lets mobs make sounds when spinning (need to
detach signal?)
- [x] Finish adding a simple lobby menu for minigame

## Why It's Good For The Game
_If you can't slam with the best, then jam with the rest._

## Changelog
🆑
add: Add crafting recipe for basketballs (leather sheets) and basketball
hoops (metal, rods, and durathread)
add: Add new basketball minigame for 2-7 players. There are 4 different
courts and teams by default with more planned to be added later.
add: New basketball mechanics that uses stamina. Shoot with RMB, pass
with LMB, and dunk by clicking the hoop while adjacent. Spinning while
holding the ball decreases the chance for someone to steal the ball, but
it decreases your shooting accuracy. Shooting from 2 tiles away lets you
score 3 points.
qol: Basketballs now play a buzzer sound when someone scores. CtrlClick
will reset the scorecard and AltClick with a wrench will rotate the
hoop.
qol: Dunking and shooting animations for basketball.
soundadd: Added basketball bounce sound with credits attribution
imageadd: Added basketball icon to minigames. Move baseball and
dodgeball icons to toy/balls.dmi
/🆑

* Minigame DLC - Intergalactic Basketball League

* Update CentCom_skyrat_z2.dmm

* raptor

---------

Co-authored-by: Tim <timothymtorres@gmail.com>
Co-authored-by: lessthnthree <three@lessthanthree.dk>
Co-authored-by: Paxilmaniac <paxilmaniac@gmail.com>
2023-03-27 02:24:29 +01:00
SkyratBot
96be018eb1 [MIRROR] Refactors Suiciding Variable Into Trait [MDB IGNORE] (#20017)
* Refactors Suiciding Variable Into Trait

* suicide

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

MISSED IRROR

* better suicide handling

---------

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: lessthnthree <three@lessthanthree.dk>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-03-27 02:03:05 +01:00
SkyratBot
12248f3363 [MIRROR] Changes guillotine tips to span_notices and fixes a bug about it. [MDB IGNORE] (#20082)
* Changes guillotine tips to span_notices and fixes a bug about it. (#74161)

## About The Pull Request
Current description of guillotine isn't quite comfortable to read so i
changed it to span_notices.

![image](https://user-images.githubusercontent.com/93882977/226696195-79877a24-5598-4114-b527-157470119ec0.png)

![image](https://user-images.githubusercontent.com/93882977/226696207-fabece9e-db73-4db0-acf0-e862cbe6f5cb.png)
Also fixed a bug, which occurs if you try to behead already beheaded
body and then you just can't use the guillotine anyway.

## Why It's Good For The Game
yee
## Changelog
🆑
qol: guillotine description tips are now span_notices (blue text)
instead of just a bunch of grey text.
fix: fixed a bug that if you try to behead body without a head with
guillotine it just stops working.
/🆑

---------

Co-authored-by: san7890 <the@ san7890.com>

* Changes guillotine tips to span_notices and fixes a bug about it.

---------

Co-authored-by: Helg2 <93882977+Helg2@users.noreply.github.com>
Co-authored-by: san7890 <the@ san7890.com>
2023-03-26 02:00:21 -07:00
SkyratBot
629941e590 [MIRROR] Turns stickers into a component and an element [MDB IGNORE] (#20071)
* Turns stickers into a component and an element (#74091)

## About The Pull Request
Adds /datum/element/sticker, and /datum/component/attached_sticker
Sticker items now mostly operate off /datum/element/sticker
The sticker element, hooks the whole "attach to stuff" and adds the
attached_sticker component to its target
The attached_sticker component, adds the overlay, hooks the clean and
on-fire signals.

## Why It's Good For The Game

Allows to check if a sticker is present on an object (which I will use
later)
Code is probably cleaner???

## Changelog
🆑
refactor: Stickers use a component and an element now to do their
sticking
/🆑

* Turns stickers into a component and an element

---------

Co-authored-by: jimmyl <70376633+mc-oofert@users.noreply.github.com>
2023-03-26 01:58:13 -07:00
SkyratBot
570cb5f015 [MIRROR] [NO GBP] Aux construction console RCD works again. [MDB IGNORE] (#20024)
* [NO GBP] Aux construction console RCD works again. (#74158)

## About The Pull Request
Fixes #74145

Forgot to make aux construction console RCD use `afterattack()`.

🆑
fix: aux construction console RCD works again
/🆑

* [NO GBP] Aux construction console RCD works again.

---------

Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com>
2023-03-26 01:52:18 -07: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
ebb19783dc [MIRROR] Fixes atmos machinery breaking when the area is edited/renamed via station blueprints & Deletes empty areas, ARCD upgrades [MDB IGNORE] (#19904)
* Fixes atmos machinery breaking when the area is edited/renamed via station blueprints & Deletes empty areas, ARCD upgrades

* areas

---------

Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com>
Co-authored-by: lessthnthree <three@lessthanthree.dk>
2023-03-25 23:54:59 -07:00
SkyratBot
dbb6c5fba4 [MIRROR] Adds non-clothing item equipping others feedback messages [MDB IGNORE] (#19881)
* Adds non-clothing item equipping others feedback messages (#73982)

## About The Pull Request
Things like pens weren't giving any feedback messages when you put them
on someone else, and I ran into this while working on another PR so I've
dealt with that

Renames `worn_dangerous` to `show_visible_message` as it was only used
to confirm if there would be visible messages or not
The `DANGEROUS_OBJECT` clothing flag is a trait now, so it can be put on
non-clothing items too
Removing non-clothing items from someone has been unchanged.

## Why It's Good For The Game
People should be able to identify that someone is putting something on
them, and recognize what that is if they pay attention.
This means that a player cannot reverse pickpocket a grenade onto
someone else without giving any indication of doing so

## Changelog

🆑
balance: Putting a non-clothing item onto someone else creates a visible
message the same way a clothing item would.
/🆑

* Adds non-clothing item equipping others feedback messages

---------

Co-authored-by: ArcaneDefence <51932756+ArcaneDefence@users.noreply.github.com>
2023-03-25 23:28:13 -07:00
SkyratBot
1dfa169dda [MIRROR] Fixes decals not layering as expected in world [MDB IGNORE] (#20078)
* Fixes decals not layering as expected in world (#74232)

## About The Pull Request

They just... were not passing their layer into the element. Stupeeed
Rearranges some layers to ensure things work as they do now

## Why It's Good For The Game

Closes #74165
Should fix weird decal layering. If it doesn't yell at me.

## Changelog
🆑
fix: Fixes decals layering weird in some cases
/🆑

* Fixes decals not layering as expected in world

---------

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2023-03-25 23:26:26 -07:00
SkyratBot
7fe3ebcaf7 [MIRROR] Fixes Ice Slipping, Refactors noslip mechanics, Allows magboots to prevent slip slides (but not the slip itself) [MDB IGNORE] (#19874)
* Fixes Ice Slipping, Refactors noslip mechanics, Allows magboots to prevent slip slides (but not the slip itself)

* Update snail.dm

* NOSLIP

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
Co-authored-by: lessthnthree <three@lessthanthree.dk>
2023-03-25 23:22:58 -07:00
SkyratBot
f54d999047 [MIRROR] Bioscrambler scrambles your organs again [MDB IGNORE] (#20042)
* Bioscrambler scrambles your organs again

* Update _organ.dm

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
Co-authored-by: lessthnthree <three@lessthanthree.dk>
2023-03-25 02:17:34 -07:00
SkyratBot
1210dfb9ef [MIRROR] Adds wire brush to janivend and janiborg. Also adds ability to put it in janibelt. [MDB IGNORE] (#20012)
* Adds wire brush to janivend and janiborg. Also adds ability to put it in janibelt.

* merge conflicts

---------

Co-authored-by: Helg2 <93882977+Helg2@users.noreply.github.com>
Co-authored-by: lessthnthree <three@lessthanthree.dk>
2023-03-25 01:28:55 -07:00
SkyratBot
552ae21e61 [MIRROR] Dump ejected implant contents onto our turf, not inside our mob [MDB IGNORE] (#19996)
* Dump ejected implant contents onto our turf, not inside our mob (#74120)

## About The Pull Request

Fixes #74119
This was probably a victim of the storage refactor.
When removing items, it was dumping them _inside the mob_ rather than on
the floor, additionally it was putting mob blood on every item already
inside the mob rather than on the items being dumped for some reason?
Now it doesn't do that.

## Why It's Good For The Game

Removing a storage implant from someone should dump the items, not trap
them in your body.

## Changelog

🆑
fix: Removing a storage implant from someone will dump the items on the
ground rather than inside the mob.
/🆑

* Dump ejected implant contents onto our turf, not inside our mob

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
2023-03-25 01:08:56 -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
5cf7d03295 [MIRROR] Roundstart Xeno egg deliveries create a Captive Xenomorph team, gives regular xenos a fluff objective so their popup isn't blank. [MDB IGNORE] (#20041)
* Roundstart Xeno egg deliveries create a Captive Xenomorph team, gives regular xenos a fluff objective so their popup isn't blank. (#73852)

## About The Pull Request

Xenomorphs who are a product of the roundstart xenobio egg delivery will
now spawn as "Captive Xenomorphs", who receive an objective to break
containment. Here's how it works:

When a delivery egg is generated that area will be marked as the
"captivity area". Xenomorphs born within this area now have their own
team, and have their own section in the roundend report that will
greentext them based on if they were able to survive and escape
captivity. Xenomorphs born outside of this area will spawn as normal
Xenomorphs, with no escape objective or special fanfare.

To further encourage people from actually taking the role and
potentially resigning themselves to an hour in Xenobio CBT prison, the
first of the hive gets their own header on the roundend report.

(When I say "team" here, I mean they receive a different antag team
datum. They're still able to collaborate and cooperate with other
Xenomorphs, they just have a different title and extra objective in
addition to the bonus roundend report limelight.)

![image](https://user-images.githubusercontent.com/28870487/223782098-4659f7cc-c8d7-44d8-afbf-30ebbc17b9bb.png)

![image](https://user-images.githubusercontent.com/28870487/223765028-e285d810-a751-473f-a821-5fb2679b2f13.png)

(This also adds a basic "survive and advance the hive" objective for all
xenomorphs, since their objective popup was otherwise completely blank).

Since the captivity area is entirely dependent on the location of the
egg itself, admins can plop one of these down anywhere, and mappers
don't have to put the egg mapping helper specifically in Xenobio.

For clarification -- To be qualified for the Captive Xenomorph team, **a
delivery egg must be spawned**, and the xeno you inhabit must be born in
the same area the egg was spawned. If the queen breaks captivity and
starts nesting elsewhere on the station, their children will be born as
normal Xenomorphs, not Captive Xenomorphs.

## Why It's Good For The Game

Adds a bit of distinction, and gives bragging rights, to anyone bold
enough to take a roundstart xeno roll and escape with it.

The Xeno egg delivery is already rare enough, I think it deserves a bit
more fanfare (especially considering the dramatic impact it sometimes
has on the direction of a round).

## Changelog
🆑
add: Xenomorphs born in the room the roundstart delivery egg was spawned
in will be part of a special "captive xenomorph" team, tasked with
escaping and tracked in the roundend report.
fix: Regular Xenomorphs no longer receive a blank objectives popup on
spawn.
/🆑

* Roundstart Xeno egg deliveries create a Captive Xenomorph team, gives regular xenos a fluff objective so their popup isn't blank.

---------

Co-authored-by: Rhials <Datguy33456@gmail.com>
2023-03-24 08:52:19 -07:00
SkyratBot
2e1086d89d [MIRROR] Macro Helper For Re-Used Turf_Decal Patterns [MDB IGNORE] (#20050)
* Macro Helper For Re-Used Turf_Decal Patterns (#74171)

![image](https://user-images.githubusercontent.com/34697715/226807239-92f9f2b9-d5ec-4ce9-a023-2e13219aee62.png)

oh that's sexy

<!-- 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

Hey there, blast from the past PR format. Can you spot the issue here?

![image](https://user-images.githubusercontent.com/34697715/226803527-6554007a-07ce-4f68-aabd-a5baacd33c50.png)

Well, I did while working on #74169, and it pissed me off. This is a
really simple pattern, and the only reason why it's just copypasted (and
prone to such errors) is because no one took the time to do it properly
like this. So, I just decided to do it while I had time today. Very
nice.

I also removed all the names because there was no point in them: in all
contexts you would be operating off the typepath, the name would never
come up. like so:

![image](https://user-images.githubusercontent.com/34697715/226807007-c5531f18-64ee-4ca7-b9d8-8f1ac24f3a24.png)

memory save? it's just un-needed anyways

<!-- 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

Silly error proofing is nice! Way easier to add new colors! No need to
ctrl+c/ctrl+v everything to death anymore! whoopie

<!-- 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. -->

Nothing that players should fret about.

<!-- 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. -->

* Macro Helper For Re-Used Turf_Decal Patterns

---------

Co-authored-by: san7890 <the@san7890.com>
2023-03-24 08:47:00 -07:00
SkyratBot
8cc890658e [MIRROR] Access Keys list and destroy proc [MDB IGNORE] (#20046)
* Access Keys list and destroy proc (#74181)

## About The Pull Request

- Puts recently added access key rings into the janitor devices list
- Access key rings now tracked in Custodial Locator tablet app
- Access key rings unregister their department signal when destroyed

## Why It's Good For The Game
Management of access key rings.

## Changelog

🆑 LT3
code: Access key rings added to list on creation
code: Access keys unregister signal when destroyed
/🆑

---------

Co-authored-by: san7890 <the@ san7890.com>

* Access Keys list and destroy proc

---------

Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
Co-authored-by: san7890 <the@ san7890.com>
2023-03-23 21:41:11 -07:00
SkyratBot
c3219b2ae2 [MIRROR] Fixes gondola meatslab not being able to be placed into infuser [MDB IGNORE] (#20038)
* Fixes gondola meatslab not being able to be placed into infuser (#74173)

## About The Pull Request

https://github.com/tgstation/tgstation/pull/73796 Seems to have made it
so that gondola meat is used in the infuser instead of its body, which
turns into meat on death. The issue with that is the meat slab does not
have the `GORE` flag and so was rejected by the infuser.

As per
afe6ecc353/code/game/machinery/dna_infuser/dna_infuser.dm (L294-L297)

Looking at the code this should fix it right up.

## Why It's Good For The Game

Bugfix

## Changelog
🆑
fix: fixes gondola meatslab not being able to be placed into the DNA
infuser
/🆑

* Fixes gondola meatslab not being able to be placed into infuser

---------

Co-authored-by: Bloop <vinylspiders@gmail.com>
2023-03-22 22:47:36 -07:00
SkyratBot
91b2287d39 [MIRROR] Fix missing meat clown food types [MDB IGNORE] (#20014)
* Fix missing meat clown food types (#74146)

🆑 coiax
fix: Fixed missing food types for the meat clown, it is now meat and
fruit.
/🆑

Liked by lizards, toxic to moths, and neutral to humans and felnids in
terms of species biases.

The construction recipe is steak + banana, but the resulting product has
no food types, making it blandly suitable for everyone. This is an
oversight. Not everyone will like a mixture of banana and flesh.

* Fix missing meat clown food types

---------

Co-authored-by: Jack Edge <yellowbounder@gmail.com>
2023-03-22 00:47:59 -07:00
SkyratBot
a3f22bdcb0 [MIRROR] Adds the Janitor access keyring [MDB IGNORE] (#19993)
* Adds the Janitor access keyring

* skyrat edits

* changelog

---------

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: lessthnthree <three@lessthanthree.dk>
2023-03-20 11:11:04 -07:00
SkyratBot
cba0f20e0a [MIRROR] [no GBP] non-organic human species can be implanted [MDB IGNORE] (#19976) 2023-03-20 09:03:44 -07:00
SkyratBot
f149912dbd [MIRROR] Fix holo signs being able to be frozen [MDB IGNORE] (#19980)
* Fix holo signs being able to be frozen (#74103)

🆑 coiax
fix: Holosigns, like the atmos holofan, can no longer be frozen by low
temperature water vapour.
/🆑

Seen this a couple of times where a holofan's been "frozen" which is
quite silly.

This won't actually _do_ anything until #74102 is merged though, but
let's keep our changes separate.

* Fix holo signs being able to be frozen

---------

Co-authored-by: Jack Edge <yellowbounder@gmail.com>
2023-03-20 00:16:17 -07:00
SkyratBot
705e8d81f0 [MIRROR] Fix inconsistency in FREEZE_PROOF flag [MDB IGNORE] (#19979)
* Fix inconsistency in FREEZE_PROOF flag (#74102)

Although all objects that _have_ the flag attach it to
`resistance_flags` (which is what the define location implies it's
supposed to be set on), all the code that checked it for the purposes of
applying the freezing element used `obj_flags`.

As far as I can tell, that meant the only things immune to freezing were
things that "blocked z falling from above".

Also, freezing only happens with some obscure weapons and low
temperature water vapour, but hey 🤷.

🆑 coiax
fix: Coffee cups are now correctly immune to becoming frozen by low
temperature water vapour.
/🆑

---

Shout out to RaveRadbury who helped me with debugging this.

* Fix inconsistency in FREEZE_PROOF flag

---------

Co-authored-by: Jack Edge <yellowbounder@gmail.com>
2023-03-20 00:15:38 -07:00
SkyratBot
e7afde2a85 [MIRROR] Bone gel now spawns in stacks of 4 inside Paramedic and Medical ERT belts [MDB IGNORE] (#19943)
* Bone gel now spawns in stacks of 4 inside Paramedic and Medical ERT belts (#74063)

## About The Pull Request
Bone gel spawned inside player medical belts, for the roles of Paramedic
and Medical ERT, now spawns in a stack of 4. Previously they would spawn
with only a single stack. This new amount matches the stack size
received when purchasing the identical item from a Nanomed, or ordering
it in a Cargo crate.

As such, this change creates consistency around the number of uses in an
fresh, "unopened" bottle of bone gel.

## Why It's Good For The Game
Creating a uniform, default stack size for bone gel keeps interactions
with the item consistent and predictable. In the case of paramedics,
their starting kit also includes 5 stacks of surgical tape, so having a
few stacks of bone gel matches the player expectation that they have
enough supplies to treat a few instances of each type of injury (rather
than only one).

Addressing this discrepancy also Closes #71393.

## Changelog
🆑
balance: Bone gel now spawns in stacks of 4 in Paramedic and Medical ERT
belts
/🆑

* Bone gel now spawns in stacks of 4 inside Paramedic and Medical ERT belts

---------

Co-authored-by: Antonio Tosti <5588048+atosti@users.noreply.github.com>
2023-03-18 11:21:40 -07:00
SkyratBot
c03fc1ffd0 [MIRROR] Fixes some incorrect uses of rand() [MDB IGNORE] (#19910)
* Fixes some incorrect uses of `rand()` (#74032)

## About The Pull Request

`Rand` only takes integers

![image](https://user-images.githubusercontent.com/51863163/225454770-bdb70aca-ed43-4c17-a943-2ec99720b53d.png)

![image](https://user-images.githubusercontent.com/51863163/225454784-8f9cc053-8e7d-46fd-b6b2-42efb0751d5e.png)

## Why It's Good For The Game

Less misleading code

## Changelog

🆑 Melbert
fix: Lead batteries now start partially drained as intended.
/🆑

* Fixes some incorrect uses of `rand()`

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2023-03-18 03:26:13 -07:00
SkyratBot
e13e921d75 [MIRROR] Adds the Snatcherprod. It steals stuff from peoples hands and puts it into yours! [MDB IGNORE] (#19882)
* Adds the Snatcherprod. It steals stuff from peoples hands and puts it into yours! (#73746)

## About The Pull Request

Adds the Snatcherprod, the telecrystal version of the teleprod. It
yoinks an item out of the victim's hand, and puts it into yours. Or on
the ground, if your hands are full.

You make it like you would a teleprod, but using a telecrystal instead.

## Why It's Good For The Game

It was a funny joke I observed. Also I'm deeply sleep deprived and so my
better judgement eludes me during these capricious moments.

## Changelog
🆑
add: Adds the Snatcherprod. Like a teleprod, but it steals stuff from
peoples hands instead. Made using a telecrystal, rather than a bluespace
crystal.
/🆑

---------

Co-authored-by: John Willard <53777086+JohnFulpWillard@ users.noreply.github.com>

* Adds the Snatcherprod. It steals stuff from peoples hands and puts it into yours!

---------

Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
Co-authored-by: John Willard <53777086+JohnFulpWillard@ users.noreply.github.com>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
2023-03-18 03:24:31 -07:00
SkyratBot
ea588b56cb [MIRROR] Adds tooltips for pneumatic cannon, changes powerfist's tooltip slightly and fixes some bugs about it. [MDB IGNORE] (#19926)
* Adds tooltips for pneumatic cannon, changes powerfist's tooltip slightly and fixes some bugs about it. (#73922)

## About The Pull Request
Adds tooltips for screwdriver and wrench with it's pressure level. It'll
look like this:

![image](https://user-images.githubusercontent.com/93882977/224517382-b8bd8c32-2256-4516-8318-b9e52cd67f31.png)
And an image of how it look's at the moment just to compare:

![image](https://user-images.githubusercontent.com/93882977/224512677-5899722c-1e79-4975-afd2-2bf741adf829.png)

Also changed powerfist's tooltip slightly:

![image](https://user-images.githubusercontent.com/93882977/224842693-d0574328-2da3-467a-8fd5-f10d70e08da1.png)
And another image for comparison again:

![image](https://user-images.githubusercontent.com/93882977/224517677-4790add6-f433-49bd-93bf-6d4a498955f4.png)

You weren't able to put wrench in it, because it combined both LMB and
RMB tool_acts, deleted the part with RMB as screwdriver uses LMB.

And for some reason you could put air tanks in pie guns and adjust its
pressure level. Like is there even a purpose of it? It'll just hiss.
## Why It's Good For The Game
## Changelog
🆑
qol: added tooltips for pneumatic cannon. Also changed powerfist's
tooltips slightly.
fix: fixed that you can't put wrench in pneumatic cannon.
fix: fixed that you can manipulate with pie gun as if it's a normal
pneumatic cannon (adjust air tank, wrench it's output level's and etc.)
/🆑

* Adds tooltips for pneumatic cannon, changes powerfist's tooltip slightly and fixes some bugs about it.

---------

Co-authored-by: Helg2 <93882977+Helg2@users.noreply.github.com>
2023-03-18 03:18:43 -07:00
SkyratBot
fe6d130044 [MIRROR] EMP no longer turns off defib safeties [MDB IGNORE] (#19931)
* EMP no longer turns off defib safeties (#74018)

## About The Pull Request

EMP can no longer disable safeties on defibs

## Why It's Good For The Game

Rewarding people with a slightly stronger baton that you don't drop when
you get knocked down for literally just mixing a crushed can and like
two common ingredients is a terrible idea.

edit: also ignores shielding and blocks
## Changelog
🆑
balance: You can no longer EMP defibrillators to make them combat-usable
/🆑

* EMP no longer turns off defib safeties

---------

Co-authored-by: jimmyl <70376633+mc-oofert@users.noreply.github.com>
2023-03-18 03:17:09 -07:00
SkyratBot
408f0e9c5a [MIRROR] Audits usage of isanimal() vs isanimal_or_basic_mob() [MDB IGNORE] (#19938)
* Audits usage of isanimal() vs isanimal_or_basic_mob() (#74029)

## About The Pull Request

There's a couple of open issues which fix places where only simple
animals were considered, but they are doing it piecemeal.
I decided to just go through every instance of `isanimal` or
`subtypesof(mob/living/simple_animal)` I could find, identify which
should also affect basic mobs, and fix them.

I left out the two others which are already in PR, I'm not stealing your
GBP.

Fixes https://github.com/tgstation/tgstation/issues/68881

## Why It's Good For The Game

Consistency, mostly.
As far as I can tell all of these things _should_ have effected basic
mobs, but didn't.
This fixes a fair number of bugs but also they're bugs that nobody
noticed or reported.

There are a couple of places I did not update which will need updating
in future. These are:
- Dextrousness checks, because basic mobs don't have that yet.
- The Charge cooldown action, because frankly I couldn't tell what it
was trying to do.

alright here goes

## Changelog

🆑
fix: Carp will once again be healed from being near carp rifts
fix: Sepia slime cores and the rewind camera now work on Ian
fix: Sapient ridden carp (or cows) can throw off their riders by shoving
them, or by performing the spin emote.
fix: Giant Spider AI will be disabled by the timestop spell
fix: Ian can eat envirochow
fix: Mice, Frogs, and Cockroaches will no longer set off bear traps
fix: You can put a macrobomb implant into Cayenne (or Ian)
fix: Ian will now recognise that being squeezed by a cyborg is a nice
hug
fix: The player panel will tell admins if you're currently a corgi
fix: The staff of storms deals massive damage to Bileworms and Giant
Spiders
fix: Ian will whimper if forced to scream
fix: Slimes can consume space carp
fix: Mice can be captured in xenoballs
fix: You can use pacifying potions on Giant Spiders
fix: Sgt Araneus can be fitted with a xenobiological radio implant
fix: Sapient corgis no longer count as living players for the purpose of
highlander escape objectives
fix: The random sentience event can now target corgis and sergeant
araneus
add: The random sentience event can target a wider array of farm animals
fix: Petsplosion wizard event can target corgis
add: Petsplosion wizard event will now target farm animals and
mothroaches
fix: The colossus possession crystal can now actually possess the
cockroach it spawns, does not kill you instantly upon ending possession
/🆑

* Audits usage of isanimal() vs isanimal_or_basic_mob()

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
2023-03-18 03:15:31 -07:00