mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-12 08:36:00 +01:00
21b4095dfd
Upstream 04/17/2026 fixes https://github.com/Bubberstation/Bubberstation/issues/5549 --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: tgstation-ci[bot] <179393467+tgstation-ci[bot]@users.noreply.github.com> Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com> Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com> Co-authored-by: Rhials <28870487+Rhials@users.noreply.github.com> Co-authored-by: rageguy505 <54517726+rageguy505@users.noreply.github.com> Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com> Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com> Co-authored-by: Aliceee2ch <160794176+Aliceee2ch@users.noreply.github.com> Co-authored-by: Time-Green <7501474+Time-Green@users.noreply.github.com> Co-authored-by: Tsar-Salat <62388554+Tsar-Salat@users.noreply.github.com> Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com> Co-authored-by: Maxipat <108554989+Maxipat112@users.noreply.github.com> Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com> Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com> Co-authored-by: SimplyLogan <47579821+loganuk@users.noreply.github.com> Co-authored-by: loganuk <fakeemail123@aol.com> Co-authored-by: Leland Kemble <70413276+lelandkemble@users.noreply.github.com> Co-authored-by: FalloutFalcon <86381784+FalloutFalcon@users.noreply.github.com> Co-authored-by: Roxy <75404941+TealSeer@users.noreply.github.com> Co-authored-by: Lucy <lucy@absolucy.moe> Co-authored-by: siliconOpossum <138069572+siliconOpossum@users.noreply.github.com> Co-authored-by: Isratosh <Isratosh@hotmail.com> Co-authored-by: TheRyeGuyWhoWillNowDie <70169560+TheRyeGuyWhoWillNowDie@users.noreply.github.com> Co-authored-by: Neocloudy <88008002+Neocloudy@users.noreply.github.com> Co-authored-by: Alexander V. <volas@ya.ru> Co-authored-by: ElGitificador <168473461+ElGitificador@users.noreply.github.com> Co-authored-by: Twaticus <46540570+Twaticus@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com> Co-authored-by: Cameron Lennox <killer65311@gmail.com> Co-authored-by: Tim <timothymtorres@gmail.com> Co-authored-by: Iamgoofball <iamgoofball@gmail.com> Co-authored-by: Layzu666 <121319428+Layzu666@users.noreply.github.com> Co-authored-by: Arturlang <24881678+Arturlang@users.noreply.github.com> Co-authored-by: _0Steven <42909981+00-Steven@users.noreply.github.com> Co-authored-by: mrmanlikesbt <99309552+mrmanlikesbt@users.noreply.github.com> Co-authored-by: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com> Co-authored-by: John F. Kennedy <54908920+MacaroniCritter@users.noreply.github.com> Co-authored-by: Cursor <102828457+theselfish@users.noreply.github.com> Co-authored-by: Josh <josh.adam.powell@gmail.com> Co-authored-by: Josh Powell <josh.powell@softwire.com> Co-authored-by: Yobrocharlie <Charliemiller5617@gmail.com> Co-authored-by: Hardly3D <66234359+Hardly3D@users.noreply.github.com> Co-authored-by: shayoki <96078776+shayoki@users.noreply.github.com> Co-authored-by: LT3 <83487515+lessthnthree@users.noreply.github.com>
421 lines
15 KiB
Plaintext
421 lines
15 KiB
Plaintext
|
|
////////////////////////////////////////////EGGS////////////////////////////////////////////
|
|
|
|
/obj/item/food/chocolateegg
|
|
name = "chocolate egg"
|
|
desc = "Such, sweet, fattening food."
|
|
icon = 'icons/obj/food/egg.dmi'
|
|
icon_state = "chocolateegg"
|
|
food_reagents = list(/datum/reagent/consumable/nutriment = 5, /datum/reagent/consumable/sugar = 2, /datum/reagent/consumable/coco = 2, /datum/reagent/consumable/nutriment/vitamin = 1)
|
|
tastes = list("chocolate" = 4, "sweetness" = 1)
|
|
foodtypes = JUNKFOOD | SUGAR | EGG
|
|
food_flags = FOOD_FINGER_FOOD
|
|
w_class = WEIGHT_CLASS_TINY
|
|
crafting_complexity = FOOD_COMPLEXITY_2
|
|
|
|
/// Counter for number of chicks hatched by throwing eggs, minecraft style. Chicks will not emerge from thrown eggs if this value exceeds the MAX_CHICKENS define.
|
|
GLOBAL_VAR_INIT(chicks_from_eggs, 0)
|
|
|
|
/obj/item/food/egg
|
|
name = "egg"
|
|
desc = "An egg!"
|
|
icon = 'icons/obj/food/egg.dmi'
|
|
icon_state = "egg"
|
|
inhand_icon_state = "egg"
|
|
food_reagents = list(/datum/reagent/consumable/eggyolk = 2, /datum/reagent/consumable/eggwhite = 4)
|
|
foodtypes = MEAT | RAW | EGG
|
|
w_class = WEIGHT_CLASS_TINY
|
|
ant_attracting = FALSE
|
|
decomp_type = /obj/item/food/egg/rotten
|
|
decomp_req_handle = TRUE //so laid eggs can actually become chickens
|
|
/// How likely is it that a chicken will come out of here if we throw it?
|
|
var/chick_throw_prob = 13
|
|
|
|
/obj/item/food/egg/make_bakeable()
|
|
AddComponent(/datum/component/bakeable, /obj/item/food/boiledegg, rand(15 SECONDS, 20 SECONDS), TRUE, TRUE)
|
|
|
|
/obj/item/food/egg/make_microwaveable()
|
|
AddElement(/datum/element/microwavable, /obj/item/food/boiledegg)
|
|
|
|
/obj/item/food/egg/organic
|
|
name = "organic egg"
|
|
desc = "A 100% natural egg from the best hens."
|
|
starting_reagent_purity = 1
|
|
|
|
/obj/item/food/egg/rotten
|
|
food_reagents = list(/datum/reagent/consumable/eggrot = 10, /datum/reagent/consumable/mold = 10)
|
|
foodtypes = GROSS
|
|
preserved_food = TRUE
|
|
|
|
/obj/item/food/egg/rotten/make_bakeable()
|
|
AddComponent(/datum/component/bakeable, /obj/item/food/boiledegg/rotten, rand(15 SECONDS, 20 SECONDS), TRUE, TRUE)
|
|
|
|
/obj/item/food/egg/rotten/make_microwaveable()
|
|
AddElement(/datum/element/microwavable, /obj/item/food/boiledegg/rotten)
|
|
|
|
/obj/item/food/egg/gland
|
|
desc = "An egg! It looks weird..."
|
|
|
|
/obj/item/food/egg/gland/Initialize(mapload)
|
|
. = ..()
|
|
reagents.add_reagent(get_random_reagent_id(), 15)
|
|
|
|
var/color = mix_color_from_reagents(reagents.reagent_list)
|
|
add_atom_colour(color, FIXED_COLOUR_PRIORITY)
|
|
|
|
/obj/item/food/egg/throw_impact(atom/hit_atom, datum/thrownthing/throwingdatum)
|
|
if (..()) // was it caught by a mob?
|
|
return
|
|
|
|
var/turf/hit_turf = get_turf(hit_atom)
|
|
new /obj/effect/decal/cleanable/food/egg_smudge(hit_turf)
|
|
if (prob(chick_throw_prob))
|
|
spawn_impact_chick(hit_turf)
|
|
reagents.expose(hit_atom, TOUCH)
|
|
qdel(src)
|
|
|
|
/// Spawn a baby chicken from throwing an egg
|
|
/obj/item/food/egg/proc/spawn_impact_chick(turf/spawn_turf)
|
|
var/chickens_remaining = MAX_CHICKENS - GLOB.chicks_from_eggs
|
|
if (chickens_remaining < 1)
|
|
return
|
|
var/spawned_chickens = prob(97) ? 1 : min(4, chickens_remaining) // We don't want to go over the limit
|
|
if (spawned_chickens > 1) // Chicken jackpot!
|
|
visible_message(span_notice("[spawned_chickens] chicks come out of the egg! Jackpot!"))
|
|
else
|
|
visible_message(span_notice("A chick comes out of the cracked egg!"))
|
|
for(var/i in 1 to spawned_chickens)
|
|
new /mob/living/basic/chick(spawn_turf)
|
|
GLOB.chicks_from_eggs++
|
|
|
|
/obj/item/food/egg/attackby(obj/item/item, mob/user, list/modifiers, list/attack_modifiers)
|
|
if(istype(item, /obj/item/toy/crayon))
|
|
var/obj/item/toy/crayon/crayon = item
|
|
var/clr = crayon.crayon_color
|
|
|
|
if(!(clr in list("blue", "green", "mime", "orange", "purple", "rainbow", "red", "yellow")))
|
|
to_chat(usr, span_notice("[src] refuses to take on this colour!"))
|
|
return
|
|
|
|
to_chat(usr, span_notice("You colour [src] with [item]."))
|
|
icon_state = "egg-[clr]"
|
|
|
|
else if(istype(item, /obj/item/stamp/clown))
|
|
var/clowntype = pick("grock", "grimaldi", "rainbow", "chaos", "joker", "sexy", "standard", "bobble",
|
|
"krusty", "bozo", "pennywise", "ronald", "jacobs", "kelly", "popov", "cluwne")
|
|
icon_state = "egg-clown-[clowntype]"
|
|
desc = "An egg that has been decorated with the grotesque, robustable likeness of a clown's face. "
|
|
to_chat(usr, span_notice("You stamp [src] with [item], creating an artistic and not remotely horrifying likeness of clown makeup."))
|
|
|
|
else if(is_reagent_container(item))
|
|
var/obj/item/reagent_containers/dunk_test_container = item
|
|
if (!dunk_test_container.is_drainable() || !dunk_test_container.reagents.has_reagent(/datum/reagent/water))
|
|
return
|
|
|
|
to_chat(user, span_notice("You check if [src] is rotten."))
|
|
if(istype(src, /obj/item/food/egg/rotten))
|
|
to_chat(user, span_warning("[src] floats in the [dunk_test_container]!"))
|
|
else
|
|
to_chat(user, span_notice("[src] sinks into the [dunk_test_container]!"))
|
|
else
|
|
..()
|
|
|
|
/obj/item/food/egg/interact_with_atom_secondary(atom/interacting_with, mob/living/user, list/modifiers)
|
|
if(!istype(interacting_with, /obj/machinery/griddle))
|
|
return NONE
|
|
|
|
var/obj/machinery/griddle/hit_griddle = interacting_with
|
|
if(length(hit_griddle.griddled_objects) >= hit_griddle.max_items)
|
|
interacting_with.balloon_alert(user, "no room!")
|
|
return ITEM_INTERACT_BLOCKING
|
|
var/atom/broken_egg = new /obj/item/food/rawegg(interacting_with.loc)
|
|
if(LAZYACCESS(modifiers, ICON_X))
|
|
broken_egg.pixel_x = clamp(text2num(LAZYACCESS(modifiers, ICON_X)) - 16, -(ICON_SIZE_X/2), ICON_SIZE_X/2)
|
|
if(LAZYACCESS(modifiers, ICON_Y))
|
|
broken_egg.pixel_y = clamp(text2num(LAZYACCESS(modifiers, ICON_Y)) - 16, -(ICON_SIZE_Y/2), ICON_SIZE_Y/2)
|
|
playsound(user, 'sound/items/sheath.ogg', 40, TRUE)
|
|
reagents.trans_to(broken_egg, reagents.total_volume, copy_only = TRUE)
|
|
|
|
hit_griddle.AddToGrill(broken_egg, user)
|
|
interacting_with.balloon_alert(user, "cracks [src] open")
|
|
|
|
qdel(src)
|
|
return ITEM_INTERACT_BLOCKING
|
|
|
|
/obj/item/food/egg/blue
|
|
icon_state = "egg-blue"
|
|
inhand_icon_state = "egg-blue"
|
|
|
|
/obj/item/food/egg/green
|
|
icon_state = "egg-green"
|
|
inhand_icon_state = "egg-green"
|
|
|
|
/obj/item/food/egg/mime
|
|
icon_state = "egg-mime"
|
|
inhand_icon_state = "egg-mime"
|
|
|
|
/obj/item/food/egg/orange
|
|
icon_state = "egg-orange"
|
|
inhand_icon_state = "egg-orange"
|
|
|
|
/obj/item/food/egg/purple
|
|
icon_state = "egg-purple"
|
|
inhand_icon_state = "egg-purple"
|
|
|
|
/obj/item/food/egg/rainbow
|
|
icon_state = "egg-rainbow"
|
|
inhand_icon_state = "egg-rainbow"
|
|
|
|
/obj/item/food/egg/red
|
|
icon_state = "egg-red"
|
|
inhand_icon_state = "egg-red"
|
|
|
|
/obj/item/food/egg/yellow
|
|
icon_state = "egg-yellow"
|
|
inhand_icon_state = "egg-yellow"
|
|
|
|
/obj/item/food/egg/penguin_egg
|
|
icon = 'icons/mob/simple/penguins.dmi'
|
|
icon_state = "penguin_egg"
|
|
|
|
/obj/item/food/egg/fertile
|
|
name = "fertile-looking egg"
|
|
desc = "An egg! It looks fertilized.\nQuite how you can tell this just by looking at it is a mystery."
|
|
chick_throw_prob = 100
|
|
|
|
/obj/item/food/egg/fertile/Initialize(mapload, loc)
|
|
. = ..()
|
|
|
|
AddComponent(/datum/component/fertile_egg,\
|
|
embryo_type = /mob/living/basic/chick,\
|
|
minimum_growth_rate = 1,\
|
|
maximum_growth_rate = 2,\
|
|
total_growth_required = 200,\
|
|
current_growth = 0,\
|
|
location_allowlist = typecacheof(list(/turf)),\
|
|
spoilable = FALSE,\
|
|
)
|
|
|
|
/obj/item/food/friedegg
|
|
name = "fried egg"
|
|
desc = "A fried egg. Would go well with a touch of salt and pepper."
|
|
icon = 'icons/obj/food/egg.dmi'
|
|
icon_state = "friedegg"
|
|
food_reagents = list(
|
|
/datum/reagent/consumable/nutriment/protein = 3,
|
|
/datum/reagent/consumable/eggyolk = 1,
|
|
/datum/reagent/consumable/nutriment/vitamin = 1,
|
|
)
|
|
bite_consumption = 1
|
|
tastes = list("egg" = 4)
|
|
foodtypes = MEAT | FRIED | BREAKFAST | EGG
|
|
w_class = WEIGHT_CLASS_SMALL
|
|
crafting_complexity = FOOD_COMPLEXITY_1
|
|
|
|
/obj/item/food/rawegg
|
|
name = "raw egg"
|
|
desc = "Supposedly good for you, if you can stomach it. Better fried."
|
|
icon = 'icons/obj/food/egg.dmi'
|
|
icon_state = "rawegg"
|
|
food_reagents = list() // Receives all reagents from its whole egg counterpart
|
|
bite_consumption = 1
|
|
tastes = list("raw egg" = 6, "sliminess" = 1)
|
|
eatverbs = list("gulp down")
|
|
foodtypes = MEAT | RAW | EGG
|
|
w_class = WEIGHT_CLASS_SMALL
|
|
|
|
/obj/item/food/rawegg/make_grillable()
|
|
AddComponent(/datum/component/grillable, /obj/item/food/friedegg, rand(20 SECONDS, 35 SECONDS), TRUE, FALSE)
|
|
|
|
/obj/item/food/boiledegg
|
|
name = "boiled egg"
|
|
desc = "A hard boiled egg."
|
|
icon = 'icons/obj/food/egg.dmi'
|
|
icon_state = "egg"
|
|
inhand_icon_state = "egg"
|
|
food_reagents = list(
|
|
/datum/reagent/consumable/nutriment/protein = 3,
|
|
/datum/reagent/consumable/nutriment/vitamin = 1,
|
|
)
|
|
tastes = list("egg" = 1)
|
|
foodtypes = MEAT | BREAKFAST | EGG
|
|
food_flags = FOOD_FINGER_FOOD
|
|
w_class = WEIGHT_CLASS_SMALL
|
|
ant_attracting = FALSE
|
|
decomp_type = /obj/item/food/boiledegg/rotten
|
|
crafting_complexity = FOOD_COMPLEXITY_1
|
|
|
|
/obj/item/food/eggsausage
|
|
name = "egg with sausage"
|
|
desc = "A good egg with a side of sausages."
|
|
icon = 'icons/obj/food/egg.dmi'
|
|
icon_state = "eggsausage"
|
|
food_reagents = list(/datum/reagent/consumable/nutriment/protein = 8, /datum/reagent/consumable/nutriment/vitamin = 2, /datum/reagent/consumable/nutriment = 4)
|
|
foodtypes = MEAT | FRIED | BREAKFAST | EGG
|
|
tastes = list("egg" = 4, "meat" = 4)
|
|
venue_value = FOOD_PRICE_NORMAL
|
|
crafting_complexity = FOOD_COMPLEXITY_3
|
|
custom_materials = list(/datum/material/meat = MEATSLAB_MATERIAL_AMOUNT)
|
|
|
|
/obj/item/food/boiledegg/rotten
|
|
food_reagents = list(/datum/reagent/consumable/eggrot = 10)
|
|
tastes = list("rotten egg" = 1)
|
|
foodtypes = GROSS
|
|
preserved_food = TRUE
|
|
|
|
/obj/item/food/omelette //FUCK THIS
|
|
name = "omelette du fromage"
|
|
desc = "That's all you can say!"
|
|
icon = 'icons/obj/food/egg.dmi'
|
|
icon_state = "omelette"
|
|
food_reagents = list(
|
|
/datum/reagent/consumable/nutriment/protein = 10,
|
|
/datum/reagent/consumable/nutriment/vitamin = 3,
|
|
)
|
|
bite_consumption = 1
|
|
w_class = WEIGHT_CLASS_SMALL
|
|
tastes = list("egg" = 1, "cheese" = 1)
|
|
foodtypes = MEAT | BREAKFAST | DAIRY | EGG
|
|
venue_value = FOOD_PRICE_CHEAP
|
|
crafting_complexity = FOOD_COMPLEXITY_2
|
|
|
|
/obj/item/food/omelette/Initialize(mapload)
|
|
. = ..()
|
|
AddElement(/datum/element/love_food_buff, /datum/status_effect/food/speech/french)
|
|
|
|
/obj/item/food/omelette/attackby(obj/item/item, mob/user, list/modifiers, list/attack_modifiers)
|
|
if(istype(item, /obj/item/kitchen/fork))
|
|
var/obj/item/kitchen/fork/fork = item
|
|
if(fork.forkload)
|
|
to_chat(user, span_warning("You already have omelette on your fork!"))
|
|
else
|
|
fork.icon_state = "forkloaded"
|
|
user.visible_message(span_notice("[user] takes a piece of omelette with [user.p_their()] fork!"), \
|
|
span_notice("You take a piece of omelette with your fork."))
|
|
|
|
var/datum/reagent/reagent = pick(reagents.reagent_list)
|
|
reagents.remove_reagent(reagent.type, 1)
|
|
fork.forkload = reagent
|
|
if(reagents.total_volume <= 0)
|
|
qdel(src)
|
|
return
|
|
..()
|
|
|
|
/obj/item/food/benedict
|
|
name = "eggs benedict"
|
|
desc = "There is only one egg on this, how rude."
|
|
icon = 'icons/obj/food/egg.dmi'
|
|
icon_state = "benedict"
|
|
food_reagents = list(
|
|
/datum/reagent/consumable/nutriment/vitamin = 6,
|
|
/datum/reagent/consumable/nutriment/protein = 6,
|
|
/datum/reagent/consumable/nutriment = 3,
|
|
)
|
|
w_class = WEIGHT_CLASS_SMALL
|
|
tastes = list("egg" = 1, "bacon" = 1, "bun" = 1)
|
|
foodtypes = MEAT|BREAKFAST|GRAIN|FRIED|EGG
|
|
venue_value = FOOD_PRICE_NORMAL
|
|
crafting_complexity = FOOD_COMPLEXITY_3
|
|
custom_materials = list(/datum/material/meat = MEATSLAB_MATERIAL_AMOUNT)
|
|
|
|
/obj/item/food/eggwrap
|
|
name = "egg wrap"
|
|
desc = "The precursor to Pigs in a Blanket."
|
|
icon = 'icons/obj/food/egg.dmi'
|
|
icon_state = "eggwrap"
|
|
food_reagents = list(
|
|
/datum/reagent/consumable/nutriment = 6,
|
|
/datum/reagent/consumable/nutriment/protein = 2,
|
|
/datum/reagent/consumable/nutriment/vitamin = 3,
|
|
)
|
|
tastes = list("egg" = 1)
|
|
foodtypes = MEAT|VEGETABLES|FRIED|EGG
|
|
w_class = WEIGHT_CLASS_TINY
|
|
crafting_complexity = FOOD_COMPLEXITY_3
|
|
|
|
/obj/item/food/chawanmushi
|
|
name = "chawanmushi"
|
|
desc = "A legendary egg custard that makes friends out of enemies. Probably too hot for a cat to eat."
|
|
icon = 'icons/obj/food/egg.dmi'
|
|
icon_state = "chawanmushi"
|
|
food_reagents = list(
|
|
/datum/reagent/consumable/nutriment = 4,
|
|
/datum/reagent/consumable/nutriment/protein = 3,
|
|
/datum/reagent/consumable/nutriment/vitamin = 1,
|
|
)
|
|
tastes = list("custard" = 1)
|
|
foodtypes = MEAT | VEGETABLES | EGG
|
|
venue_value = FOOD_PRICE_NORMAL
|
|
crafting_complexity = FOOD_COMPLEXITY_3
|
|
|
|
/obj/item/food/spore_sack
|
|
name = "spore sack"
|
|
desc = "A spore sack. blobby and gooey!"
|
|
icon = 'icons/obj/food/egg.dmi'
|
|
icon_state = "spore_sack"
|
|
base_icon_state = "spore_sack"
|
|
inhand_icon_state = "egg"
|
|
food_reagents = list(/datum/reagent/consumable/eggyolk = 4, /datum/reagent/toxin/spore = 4, /datum/reagent/consumable/eggwhite = 1, /datum/reagent/consumable/nutriment/vitamin = 1)
|
|
tastes = list("sliminess" = 4, "blob" = 2)
|
|
foodtypes = MEAT | RAW | TOXIC | EGG
|
|
w_class = WEIGHT_CLASS_TINY
|
|
ant_attracting = FALSE
|
|
preserved_food = TRUE
|
|
|
|
/obj/item/food/spore_sack/Initialize(mapload)
|
|
. = ..()
|
|
if(prob(50))
|
|
icon_state = "[base_icon_state]2"
|
|
|
|
AddElement(/datum/element/swabable, CELL_LINE_TABLE_BLOBSPORE, CELL_VIRUS_TABLE_GENERIC_MOB, 1, 5)
|
|
|
|
/obj/item/food/spore_sack/interact_with_atom_secondary(atom/interacting_with, mob/living/user, list/modifiers)
|
|
if(!istype(interacting_with, /obj/machinery/griddle))
|
|
return NONE
|
|
|
|
var/obj/machinery/griddle/hit_griddle = interacting_with
|
|
if(length(hit_griddle.griddled_objects) >= hit_griddle.max_items)
|
|
interacting_with.balloon_alert(user, "no room!")
|
|
return ITEM_INTERACT_BLOCKING
|
|
var/atom/broken_egg = new /obj/item/food/rawegg/spore(interacting_with.loc)
|
|
if(LAZYACCESS(modifiers, ICON_X))
|
|
broken_egg.pixel_x = clamp(text2num(LAZYACCESS(modifiers, ICON_X)) - 16, -(ICON_SIZE_X/2), ICON_SIZE_X/2)
|
|
if(LAZYACCESS(modifiers, ICON_Y))
|
|
broken_egg.pixel_y = clamp(text2num(LAZYACCESS(modifiers, ICON_Y)) - 16, -(ICON_SIZE_Y/2), ICON_SIZE_Y/2)
|
|
playsound(user, 'sound/items/sheath.ogg', 40, TRUE)
|
|
reagents.trans_to(broken_egg, reagents.total_volume, copy_only = TRUE)
|
|
|
|
hit_griddle.AddToGrill(broken_egg, user)
|
|
interacting_with.balloon_alert(user, "cracks [src] open")
|
|
|
|
qdel(src)
|
|
return ITEM_INTERACT_BLOCKING
|
|
|
|
/obj/item/food/spore_sack/independent
|
|
icon_state = "spore_sack_independent"
|
|
base_icon_state = "spore_sack_independent"
|
|
|
|
/obj/item/food/friedegg/spore
|
|
name = "fried spore"
|
|
desc = "A fried blob spore. Would go well with a dab of cold sauce."
|
|
icon_state = "friedspore"
|
|
//superior healing and cyto reagents to compensate for rarity and mild poison effect.
|
|
food_reagents = list(
|
|
/datum/reagent/consumable/nutriment/peptides = 2,
|
|
/datum/reagent/consumable/nutriment/vitamin = 1,
|
|
)
|
|
tastes = list("blob" = 4, "level 5 biohazard" = 2)
|
|
|
|
/obj/item/food/rawegg/spore
|
|
name = "burst spore"
|
|
desc = "Is this the ant egg everyone is always talking about? Better fried."
|
|
icon_state = "burstspore"
|
|
tastes = list("sliminess" = 4, "blob" = 2)
|
|
|
|
/obj/item/food/rawegg/spore/Initialize(mapload)
|
|
. = ..()
|
|
AddElement(/datum/element/swabable, CELL_LINE_TABLE_BLOBSPORE, CELL_VIRUS_TABLE_GENERIC_MOB, 1, 5)
|
|
|
|
/obj/item/food/rawegg/spore/make_grillable()
|
|
AddComponent(/datum/component/grillable, /obj/item/food/friedegg/spore, rand(15 SECONDS, 25 SECONDS), TRUE, FALSE)
|