Commit Graph

87 Commits

Author SHA1 Message Date
SkyratBot
a993ba2461 [MIRROR] Fix chef food ownership to follow mind [MDB IGNORE] (#19517)
* Fix chef food ownership to follow mind (#73600)

🆑 coiax
fix: A chef who is beheaded, and the head stitched on another body will
still see their food as their own.
/🆑

## Why It's Good For The Game

Having food ownership be based on the mind, rather than the mob, makes
it resilient to body-swap, mind-swap, podcloning (cloning!?),
situations. Because even though you may have been reduced to just a
head, that stew is still yours, you still made it.

* Fix chef food ownership to follow mind

---------

Co-authored-by: Jack Edge <yellowbounder@gmail.com>
2023-03-10 02:41:30 +00:00
SkyratBot
9feb3f7362 [MIRROR] [no gbp] Allows clothes to be eaten [MDB IGNORE] (#19490)
* [no gbp] Allows clothes to be eaten (#73565)

## About The Pull Request

Fixes #73546
In #73481 I made the foolish assertion that it's never correct for
someone to eat something which isn't physically nearby.
I had of course forgotten that while Moths _think_ they can eat clothes,
what they are actually eating is the abstract concept of clothes if they
were edible, functionally nothing, which exists nowhere.
By moving the check to only run when you are trying to eat a turf
(conveniently, no clothing is also a turf... yet) I allow them to return
to their delusion.

Alternate fixes and why I didn't do them:
- Always allow people to eat food which is in nullspace. This feels
pretty gross.
- Put the abstract clothes food physically inside the clothes. I assume
this wasn't done because there's some scenarios where you would be able
to remove abstract clothes food from the clothes, so that's not
desirable.
- Move the food into the actual clothes object just before taking a bite
and then put it back in nullspace again. This is silly.
- Try to make moth clothes food work in a way which doesn't involve
creating an imaginary food item in the void. I don't want to do this.

## Why It's Good For The Game

It's funny to eat clothes I guess.

## Changelog

🆑
fix: Moths can eat clothes again.
/🆑

* [no gbp] Allows clothes to be eaten

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
2023-02-21 22:59:06 -08: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
654f55564c [MIRROR] You can't eat a turf unless you are standing next to it [MDB IGNORE] (#19421)
* You can't eat a turf unless you are standing next to it (#73481)

## About The Pull Request

Fixes #73115, don't you love telepathy?
Just adds a range check to the general "can I eat this now?" proc. I
couldn't think of any situation where you should be able to eat
something which isn't next to you.
I tested it and you can still feed people and eat food from your
inventory.

## Why It's Good For The Game

It's funny to be able to eat pizza floor with your brain but not
intended.

## Changelog

🆑
fix: You can no longer eat pizza floor tiles with your brain.
/🆑

* You can't eat a turf unless you are standing next to it

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
2023-02-18 14:06:46 -08:00
SkyratBot
ebe38543ff [MIRROR] Adds nutriment factor to liquid gibs. [MDB IGNORE] (#19052)
* Adds nutriment factor to liquid gibs. (#73033)

## About The Pull Request

Over the years I've heard quite a few lizard players scratch their heads
in confusion due to the lack of gibs filling you up. I gave it a fairly
low value of 2 so people don't end up trying to power game it.

## Why It's Good For The Game

Adding an alternative use to gibs is always nice, at the moment it's
mostly just used for soap and cytology (Which barely anyone does.)

## Changelog

🆑
balance: Gibs now provide a small amount of nutriment.
/🆑

* Fixes the modular uses of liquid gibs

* Fixes an error that somehow slipped through.

---------

Co-authored-by: carshalash <carshalash@gmail.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2023-02-03 16:59:09 -05:00
SkyratBot
1fe0d145a3 [MIRROR] Converts blindness and nearsightedness to status effects, scratches some VERY dumb blindness handling that resulted in mobs becoming "incurably" blind [MDB IGNORE] (#18760)
* Converts blindness and nearsightedness to status effects, scratches some VERY dumb blindness handling that resulted in mobs becoming "incurably" blind

* Fixes the conflicts and makes shit compile!

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

* Fixes the lints.

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

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2023-02-03 16:08:32 -05:00
SkyratBot
c5ca08fd01 [MIRROR] Adds spaces around logical operators [MDB IGNORE] (#18776)
* Adds spaces around logical operators

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

Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2023-01-21 22:16:43 -08:00
SkyratBot
25f4961156 [MIRROR] Refactors memories to be less painful to add and apply, moves memory detail / text to memory subtypes. Adds some new memories to demonstrate. [MDB IGNORE] (#18487)
* Refactors memories to be less painful to add and apply, moves memory detail / text to memory subtypes. Adds some new memories to demonstrate.  (#72110)

So, a huge issue with memories and - what I personally believe is the
reason why not many have been added since their inception is - they're
very annoying to add!

Normally, adding subtypes of stuff like traumas or hallucinations are as
easy as doing just that, adding a subtype.

But memories used this factory argument passing method combined with
holding all their strings in a JSON file which made it just frustrating
to add, debug, or just mess with.

It also made it much harder to organize new memories keep it clean for
stuff like downstreams.

So I refactored it. Memories are now handled on a subtype by subtype
basis, instead of all memories being a `/datum/memory`.

Any variety of arguments can be passed into memories like addcomponent
(KWARGS) so each subtype can have their own `new` parameters.

This makes it much much easier to add a new memory. All you need to do
is make your subtype and add it somewhere. Don't need to mess with jsons
or defines or anything.

To demonstrate this, I added a few memories. Some existing memories had
their story values tweak to compensate.

Makes it way simpler to add new memories. Maybe we'll get some more fun
ones now?

🆑 Melbert
add: Roundstart captains will now memorize the code to the spare ID
safe.
add: Traitors will now memorize the location and code to their uplink.
add: Heads of staff winning a revolution will now get a memory of their
success.
add: Heads of staff and head revolutionaries who lose their respective
sides of the revolution also get a memory of their failure.
add: Completing a ritual of knowledge as a heretic grants you a quality
memory.
add: Successfully defusing a bomb now grants you a cool memory. Failing
it will also grant you a memory, though you will likely not be alive to
see it.
add: Planting bombs now increase their memory quality depending on how
cool the bomb is.
refactor: Memories have been refactored to be much easier to add.
/🆑

* Modular!

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Funce <funce.973@gmail.com>
2023-01-17 12:51:58 +13:00
SkyratBot
ff97c189db [MIRROR] Dogs use the Pet Command system [MDB IGNORE] (#18393)
* Dogs use the Pet Command system

* modular pets

* modular dogs

* oops

* NO

Co-authored-by: Jacquerel <hnevard@gmail.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2023-01-09 08:06:58 -05:00
SkyratBot
e6b9abe032 [MIRROR] Log the food's type instead of the component's [MDB IGNORE] (#18184)
* Log the food's type instead of the component's (#72031)

## About The Pull Request
Two year old bug that was filling the food_made table with
/datum/component/edible instead of actual food
## Why It's Good For The Game
Means I don't have to parse two different tables instead of one
convenient one
## Changelog
🆑 Tattle
fix: crafted foods are logged in the blackbox once more
/🆑

Co-authored-by: tattle <article.disaster@ gmail.com>

* Log the food's type instead of the component's

Co-authored-by: tattle <66640614+dragomagol@users.noreply.github.com>
Co-authored-by: tattle <article.disaster@ gmail.com>
2022-12-23 12:13:41 -05:00
SkyratBot
f4b4c26c2d [MIRROR] Legitimizes BOMBGERs. Add grenades to burgers and assistants will still eat it. [MDB IGNORE] (#17863)
* Legitimizes BOMBGERs. Add grenades to burgers and assistants will still eat it. (#71552)

## About The Pull Request

Here's the changes to custom food:
- Can now accept grenades
- If you add something larger than the custom food, the custom food
becomes that size
- Biting down on food with grenades in them triggers the grenades

## Why It's Good For The Game

We're trying so hard to remove getting around this whole bombger thing
but wait it's actually based as hell. Why don't we just cut the fat of
what doesn't work (getting around sanity checks with deep frying) and
legitimize what does?

## Changelog
🆑
add: You can add grenades to food
add: Grenades explode when accidentally bitten into
balance: Adding something large to custom food will make it, too, also
large
/🆑

* Legitimizes BOMBGERs. Add grenades to burgers and assistants will still eat it.

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
2022-12-02 00:02:47 +00:00
SkyratBot
810fef5fde [MIRROR] This kills the deep fried foods holder. Refactors deep frying to just make the thing edible but still functional. [MDB IGNORE] (#17848)
* This kills the deep fried foods holder. Refactors deep frying to just make the thing edible but still functional. (#71551)

## About The Pull Request

Refactors deepfrying, removing the gross Deep Fried Foods Holder Object
and replacing it with the edible component.

Now, deep frying a food will simply make the item edible directly. This
means it's still functional and doesn't become a dead item.

This follows the same method that grilling uses when applying its
effects. Tweaks grilling a bit so they line up better. Also, silver
foods can make grilled items.

![image](https://user-images.githubusercontent.com/51863163/204105022-ee66889b-f843-4dc2-b0dc-5f1eb5ba19c3.png)

I swear this is unrelated to the other 2 fried foods related PRs. I
started this a few weeks ago.

## Why It's Good For The Game

Tangibly better code (doesn't have to copy a million vars! Less
abusable!) at the price of removing a soulful piece of code. Also means
that deep frying an item doesn't irreversibly make it unusable / dead.
This is sad, but... damn the holder object sucks.

Unfortunate side effect is that anything that overrides `attack` to not
send signal will *not* be edible when deepfried. Maybe this encourages
better signal use?

Either that or fried foods can override `pre_attack` to hook directly
into eating. I can do that as well.

## Changelog

🆑 Melbert
refactor: Refactored deep fried foods. Deep fried foods are still
""usable"" as their normal item, but are just edible.
qol: Silver Slime stuff can spawn grilled as well as fried.
/🆑

* This kills the deep fried foods holder. Refactors deep frying to just make the thing edible but still functional.

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2022-12-01 01:11:20 +00:00
SkyratBot
a70a6a8055 [MIRROR] Save 0.6-0.7s of init time by splitting registering lists of signals into its own proc, and optimizing QDELETED [MDB IGNORE] (#17670)
* Save 0.6-0.7s of init time by splitting registering lists of signals into its own proc, and optimizing QDELETED

* modular RegisterSignals

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2022-11-28 14:51:08 -05:00
SkyratBot
1c60d79bb1 [MIRROR] Fix Flypeople food consumption [MDB IGNORE] (#17705)
* Fix Flypeople food consumption (#71432)

## About The Pull Request

This PR fixes #70716 by having flypeople ingest vomited reagents into
their stomach instead of directly modifying nutrition. To accomplish
this, flypeople no longer vomit their entire stomach contents every life
tick, which also fixes them vomiting immediately on spawn. Instead they
vomit only after taking bites of food.

Since flypeople aren't currently metabolizing food the same way as other
species there's a huge discrepancy in nutrition gained from food. For
example, a human gets 37 nutrition from a slice of pizza and 270
nutrition from a whole margherita pizza, but a flyperson only gets 10
and 70 respectively, meaning they'd need to eat 4 entire margherita
pizzas and slurp up the vomit to go from total starvation to being
satiated again. With this change flypeople get ~190 nutrition from a
whole margherita pizza.
## Why It's Good For The Game

Makes it easier for flypeople to stay satiated without having to consume
mass amounts of food. Also makes it easier and more predictable to deal
with flyperson interactions with other reagents getting in their stomach
- for example, currently taking a happy pill causes flypeople to vomit
due to the sugar.
## Changelog
🆑
fix: Flypeople gain a comparable amount of nutrients from vomited food
to other species (~70%, up from ~30%)
fix: Flypeople no longer vomit after drinking fluids
fix: Flypeople no longer vomit all contents of their stomach on spawn
code: Stomachs can now react to foods entering them by overriding the
`after_eat` proc
/🆑

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

* Fix Flypeople food consumption

Co-authored-by: Roryl-c <5150427+Roryl-c@users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
2022-11-24 14:30:00 -05:00
SkyratBot
b9b6a803b0 [MIRROR] Throws a bunch of parenthesis around to ensure dear Aunt Sally is always properly excused. [MDB IGNORE] (#17654) 2022-11-22 19:44:59 -08:00
Zonespace
f7c26bbf25 515 Compat (#17465)
* ONLY SKYRAT CHANGES

* ACTUALLY SKYRAT CHANGES

* yolo, revert later

* Update alternate_byond_versions.txt

Co-authored-by: AnturK <AnturK@users.noreply.github.com>
2022-11-15 06:59:06 +00:00
SkyratBot
9e9b09d90b [MIRROR] Chefs can now kiss food they make to make it with love. (And a lot of cooking refactoring) [MDB IGNORE] (#17334)
* Chefs can now kiss food they make to make it with love. (And a lot of cooking refactoring)

* update from master and fix conflicts

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2022-11-09 17:49:35 +00:00
SkyratBot
71aa56d14c [MIRROR] concussive gauntlets now launch you away from gibtonite and mine basalt [MDB IGNORE] (#17417)
* concussive gauntlets now launch you away from gibtonite and mine basalt (#71108)

when you mine gibtonite using concussive gauntlets, you now get launched
away from it, so you wont get hit by the explosion
also lets them mine basalt for glass

* concussive gauntlets now launch you away from gibtonite and mine basalt

Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
2022-11-09 02:05:50 +00:00
SkyratBot
d7c5ab7987 [MIRROR] PKP Mind Virus: Glorfing Cigs edition [MDB IGNORE] (#16995)
* PKP Mind Virus: Glorfing Cigs edition

* conflicts

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2022-10-20 12:22:53 +01:00
SkyratBot
5aa4d2b210 [MIRROR] Silver slime extract created food isn't toxic to jellypeople [MDB IGNORE] (#16975)
* Silver slime extract created food isn't toxic to jellypeople (#70424)

* Silver slime extract created food isn't toxic to jellypeople

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2022-10-19 11:29:09 +01:00
SkyratBot
949752a87d [MIRROR] Fixed a bug that causes sliced food to have significantly fewer reagents than intended. [MDB IGNORE] (#16130)
* Fixed a bug that causes sliced food to have significantly fewer reagents than intended. (#69733)

* Fixed a bug that causes sliced food to have significantly fewer reagents than intended.

Co-authored-by: lizardqueenlexi <105025397+lizardqueenlexi@users.noreply.github.com>
2022-09-08 17:50:24 +01:00
SkyratBot
7738657294 [MIRROR] Makes alerts for blind people being fed/stripped larger [MDB IGNORE] (#15598)
* Makes alerts for blind people being fed/stripped larger (#69171)

Revert "blind alert too big for stripping and feeding (#69114)"

This reverts commit 6b0c6e8ded.

* Makes alerts for blind people being fed/stripped larger

Co-authored-by: tattle <66640614+dragomagol@users.noreply.github.com>
2022-08-13 17:33:30 -07:00
SkyratBot
48685b4356 [MIRROR] Replaces the mood component with a mood datum [MDB IGNORE] (#15549)
* Replaces the mood component with a mood datum

* Fixes merge conflicts and updates all of our mood events to use the new mood datums

Co-authored-by: Seth Scherer <supernovaa41@gmx.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2022-08-12 14:58:14 -04:00
SkyratBot
c62218d1ad [MIRROR] blind alert too big for stripping and feeding [MDB IGNORE] (#15575)
* blind alert too big for stripping and feeding (#69114)

About The Pull Request

span_userdanger -> span_danger

Why It's Good For The Game

I think it's hilarious that it's that big, but it's not necessary. It only makes sense for blind hit alerts which use span_userdanger for nonblind alerts too.

* blind alert too big for stripping and feeding

Co-authored-by: Mooshimi <85910816+Mooshimi@users.noreply.github.com>
2022-08-12 16:55:47 +00:00
SkyratBot
bc36a7f6af [MIRROR] blind people know when things happen to them [MDB IGNORE] (#15427)
* blind people know when things happen to them

* Update strippable.dm

Co-authored-by: Mooshimi <85910816+Mooshimi@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2022-08-08 01:12:08 +01:00
SkyratBot
aadc7b499c [MIRROR] Voracious allows eating while full [MDB IGNORE] (#15266)
* Voracious allows eating while full (#68826)

People with the voracious trait actually eat faster now, and are able to eat even while they are full, albeit much more slowly. This also means voracious people can be force fed faster, and it bypasses the overfed delay.
Voracious doesnt do what it says it does, currently just letting you eat more junk food and get a mood boost when full. This fixes it to have more of an impact on the game.

* Voracious allows eating while full

Co-authored-by: Superlagg <sprambersonson@gmail.com>
2022-07-29 16:07:26 -07:00
magatsuchi
4f9df17cb1 [FIXED MIRROR] Tsu's Brand Spanking New Storage: or, How I Learned to Refactor For Skyrat (#14868)
* Tsu's Brand Spanking New Storage: or, How I Learned To Pass Github Copilot As My Own Code

* Delete storage.dm

* yippee

* shit

* holy shit i am stupid

* more fixes

* fuck

* woops
2022-07-17 21:16:59 -04:00
SkyratBot
a9dc63f1dd [MIRROR] Makes silver spawned food actually disgusting [MDB IGNORE] (#14865)
* Makes silver spawned food actually disgusting (#68319)

Fixes silver spawned food not tasting disgusting by sending a signal to the Edible component to make it disgusting.

* Makes silver spawned food actually disgusting

Co-authored-by: Salex08 <33989683+Salex08@users.noreply.github.com>
2022-07-13 16:01:47 +01:00
SkyratBot
1b0a57232e [MIRROR] Lemon does weather effects [MDB IGNORE] (#14231)
* Lemon does weather effects

* Update code/datums/components/food/decomposition.dm

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2022-06-10 17:05:56 +01:00
SkyratBot
82f7550ca3 [MIRROR] Silver slime food is now toxic(causes disgust when eaten), as it's not real food. [MDB IGNORE] (#13824)
* Silver slime food is now toxic(causes disgust when eaten), as it's not real food. (#67181)

Silver slime food is now toxic, as it's not real food.

* Silver slime food is now toxic(causes disgust when eaten), as it's not real food.

Co-authored-by: Iamgoofball <iamgoofball@gmail.com>
2022-05-23 11:50:32 +01:00
SkyratBot
ba4da3c49a [MIRROR] Customer robots can now order ice cream. [MDB IGNORE] (#13146)
* Customer robots can now order ice cream. (#66073)

* Customer robots can now order ice cream.

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2022-04-27 00:19:26 +01:00
SkyratBot
5a6217c81a [MIRROR] makes grilles grill food, not drinks/condiments [MDB IGNORE] (#12767)
* makes grilles grill food, not drinks/condiments (#65833)

When food was moved to newfood (and use an edible component), drinks and condiments were left both as subtypes of a no-longer-existant food. (Even worse, one isn't even a subtype of the other).

Grilles were not updated to make the edible component's foodtypes fried, instead they kept making old food (which again, is just drinks and condiments) get the grilled foodtype instead, so it likely just runtimed and didn't work at all.

This most probably wasn't caught because all the vars for the edible food component were all kept the same when they were created off of old food, even the procs. Edible component is a copy paste of drinks/condiments.

Less runtime errors, more grilling!

* makes grilles grill food, not drinks/condiments

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
2022-04-16 08:19:11 -07:00
SkyratBot
d90753ef82 [MIRROR] Fix issue with reagent logging where it would sometimes fail to output reagents on reagent transfer. [MDB IGNORE] (#12435)
* Feex (#65612)

Splits reagent log string creation to a standard proc and a bespoke stupid proc that takes an external list instead of using its own reagents_list.

* Fix issue with reagent logging where it would sometimes fail to output reagents on reagent transfer.

* Update hyposprays_II.dm

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2022-04-01 01:50:10 +01:00
SkyratBot
f8dc49590a [MIRROR] changes force-feeding message when feeding a headless person [MDB IGNORE] (#12328)
* throat hole + code clean (#65717)

* changes force-feeding message when feeding a headless person

Co-authored-by: capsaicinz <84609863+capsaicinz@users.noreply.github.com>
2022-03-27 20:29:01 -07:00
SkyratBot
38ad81aac6 [MIRROR] [MDB IGNORE] Moves non floor turfs off /floor. You can put lattices on lavaland edition [MDB IGNORE] (#12119)
* [MDB IGNORE] Moves non floor turfs off /floor. You can put lattices on lavaland edition

* 123

* fixes more typepaths

* typepaths

* Update planet_turfs.dm

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Kat <53862927+KathrinBailey@users.noreply.github.com>
2022-03-18 03:07:00 +00:00
SkyratBot
7e428b2586 [MIRROR] Decomposition now has mold first, then ants, instead of both. [MDB IGNORE] (#12050)
* Decomposition now has mold first, then ants, instead of both. (#65409)

Someone made a suggestion to me that fixed a problem I've been trying to work around, and now that I've made it so people can set custom decompose times, that made this WAY EASIER.

When most foods decay, they will turn into the generic moldy food sprite you've become accustomed to, without the ants. After 30 seconds, that moldy food will get consumed by ants, leaving only the anthill.

Ants also no longer spawn on lavaland's basalt, by Fikou request.

* Decomposition now has mold first, then ants, instead of both.

Co-authored-by: Wallem <66052067+Wallemations@users.noreply.github.com>
2022-03-13 08:06:52 -04:00
SkyratBot
8725db7a25 [MIRROR] De-hardcodes the decomposition examine proc, and makes the decompose time editable [MDB IGNORE] (#11968)
* De-hardcodes the decomposition examine proc, and makes the decompose time editable (#65284)

Makes the decomposition examine proc, which handles the little examine warning telling you how close to decomposing a piece of food is, not hardcoded anymore. Doing this allowed me to also...

Adds a variable to food that lets them edit the decomposition timer. By default it's set to 0, which makes food automatically get its timer based off its flags. By setting the decomposition_time variable in a /obj/item/food to anything other than 0 (using SECONDS or MINUTES), it will take that amount of time to decompose instead.

* De-hardcodes the decomposition examine proc, and makes the decompose time editable

Co-authored-by: Wallem <66052067+Wallemations@users.noreply.github.com>
2022-03-08 23:24:06 -07:00
SkyratBot
d96e7b7e27 [MIRROR] Makes Ants glow, puts a min on ant screaming & shoe permeability, & other ant-related things. [MDB IGNORE] (#11821)
* Makes Ants glow, puts a minimum on ant screaming and shoe permeability, and other ant-related things. (#64786)

I found out how emissives work and my first thought was "damn ants should glow that would look sick"
So now they do.

Also, having less than 5u ants in your body will make you not scream, so 0.0001u ants will no longer have that tiny chance of making someone scream for their life.

If an ant pile has a max damage value less than 1, then they won't be able to bite through your shoes. This is the same threshold as the second tier ant icon.

Makes the giant ant a hostile mob with the neutral faction, meaning they will attack anything not in the neutral faction.

* Makes Ants glow, puts a min on ant screaming & shoe permeability, & other ant-related things.

Co-authored-by: Wallem <66052067+Wallemations@users.noreply.github.com>
2022-03-03 18:27:26 -05:00
SkyratBot
6006081649 [MIRROR] Ensures reagent conservation in custom foods, food slices, and fried food. [MDB IGNORE] (#10425)
* Ensures reagent conservation in custom foods, food slices, and fried food. (#63265)

* Ensures reagent conservation in custom foods, food slices, and fried food.

Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
2022-01-03 23:50:23 +00:00
SkyratBot
ccf837ef8a [MIRROR] Makes the edible component not runtime due to connect_loc_behalf when applied to turfs [MDB IGNORE] (#9877)
* Makes the edible component not runtime due to connect_loc_behalf when applied to turfs (#63232)

This makes it so it stops trying to use connect_loc_behalf if the parent of the edible component is a turf, just registering the signal normally instead, which should hopefully be the same functionality.

Runtimes are bad, and even if there's not really any relevant use of that proc in most cases, this is to future-proof things anyway.

* Makes the edible component not runtime due to connect_loc_behalf when applied to turfs

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2021-12-05 09:59:33 -05:00
SkyratBot
959f66bf47 [MIRROR] Fixed spelling of possession, Separate, and Cemetery [MDB IGNORE] (#9862)
* Fixed spelling of possession, separate, and cemetery (#63203)

Just fixes some spelling for gangs. I also fixed misspellings for "posession" to "possession". Fixed "seperate " to "Separate" Fixed "Cemetary" to "Cemetery"

* Fixed spelling of possession, Separate, and Cemetery

Co-authored-by: Doctor Pope <84367152+Dr-Pope@users.noreply.github.com>
2021-12-03 16:58:40 -05:00
SkyratBot
fa519bdde3 [MIRROR] cleanup _HELPERS/_lists.dm and all the necessary files [MDB IGNORE] (#8783)
* cleanup _HELPERS/_lists.dm and all the necessary files

* Epbic

Co-authored-by: Ghilker <42839747+Ghilker@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-10-13 21:07:35 +01:00
SkyratBot
75c6aeaa82 [MIRROR] Fixes ooze eating (#8366)
* Fixes ooze eating (#61029)

Oozes now properly communicates with the edible component to be able to eat objects.

* Fixes ooze eating

Co-authored-by: AMonkeyThatCodes <20987591+AMonkeyThatCodes@users.noreply.github.com>
2021-09-24 18:25:29 +01:00
SkyratBot
5e7544955a [MIRROR] Fixed hitting people accidentally with food if their mouth is covered. (#8317)
* Fixed hitting people accidentally with food if their mouth is covered. (#61601)

* Fixed hitting people accidentally with food if their mouth is covered.

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2021-09-23 01:40:18 +01:00
SkyratBot
d1da6f3f34 [MIRROR] Food decomposition can mold stuff into different items, and not just moldy messes. (#8248)
* Food decomposition can mold stuff into different items, and not just moldy messes.

* E

Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-09-19 22:35:14 +01:00
SkyratBot
e510e35167 [MIRROR] [READY] Adds memory system, and engraving walls with chisels (#8066)
* [READY] Adds memory system, and engraving walls with chisels

* EEE

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-09-13 23:36:51 +01:00
SkyratBot
57f732eea3 [MIRROR] Re-balances ant damage values & lets you pour ants on the floor (#7999)
* Re-balances ant damage values & lets you pour ants on the floor

* Update others.dm

Co-authored-by: Wallem <66052067+Wallemations@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-09-11 16:23:08 +01:00
SkyratBot
81d1ec531e Issue #52938 fix: blind people can tell how full they feel when eating (#60886) (#7635)
Co-authored-by: BarrelOfNapkins <clayvass@yahoo.com>
2021-08-19 12:01:51 -04:00
SkyratBot
169c42a262 [MIRROR] Refactors connect_loc_behalf into a component (#7613)
* Refactors connect_loc_behalf into a component (#60678)

See title. Also refactors caltrops into a component because they use connect_loc_behalf which requires them to hold the state.

This also fixes COMPONENT_DUPE_SELECTIVE from just outright not working.

connect_loc_behalf doesn't make sense as an element because it tries to hold states. There is also no way to maintain current behaviour and not have the states that it needs.
Due to the fact that it tries to hold states, it means the code itself is a lot more buggy because it's a lot harder to successfully manage these states without runtimes or bugs. 

On metastation, there is only 2519 connect_loc_behalf components at roundstart. MrStonedOne has told me that datums take up this much space:
image

If we do the (oversimplified) math, there are only ever 5 variables that'll likely be changed on most connect_loc_behalf components at runtime:
connections,
tracked,
signal_atom,
parent,
signal_procs

This means that on metastation at roundstart, we take up this amount: (24 + 16 * 5) * 2519 = 261.97600 kilobytes
This is not really significant and the benefits of moving this to a component greatly outweighs the memory cost.

(Basically the memory cost is outweighed by the maint cost of tracking down issues with the thing. It's too buggy to be viable longterm basically)

* Update glass.dm

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-08-17 20:29:11 +01:00
SkyratBot
20fbe40187 [MIRROR] Makes only mapload foods require players to pick them up to decompose (#7131)
* Makes only mapload foods require players to pick them up to decompose (#60392)

Co-authored-by: Changelogs <action@ github.com>

* Makes only mapload foods require players to pick them up to decompose

Co-authored-by: Wallemations <66052067+Wallemations@users.noreply.github.com>
Co-authored-by: Changelogs <action@ github.com>
2021-07-26 15:48:38 +01:00