Commit Graph

16432 Commits

Author SHA1 Message Date
projectkepler-ru
62457184ac Revert "Merge pull request #197 from NullDagaf/cummenfarten"
This reverts commit 05867699c5, reversing
changes made to e7eb758cb6.
2023-04-20 02:28:02 +07:00
NullFag
b7f18bc227 i hate yoububber 2023-04-19 19:37:32 +02:00
NullFag
76d7f891be bubber moment 2023-04-19 19:29:50 +02:00
projectkepler-RU
4128021890 Merge pull request #183 from Ldip999/Health-scanner-allergy-thingy
Health scanner now displays allergies more visibly
2023-04-18 16:36:56 +07:00
Ldip999
17021a7c3d Health scanner now displays allergies more visibly 2023-04-17 23:13:10 +02:00
ReturnToZender
e1616cc575 Reverts to TG weapons
Add: Changes some of the effects of the stunbaton back to TG
2023-04-17 09:04:34 -05:00
CloverIsLucky
a0d1b43253 Removed some leftover borg shovel removal code 2023-04-15 07:24:37 -06:00
projectkepler-RU
fe97fa9ab0 Merge pull request #145 from NullDagaf/child_13
Fixes a bunch of issues + removes planting on ash
2023-03-31 18:58:15 +07:00
NullFag
2211c9f8fb a'te 2023-03-30 11:44:15 +02:00
NullFag
f17ef22ff3 f 2023-03-30 11:42:05 +02:00
Cyprex
e6bb4098c4 Revert "Merge upstream" 2023-03-11 18:51:44 +01:00
Cyprex
c5573eb59f Merge remote-tracking branch 'skyrat/master' into upstream_merge3 2023-03-08 18:51:21 +01:00
SkyratBot
257d63f360 [MIRROR] Fixes some invisible inhands from the transforming component [MDB IGNORE] (#19721)
* Fixes some invisible inhands from the transforming component (#73807)

## About The Pull Request

The original issue caused by #70037
Esword issue caused by #73716

Originally the transforming component did not override the inhand icon
state of the the item on its own (instead putting the onus on the item
itself if they wanted unique behavior). It was changed to always update
inhand icon state, most of which don't have one

I don't really like this fix, it should be explicit "I want inhand to
change" and not default, but this will work for now

Also the PR that fixed the Jaws issue didn't actually set the var they
created

Fixes #73805
Fixes #73711 (Actually)

## Why It's Good For The Game

Invisible sword bad

## Changelog

🆑 Melbert
fix: Fixed a eswords, some tools, and some other misc. items from being
invisible while extended / active
fix: Teleshields and other misc items not extending in hand when active
fix: Switchblades click on extend again
fix: Pendrivers click on extend
/🆑

* Fixes some invisible inhands from the transforming component

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2023-03-08 11:33:50 +00:00
SkyratBot
62d1147513 [MIRROR] Fixes bread dog butchering producing error bread and adds some warnings to bread that shouldn't appear in-game. [MDB IGNORE] (#19695)
* Fixes bread dog butchering producing error bread and adds some warnings to bread that shouldn't appear in-game. (#73783)

## About The Pull Request
Fixes https://github.com/tgstation/tgstation/issues/73765
Also adds some warnings and description to bread/breadslice so you can
more easily notice that something is wrong.
Not much to discuss i think.
## Why It's Good For The Game
You can get normal bread from butchering bread dog. And potentially less
issues with bread in future.
## Changelog
🆑
fix: fixed butchering bread dog spawning error bread.
/🆑

---------

Co-authored-by: Jacquerel <hnevard@ gmail.com>

* Fixes bread dog butchering producing error bread and adds some warnings to bread that shouldn't appear in-game.

---------

Co-authored-by: Helg2 <93882977+Helg2@users.noreply.github.com>
Co-authored-by: Jacquerel <hnevard@ gmail.com>
2023-03-06 11:34:25 -08:00
SkyratBot
8321b7fa5e [MIRROR] Fixes another instance of fortnite gaming on SS13 [MDB IGNORE] (#19679)
* Fixes another instance of fortnite gaming on SS13 (#73770)

🆑 Iamgoofball
fix: You can no longer fortnite with glass sheets
/🆑

---------

Co-authored-by: Kyle Spier-Swenson <kyleshome@ gmail.com>

* Fixes another instance of fortnite gaming on SS13

---------

Co-authored-by: Iamgoofball <iamgoofball@gmail.com>
Co-authored-by: Kyle Spier-Swenson <kyleshome@ gmail.com>
2023-03-06 16:41:26 +00:00
SkyratBot
397821a536 [MIRROR] Refactor egg to chick logic into component [MDB IGNORE] (#19689)
* Refactor egg to chick logic into component (#73537)

Refactored how eggs growing into chicks is implemented, and
how the number of chickens and chicks are tracked. It's now possible for
admins to make anything into an egg.

- Instead of the "fertility" of an egg being whether or not it's
processing (along with the ugliness of adding a variable to a item
defined in another file), fertile eggs are now implemented via
components.
- The number of chickens in the world, and the number of chicks hatched
from egg throwing are now global variables, rather than static variables
on the class.

I've tried very hard to keep these changes completely feature freeze
compatible, any variation in the old behaviour is non-intended (at this
point).

* Refactor egg to chick logic into component

---------

Co-authored-by: Jack Edge <yellowbounder@gmail.com>
2023-03-06 08:30:16 -08:00
SkyratBot
a6ecf76aeb [MIRROR] Adds traitor final objective to make the station AI malf [MDB IGNORE] (#19376)
* Adds traitor final objective to make the station AI malf

* Update malf_ai.dm

---------

Co-authored-by: SuperSlayer <91609255+SuperSlayer0@users.noreply.github.com>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
2023-03-04 17:48:31 -08:00
SkyratBot
ece5f9c320 [MIRROR] Fixes wrong inhand icon state for jaws of life [MDB IGNORE] (#19650)
* Fixes wrong inhand icon state for jaws of life (#73716)

## About The Pull Request
Fixes #73711
## Why It's Good For The Game
## Changelog
🆑
fix: fixed missing inhand icon state for jaws of life
/🆑

* Fixes wrong inhand icon state for jaws of life

---------

Co-authored-by: FinancialGoose <92416224+TheBoondock@users.noreply.github.com>
2023-03-04 13:01:04 +00:00
SkyratBot
0dfde9b1a6 [MIRROR] Tape Wizard, the distant cousin of the Paper Wizard [MDB IGNORE] (#19640)
* Tape Wizard, the distant cousin of the Paper Wizard (#73739)

## About The Pull Request

Adds a new wizard costume and non magical variant, made exclusively from
tape.

![qTwAAAAASUVORK5CYII](https://user-images.githubusercontent.com/81540056/222332110-96af21bc-d568-40fc-a813-1464577521ff.png)

## Why It's Good For The Game

New unique nice looking thing = good
Opens the door for more uses of an already niche mechanic

![ducktape](https://user-images.githubusercontent.com/81540056/222332139-83f01340-299a-48e0-b68a-3c5e57e20547.png)
Roleplay.

## Changelog
🆑
add: Adds the tape wizard costume, both a real and fake variant
add: Adds the costume behind the autodrobe contraband wire, and the real
variant in the wiz den
🆑

* Tape Wizard, the distant cousin of the Paper Wizard

---------

Co-authored-by: Thedragmeme <81540056+Draggeru@users.noreply.github.com>
2023-03-04 05:00:35 +00:00
lessthanthree
021c9d546e [MANUAL MIRROR] Buff scythes, goats, and plantbgone vs PLANT biotypes (#19215)
Buff scythes, goats, and plantbgone vs PLANT biotypes (#72889)

This buffs scythes, goats, and plantbgone vs PLANT biotypes:

- Scythes now deal x1.5 damage to venus flytraps (3 hits to kill)
- Scythes now target the flower bud vines
- Goats now target flower bud vines and deal 15 damage to PLANT biotypes
- Goats have a eating sound whenever they bite PLANT biotypes
- Plantbgone now does 2 dmg per unit to PLANT biotypes (10 dmg per
spray)
- Plantbgone now has a 75% chance to remove weeds and deals large damage
to flower buds
- Weed control crates now come with a pair of leather gloves
- Golems are immune to thorn effects
- Any kind of thick glove material will prevent thorn effects when
attacking
- Flower buds will now take x4 damage from fire and sharp weapons
(unless they have fire trait)
- Regular scythes are now a sharp object

Also this fixes a few runtimes with spacevines and nulls. The bane
element now accepts `mob_biotypes` bitflags as an argument.

Before my changes:

- Plant-b-gone was doing 0.4 dmg per unit to PLANT biotypes (2 dmg per
spray)
- Scythes took 5 hits to kill venus flytraps
- Goats only affected podpeople
- Flower bud vines were being ignored by weed killing code
- Plantbgone only had a 50% chance to remove weeds (and this was very
inconsistent due to RNG)
- Botanical gloves and thick gloves didn't protect from thorns
- Golems were getting pierced by thorns despite having pierce immunity
- Flower buds were not taking the x4 damage like they should have been
- Regular scythes were not a sharp object, but other scythes
(chaplain's, megafauna loot) were sharp

This makes the weed killer crate more effective since people were
complaining about it being worthless vs vines and flower buds. These
changes give people more options to respond to threats vs plants.

🆑
add: Add a pair of leather gloves to weed control crate
balance: Mobs with the PLANT biotypes (venus flytraps, pod people,
killer tomatoes) are now much weaker vs scythes, goats, and plantbgone.
balance: Plantbgone is now more effective at destroying weeds.
balance: Regular scythes are now a sharp object
fix: Fixed scythes, goats, and plantbgone not affecting flower bud
vines.
fix: Thick and botanical gloves not protecting from thorns
fix: Golems not having pierce immunity from thorns
fix: Runtime where vines tried to spread into null turf
fix: Runtime where null vines that were destroyed were trying to spread
to nearby turfs
soundadd: Add eat food sound when goats eat plants
code: Improved goat targeting code
code: The bane element now accepts `mob_biotypes` bitflags as an
argument.
/🆑

Co-authored-by: Tim <timothymtorres@gmail.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-03-03 18:37:34 +00:00
Cyprex
59b587131a Merge from upstream 2023-03-03 19:22:13 +01:00
SkyratBot
f9f4c80055 [MIRROR] Refactors the Nuclear Authentication Disk's Lone Op Behavior Into a Component, + Examine Message [MDB IGNORE] (#19407)
* Refactors the Nuclear Authentication Disk's Lone Op Behavior Into a Component, + Examine Message (#73453)

## About The Pull Request

### Refactor

Turns all the behavior for the nuke disk raising lone op probability
when unsecured into a new component, the "Keep Me Secure" component. As
an example (and really, I made it to test that the component was
actually working), there is a new admin plush called the "whiny plushie"
that will change icon depending on whether it is secure or not. Useful!

### Examine

I also added an examine message. Will explain below

## Why It's Good For The Game

The examine message was really what this entire pr's purpose was really
for.

>
[Capsandi](https://tgstation13.org/phpBB/memberlist.php?mode=viewprofile&u=7767)
wrote:
[↑](https://tgstation13.org/phpBB/viewtopic.php?p=665827#p665827)Wed Feb
15, 2023 2:42 pm
Someone needs to pr some sort of indicator as to whether the disk is
'secure' or not so players who don't know about the niche lone op
mechanic won't make the same intuitive assumption (though swat has been
trolled for putting it in the safe before).

I agree with this for the same reasons I did #73016 so I'll restate the
point with it here: A piece of banning a captain recently was that they
didn't secure the disk, but there is no indication in game that the disk
has special condiitons that trigger lone op, just that it should be kept
safe (which yeah, nuke ops want it). I'd rather remove the ambiguity of
a captain knowing this mechanic or not for the sake of the game, a
single examine for it is harmless

I'm considering this administration, not a feature. If maints want me to
take it out and have this be refactor only, that's fine with me

## Changelog
🆑
refactor: Refactors how nuclear activation disk works. Shouldn't notice
a whole lot but if you do, it might be because of this.
admin: Disk now has an examine message for whether it's secure or not,
to make it less ambiguous for players.
/🆑

* Refactors the Nuclear Authentication Disk's Lone Op Behavior Into a Component, + Examine Message

---------

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
2023-03-02 22:06:22 -08:00
SkyratBot
34ad67a4fc [MIRROR] Updates policy to better warn players for any existing antagonist policy [MDB IGNORE] (#19341)
* Updates policy to better warn players for any existing antagonist policy

* Update job.dm

* Update job.dm

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
2023-03-01 17:10:54 -08:00
SkyratBot
f708bb7bc4 [MIRROR] Make glass and bone knives not conduct electricity and shocks from grille [MDB IGNORE] (#19591)
* Make glass and bone knives not conduct electricity and shocks from grille (#73679)

## About The Pull Request
Just making shivs more consistent with what is expected. It's weird when
glass shard allows you to smash grille connected to power while shivs
made out of glass dont. Extended to bone knives for the same reason.
## Why It's Good For The Game
Immersium
## Changelog
🆑 Remuluson2
fix: After pressure from Nanotrasen, Space Wizard Federation made glass
and bone knives non-conductive again.
/🆑

---------

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

* Make glass and bone knives not conduct electricity and shocks from grille

---------

Co-authored-by: remuluson2 <remuluson2@gmail.com>
Co-authored-by: san7890 <the@ san7890.com>
2023-03-01 02:28:05 +00:00
SkyratBot
db33d75a5e [MIRROR] Space/Changeturf fixes and optimizations [MDB IGNORE] (#19201)
Space/Changeturf fixes and optimizations

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2023-02-28 15:23:35 -05:00
SkyratBot
b8afddcbd6 [MIRROR] Teleport scroll charges cannot be bypassed via clicking the action button [MDB IGNORE] (#19563)
* Teleport scroll charges cannot be bypassed via clicking the action button (#73653)

## About The Pull Request

Teleport scrolls would only deplete a charge if used in hand, however
their implementation actually granted you the spell as an item action
which you could use by hitting the action button, This would not deplete
a charge, and had no cooldown whatsoever.
The action button is convenient and should stay, but I modified the code
so that instead of depleting a charge when clicked it depletes a charge
when the spell contained by the item successfully casts.

I also changed the order of operations slightly in `spell/after_cast`
because using the signal to delete the scroll would also delete the
spell (sensibly, it should clean up after itself) before the last cast
could make smoke, which was sad.

## Why It's Good For The Game

On live the teleport scroll gives all wizards _and_ apprentices the
teleport spell with absolutely no cooldown and infinite usage, which is
probably not intended.

## Changelog

🆑
fix: Using a teleport scroll will deplete a charge regardless of whether
used in-hand or by pressing the action button.
/🆑

* Teleport scroll charges cannot be bypassed via clicking the action button

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
2023-02-26 19:28:58 -08:00
SkyratBot
7cd024fa5e [MIRROR] [no gbp] dismantling an unplaced wallframe will now make a wrench sound [MDB IGNORE] (#19510)
* [no gbp] dismantling an unplaced wallframe will now make a wrench sound (#73589)

## About The Pull Request
Dismantling an unplaced wallframe will now make a wrench sound.
## Why It's Good For The Game
Using a wrench almost always makes the wrench noise. Having that noise
not play when you wrench something feels very weird.
## Changelog
🆑
soundadd: dismantling an unplaced wallframe will now make a wrench sound
/🆑

* [no gbp] dismantling an unplaced wallframe will now make a wrench sound

---------

Co-authored-by: kawoppi <94711066+kawoppi@users.noreply.github.com>
2023-02-26 19:06:39 -05:00
SkyratBot
b047ad0ad8 [MIRROR] Fixes paper formatting on vote box tallies, for democracy. [MDB IGNORE] (#19559)
* Fixes paper formatting on vote box tallies, for democracy. (#73639)

In the spirit of AnturK's original PR the voting season, I present to
you: Fixing a piece of paper.

Due to using DM's multiline template formatting, the `<div>` for the
header started with double tab.

Markdown interpreted that as a code block, quote:
> [Code blocks](https://www.markdownguide.org/basic-syntax/#code-blocks)
are normally indented four spaces or one tab. When they’re in a list,
indent them eight spaces or two tabs.

So I just changed a line of code, then messed around with some other
formatting.

* Fixes paper formatting on vote box tallies, for democracy.

---------

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
2023-02-26 19:04:45 -05:00
SkyratBot
586854baf6 [MIRROR] Basic Mobs can be healed using medical items [MDB IGNORE] (#19483)
* Basic Mobs can be healed using medical items (#73556)

## About The Pull Request

The generic medical stacks items sutures, bruise packs, aloe, and
poultices can be used to heal simple mobs but not basic mobs.
This seems to just be an oversight rather than an intentional change.

Currently simple mobs have a kind of ugly "can be healed" var on them
which I am going to assume we don't want to copy over to basic mobs. I
can remove about 3/4 of the mobs who set this by filtering by biotypes
instead which should cover most basic mob conversions.
The only mobs I can find with `BIOTYPE_ORGANIC` and `can_heal = FALSE`
are heretic monsters, slimes, slaughter demons, and Morph. Some of those
could reasonably be fixed by changing their biotypes, and most of the
others it's... probably fine to be able to heal with sutures anyway?
Really the only outlier is probably not wanting Slaughter Demons to be
healing themselves with bruise packs. Sort of a future problem, and not
a big one.

Also while I was there I continued my mission to desoul every proc I
touch by turning error messages into balloon alerts (the heal success
notification can stay though, that seems like relevant information to
log for everyone nearby).

## Why It's Good For The Game

This is behaviour these mobs used to support and was accidentally
dropped. It maintains consistency and is how you expect these items to
work.

## Changelog

🆑
fix: Restores lost behaviour to heal Ian with sutures. Or giant spiders,
if you want to do that for some reason.
/🆑

* Basic Mobs can be healed using medical items

* Update code/game/objects/items/stacks/medical.dm

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2023-02-26 20:57:27 +00:00
SkyratBot
4f554a3990 [MIRROR] Corrects blocked limb balloon alert for borg hyposprays [MDB IGNORE] (#19545)
* Corrects blocked limb balloon alert for borg hyposprays (#73632)

## About The Pull Request

Fixes #73631
## Why It's Good For The Game

Reads better
## Changelog
🆑
fix: Borg hypospray will correctly tell you the name of the limb that is
blocked when trying to inject into a blocked limb.
/🆑

* Corrects blocked limb balloon alert for borg hyposprays

---------

Co-authored-by: NamelessFairy <40036527+NamelessFairy@users.noreply.github.com>
2023-02-26 15:24:56 -05:00
SkyratBot
6dc0ad75f8 [MIRROR] A worn item which has its color changed (such as by a slime potion) with now have its color change reflected on mobs. [MDB IGNORE] (#19544)
* A worn item which has its color changed (such as by a slime potion) with now have its color change reflected on mobs. (#73627)

## About The Pull Request

If I'm wearing an outfit and use a slime fireproof potion on it at
present it wont become blue until taking it off and putting it back on
again, this PR makes it so it changes immediately. Also means if an
admin VVs the color value of a worn item its icon worn color will update
to reflect this change immediately.
## Why It's Good For The Game

Bugfix!
## Changelog
🆑
fix: Any worn item that has its color changed will now have its color
change reflected on the item's worn icon immediately.
/🆑

* A worn item which has its color changed (such as by a slime potion) with now have its color change reflected on mobs.

---------

Co-authored-by: NamelessFairy <40036527+NamelessFairy@users.noreply.github.com>
2023-02-26 15:24:34 -05:00
SkyratBot
1c524fa584 [MIRROR] filled trashcarts spawn nearby grime when initialized instead of when opened for the first time [MDB IGNORE] (#19550)
* filled trashcarts spawn nearby grime when initialized instead of when opened for the first time (#73608)

## About The Pull Request
Filled trashcarts spawn some trash in them once they are opened for the
first time. But they also spawn grime, and the problem with that is that
grime spawns in a range around the trashcart. So opening the trashcart
for the first time would cause the grime to suddenly pop in around the
cart.

This PR changes it so that the grime is spawned when the filled
trashcart is initialized.
## Why It's Good For The Game
Having trash spawn around the trashcart the moment that you open it is
probably not intended. The grime is probably meant to be there before
the trashcart is opened for the first time.
## Changelog
🆑
fix: filled trashcarts spawn nearby grime when initialized instead of
when opened for the first time
/🆑

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>

* filled trashcarts spawn nearby grime when initialized instead of when opened for the first time

---------

Co-authored-by: kawoppi <94711066+kawoppi@users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>
2023-02-26 15:22:15 -05:00
OrionTheFox
d097050d1d [Manual Mirror] Adds checkgrep for improper or missing atom Initialize args (mapload) (#19539)
* Adds checkgrep for improper or missing atom Initialize args (`mapload`) (#72846)

## About The Pull Request

Adds a grep for atom initialize overrides which does not include mapload

Regex used
`^/(obj|mob|turf|area|atom)/.+/Initialize\((?!mapload).*\)`

Also replaced some space indentation with some tab indentation in some
other greps


![image](https://user-images.githubusercontent.com/51863163/213883049-ef6d953a-e11f-4876-9852-c09633ddc289.png)

## Why It's Good For The Game

See #69107, #61759, #61623

## Changelog

No player facing changes

* Missed by #8374

* Add (mapload) to a //Skyrat Edit so that it passes

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2023-02-26 15:20:38 -05:00
SkyratBot
bb9b68a88d [MIRROR] Basic Mob Spiders I: Ability refactor [MDB IGNORE] (#19200)
* Basic Mob Spiders I: Ability refactor

* Update tgstation.dme

* Update tgstation.dme

* Update tgstation.dme

* Update tgstation.dme

* Update tgstation.dme

* Update tgstation.dme

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
Co-authored-by: KathrinBailey <53862927+KathrinBailey@users.noreply.github.com>
Co-authored-by: KathrinBailey <kat892@outlook.com>
2023-02-22 18:49:39 +00:00
SkyratBot
46c6a7512f [MIRROR] Refactors lizard fake canned food into real canned food [MDB IGNORE] (#19403)
* Refactors lizard fake canned food into real canned food (#73469)

## About The Pull Request

/obj/item/food/canned_jellyfish, /obj/item/food/desert_snails, and
/obj/item/food/larvae are now all /canned subtypes. All this means is
that to eat them, you use them once, and now they drop an empty tin
rubbish item.

## Why It's Good For The Game

Making fake false versions of real types that exist is such a pet peeve
of mine, we recently had a bug from it where the snails would go bad.
But even with that fixed you're just chomping the container of snails
and it's not the same behavior as all the other cans
grumgrugmrg I FIXED IT.

## Changelog
🆑
refactor: Lizard related canned food now acts like canned food
/🆑

* Refactors lizard fake canned food into real canned food

* updates all the modular canned stuff

* desert_

---------

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: Paxilmaniac <paxilmaniac@gmail.com>
2023-02-20 20:53:53 -08: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
5f5e3141dc [MIRROR] Don't reregister PDA signals we already registered [MDB IGNORE] (#19453)
* Don't reregister PDA signals we already registered (#73525)

## About The Pull Request

Fixes #73102 by removing an apparently purposeless proc.
I'll be honest I have been staring and staring at this proc and have no
idea what problem it is supposed to be solving and it looks kind of like
nonsense, a victim of refactors maybe?

So here's what it was doing:
When you place an ID card into a PDA we register to the "moved" signal.
When the PDA is moved we first check if the PDA's old location was a
PDA. First head-scratcher, when would that be true? Was there a point
where PDAs could be nested, back when they were tablets? Doesn't seem to
be possible now.
We then unregister the other signals we registered when setting up this
proc, but _only_ if it was previously inside a PDA.

Then we check if the source of the signal exists, which is also
confusing but I _guess_ maybe something else listening to the move
signal could have deleted it before we got here?
The source of the signal of course continues to be the PDA we registered
signals to. We only unregister those signals if it was previously
somehow inside of a different PDA. We then re-register the signals we
already registered on it, causing a warning runtime because we're
registering a signal we already registered.
Sure enough, the warning is telling us that we're just doing the same
thing twice for as far as I can tell, absolutely no reason.

As far as I can tell this proc... doesn't do anything _except_ runtime?
It's full range of possible behaviour is to register some signals we are
already registered to. So I fixed the bug by deleting it.
If there's some edge case behaviour related to putting PDAs inside other
PDAs which I am missing here, or I have misunderstood this code somehow,
let me know.

## Why It's Good For The Game

We shouldn't runtime every time you move your PDA around.

## Changelog

🆑
fix: Removes a runtime error caused by moving your PDA between slots.
/🆑

* Don't reregister PDA signals we already registered

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
2023-02-20 02:09:32 +00:00
SkyratBot
db625af910 [MIRROR] Optimize cardboard cutouts saving 1.5s+ on init times [MDB IGNORE] (#19435)
* Optimize cardboard cutouts saving 1.5s+ on init times (#73404)

New regression in init times. Closes
https://github.com/tgstation/dev-cycles-initiative/issues/32. CC @ Fikou

- Instead of creating a human and icon for *every* cardboard cutout when
initialized, only creates the one we're actually using. When you're
about to use a crayon, creates all of them.
- Instead of using getFlatIcon, uses appearances directly.

* Optimize cardboard cutouts saving 1.5s+ on init times

---------

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2023-02-19 22:52:00 +00:00
SkyratBot
edd70ac76f [MIRROR] Fix eating the bowl when eating poke [MDB IGNORE] (#19448)
* Fix eating the bowl when eating poke (#73524)

🆑 coiax
fix: Eating fish and meat poke bowls no longer consumes the bowl, just
the food inside.
/🆑

## Why It's Good For The Game

Those bowls are made out of glass in the protolathe, they can't be good
for you to eat. Also, soups leave the bowl behind.

* Fix eating the bowl when eating poke

---------

Co-authored-by: Jack Edge <yellowbounder@gmail.com>
2023-02-19 22:49:21 +00:00
SkyratBot
566a0e53b7 [MIRROR] Fixes valentines breaking highlander [MDB IGNORE] (#19445)
* Fixes valentines breaking highlander (#73519)

## About The Pull Request

fixes #73450

Highlander checked special roles instead of antag datum for its
abilities, special role is set to the last antag you were so becoming
valentines (or anything else for that matter) broke it

## Why It's Good For The Game

Bugfix

## Changelog
🆑
fix: Valentines and other antags no longer break highlander
/🆑

* Fixes valentines breaking highlander

---------

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
2023-02-19 22:48:32 +00:00
SkyratBot
9435aeb31d [MIRROR] Purchasing weapon goodie packs require weapon permits, rather than actually being a head of security (includes other small changes) [MDB IGNORE] (#19133)
* Purchasing weapon goodie packs require weapon permits, rather than actually being a head of security (includes other small changes)

* Update inventory.dm

* Update goodies.dm

* Update inventory.dm

* update modular

---------

Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2023-02-19 19:19:59 +00:00
SkyratBot
a2cb8c5c0c [MIRROR] Completely removes do_mob and do_after_mob [MDB IGNORE] (#19126)
* Completely removes do_mob and do_after_mob

* update modular

---------

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: lessthnthree <three@lessthanthree.dk>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2023-02-19 19:19:50 +00:00
SkyratBot
94aa2f4bd6 [MIRROR] [No GBP] Minor Food Tweaks [MDB IGNORE] (#19434)
* [No GBP] Minor Food Tweaks (#73499)

## About The Pull Request

This PR will tweak some of my foods and others to make them a little
less excessive or to buff them a little.

Meatloaf takes 2 meat slabs instead of 3. It felt pretty excessive to
use 3.
Ribs and meat clown now use /obj/item/food/meat/steak instead of
/obj/item/food/meat/steak/plain. This allows custom downstream steaks to
also be used for ribs, instead of only vanilla upstream ones
Truffles and peanut butter cups use 2 of their filling ingredient
instead of 5. 5 felt excessive.
Moved calzones to the pizza crafting menu
Adds the meat foodtype to meat pierogis and removes the dairy foodtype
(wow)
Increases the nutritional value of french toast
Beef stroganoff uses 2 units of salt/pepper instead of 5
Removes sugar from granola bars to make them less complex to make

## Why It's Good For The Game

Re-balancing certain foods to make them simpler or more worthwhile
encourages people to make them =)

## Changelog
🆑
qol: Tweaked around some foods to make them easier to make
/🆑

* [No GBP] Minor Food Tweaks

---------

Co-authored-by: MidoriWroth <kodyman@att.net>
2023-02-18 22:16:45 -08:00
SkyratBot
36c52d3913 [MIRROR] Guillotine can be unanchored again [MDB IGNORE] (#19371)
* Guillotine can be unanchored again (#73423)

## About The Pull Request

Guillotines could not be unanchored, because the unfasten check checked
if any action is being applied to the guillotine, including being
wrenched at the moment. This PR fixes that.

This PR also autodocs everything, adds a missing UNDEF, and renames
GUILLOTINE_BLADE_IDLE to GUILLOTINE_ACTION_IDLE to make it clearer that
this is intended for the current_action var, and not the blade_status
var.

## Why It's Good For The Game

Fixes a bug that prevents something from being moved around.

## Changelog

🆑
fix: Guillotines can be unanchored again
/🆑

* Guillotine can be unanchored again

---------

Co-authored-by: Profakos <profakos@gmail.com>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
2023-02-18 21:37:09 -08: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
6ebdfdc73f [MIRROR] Makes Shake() proc work [MDB IGNORE] (#19424)
* Makes Shake() proc work (#73480)

## About The Pull Request

Fixes #72321
Fixes #70388

The shake proc didn't work and hasn't for ages.
I remember it having worked at some point, but it was quite a long time
ago.
I cannot guarantee that the end result here is the same as it was, the
reason here being that I have no idea how this proc ever worked in the
first place. My limited understanding of the `animate` proc implies that
the previous implementation as written would never have acted as you
would expect it to, but clearly at some time in the past it did work. A
mystery.

As a result of the previous, possibly because the proc never _did_ work
as expected and just did something which looked vaguely correct most of
the time, both the default values and the values people were passing
into this proc were completely ridiculous.
Why would anyone ever want to pixel shift an object with a range of _15_
pixels in all directions? That's half a full tile! And why would you
want it to do this for 25 seconds?
So I also changed the values being passed in, because you really want
pretty small numbers passed into here most of the time.

Here's a video of everything that vibrates:
https://www.youtube.com/watch?v=Q0hoqmaXkKA

The exception is the v8 engine. I left this alone because it seems to
try and start shaking while in your hands, which doesn't work, and I
don't know how to fix that. This has potentially _also_ never worked.

## Why It's Good For The Game

Now you can see intended visual indicators for:
- Lobstrosities charging.
- Beepsky being EMPed.
- The Savannah Ivanov preparing to jump.
- The DNA infuser putting someone through the spin cycle.
- The mystery box admin item I had no previous idea even existed (fun
animations on this one).
- Anything else which wants to use this proc to create vibrating objects
in the future.

## Changelog

🆑
fix: Lobstrosities and Tarantulas will once more vibrate to let you know
they're about to charge at you.
fix: The Savannah Ivanov will once more vibrate to let you know it's
about to jump into the air.
fix: The DNA infuser will now vibrate to let people know that it's busy
blending someone with a dead animal.
/🆑

* Makes Shake() proc work

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
2023-02-18 16:58:30 -08:00
SkyratBot
3fcac8d317 [MIRROR] [NO GBP] Maintainer requested changes to the locker/closet grammar PR [MDB IGNORE] (#19350)
* [NO GBP] Maintainer requested changes to the locker/closet grammar PR

* merge conflict markers

---------

Co-authored-by: NamelessFairy <40036527+NamelessFairy@users.noreply.github.com>
Co-authored-by: Paxilmaniac <paxilmaniac@gmail.com>
2023-02-18 15:03:55 -05:00
GoldenAlpharex
f61b17667b [s] Revert "[MIRROR] Stunbatons can now only be used during Red Alerts [MDB IGNORE]" (#19413)
Revert "[MIRROR] Stunbatons can now only be used during Red Alerts [MDB IGNORE] (#19412)"

This reverts commit f96467d105.
2023-02-17 23:08:07 -05:00
SkyratBot
f96467d105 [MIRROR] Stunbatons can now only be used during Red Alerts [MDB IGNORE] (#19412)
* Stunbatons can now only be used during Red Alerts (#73492)

## About The Pull Request
This prevents stunbatons being turned on to full stun mode if the
station is not in a red alert emergency.

## Why It's Good For The Game

The decision to limit the use of stunbatons in TGStation to red alert
emergencies is due to the general degradation of the melee combat design
space in the game. The stunbaton's ability to stun and knock down
opponents with ease has made it the go-to weapon for many players,
leading to a lack of diversity in melee combat strategies.

This over-reliance on stunbatons has made other melee weapons, such as
knives or clubs, obsolete in many situations. This not only limits
player choice but also reduces the overall challenge and fun of melee
combat in the game.

By restricting the use of stunbatons to red alert emergencies, players
are encouraged to explore other melee weapons and develop new
strategies, making the game more engaging and challenging. It also
ensures that the use of stunbatons is reserved for critical situations,
making combat encounters more meaningful and immersive.

## Changelog

🆑 oranges
add: Stunbatons now require a red alert to activate stun mode
/🆑

* Stunbatons can now only be used during Red Alerts

---------

Co-authored-by: oranges <email@oranges.net.nz>
2023-02-17 18:19:07 -08:00
SkyratBot
cef8390012 [MIRROR] Fixes an inverted if check on false wall attackby code. [MDB IGNORE] (#19395)
* Fixes an inverted if check on false wall attackby code. (#73459)

## About The Pull Request

#64428 made it so using a non-tool on a false wall that was closed would
return the "You must wait until the door has stopped moving" message,
this was caused by a flipped if statement so I've re-flipped it by
changing it to an early return instead.
## Why It's Good For The Game

Bug fix!
## Changelog
🆑
fix: False walls will no longer tell you to wait until they've stopped
moving when you use an item on them.
/🆑

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

* Fixes an inverted if check on false wall attackby code.

---------

Co-authored-by: NamelessFairy <40036527+NamelessFairy@users.noreply.github.com>
Co-authored-by: John Willard <53777086+JohnFulpWillard@ users.noreply.github.com>
2023-02-17 11:08:43 -08:00