diff --git a/GainStation13/code/mechanics/metal_cruncher.dm b/GainStation13/code/mechanics/metal_cruncher.dm index ef2d5b9d5e..136764899a 100644 --- a/GainStation13/code/mechanics/metal_cruncher.dm +++ b/GainStation13/code/mechanics/metal_cruncher.dm @@ -84,3 +84,7 @@ crunch_value = 15 /obj/item/stack/sheet/mineral/plaswood crunch_value = 15 +/obj/item/stack/sheet/mineral/diamond + crunch_value = 25 + + diff --git a/GainStation13/code/modules/food_and_drinks/metal_food.dm b/GainStation13/code/modules/food_and_drinks/metal_food.dm new file mode 100644 index 0000000000..be4f9954e1 --- /dev/null +++ b/GainStation13/code/modules/food_and_drinks/metal_food.dm @@ -0,0 +1,63 @@ +////////////////////// +//////METAL FOOD////// +////////////////////// + + +/obj/item/metal_food + icon = 'GainStation13/icons/obj/food/metal_food.dmi' + desc = "Looks shiny." + w_class = WEIGHT_CLASS_SMALL + var/crunch_value = 0 // value per bite + var/crunch_left = 2 // means 3 bites left + + +// Maybe I should not put it here or making separate object for that... +/obj/item/metal_food/attack(mob/living/M, mob/living/user) + if(HAS_TRAIT(M, TRAIT_METAL_CRUNCHER)) + if(crunch_value > 0) + if(M == user) + user.visible_message("[user] crunches on some of [src].", "You crunch on some of [src].") + else + M.visible_message("[user] attempts to feed some of [src] to [M].", "[user] attempts to feed some of [src] to [M].") + playsound(M,'sound/items/eatfood.ogg', rand(10,50), 1) + use(1) + M.nutrition += crunch_value + if(crunch_left == 0) + qdel(src) + else + crunch_left -= 1 + else + if(M == user) + user.visible_message("[user] fails to crunch some of [src].", "Your teeth feel sore when you try to crunch on some of [src].") + else + M.visible_message("[user] attempts to feed some of [src] to [M].", "[user] attempts to feed some of [src] to [M].") + return + . = ..() + + +/obj/item/metal_food/Initialize(mapload) + . = ..() + +/obj/item/metal_food/mburger + name = "Metal Burger" + icon_state = "mburger" + crunch_value = 15 + +/obj/item/metal_food/mburger_calorite + name = "Calorite Burger" + icon_state = "mburger_calorite" + crunch_value = 35 + +/obj/item/metal_food/mram + name = "Old RAM module" + desc = "It's an obsolete RAM module. You can see some dust on it and spoiled electronics" + icon_state = "mRAM" + crunch_value = 1 + crunch_left = 4 + +/obj/item/metal_food/mfries + name = "Fried rods" + desc = "It looks like fries, but made out of metal. Can we call it french rods?" + icon_state = "mfrench_rods" + crunch_value = 1 + crunch_left = 9 diff --git a/GainStation13/code/modules/food_and_drinks/recipes/metal_food_recipes.dm b/GainStation13/code/modules/food_and_drinks/recipes/metal_food_recipes.dm new file mode 100644 index 0000000000..29b93e2b99 --- /dev/null +++ b/GainStation13/code/modules/food_and_drinks/recipes/metal_food_recipes.dm @@ -0,0 +1,27 @@ +/datum/crafting_recipe/food/mburger + name = "Metal Burger" + reqs = list( + /obj/item/stack/sheet/mineral/gold = 1, + /obj/item/stack/sheet/mineral/silver = 1, + /obj/item/stack/sheet/metal = 1 + ) + result = /obj/item/metal_food/mburger + subcategory = CAT_MISCELLANEOUS //CAT_BURGER + +/datum/crafting_recipe/food/mburger_calorite + name = "Calotite Burger" + reqs = list( + /obj/item/stack/sheet/mineral/gold = 1, + /obj/item/stack/sheet/mineral/calorite = 1, + /obj/item/stack/sheet/metal = 1 + ) + result = /obj/item/metal_food/mburger_calorite + subcategory = CAT_MISCELLANEOUS //CAT_BURGER + +/datum/crafting_recipe/food/mfries + name = "Fried rods" + reqs = list( + /obj/item/stack/rods = 3 + ) + result = /obj/item/metal_food/mfries + subcategory = CAT_MISCELLANEOUS //CAT_BURGER diff --git a/GainStation13/icons/obj/food/metal_food.dmi b/GainStation13/icons/obj/food/metal_food.dmi new file mode 100644 index 0000000000..9673c02e16 Binary files /dev/null and b/GainStation13/icons/obj/food/metal_food.dmi differ diff --git a/code/_globalvars/lists/maintenance_loot.dm b/code/_globalvars/lists/maintenance_loot.dm index 562224bc2c..84d0b0b32e 100644 --- a/code/_globalvars/lists/maintenance_loot.dm +++ b/code/_globalvars/lists/maintenance_loot.dm @@ -120,6 +120,7 @@ GLOBAL_LIST_INIT(maintenance_loot, list( /obj/item/trash/fatoray_scrap1 = 1, /obj/item/trash/fatoray_scrap2 = 1, /obj/item/trash/odd_disk = 1, + /obj/item/metal_food/mram = 7 // GS13 EDIT END "" = 3 )) diff --git a/tgstation.dme b/tgstation.dme index f32f08224b..d5e6d706ab 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -4025,10 +4025,12 @@ #include "GainStation13\code\modules\food_and_drinks\bigbottle.dm" #include "GainStation13\code\modules\food_and_drinks\drinks.dm" #include "GainStation13\code\modules\food_and_drinks\food.dm" +#include "GainStation13\code\modules\food_and_drinks\metal_food.dm" #include "GainStation13\code\modules\food_and_drinks\recipes_bigpizza.dm" #include "GainStation13\code\modules\food_and_drinks\drinks\drinks\drinkingglass.dm" #include "GainStation13\code\modules\food_and_drinks\objects\boxes.dm" #include "GainStation13\code\modules\food_and_drinks\objects\candy_flora.dm" +#include "GainStation13\code\modules\food_and_drinks\recipes\metal_food_recipes.dm" #include "GainStation13\code\modules\food_and_drinks\recipes\recipes_ported.dm" #include "GainStation13\code\modules\gym\gym.dm" #include "GainStation13\code\modules\hud\alert.dm" @@ -4076,9 +4078,11 @@ #include "GainStation13\code\modules\research\designs\autolathe.dm" #include "GainStation13\code\modules\research\designs\biogen.dm" #include "GainStation13\code\modules\research\designs\borg.dm" +#include "GainStation13\code\modules\research\designs\ipc_designs.dm" #include "GainStation13\code\modules\research\designs\nutri_designs.dm" #include "GainStation13\code\modules\research\nanites\nanite_programs\fattening.dm" #include "GainStation13\code\modules\research\techweb\nutritech_nodes.dm" +#include "GainStation13\code\modules\research\techweb\robotic_nodes.dm" #include "GainStation13\code\modules\resize\height_limits.dm" #include "GainStation13\code\modules\surgery\organs\augments.dm" #include "GainStation13\code\modules\surgery\organs\tongue.dm" @@ -4128,8 +4132,6 @@ #include "GainStation13\icons\obj\vairous_weapons.dm" #include "GainStation13\icons\obj\structure\beds.dm" #include "GainStation13\icons\obj\structure\flora.dm" -#include "GainStation13\code\modules\research\techweb\robotic_nodes.dm" -#include "GainStation13\code\modules\research\designs\ipc_designs.dm" #include "hyperstation\code\datums\mood_events\events.dm" #include "hyperstation\code\game\objects\railings.dm" #include "hyperstation\code\game\objects\structures\bench.dm"