diff --git a/.vscode/launch.json b/.vscode/launch.json index dc67e472b5de..349a859281d2 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -1,18 +1,26 @@ { "version": "0.2.0", "configurations": [ - { + { "type": "byond", "request": "launch", "name": "Build & DS Debug", "preLaunchTask": "dm: build - ${command:CurrentDME}", "dmb": "${workspaceFolder}/${command:CurrentDMB}" - }, - { + }, + { + "type": "byond", + "request": "launch", + "name": "Build & DD Debug", + "preLaunchTask": "dm: build - ${command:CurrentDME}", + "dmb": "${workspaceFolder}/${command:CurrentDMB}", + "dreamDaemon": true + }, + { "type": "byond", "request": "launch", "name": "DS Debug", "dmb": "${workspaceFolder}/${command:CurrentDMB}" - } + } ] - } +} diff --git a/README.md b/README.md index 46aa88371a4f..d363f6803984 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ > [!IMPORTANT] -> July is a month of focus on "Quality releases", this means no new balance or feature PRs are permitted without prior approval.
+> We are currently in a period of focus on "Quality releases", this means no new balance or feature PRs are permitted without prior approval.
> [For more info, see the following discord post on our public discord](https://discord.com/channels/145533722026967040/499000353312735233/1256632472196878337) Paradise Station diff --git a/_maps/map_files/RandomRuins/LavaRuins/lavaland_biodome_winter.dmm b/_maps/map_files/RandomRuins/LavaRuins/lavaland_biodome_winter.dmm index f4083f3b563e..3ff7e1339bef 100644 --- a/_maps/map_files/RandomRuins/LavaRuins/lavaland_biodome_winter.dmm +++ b/_maps/map_files/RandomRuins/LavaRuins/lavaland_biodome_winter.dmm @@ -102,7 +102,7 @@ /area/ruin/powered/snow_cabin) "ax" = ( /obj/structure/table/wood, -/obj/item/food/snacks/beans, +/obj/item/food/beans, /turf/simulated/floor/wood, /area/ruin/powered/snow_cabin) "ay" = ( diff --git a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_althland_excavation.dmm b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_althland_excavation.dmm index 03a9616e965b..18a3ce53eba2 100644 --- a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_althland_excavation.dmm +++ b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_althland_excavation.dmm @@ -665,7 +665,7 @@ /area/lavaland/surface/outdoors) "ie" = ( /obj/structure/table, -/obj/item/food/snacks/badrecipe, +/obj/item/food/badrecipe, /turf/simulated/floor/plating/lavaland_air, /area/ruin/unpowered/althland_excavation) "iv" = ( @@ -1088,8 +1088,8 @@ "Cs" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table_frame, -/obj/item/food/snacks/badrecipe, -/obj/item/food/snacks/badrecipe{ +/obj/item/food/badrecipe, +/obj/item/food/badrecipe{ pixel_y = 14; pixel_x = 14 }, @@ -1313,7 +1313,7 @@ /area/lavaland/surface/outdoors) "OX" = ( /obj/structure/table_frame, -/obj/item/food/snacks/badrecipe, +/obj/item/food/badrecipe, /turf/simulated/floor/plating/lavaland_air, /area/ruin/unpowered/althland_excavation) "Pe" = ( diff --git a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_pizzaparty.dmm b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_pizzaparty.dmm index 4c90cc58e4a0..e21f413c620f 100644 --- a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_pizzaparty.dmm +++ b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_pizzaparty.dmm @@ -36,7 +36,7 @@ /turf/simulated/floor/wood/lavaland_air, /area/ruin/powered/pizza_party) "j" = ( -/obj/item/food/snacks/mushroompizzaslice, +/obj/item/food/mushroompizzaslice, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plating/lavaland_air, /area/ruin/powered/pizza_party) @@ -147,18 +147,18 @@ /area/ruin/powered/pizza_party) "D" = ( /obj/structure/table/wood, -/obj/item/food/snacks/margheritapizzaslice, +/obj/item/food/margheritapizzaslice, /obj/item/trash/plate, /turf/simulated/floor/wood/lavaland_air, /area/ruin/powered/pizza_party) "E" = ( /obj/structure/table/wood, -/obj/item/food/snacks/meatpizzaslice, +/obj/item/food/meatpizzaslice, /turf/simulated/floor/wood/lavaland_air, /area/ruin/powered/pizza_party) "F" = ( /obj/structure/table/wood, -/obj/item/food/snacks/sliceable/birthdaycake, +/obj/item/food/sliceable/birthdaycake, /turf/simulated/floor/wood/lavaland_air, /area/ruin/powered/pizza_party) "G" = ( diff --git a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_seed_vault.dmm b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_seed_vault.dmm index 91177bcb4eb4..1840bd959f46 100644 --- a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_seed_vault.dmm +++ b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_seed_vault.dmm @@ -119,7 +119,7 @@ /obj/effect/mapping_helpers/no_lava, /obj/effect/mob_spawn/human/corpse/seed_vault_diona, /obj/item/pickaxe/mini, -/obj/item/food/snacks/grown/mushroom/glowshroom{ +/obj/item/food/grown/mushroom/glowshroom{ pixel_x = 8; pixel_y = -8 }, diff --git a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_sloth.dmm b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_sloth.dmm index a4db3607d6e4..4c3449a8e7f4 100644 --- a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_sloth.dmm +++ b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_sloth.dmm @@ -25,7 +25,7 @@ /area/ruin/powered/sloth) "f" = ( /obj/structure/table/wood, -/obj/item/food/snacks/grown/citrus/orange, +/obj/item/food/grown/citrus/orange, /turf/simulated/floor/sepia{ slowdown = 10 }, diff --git a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_watcher_grave.dmm b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_watcher_grave.dmm index d87396e356f8..cd48da8567cc 100644 --- a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_watcher_grave.dmm +++ b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_watcher_grave.dmm @@ -34,7 +34,7 @@ /obj/structure/stone_tile{ dir = 1 }, -/obj/item/food/snacks/egg/watcher, +/obj/item/food/egg/watcher, /obj/effect/mapping_helpers/no_lava, /obj/effect/mapping_helpers/no_lava, /turf/simulated/floor/plating/asteroid/basalt/lava_land_surface, diff --git a/_maps/map_files/RandomRuins/SpaceRuins/abandonedzoo.dmm b/_maps/map_files/RandomRuins/SpaceRuins/abandonedzoo.dmm index a6166b2c411f..2db26731792d 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/abandonedzoo.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/abandonedzoo.dmm @@ -539,7 +539,7 @@ /area/ruin/space/unpowered) "bn" = ( /obj/structure/table/reinforced, -/obj/item/food/snacks/carrotfries, +/obj/item/food/carrotfries, /turf/simulated/floor/plasteel{ icon_state = "dark" }, diff --git a/_maps/map_files/RandomRuins/SpaceRuins/blowntcommsat.dmm b/_maps/map_files/RandomRuins/SpaceRuins/blowntcommsat.dmm index a24f340b2aec..98f108eed431 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/blowntcommsat.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/blowntcommsat.dmm @@ -587,7 +587,7 @@ /turf/simulated/wall/r_wall, /area/space/nearstation) "Nw" = ( -/obj/item/food/snacks/xenomeatbreadslice{ +/obj/item/food/xenomeatbreadslice{ name = "green mold bread slice" }, /turf/simulated/floor/plating/airless, diff --git a/_maps/map_files/RandomRuins/SpaceRuins/casino.dmm b/_maps/map_files/RandomRuins/SpaceRuins/casino.dmm index 881da9054559..c12b99680ace 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/casino.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/casino.dmm @@ -200,6 +200,15 @@ }, /turf/space, /area/space) +"ft" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/equipment, +/turf/simulated/floor/plating, +/area/ruin/space/powered/casino/engine) "fG" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ dir = 10 @@ -389,9 +398,7 @@ /turf/simulated/floor/mineral/titanium/blue/airless, /area/ruin/space/powered/casino/docked_ships) "jh" = ( -/obj/machinery/light/small{ - dir = 2 - }, +/obj/machinery/light/small, /obj/structure/cable{ d1 = 4; d2 = 8; @@ -595,7 +602,7 @@ /turf/simulated/floor/mineral/silver, /area/ruin/space/powered/casino/hall) "od" = ( -/obj/item/food/snacks/grown/lily, +/obj/item/food/grown/lily, /turf/simulated/floor/beach/away/water/deep, /area/ruin/space/powered/casino/hall) "oi" = ( @@ -1035,7 +1042,7 @@ /turf/simulated/floor/plating, /area/ruin/space/powered/casino/maints) "Aw" = ( -/obj/effect/spawner/airlock/engineer, +/obj/effect/spawner/airlock, /turf/simulated/wall, /area/ruin/space/powered/casino/floor) "AF" = ( @@ -1166,7 +1173,6 @@ /area/ruin/space/powered/casino/maints) "DL" = ( /obj/machinery/light{ - dir = 2; brightness_color = "#FF0000"; color = "#FF0000" }, @@ -3465,7 +3471,7 @@ mp Eq fG jS -jS +ft jS wo Xe diff --git a/_maps/map_files/RandomRuins/SpaceRuins/deepstorage.dmm b/_maps/map_files/RandomRuins/SpaceRuins/deepstorage.dmm index 0d2e9575100d..125dd2c1d928 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/deepstorage.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/deepstorage.dmm @@ -318,11 +318,11 @@ /area/ruin/space/unpowered) "aF" = ( /obj/structure/closet/cardboard, -/obj/item/food/snacks/beans, -/obj/item/food/snacks/beans, -/obj/item/food/snacks/beans, -/obj/item/food/snacks/beans, -/obj/item/food/snacks/beans, +/obj/item/food/beans, +/obj/item/food/beans, +/obj/item/food/beans, +/obj/item/food/beans, +/obj/item/food/beans, /turf/simulated/floor/plasteel, /area/ruin/space/unpowered) "aG" = ( @@ -649,7 +649,7 @@ /area/ruin/space/unpowered) "bD" = ( /obj/structure/table, -/obj/item/food/snacks/beans, +/obj/item/food/beans, /turf/simulated/floor/plasteel{ icon_state = "bar" }, diff --git a/_maps/map_files/RandomRuins/SpaceRuins/derelict2.dmm b/_maps/map_files/RandomRuins/SpaceRuins/derelict2.dmm index d3c8d514d032..16aeab2b24ee 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/derelict2.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/derelict2.dmm @@ -67,7 +67,7 @@ /obj/item/trash/plate{ pixel_x = -10 }, -/obj/item/food/snacks/burger/ghost, +/obj/item/food/burger/ghost, /turf/simulated/floor/plasteel, /area/ruin/space/powered) "o" = ( diff --git a/_maps/map_files/RandomRuins/SpaceRuins/derelict5.dmm b/_maps/map_files/RandomRuins/SpaceRuins/derelict5.dmm index a5e6e2a6520c..bd9a9b981788 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/derelict5.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/derelict5.dmm @@ -279,10 +279,10 @@ /area/ruin/space/unpowered) "SX" = ( /obj/structure/table, -/obj/item/food/snacks/beans{ +/obj/item/food/beans{ pixel_x = 10 }, -/obj/item/food/snacks/beans{ +/obj/item/food/beans{ pixel_x = -5 }, /turf/simulated/floor/plasteel, diff --git a/_maps/map_files/RandomRuins/SpaceRuins/druglab.dmm b/_maps/map_files/RandomRuins/SpaceRuins/druglab.dmm index afceaf98c253..778dd363d6c1 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/druglab.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/druglab.dmm @@ -51,7 +51,7 @@ /area/ruin/space/methlab) "l" = ( /obj/structure/table, -/obj/item/food/snacks/chips, +/obj/item/food/chips, /turf/simulated/floor/plating, /area/ruin/space/methlab) "m" = ( diff --git a/_maps/map_files/RandomRuins/SpaceRuins/meatpackers.dmm b/_maps/map_files/RandomRuins/SpaceRuins/meatpackers.dmm index 0fe586a3dcce..90f335a1ffe1 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/meatpackers.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/meatpackers.dmm @@ -95,8 +95,8 @@ /area/ruin/unpowered/BMPship/Delta) "ax" = ( /obj/structure/closet/crate/freezer, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat, +/obj/item/food/meat, +/obj/item/food/meat, /obj/effect/turf_decal/stripes/line{ dir = 1 }, @@ -104,7 +104,7 @@ /area/ruin/unpowered/BMPship/Delta) "ay" = ( /obj/structure/closet/crate/freezer, -/obj/item/food/snacks/meat, +/obj/item/food/meat, /obj/effect/turf_decal/stripes/line{ dir = 1 }, @@ -517,7 +517,7 @@ "cb" = ( /obj/structure/table, /obj/item/kitchen/knife/butcher, -/obj/item/food/snacks/meat, +/obj/item/food/meat, /turf/simulated/floor/plasteel{ icon_state = "barber" }, @@ -600,7 +600,7 @@ /turf/simulated/wall/mineral/titanium, /area/ruin/unpowered/BMPship/Aft) "cp" = ( -/obj/item/food/snacks/hugemushroomslice, +/obj/item/food/hugemushroomslice, /turf/simulated/floor/plasteel{ icon_state = "bar" }, @@ -699,7 +699,7 @@ /turf/simulated/floor/carpet, /area/ruin/unpowered/BMPship/Fore) "cH" = ( -/obj/item/food/snacks/hugemushroomslice, +/obj/item/food/hugemushroomslice, /turf/simulated/floor/plasteel, /area/ruin/unpowered/BMPship/Midship) "cI" = ( @@ -739,8 +739,8 @@ /area/ruin/unpowered/BMPship/Aft) "cP" = ( /obj/structure/closet/crate/freezer, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat, +/obj/item/food/meat, +/obj/item/food/meat, /turf/simulated/floor/plasteel{ icon_state = "white" }, @@ -835,7 +835,7 @@ }, /area/ruin/unpowered/BMPship/Midship) "di" = ( -/obj/item/food/snacks/meat, +/obj/item/food/meat, /turf/simulated/floor/plasteel{ icon_state = "showroomfloor" }, @@ -1819,7 +1819,7 @@ /area/ruin/unpowered/BMPship/Fore) "fS" = ( /obj/structure/closet/crate/freezer, -/obj/item/food/snacks/meat, +/obj/item/food/meat, /turf/simulated/floor/plasteel{ icon_state = "showroomfloor" }, @@ -2252,7 +2252,7 @@ /turf/simulated/floor/plating/airless, /area/ruin/powered) "hn" = ( -/obj/item/food/snacks/chips, +/obj/item/food/chips, /turf/simulated/floor/plating/airless, /area/ruin/powered) "ho" = ( @@ -2354,8 +2354,8 @@ /area/ruin/unpowered/BMPship/Midship) "IM" = ( /obj/structure/closet/crate/freezer, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/hugemushroomslice, +/obj/item/food/meat, +/obj/item/food/hugemushroomslice, /obj/effect/turf_decal/stripes/line{ dir = 2 }, diff --git a/_maps/map_files/RandomRuins/SpaceRuins/mechtransport.dmm b/_maps/map_files/RandomRuins/SpaceRuins/mechtransport.dmm index d90c6ba615b9..18e946365699 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/mechtransport.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/mechtransport.dmm @@ -299,7 +299,7 @@ /area/ruin/space/mech_transport) "uU" = ( /obj/structure/table, -/obj/item/food/snacks/cornchips{ +/obj/item/food/cornchips{ pixel_y = 4 }, /turf/simulated/floor/mineral/plastitanium/red/airless, diff --git a/_maps/map_files/RandomRuins/SpaceRuins/moonoutpost19.dmm b/_maps/map_files/RandomRuins/SpaceRuins/moonoutpost19.dmm index 97f7ceff1727..1e380195b61d 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/moonoutpost19.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/moonoutpost19.dmm @@ -2020,7 +2020,7 @@ }, /area/ruin/space/moonbase19) "gy" = ( -/obj/item/food/snacks/xenomeatbreadslice{ +/obj/item/food/xenomeatbreadslice{ pixel_y = 5 }, /obj/item/reagent_containers/drinks/coffee{ @@ -3653,16 +3653,16 @@ }, /area/ruin/space/moonbase19) "lC" = ( -/obj/item/food/snacks/beans, -/obj/item/food/snacks/beans{ +/obj/item/food/beans, +/obj/item/food/beans{ pixel_y = 6; pixel_x = 9 }, -/obj/item/food/snacks/beans{ +/obj/item/food/beans{ pixel_y = 3; pixel_x = 3 }, -/obj/item/food/snacks/beans{ +/obj/item/food/beans{ pixel_y = 1; pixel_x = -5 }, @@ -4833,7 +4833,7 @@ /area/ruin/space/moonbase19) "pZ" = ( /obj/effect/decal/cleanable/dirt, -/obj/item/food/snacks/badrecipe, +/obj/item/food/badrecipe, /turf/simulated/floor/plasteel, /area/ruin/space/moonbase19) "qa" = ( @@ -6825,12 +6825,12 @@ }, /area/ruin/space/moonbase19) "yR" = ( -/obj/item/food/snacks/xenomeatbreadslice, -/obj/item/food/snacks/xenomeatbreadslice{ +/obj/item/food/xenomeatbreadslice, +/obj/item/food/xenomeatbreadslice{ pixel_y = 7; pixel_x = 6 }, -/obj/item/food/snacks/xenomeatbreadslice{ +/obj/item/food/xenomeatbreadslice{ pixel_y = 9; pixel_x = -5 }, @@ -6844,7 +6844,7 @@ }, /area/ruin/space/moonbase19) "yU" = ( -/obj/item/food/snacks/candy, +/obj/item/food/candy, /obj/structure/table, /turf/simulated/floor/plasteel, /area/ruin/space/moonbase19) @@ -6868,7 +6868,7 @@ /turf/simulated/floor/carpet, /area/ruin/space/moonbase19) "zh" = ( -/obj/item/food/snacks/badrecipe, +/obj/item/food/badrecipe, /turf/simulated/floor/plasteel{ icon_state = "showroomfloor"; temperature = 273.15 @@ -6941,7 +6941,7 @@ /area/ruin/space/moonbase19) "zv" = ( /obj/structure/rack, -/obj/item/food/snacks/cornchips, +/obj/item/food/cornchips, /turf/simulated/floor/plasteel{ dir = 8; icon_state = "escape" @@ -7806,8 +7806,8 @@ /obj/structure/closet/crate, /obj/item/reagent_containers/glass/beaker/waterbottle, /obj/item/reagent_containers/glass/beaker/waterbottle, -/obj/item/food/snacks/syndicake, -/obj/item/food/snacks/syndicake, +/obj/item/food/syndicake, +/obj/item/food/syndicake, /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, @@ -7995,7 +7995,7 @@ /area/ruin/space/moonbase19) "DV" = ( /obj/structure/closet/crate, -/obj/item/food/snacks/beans, +/obj/item/food/beans, /turf/simulated/floor/plasteel, /area/ruin/space/moonbase19) "Ef" = ( @@ -8123,7 +8123,7 @@ /area/ruin/space/moonbase19) "Ex" = ( /obj/structure/table/reinforced, -/obj/item/food/snacks/sliceable/xenomeatbread{ +/obj/item/food/sliceable/xenomeatbread{ pixel_y = 5 }, /obj/effect/turf_decal/delivery, @@ -10571,7 +10571,7 @@ /area/ruin/space/moonbase19) "PE" = ( /obj/effect/decal/cleanable/dirt, -/obj/item/food/snacks/badrecipe, +/obj/item/food/badrecipe, /turf/simulated/floor/plasteel{ icon_state = "showroomfloor"; temperature = 273.15 diff --git a/_maps/map_files/RandomRuins/SpaceRuins/rocky_motel.dmm b/_maps/map_files/RandomRuins/SpaceRuins/rocky_motel.dmm index ef39c92c0314..2bfe250428f8 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/rocky_motel.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/rocky_motel.dmm @@ -210,7 +210,7 @@ /area/ruin/space/powered) "ur" = ( /obj/structure/table/glass/reinforced, -/obj/item/food/snacks/grilledcheese{ +/obj/item/food/grilledcheese{ pixel_y = 9 }, /turf/simulated/floor/plasteel{ @@ -283,9 +283,7 @@ /turf/simulated/floor/wood, /area/ruin/space/powered) "Ed" = ( -/obj/effect/spawner/airlock/w_to_e{ - req_access_txt = 0 - }, +/obj/effect/spawner/airlock/w_to_e, /turf/simulated/wall, /area/ruin/space/powered) "EQ" = ( diff --git a/_maps/map_files/RandomRuins/SpaceRuins/syndiecakesfactory.dmm b/_maps/map_files/RandomRuins/SpaceRuins/syndiecakesfactory.dmm index 20f47726645d..167491448153 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/syndiecakesfactory.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/syndiecakesfactory.dmm @@ -16,7 +16,7 @@ /area/ruin/space/unpowered) "bk" = ( /obj/structure/table/glass/reinforced/plastitanium, -/obj/item/food/snacks/syndicake{ +/obj/item/food/syndicake{ pixel_y = 7 }, /obj/effect/decal/cleanable/dirt, @@ -111,11 +111,11 @@ /obj/machinery/computer/security/telescreen/entertainment{ pixel_y = -32 }, -/obj/item/food/snacks/donut/sprinkles{ +/obj/item/food/donut/sprinkles{ pixel_y = 8; pixel_x = -9 }, -/obj/item/food/snacks/donut/sprinkles{ +/obj/item/food/donut/sprinkles{ pixel_y = -1; pixel_x = 5 }, @@ -123,8 +123,8 @@ /area/ruin/space/unpowered) "fq" = ( /obj/structure/table/glass/reinforced/plastitanium, -/obj/item/food/snacks/meat/corgi, -/obj/item/food/snacks/meat/corgi{ +/obj/item/food/meat/corgi, +/obj/item/food/meat/corgi{ pixel_y = 6 }, /turf/simulated/floor/plasteel{ @@ -133,14 +133,14 @@ /area/ruin/space/unpowered) "fs" = ( /obj/structure/table/glass/reinforced/plastitanium, -/obj/item/food/snacks/syndicake{ +/obj/item/food/syndicake{ pixel_y = 7 }, -/obj/item/food/snacks/syndicake{ +/obj/item/food/syndicake{ pixel_x = 15; pixel_y = 7 }, -/obj/item/food/snacks/syndicake{ +/obj/item/food/syndicake{ pixel_y = -10 }, /obj/machinery/light/small{ @@ -152,7 +152,7 @@ /area/ruin/space/unpowered) "fE" = ( /obj/structure/table/glass/reinforced/plastitanium, -/obj/item/food/snacks/syndicake, +/obj/item/food/syndicake, /turf/simulated/floor/plasteel{ icon_state = "dark" }, @@ -275,11 +275,11 @@ /area/ruin/space/unpowered) "ke" = ( /obj/structure/table/glass/reinforced/plastitanium, -/obj/item/food/snacks/syndicake{ +/obj/item/food/syndicake{ pixel_x = 15; pixel_y = 7 }, -/obj/item/food/snacks/syndicake, +/obj/item/food/syndicake, /turf/simulated/floor/plasteel{ icon_state = "dark" }, @@ -369,11 +369,11 @@ /area/ruin/space/unpowered) "qd" = ( /obj/structure/table/glass/reinforced/plastitanium, -/obj/item/food/snacks/breadslice, -/obj/item/food/snacks/breadslice{ +/obj/item/food/breadslice, +/obj/item/food/breadslice{ pixel_y = 4 }, -/obj/item/food/snacks/breadslice{ +/obj/item/food/breadslice{ pixel_y = 8 }, /obj/machinery/light/small{ @@ -480,12 +480,12 @@ /area/ruin/space/unpowered) "tf" = ( /obj/structure/table/glass/reinforced/plastitanium, -/obj/item/food/snacks/syndicake, -/obj/item/food/snacks/syndicake{ +/obj/item/food/syndicake, +/obj/item/food/syndicake{ pixel_x = 15; pixel_y = 7 }, -/obj/item/food/snacks/syndicake{ +/obj/item/food/syndicake{ pixel_x = 15 }, /turf/simulated/floor/plasteel{ @@ -693,10 +693,10 @@ /area/ruin/space/unpowered) "Bh" = ( /obj/structure/table/glass/reinforced/plastitanium, -/obj/item/food/snacks/syndicake{ +/obj/item/food/syndicake{ pixel_y = 7 }, -/obj/item/food/snacks/syndicake{ +/obj/item/food/syndicake{ pixel_y = -10 }, /turf/simulated/floor/plasteel{ @@ -748,7 +748,7 @@ /area/ruin/space/unpowered) "Do" = ( /obj/structure/table/glass/reinforced/plastitanium, -/obj/item/food/snacks/meat/corgi, +/obj/item/food/meat/corgi, /turf/simulated/floor/plasteel{ icon_state = "cafeteria" }, @@ -832,8 +832,8 @@ /area/ruin/space/unpowered) "Gn" = ( /obj/structure/table/reinforced, -/obj/item/food/snacks/syndicake, -/obj/item/food/snacks/syndicake{ +/obj/item/food/syndicake, +/obj/item/food/syndicake{ pixel_y = 7 }, /turf/simulated/floor/engine, @@ -877,7 +877,7 @@ /turf/simulated/floor/engine, /area/ruin/space/unpowered) "Iz" = ( -/obj/item/food/snacks/meat/corgi{ +/obj/item/food/meat/corgi{ pixel_y = 6 }, /obj/effect/decal/cleanable/dirt, @@ -947,10 +947,10 @@ /area/ruin/space/unpowered) "Lt" = ( /obj/structure/table/glass/reinforced/plastitanium, -/obj/item/food/snacks/syndicake{ +/obj/item/food/syndicake{ pixel_y = 7 }, -/obj/item/food/snacks/syndicake{ +/obj/item/food/syndicake{ pixel_x = 15 }, /turf/simulated/floor/plasteel{ @@ -977,8 +977,8 @@ /area/ruin/space/unpowered) "Mw" = ( /obj/structure/table/glass/reinforced/plastitanium, -/obj/item/food/snacks/syndicake, -/obj/item/food/snacks/syndicake{ +/obj/item/food/syndicake, +/obj/item/food/syndicake{ pixel_x = 15; pixel_y = 7 }, @@ -1003,10 +1003,10 @@ /area/ruin/space/unpowered) "MY" = ( /obj/structure/table/glass/reinforced/plastitanium, -/obj/item/food/snacks/syndicake{ +/obj/item/food/syndicake{ pixel_y = 7 }, -/obj/item/food/snacks/syndicake{ +/obj/item/food/syndicake{ pixel_x = 15 }, /turf/simulated/floor/plasteel{ @@ -1035,21 +1035,21 @@ /area/template_noop) "Ov" = ( /obj/structure/table/glass/reinforced/plastitanium, -/obj/item/food/snacks/donkpocket{ +/obj/item/food/donkpocket{ pixel_x = 8 }, -/obj/item/food/snacks/donkpocket{ +/obj/item/food/donkpocket{ pixel_x = -8 }, -/obj/item/food/snacks/donkpocket{ +/obj/item/food/donkpocket{ pixel_x = -8; pixel_y = 8 }, -/obj/item/food/snacks/donkpocket{ +/obj/item/food/donkpocket{ pixel_x = 8; pixel_y = 8 }, -/obj/item/food/snacks/birthdaycakeslice, +/obj/item/food/birthdaycakeslice, /turf/simulated/floor/plasteel{ icon_state = "floorgrime" }, @@ -1116,12 +1116,12 @@ /area/ruin/space/unpowered) "QF" = ( /obj/structure/table/glass/reinforced/plastitanium, -/obj/item/food/snacks/syndicake, -/obj/item/food/snacks/syndicake{ +/obj/item/food/syndicake, +/obj/item/food/syndicake{ pixel_x = 15; pixel_y = 7 }, -/obj/item/food/snacks/syndicake{ +/obj/item/food/syndicake{ pixel_x = 15 }, /obj/machinery/light/small{ @@ -1162,7 +1162,7 @@ }, /area/ruin/space/unpowered) "SS" = ( -/obj/item/food/snacks/meat/corgi, +/obj/item/food/meat/corgi, /turf/simulated/floor/grass, /area/ruin/space/unpowered) "TG" = ( @@ -1203,7 +1203,7 @@ }, /area/ruin/space/unpowered) "VI" = ( -/obj/item/food/snacks/meat/corgi{ +/obj/item/food/meat/corgi{ pixel_y = 6 }, /turf/simulated/floor/plasteel{ @@ -1296,7 +1296,7 @@ /area/ruin/space/unpowered) "Zw" = ( /obj/structure/table/glass/reinforced/plastitanium, -/obj/item/food/snacks/syndicake{ +/obj/item/food/syndicake{ pixel_y = 7 }, /turf/simulated/floor/plasteel{ diff --git a/_maps/map_files/RandomRuins/SpaceRuins/syndiedepot.dmm b/_maps/map_files/RandomRuins/SpaceRuins/syndiedepot.dmm index 71c4bb2a8c71..7a14126f0743 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/syndiedepot.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/syndiedepot.dmm @@ -53,7 +53,7 @@ }, /area/syndicate_depot/outer) "al" = ( -/obj/item/food/snacks/monstermeat/spiderleg, +/obj/item/food/monstermeat/spiderleg, /obj/structure/spider, /turf/simulated/floor/plasteel{ icon_state = "dark" @@ -614,7 +614,7 @@ /area/syndicate_depot/core) "bO" = ( /obj/structure/table, -/obj/item/food/snacks/syndicake, +/obj/item/food/syndicake, /turf/simulated/floor/plasteel{ icon_state = "dark" }, diff --git a/_maps/map_files/RandomRuins/SpaceRuins/telecomns_returns.dmm b/_maps/map_files/RandomRuins/SpaceRuins/telecomns_returns.dmm new file mode 100644 index 000000000000..3feac9757b90 --- /dev/null +++ b/_maps/map_files/RandomRuins/SpaceRuins/telecomns_returns.dmm @@ -0,0 +1,11670 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aa" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/bluegrid{ + name = "Mainframe Base"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"an" = ( +/mob/living/simple_animal/hostile/malf_drone, +/turf/space, +/area/space) +"ao" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'LETHAL TURRETS'. Enter at your own risk!"; + name = "LETHAL TURRETS"; + pixel_x = 32; + pixel_y = 0 + }, +/obj/machinery/porta_turret/ai_turret{ + check_synth = 1; + lethal = 1; + faction = "malf_drone"; + ailock = 1; + check_borgs = 1 + }, +/obj/effect/turf_decal/box/white, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/foyer) +"ax" = ( +/obj/structure/lattice, +/obj/structure/grille/broken, +/turf/space, +/area/space/nearstation) +"aN" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/obj/structure/sign/vacuum{ + pixel_x = 0; + pixel_y = 32 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/mob/living/simple_animal/hostile/malf_drone, +/obj/effect/spawner/random_spawners/cobweb_left_frequent, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms/powercontrol) +"bb" = ( +/obj/machinery/teleport/hub, +/obj/effect/turf_decal/delivery, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"bE" = ( +/obj/machinery/light, +/turf/space, +/area/ruin/space/telecomms) +"bI" = ( +/obj/structure/window/plasmareinforced{ + dir = 8 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"bJ" = ( +/obj/effect/abstract/loot_trap, +/turf/simulated/floor/bluegrid{ + icon_state = "dark"; + name = "Mainframe Floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"bO" = ( +/obj/machinery/mech_bay_recharge_port{ + dir = 1 + }, +/turf/simulated/floor/bluegrid{ + icon_state = "dark"; + name = "Mainframe Floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"bP" = ( +/obj/effect/spawner/lootdrop/telecomms_core_table, +/obj/machinery/ai_slipper, +/obj/structure/table/glass/reinforced/plastitanium, +/turf/simulated/floor/plasteel{ + dir = 1; + icon_state = "vault"; + name = "Mainframe floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"bR" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/grille, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/plating/airless, +/area/space/nearstation) +"ca" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"cj" = ( +/obj/machinery/light/small, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/foyer) +"cz" = ( +/obj/machinery/floodlight, +/turf/simulated/floor/plasteel{ + dir = 1; + icon_state = "vault"; + name = "Mainframe floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"cH" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + req_access_txt = "0" + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"cJ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/simulated/floor/catwalk/airless, +/area/space/nearstation) +"dn" = ( +/obj/machinery/computer/nonfunctional{ + dir = 4 + }, +/turf/simulated/floor/plasteel{ + dir = 4; + icon_state = "vault"; + name = "Mainframe floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"du" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/simulated/floor/catwalk/airless, +/area/space/nearstation) +"dv" = ( +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"dB" = ( +/obj/machinery/power/smes{ + charge = 2.5e+006; + input_attempt = 1; + input_level = 200000; + inputting = 1 + }, +/obj/structure/cable{ + d2 = 4; + icon_state = "0-4" + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms/powercontrol) +"dD" = ( +/obj/structure/closet/crate, +/obj/item/multitool, +/obj/machinery/camera{ + c_tag = "Telecomms Entrance South"; + dir = 1; + network = list("Telecomms") + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"dR" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/power/apc/directional/east{ + malfhack = 1; + emp_proof = 1; + hacked_by_ruin_AI = 1 + }, +/obj/structure/environmental_storytelling_holopad/control_room, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"eb" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/power/apc/directional/north{ + malfhack = 1; + hacked_by_ruin_AI = 1 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/foyer) +"ei" = ( +/obj/structure/window/reinforced, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 5 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"es" = ( +/obj/structure/bed, +/obj/item/bedsheet/brown, +/obj/machinery/status_display{ + pixel_x = 0; + pixel_y = 32 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"eE" = ( +/obj/machinery/mecha_part_fabricator, +/turf/simulated/floor/plasteel{ + dir = 1; + icon_state = "vault"; + name = "Mainframe floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"eH" = ( +/obj/structure/sign/securearea, +/turf/simulated/wall/r_wall, +/area/ruin/space/telecomms/computer) +"eJ" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'LETHAL TURRETS'. Enter at your own risk!"; + name = "LETHAL TURRETS"; + pixel_x = -32; + pixel_y = 0 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/foyer) +"eR" = ( +/obj/structure/filingcabinet, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"fa" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 5 + }, +/obj/structure/lattice, +/turf/space, +/area/space/nearstation) +"fc" = ( +/obj/machinery/constructable_frame/machine_frame, +/turf/simulated/floor/bluegrid{ + icon_state = "dark"; + name = "Mainframe Floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"fq" = ( +/obj/machinery/light_switch{ + pixel_y = 28 + }, +/turf/simulated/floor/bluegrid{ + name = "Mainframe Base"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"fs" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced, +/turf/space, +/area/space/nearstation) +"fv" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/atmospherics/unary/tank/air{ + dir = 8 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"gg" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 4; + initialize_directions = 11; + level = 1 + }, +/obj/structure/lattice, +/turf/space, +/area/space/nearstation) +"gi" = ( +/obj/item/radio/intercom{ + pixel_y = 25 + }, +/turf/simulated/floor/bluegrid{ + name = "Mainframe Base"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"gm" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4; + level = 1 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"gr" = ( +/obj/structure/grille, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/simulated/floor/catwalk/airless, +/area/space/nearstation) +"gv" = ( +/obj/effect/spawner/random_spawners/fungus_maybe, +/turf/simulated/wall/r_wall, +/area/ruin/space/telecomms/computer) +"gG" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/shieldwallgen/telecomms, +/turf/simulated/floor/plasteel{ + dir = 4; + icon_state = "vault"; + name = "Mainframe floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"gJ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/airlock/hatch{ + name = "Telecoms Satellite"; + req_access_txt = "61" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + req_access_txt = "0" + }, +/obj/machinery/door/firedoor, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"gR" = ( +/obj/structure/table, +/obj/machinery/light/small{ + dir = 4 + }, +/obj/item/radio/intercom{ + name = "station intercom (General)"; + pixel_x = 29; + pixel_y = 0 + }, +/obj/effect/spawner/lootdrop/maintenance/three, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms) +"hq" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced, +/turf/space, +/area/space/nearstation) +"hU" = ( +/obj/machinery/computer/teleporter, +/obj/effect/turf_decal/delivery, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"ia" = ( +/obj/effect/spawner/random_spawners/telecomms_emp_loot, +/turf/simulated/floor/engine, +/area/ruin/space/telecomms/computer) +"ik" = ( +/turf/simulated/wall/r_wall, +/area/space/nearstation) +"il" = ( +/turf/simulated/floor/bluegrid{ + icon_state = "dark"; + name = "Mainframe Floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"iy" = ( +/obj/machinery/firealarm/directional/east, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"iD" = ( +/turf/simulated/wall/indestructible/riveted, +/area/space/nearstation) +"iE" = ( +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"iR" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/simulated/wall/indestructible/riveted, +/area/ruin/space/telecomms/computer) +"jo" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms/powercontrol) +"kl" = ( +/obj/machinery/computer/nonfunctional{ + dir = 1 + }, +/turf/simulated/floor/engine, +/area/ruin/space/telecomms/computer) +"kr" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/catwalk/airless, +/area/ruin/space/telecomms/powercontrol) +"ky" = ( +/obj/machinery/door/airlock/hatch{ + name = "Telecoms Power Control"; + req_access_txt = "61" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4; + level = 1 + }, +/obj/machinery/door/firedoor, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms/tele) +"kA" = ( +/obj/machinery/porta_turret/ai_turret/disable{ + check_synth = 1; + lethal = 1; + scan_range = 9; + faction = "malf_drone"; + ailock = 1; + check_borgs = 1 + }, +/obj/effect/turf_decal/box/white, +/obj/effect/abstract/cheese_trap, +/turf/simulated/floor/plating/airless, +/area/ruin/space/telecomms) +"kT" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/simulated/floor/bluegrid{ + name = "Mainframe Base"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"kU" = ( +/obj/structure/closet/malf/suits, +/obj/effect/spawner/random_spawners/cobweb_left_frequent, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"kV" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/simulated/floor/catwalk/airless, +/area/space/nearstation) +"li" = ( +/obj/machinery/power/solar, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/turf/simulated/floor/plasteel/airless{ + icon_state = "solarpanel" + }, +/area/space/nearstation) +"lo" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/lattice, +/obj/machinery/light, +/turf/space, +/area/ruin/space/telecomms) +"lp" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4; + level = 1 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms/powercontrol) +"lr" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/effect/spawner/random_spawners/oil_often, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms/powercontrol) +"lB" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/structure/window/reinforced, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"lH" = ( +/obj/machinery/atmospherics/pipe/simple/visible{ + dir = 5 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"lW" = ( +/obj/structure/lattice, +/obj/structure/grille, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/plating/airless, +/area/space/nearstation) +"mb" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/closet/crate, +/obj/item/stack/sheet/glass{ + amount = 50 + }, +/obj/item/stack/cable_coil/random, +/obj/item/stack/cable_coil/random, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms/powercontrol) +"mc" = ( +/obj/machinery/porta_turret/ai_turret/disable{ + check_synth = 1; + lethal = 1; + scan_range = 12; + faction = "malf_drone"; + initial_eprojectile = /obj/item/projectile/beam/laser/ai_turret/heavylaser; + ailock = 1; + check_borgs = 1 + }, +/obj/effect/turf_decal/box/white, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"mh" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/simulated/floor/catwalk/airless, +/area/space/nearstation) +"mD" = ( +/obj/structure/table, +/obj/effect/spawner/lootdrop/bluespace_tap/organic, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms) +"mH" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/simulated/floor/plating/airless, +/area/space/nearstation) +"mN" = ( +/obj/structure/table, +/obj/effect/spawner/lootdrop/maintenance/three, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms) +"mO" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/grille, +/turf/simulated/floor/plating/airless, +/area/space/nearstation) +"mZ" = ( +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Core Access"; + locked = 1 + }, +/obj/machinery/door/firedoor, +/turf/simulated/floor/plasteel{ + icon_state = "vault"; + dir = 5 + }, +/area/ruin/space/telecomms/chamber) +"nh" = ( +/obj/structure/cable{ + d2 = 4; + icon_state = "0-4" + }, +/obj/machinery/shieldwallgen/telecomms, +/turf/simulated/floor/plasteel{ + dir = 1; + icon_state = "vault"; + name = "Mainframe floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"np" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"nB" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"nD" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/foyer) +"nI" = ( +/obj/machinery/computer/security{ + dir = 4; + network = list("SS13","Research Outpost","Mining Outpost") + }, +/turf/simulated/floor/bluegrid{ + icon_state = "dark"; + name = "Mainframe Floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"nL" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"nQ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/light, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/simulated/floor/bluegrid{ + name = "Mainframe Base"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"nS" = ( +/obj/structure/table, +/obj/machinery/status_display{ + pixel_x = 32; + pixel_y = 0 + }, +/obj/effect/spawner/lootdrop/bluespace_tap/cultural, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms) +"ob" = ( +/obj/effect/spawner/random_spawners/fungus_maybe, +/turf/simulated/wall/indestructible/riveted, +/area/ruin/space/telecomms/computer) +"oe" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/simulated/floor/catwalk/airless, +/area/space/nearstation) +"ou" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/visible{ + dir = 4 + }, +/obj/machinery/firealarm/directional/north, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"oz" = ( +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/foyer) +"oB" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 5; + level = 1 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"oE" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 5 + }, +/obj/structure/lattice, +/turf/space, +/area/space/nearstation) +"oG" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/effect/spawner/window/reinforced/grilled, +/obj/machinery/door/firedoor/heavy, +/turf/simulated/floor/plating, +/area/ruin/space/telecomms/tele) +"oW" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/effect/spawner/window/reinforced/grilled, +/obj/machinery/door/firedoor/heavy, +/turf/simulated/floor/plating, +/area/ruin/space/telecomms/tele) +"oY" = ( +/obj/machinery/power/solar, +/obj/structure/cable{ + icon_state = "0-2"; + pixel_y = 1; + d2 = 2 + }, +/turf/simulated/floor/plasteel/airless{ + icon_state = "solarpanel" + }, +/area/space/nearstation) +"pa" = ( +/obj/machinery/computer/borgupload, +/turf/simulated/floor/bluegrid{ + icon_state = "dark"; + name = "Mainframe Floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"ph" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/environmental_storytelling_holopad/first_turret_room, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 4; + initialize_directions = 11; + level = 1 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/foyer) +"pE" = ( +/obj/effect/spawner/random_spawners/cobweb_left_frequent, +/obj/effect/spawner/random_spawners/cobweb_right_frequent, +/turf/simulated/floor/engine, +/area/ruin/space/telecomms/computer) +"pS" = ( +/obj/structure/lattice, +/obj/structure/grille/broken, +/mob/living/simple_animal/hostile/malf_drone, +/turf/space, +/area/space/nearstation) +"pU" = ( +/obj/structure/lattice, +/obj/structure/grille, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/simulated/floor/plating/airless, +/area/space/nearstation) +"pV" = ( +/obj/item/paper/monitorkey, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"qe" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/simulated/floor/bluegrid{ + name = "Mainframe Base"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"qn" = ( +/obj/machinery/porta_turret/ai_turret/disable{ + check_synth = 1; + lethal = 1; + scan_range = 9; + faction = "malf_drone"; + ailock = 1; + check_borgs = 1 + }, +/obj/effect/turf_decal/box/white, +/turf/simulated/floor/plating/airless, +/area/ruin/space/telecomms) +"qo" = ( +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 4; + layer = 2.4; + on = 1 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"qD" = ( +/obj/effect/spawner/random_spawners/fungus_maybe, +/turf/simulated/wall/r_wall, +/area/ruin/space/telecomms/powercontrol) +"qE" = ( +/obj/structure/environmental_storytelling_holopad/junk_room, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 10 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms) +"qF" = ( +/obj/item/storage/toolbox/mechanical, +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms) +"qM" = ( +/obj/structure/table, +/obj/machinery/light_switch{ + pixel_y = -28 + }, +/obj/effect/spawner/lootdrop/maintenance/three, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms) +"qO" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/structure/environmental_storytelling_holopad/teleporter_room, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"qP" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/simulated/floor/catwalk/airless, +/area/space/nearstation) +"rd" = ( +/obj/item/pen/gray, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"rD" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/simulated/floor/catwalk/airless, +/area/space/nearstation) +"rL" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"rT" = ( +/obj/machinery/power/terminal{ + dir = 4 + }, +/turf/simulated/floor/bluegrid{ + name = "Mainframe Base"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"sn" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/simulated/floor/catwalk/airless, +/area/space/nearstation) +"sq" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/atmospherics/unary/vent_pump{ + on = 1 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"sv" = ( +/obj/effect/mob_spawn/human/corpse/scientist, +/turf/simulated/floor/engine, +/area/ruin/space/telecomms/computer) +"sH" = ( +/obj/structure/sign/nosmoking_2{ + pixel_x = -32; + pixel_y = 0 + }, +/turf/simulated/floor/bluegrid{ + name = "Mainframe Base"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"sM" = ( +/obj/machinery/light{ + dir = 8 + }, +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 4; + layer = 2.4; + on = 1 + }, +/obj/machinery/status_display{ + pixel_x = 0; + pixel_y = 32 + }, +/obj/structure/table, +/obj/machinery/autolathe/trapped, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"sO" = ( +/obj/structure/window/reinforced, +/obj/machinery/atmospherics/pipe/simple/visible/universal, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"sT" = ( +/obj/machinery/atmospherics/pipe/simple/visible{ + dir = 4 + }, +/obj/machinery/status_display{ + pixel_x = 0; + pixel_y = 32 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms/powercontrol) +"tm" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/space, +/area/space/nearstation) +"to" = ( +/obj/machinery/porta_turret/ai_turret/disable{ + check_synth = 1; + lethal = 1; + scan_range = 12; + faction = "malf_drone"; + ailock = 1; + check_borgs = 1 + }, +/obj/effect/turf_decal/box/white, +/obj/effect/abstract/cheese_trap, +/turf/simulated/floor/plating/airless, +/area/ruin/space/telecomms) +"tx" = ( +/obj/item/radio/intercom{ + name = "station intercom (General)"; + pixel_x = 29; + pixel_y = 0; + broadcasting = 1 + }, +/obj/machinery/bluespace_beacon, +/obj/structure/window/plasmareinforced{ + dir = 8 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"tz" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/power/apc/directional/north{ + malfhack = 1; + hacked_by_ruin_AI = 1 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"tD" = ( +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 1; + external_pressure_bound = 140; + on = 1; + pressure_checks = 0 + }, +/obj/structure/table, +/obj/item/folder/yellow, +/obj/item/folder/yellow{ + pixel_x = 5 + }, +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/status_display{ + pixel_x = 0; + pixel_y = 32 + }, +/obj/item/salvage/ruin/nanotrasen{ + pixel_x = -5 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"tF" = ( +/obj/item/radio/intercom{ + name = "station intercom (General)"; + pixel_x = 29; + pixel_y = 0 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"tW" = ( +/obj/machinery/r_n_d/server/upgraded, +/turf/simulated/floor/plasteel{ + dir = 1; + icon_state = "vault"; + name = "Mainframe floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"tY" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/visible{ + dir = 9 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms/powercontrol) +"uj" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + level = 1 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"ul" = ( +/obj/machinery/disposal, +/obj/structure/disposalpipe/trunk{ + dir = 4 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"um" = ( +/obj/structure/dispenser, +/turf/simulated/floor/bluegrid{ + icon_state = "dark"; + name = "Mainframe Floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"ux" = ( +/turf/simulated/wall/indestructible/riveted, +/area/ruin/space/telecomms/computer) +"uF" = ( +/obj/machinery/economy/vending/cola, +/obj/effect/spawner/random_spawners/cobweb_right_frequent, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"uM" = ( +/turf/simulated/wall/r_wall, +/area/ruin/space/telecomms/foyer) +"uT" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/simulated/floor/catwalk/airless, +/area/ruin/space/telecomms/powercontrol) +"vd" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 9 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"ve" = ( +/obj/machinery/status_display{ + pixel_x = 0; + pixel_y = 32 + }, +/turf/simulated/floor/bluegrid{ + name = "Mainframe Base"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"vp" = ( +/obj/machinery/firealarm/directional/south, +/turf/simulated/floor/bluegrid{ + name = "Mainframe Base"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"vu" = ( +/obj/structure/window/plasmareinforced{ + dir = 4 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"vJ" = ( +/obj/machinery/light_switch{ + pixel_y = -28 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"vK" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/effect/decal/cleanable/blood/old, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"vU" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 9 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"vZ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 4; + initialize_directions = 11; + level = 1 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"wd" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"wh" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/simulated/floor/bluegrid{ + name = "Mainframe Base"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"wA" = ( +/obj/machinery/power/smes{ + charge = 2.5e+006; + input_attempt = 1; + input_level = 200000; + inputting = 1 + }, +/obj/structure/cable, +/turf/simulated/floor/bluegrid{ + name = "Mainframe Base"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"wH" = ( +/obj/machinery/light{ + dir = 8 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 4; + layer = 2.4; + on = 1 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms/powercontrol) +"wW" = ( +/obj/machinery/light_switch{ + pixel_y = 28 + }, +/obj/machinery/computer/message_monitor, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"wX" = ( +/obj/effect/spawner/random_spawners/fungus_maybe, +/turf/simulated/wall/indestructible/riveted, +/area/ruin/space/telecomms) +"wY" = ( +/obj/machinery/light{ + dir = 8 + }, +/obj/structure/table, +/obj/structure/sign/electricshock{ + pixel_x = -32 + }, +/obj/item/salvage/ruin/nanotrasen, +/obj/item/stamp, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"xa" = ( +/obj/structure/lattice, +/obj/structure/grille, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/simulated/floor/plating/airless, +/area/space/nearstation) +"xj" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 1; + level = 1 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"xv" = ( +/obj/item/radio/intercom{ + pixel_y = 25 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"xF" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"xG" = ( +/obj/structure/chair/office/dark{ + dir = 1 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"xL" = ( +/obj/machinery/door/airlock/hatch{ + name = "Telecoms Lounge"; + req_access_txt = "61" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/door/firedoor, +/turf/simulated/floor/plasteel{ + icon_state = "vault"; + dir = 5 + }, +/area/ruin/space/telecomms/computer) +"yh" = ( +/obj/effect/spawner/window/reinforced/grilled, +/turf/simulated/floor/plating, +/area/ruin/space/telecomms) +"yl" = ( +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Telecoms Storage"; + req_access_txt = "61" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/turf/simulated/floor/plasteel{ + icon_state = "vault"; + dir = 5 + }, +/area/ruin/space/telecomms) +"yo" = ( +/obj/structure/lattice, +/turf/space, +/area/space/nearstation) +"yq" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"yr" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"yB" = ( +/obj/structure/bed, +/obj/item/bedsheet/orange, +/mob/living/simple_animal/bot/secbot/buzzsky/telecomms, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"yC" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/recharge_station/upgraded, +/mob/living/simple_animal/hostile/hivebot/strong/malfborg, +/turf/simulated/floor/plasteel{ + dir = 4; + icon_state = "vault"; + name = "Mainframe floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"yD" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/door/airlock/hatch{ + name = "Telecoms East Wing"; + req_access_txt = "61" + }, +/obj/machinery/door/firedoor, +/turf/simulated/floor/plasteel{ + icon_state = "vault"; + dir = 5 + }, +/area/ruin/space/telecomms/foyer) +"yG" = ( +/obj/effect/spawner/random_spawners/fungus_maybe, +/turf/simulated/wall/r_wall, +/area/space/nearstation) +"yJ" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"yN" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/door/airlock/hatch/syndicate/command/trapped, +/obj/item/radio/intercom{ + pixel_y = 25; + broadcasting = 1 + }, +/obj/effect/decal/cleanable/blood/old, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/door/firedoor, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"yU" = ( +/obj/structure/grille, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/catwalk/airless, +/area/space/nearstation) +"za" = ( +/obj/structure/closet/crate, +/obj/item/clothing/glasses/night, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"zg" = ( +/obj/machinery/atmospherics/pipe/simple/visible{ + dir = 4 + }, +/obj/machinery/camera{ + c_tag = "Telecomms Power Control"; + dir = 2; + network = list("Telecomms") + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms/powercontrol) +"zk" = ( +/obj/structure/lattice, +/obj/effect/abstract/cheese_trap, +/turf/space, +/area/space/nearstation) +"zq" = ( +/obj/structure/barricade/sandbags, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"zG" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/wall/indestructible/riveted, +/area/ruin/space/telecomms/chamber) +"zM" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'SERVER ROOM'."; + name = "SERVER ROOM"; + pixel_y = 0 + }, +/turf/simulated/wall/r_wall, +/area/ruin/space/telecomms/chamber) +"zY" = ( +/obj/structure/bed, +/obj/item/bedsheet/green, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"Ac" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + req_access_txt = "0" + }, +/obj/structure/telecomms_trap_tank, +/obj/effect/abstract/cheese_trap, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"Ad" = ( +/obj/structure/table, +/obj/item/flashlight/lamp{ + pixel_y = 10; + pixel_x = -7 + }, +/obj/effect/spawner/random_spawners/cobweb_right_rare, +/obj/item/salvage/ruin/nanotrasen{ + pixel_x = 5 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"Af" = ( +/obj/machinery/computer/nonfunctional{ + dir = 8 + }, +/turf/simulated/floor/plasteel{ + dir = 4; + icon_state = "vault"; + name = "Mainframe floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"Ai" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/table, +/obj/machinery/cell_charger, +/obj/item/stock_parts/cell/bluespace/trapped, +/obj/machinery/light_switch{ + pixel_y = -28 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms/powercontrol) +"Aj" = ( +/obj/effect/spawner/random_barrier/obstruction, +/turf/simulated/floor/engine, +/area/ruin/space/telecomms/computer) +"Ay" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 9; + level = 1 + }, +/obj/structure/lattice, +/turf/space, +/area/space/nearstation) +"Az" = ( +/obj/structure/lattice, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/grille, +/turf/simulated/floor/plating/airless, +/area/space/nearstation) +"AJ" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/visible{ + dir = 6; + level = 1 + }, +/obj/machinery/firealarm/directional/north, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms/powercontrol) +"AX" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + req_access_txt = "0" + }, +/obj/effect/abstract/bot_trap, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"AY" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"Bf" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'LETHAL TURRETS'. Enter at your own risk!"; + name = "LETHAL TURRETS"; + pixel_x = 32; + pixel_y = 0 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/foyer) +"Bn" = ( +/obj/machinery/atmospherics/pipe/simple/visible{ + dir = 4 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms/powercontrol) +"Bq" = ( +/obj/effect/spawner/airlock/long/square/e_to_s/telecoms, +/turf/simulated/wall/r_wall, +/area/ruin/space/telecomms/powercontrol) +"BQ" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 4; + layer = 2.4; + on = 1 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"BT" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 8; + initialize_directions = 11; + level = 1 + }, +/obj/structure/lattice, +/turf/space, +/area/space/nearstation) +"BW" = ( +/obj/machinery/atmospherics/unary/tank/air{ + dir = 8 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"BZ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"Ct" = ( +/obj/machinery/computer/mech_bay_power_console{ + dir = 8 + }, +/turf/simulated/floor/bluegrid{ + icon_state = "dark"; + name = "Mainframe Floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"CC" = ( +/obj/machinery/light{ + dir = 4 + }, +/obj/structure/closet/emcloset, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"CD" = ( +/obj/structure/grille, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/simulated/floor/catwalk/airless, +/area/space/nearstation) +"CI" = ( +/obj/structure/displaycase/dvoraks_treat, +/turf/simulated/floor/plasteel{ + dir = 4; + icon_state = "vault"; + name = "Mainframe floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"CM" = ( +/obj/item/gps/ruin{ + pixel_x = 32; + gpstag = "STAY_AWAY"; + name = "Exterior Status Terminal"; + desc = "A status terminal for this satellite. All it shows is a bunch of errors, and a message to stay away." + }, +/turf/simulated/floor/catwalk/airless, +/area/ruin/space/telecomms/powercontrol) +"CU" = ( +/turf/space, +/area/space/nearstation) +"Dd" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 6 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"De" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/computer/monitor{ + name = "Telecoms Power Monitoring"; + dir = 1 + }, +/turf/simulated/floor/plasteel{ + icon_state = "bot" + }, +/area/ruin/space/telecomms/tele) +"Dr" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 6 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/foyer) +"Dy" = ( +/obj/structure/lattice, +/obj/structure/grille, +/turf/space, +/area/space/nearstation) +"DT" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"DV" = ( +/obj/machinery/status_display{ + pixel_x = 0; + pixel_y = 32 + }, +/obj/structure/reagent_dispensers/fueltank, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"Ed" = ( +/turf/space, +/area/space) +"EF" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/lattice, +/turf/space, +/area/space/nearstation) +"EK" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/lattice, +/obj/effect/abstract/cheese_trap, +/turf/space, +/area/space/nearstation) +"EM" = ( +/turf/simulated/floor/bluegrid{ + name = "Mainframe Base"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"EO" = ( +/obj/structure/window/reinforced, +/turf/space, +/area/space/nearstation) +"EQ" = ( +/obj/structure/window/reinforced, +/obj/structure/lattice, +/obj/machinery/light{ + dir = 1 + }, +/turf/space, +/area/ruin/space/telecomms) +"ES" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/power/tracker, +/turf/simulated/floor/catwalk/airless, +/area/space/nearstation) +"Ff" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/space, +/area/ruin/space/telecomms) +"Fg" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4; + level = 1 + }, +/obj/structure/barricade/sandbags, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"FA" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'SERVER ROOM'."; + name = "SERVER ROOM"; + pixel_y = 0 + }, +/turf/simulated/wall/indestructible/riveted, +/area/ruin/space/telecomms/chamber) +"FC" = ( +/turf/simulated/wall/indestructible/riveted, +/area/ruin/space/telecomms) +"FG" = ( +/obj/machinery/shieldgen/telecomms, +/turf/simulated/floor/plating/airless, +/area/ruin/space/telecomms) +"FN" = ( +/obj/machinery/computer/nonfunctional{ + dir = 4 + }, +/turf/simulated/floor/bluegrid{ + icon_state = "dark"; + name = "Mainframe Floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"FP" = ( +/obj/item/cigbutt, +/obj/machinery/light, +/obj/machinery/light_switch{ + pixel_y = -28 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"Ga" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/grille, +/turf/simulated/floor/plating/airless, +/area/space/nearstation) +"Gd" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/space, +/area/space/nearstation) +"Gf" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/space, +/area/ruin/space/telecomms) +"Go" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/simulated/floor/catwalk/airless, +/area/space/nearstation) +"Gt" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 10 + }, +/obj/machinery/status_display{ + pixel_x = 0; + pixel_y = 32 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/foyer) +"Gz" = ( +/obj/machinery/blackbox_recorder, +/turf/simulated/floor/plasteel{ + dir = 4; + icon_state = "vault"; + name = "Mainframe floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"GE" = ( +/obj/machinery/power/solar, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/simulated/floor/plasteel/airless{ + icon_state = "solarpanel" + }, +/area/space/nearstation) +"GH" = ( +/obj/structure/lattice, +/obj/structure/grille, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/simulated/floor/plating/airless, +/area/space/nearstation) +"GQ" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 5 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/foyer) +"Hc" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/atmospherics/pipe/simple/visible{ + dir = 6; + level = 1 + }, +/obj/machinery/power/apc/directional/north{ + malfhack = 1; + emp_proof = 1; + hacked_by_ruin_AI = 1 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"Ho" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/space, +/area/space/nearstation) +"Hr" = ( +/turf/simulated/wall/r_wall, +/area/ruin/space/telecomms/computer) +"Ht" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/catwalk/airless, +/area/space/nearstation) +"Hu" = ( +/obj/structure/window/reinforced, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"Hw" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/simulated/floor/catwalk/airless, +/area/space/nearstation) +"HK" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 9 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"HP" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/table, +/obj/machinery/turretid/lethal{ + check_borgs = 1; + faction = "malf_drone"; + check_synth = 1; + locked = 0 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms/tele) +"HR" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"HV" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms/powercontrol) +"HW" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/closet, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"Ig" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/simulated/floor/catwalk/airless, +/area/space/nearstation) +"IE" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + req_access_txt = "0" + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"IL" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/door/airlock/hatch{ + name = "Telecoms West Wing"; + req_access_txt = "61" + }, +/obj/machinery/door/firedoor, +/turf/simulated/floor/plasteel{ + icon_state = "vault"; + dir = 5 + }, +/area/ruin/space/telecomms/foyer) +"IU" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/catwalk/airless, +/area/space/nearstation) +"Jb" = ( +/obj/effect/spawner/random_spawners/fungus_maybe, +/turf/simulated/wall/r_wall, +/area/ruin/space/telecomms/foyer) +"Jm" = ( +/obj/machinery/computer/sm_monitor{ + dir = 1 + }, +/turf/simulated/floor/bluegrid{ + icon_state = "dark"; + name = "Mainframe Floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"Jo" = ( +/obj/structure/chair{ + dir = 4 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"Jz" = ( +/obj/structure/closet/malf/suits, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"JC" = ( +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms) +"JG" = ( +/obj/structure/window/reinforced, +/obj/machinery/light{ + dir = 1 + }, +/turf/space, +/area/ruin/space/telecomms) +"JO" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"JQ" = ( +/obj/structure/window/reinforced, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + req_access_txt = "0" + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/reagent_dispensers/fueltank, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"JR" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 6 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"Kb" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"Kc" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 10 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"Kt" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/simulated/floor/catwalk/airless, +/area/space/nearstation) +"Ky" = ( +/obj/machinery/computer/nonfunctional, +/obj/effect/spawner/random_spawners/cobweb_left_rare, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"KH" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/space, +/area/space/nearstation) +"KQ" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/closet/emcloset, +/obj/item/stack/sheet/mineral/plasma, +/obj/item/reagent_containers/syringe, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms/powercontrol) +"Lh" = ( +/obj/machinery/tcomms/relay/dvorak, +/obj/effect/abstract/loot_trap, +/turf/simulated/floor/plasteel{ + dir = 1; + icon_state = "vault"; + name = "Mainframe floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"Ln" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + req_access_txt = "0" + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"Lp" = ( +/turf/simulated/floor/catwalk/airless, +/area/space/nearstation) +"Lq" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/mob/living/silicon/decoy/telecomms, +/turf/simulated/floor/bluegrid{ + name = "Mainframe Base"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"LK" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4; + level = 1 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"LW" = ( +/obj/machinery/atmospherics/pipe/simple/visible, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"Ma" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 4; + initialize_directions = 11; + level = 1 + }, +/turf/space, +/area/space/nearstation) +"Ml" = ( +/obj/structure/cable, +/obj/machinery/power/terminal{ + dir = 4 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms/powercontrol) +"Mm" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/simulated/floor/catwalk/airless, +/area/space/nearstation) +"ME" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/turf/simulated/floor/plasteel{ + icon_state = "vault"; + dir = 5 + }, +/area/ruin/space/telecomms/chamber) +"ML" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + level = 1 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"Nb" = ( +/obj/effect/spawner/random_spawners/oil_often, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms/powercontrol) +"No" = ( +/obj/effect/turf_decal/loading_area, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"Nr" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/simulated/floor/bluegrid{ + name = "Mainframe Base"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"Nv" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/simulated/floor/bluegrid{ + name = "Mainframe Base"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"Nz" = ( +/obj/structure/rack, +/obj/item/circuitboard/sleeper/syndicate, +/obj/effect/spawner/random_spawners/telecomms_teleprod_maybe, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms) +"NY" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/simulated/floor/catwalk/airless, +/area/space/nearstation) +"Od" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"Oi" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/catwalk/airless, +/area/space/nearstation) +"On" = ( +/obj/structure/lattice, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/space, +/area/space/nearstation) +"OS" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/effect/turf_decal/box/white, +/obj/structure/telecomms_doomsday_device, +/turf/simulated/floor/bluegrid{ + icon_state = "dark"; + name = "Mainframe Floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"Pe" = ( +/obj/machinery/economy/vending/wallmed/directional/south, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"Pl" = ( +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"Px" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/girder/reinforced, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 9; + level = 1 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"PA" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4; + level = 1 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms/powercontrol) +"PL" = ( +/obj/structure/bed, +/obj/item/bedsheet/red, +/mob/living/simple_animal/bot/secbot/buzzsky/telecomms, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"PQ" = ( +/turf/simulated/wall/r_wall, +/area/ruin/space/telecomms/tele) +"PU" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/airlock/hatch{ + name = "Telecoms Satellite"; + req_access_txt = "61" + }, +/obj/machinery/door/firedoor, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/foyer) +"PZ" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/space, +/area/space/nearstation) +"Qa" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'LETHAL TURRETS'. Enter at your own risk!"; + name = "LETHAL TURRETS"; + pixel_x = -32; + pixel_y = 0 + }, +/obj/machinery/porta_turret/ai_turret{ + check_synth = 1; + lethal = 1; + faction = "malf_drone"; + ailock = 1; + check_borgs = 1 + }, +/obj/effect/turf_decal/box/white, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/foyer) +"Qf" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/light/small{ + dir = 1 + }, +/obj/machinery/light_switch{ + pixel_y = -28 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"Qg" = ( +/obj/structure/table, +/obj/effect/spawner/lootdrop/bluespace_tap/cultural, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms) +"Qr" = ( +/obj/machinery/economy/vending/snack/trapped, +/obj/item/radio/intercom{ + name = "station intercom (General)"; + pixel_x = -28; + pixel_y = 0; + broadcasting = 1 + }, +/obj/structure/environmental_storytelling_holopad/vendor, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"Qx" = ( +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms/powercontrol) +"QN" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/lattice, +/turf/space, +/area/space/nearstation) +"QP" = ( +/obj/structure/lattice, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/effect/abstract/cheese_trap, +/turf/space, +/area/space/nearstation) +"QR" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/recharge_station/upgraded, +/mob/living/simple_animal/hostile/hivebot/strong/malfborg, +/turf/simulated/floor/plasteel{ + dir = 4; + icon_state = "vault"; + name = "Mainframe floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"QY" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + req_access_txt = "0" + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"QZ" = ( +/obj/machinery/power/solar, +/obj/structure/cable, +/turf/simulated/floor/plasteel/airless{ + icon_state = "solarpanel" + }, +/area/space/nearstation) +"Ra" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 6 + }, +/turf/space, +/area/space/nearstation) +"Rh" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms) +"Ri" = ( +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/foyer) +"Rt" = ( +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 8; + on = 1 + }, +/obj/machinery/firealarm/directional/north, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"Rv" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/bluegrid{ + icon_state = "dark"; + name = "Mainframe Floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"Rw" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 10 + }, +/obj/structure/lattice, +/turf/space, +/area/space/nearstation) +"RB" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"RD" = ( +/obj/structure/table, +/obj/item/storage/fancy/cigarettes, +/obj/item/storage/firstaid/ert, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"RW" = ( +/obj/structure/table, +/obj/item/stock_parts/micro_laser, +/obj/item/stock_parts/manipulator, +/obj/item/stock_parts/manipulator, +/obj/item/stock_parts/manipulator, +/obj/item/stock_parts/manipulator, +/obj/item/stock_parts/capacitor, +/obj/item/stock_parts/micro_laser/high, +/obj/item/stock_parts/micro_laser/high, +/obj/item/stock_parts/micro_laser/high, +/obj/item/stock_parts/micro_laser/high, +/obj/effect/spawner/lootdrop/maintenance/three, +/obj/item/stock_parts/matter_bin, +/obj/item/stock_parts/matter_bin, +/obj/item/stock_parts/matter_bin, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms) +"Sm" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + level = 1 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"Sn" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 8; + initialize_directions = 11; + level = 1 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"Sr" = ( +/obj/machinery/telepad, +/turf/simulated/floor/plasteel{ + dir = 1; + icon_state = "vault"; + name = "Mainframe floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"Sv" = ( +/obj/structure/lattice, +/obj/structure/grille, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/simulated/floor/plating/airless, +/area/space/nearstation) +"SA" = ( +/turf/simulated/wall/r_wall, +/area/ruin/space/telecomms/powercontrol) +"SH" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"SO" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/space, +/area/space/nearstation) +"Ta" = ( +/obj/structure/chair/office/dark{ + dir = 4 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"To" = ( +/turf/simulated/wall/r_wall, +/area/ruin/space/telecomms/chamber) +"Tw" = ( +/obj/machinery/computer/telescience{ + dir = 4 + }, +/turf/simulated/floor/plasteel{ + dir = 1; + icon_state = "vault"; + name = "Mainframe floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"TL" = ( +/obj/structure/grille, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/simulated/floor/catwalk/airless, +/area/space/nearstation) +"TU" = ( +/obj/machinery/atmospherics/pipe/manifold/visible{ + dir = 1 + }, +/mob/living/simple_animal/bot/secbot/buzzsky/telecomms, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"TY" = ( +/obj/structure/lattice, +/turf/space, +/area/space) +"Uw" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"UD" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + level = 1 + }, +/obj/structure/telecomms_trap_tank, +/obj/effect/abstract/cheese_trap, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"UE" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + req_access_txt = "0" + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/foyer) +"UF" = ( +/obj/structure/sign/securearea, +/turf/simulated/wall/r_wall, +/area/ruin/space/telecomms/tele) +"UH" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/lattice, +/turf/space, +/area/space/nearstation) +"Vb" = ( +/obj/structure/sign/nosmoking_2{ + pixel_x = 32; + pixel_y = 0 + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/simulated/floor/bluegrid{ + name = "Mainframe Base"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"Vm" = ( +/obj/machinery/light/small, +/obj/machinery/light_switch{ + pixel_y = -28 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/foyer) +"Vn" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/simulated/wall/r_wall, +/area/space/nearstation) +"Vp" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/space, +/area/space) +"VB" = ( +/obj/effect/decal/cleanable/blood/old, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"VO" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"Wc" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/space, +/area/space/nearstation) +"Wp" = ( +/obj/machinery/teleport/station, +/obj/effect/turf_decal/delivery, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/tele) +"Wq" = ( +/obj/structure/lattice, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/space, +/area/ruin/space/telecomms) +"WC" = ( +/obj/machinery/porta_turret/ai_turret/disable{ + check_synth = 1; + lethal = 1; + scan_range = 12; + faction = "malf_drone"; + ailock = 1; + check_borgs = 1 + }, +/obj/effect/turf_decal/box/white, +/turf/simulated/floor/plating/airless, +/area/ruin/space/telecomms) +"WO" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/firealarm/directional/north, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/foyer) +"WR" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/power/apc/directional/north{ + malfhack = 1; + emp_proof = 1; + hacked_by_ruin_AI = 1 + }, +/turf/simulated/floor/bluegrid{ + name = "Mainframe Base"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"Xb" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 1; + level = 1 + }, +/obj/item/radio/intercom{ + pixel_y = 25 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/foyer) +"Xf" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/space, +/area/space/nearstation) +"XB" = ( +/obj/structure/environmental_storytelling_holopad/core_room, +/turf/simulated/floor/bluegrid{ + icon_state = "dark"; + name = "Mainframe Floor"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) +"XJ" = ( +/obj/effect/spawner/random_spawners/fungus_maybe, +/turf/simulated/wall/r_wall, +/area/ruin/space/telecomms/tele) +"XP" = ( +/turf/template_noop, +/area/template_noop) +"Yr" = ( +/obj/structure/sign/electricshock, +/turf/simulated/wall/r_wall, +/area/ruin/space/telecomms/tele) +"Yw" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/item/radio/intercom{ + pixel_y = 25 + }, +/mob/living/simple_animal/bot/secbot/buzzsky/telecomms, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"YA" = ( +/obj/structure/lattice, +/obj/structure/grille, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/simulated/floor/plating/airless, +/area/space/nearstation) +"YC" = ( +/obj/structure/grille, +/turf/simulated/floor/plating/airless, +/area/space/nearstation) +"YF" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/effect/abstract/bot_trap, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"YN" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"YO" = ( +/obj/structure/disposaloutlet{ + dir = 4 + }, +/obj/structure/disposalpipe/trunk{ + dir = 8 + }, +/turf/simulated/floor/plating/airless, +/area/space/nearstation) +"YQ" = ( +/obj/structure/lattice, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/space, +/area/space/nearstation) +"YW" = ( +/obj/structure/cable{ + d2 = 2; + icon_state = "0-2" + }, +/obj/machinery/power/apc/directional/east{ + malfhack = 1; + hacked_by_ruin_AI = 1 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms/powercontrol) +"Zb" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 6 + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms) +"Zd" = ( +/obj/structure/table, +/obj/item/paper_bin, +/obj/item/pen/blue{ + pixel_x = -3; + pixel_y = 2 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"Zj" = ( +/obj/structure/fans/tiny/invisible, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Core Access" + }, +/turf/simulated/floor/plasteel{ + icon_state = "vault"; + dir = 5 + }, +/area/ruin/space/telecomms/chamber) +"Zl" = ( +/obj/machinery/atmospherics/unary/portables_connector{ + dir = 8 + }, +/obj/machinery/atmospherics/portable/canister/air, +/obj/effect/spawner/random_spawners/cobweb_right_frequent, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms/powercontrol) +"Zu" = ( +/turf/simulated/wall/indestructible/riveted, +/area/ruin/space/telecomms/chamber) +"ZB" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4; + level = 1 + }, +/obj/effect/spawner/random_spawners/oil_often, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms/powercontrol) +"ZE" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/simulated/floor/plasteel, +/area/ruin/space/telecomms/computer) +"ZQ" = ( +/obj/machinery/power/solar_control/autostart{ + name = "Telecoms Solar Control" + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/turf/simulated/floor/catwalk, +/area/ruin/space/telecomms/powercontrol) +"ZV" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/simulated/floor/bluegrid{ + name = "Mainframe Base"; + nitrogen = 400; + oxygen = 0; + temperature = 80 + }, +/area/ruin/space/telecomms/chamber) + +(1,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(2,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(3,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(4,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(5,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(6,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(7,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(8,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(9,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(10,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(11,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(12,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +yo +Ed +Ed +Ed +Ed +Ed +Ed +Ed +yo +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(13,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +cJ +QZ +Ed +Ed +Ed +oY +cJ +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(14,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +Hw +QZ +Ed +Ed +Ed +oY +Hw +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(15,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +Hw +QZ +Ed +Ed +Ed +oY +Hw +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(16,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +Hw +QZ +Ed +Ed +Ed +oY +Hw +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(17,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +Hw +QZ +Ed +Ed +Ed +oY +Hw +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(18,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +Hw +QZ +yo +yo +yo +oY +Hw +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(19,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +Hw +QZ +Ed +Ed +Ed +oY +Hw +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(20,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +pS +Ed +oY +Hw +QZ +Ed +Ed +Ed +oY +Hw +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(21,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +Hw +QZ +Ed +Ed +Ed +oY +Hw +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(22,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +Hw +QZ +Ed +Ed +Ed +oY +Hw +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(23,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +Hw +QZ +yo +yo +yo +oY +Hw +QZ +Ed +ax +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(24,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +Hw +QZ +Ed +Ed +Ed +oY +Hw +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(25,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +Hw +QZ +Ed +Ed +Ed +oY +Hw +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(26,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +Hw +QZ +Ed +Ed +Ed +oY +Hw +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(27,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +Hw +QZ +Ed +Ed +Ed +oY +Hw +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(28,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +Hw +QZ +Ed +Ed +Ed +oY +Hw +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(29,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +Ed +du +Oi +Oi +Kt +Oi +Oi +sn +Ed +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(30,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +yo +Ed +Ed +Ed +CU +Ig +Ed +Ed +Ed +Ed +Dy +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(31,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +YA +lW +lW +lW +lW +lW +lW +lW +lW +lW +lW +lW +yU +lW +lW +lW +lW +lW +lW +lW +lW +lW +lW +lW +pU +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(32,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +YA +GH +ik +ik +ik +ik +ik +ik +ik +ik +ik +ik +yG +ik +ik +ik +ik +ik +ik +ik +ik +ik +yG +ik +ik +Sv +pU +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(33,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +YA +GH +ik +ik +FC +FC +FC +wX +FC +iD +FC +FC +wX +FC +FC +FC +FC +FC +FC +FC +FC +wX +FC +FC +FC +ik +ik +Sv +lW +Ga +Ga +mh +Lp +Lp +ES +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(34,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +xa +ik +ik +FC +yo +Ff +Ed +Ed +Ed +zk +Ed +Ed +Ed +Ed +FG +Ed +Ed +Ed +Ed +zk +Ed +Ed +Ed +Ff +yo +FC +ik +SA +SA +SA +Bq +uT +Lp +Lp +Ig +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(35,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +xa +ik +FC +yo +yo +yo +yo +yo +yo +to +yo +yo +yo +yo +WC +yo +yo +yo +yo +kA +yo +yo +yo +yo +yo +TY +FC +SA +aN +HV +HV +kr +Oi +Oi +oe +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(36,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +xa +ik +FC +Ed +yo +an +Ed +Ed +Ed +zk +Ed +Ed +Ed +Ed +yo +Ed +Ed +Ed +Ed +zk +Ed +Ed +Ed +an +yo +Ed +FC +SA +jo +Nb +Qx +CM +Lp +Lp +Ig +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(37,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +xa +ik +FC +Vp +YQ +Vp +Ed +Gd +Gd +EK +Gd +Gd +Gd +Gd +QN +Gd +Gd +Gd +Gd +EK +Gd +Gd +CU +Ed +yo +Ed +wX +SA +jo +Qx +SA +SA +SA +SA +mO +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(38,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +xa +ik +FC +Yw +sq +JQ +oE +JR +uj +UD +oB +BQ +Zb +QY +ML +ML +AX +uj +uj +Ac +Ln +ei +Xf +Ed +yo +Ed +FC +SA +AJ +tY +mb +wH +Ml +SA +xa +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(39,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +xa +ik +FC +Hc +LW +sO +Ma +Sm +Wc +QP +Rw +gg +Ay +PZ +Wq +PZ +PZ +PZ +PZ +QP +fs +YN +Xf +Ed +yo +Ed +FC +qD +Bn +lr +Qx +ZB +dB +SA +xa +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(40,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +xa +ik +FC +ou +ca +ca +DT +lB +lo +Zu +Zu +Zu +Zu +Zu +Zu +Zu +Zu +Zu +Zu +Zu +EQ +YN +UH +yo +yo +bE +FC +SA +sT +jo +Qx +PA +KQ +qD +xa +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(41,1,1) = {" +XP +XP +XP +XP +XP +XP +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +ax +Dy +Dy +Dy +Dy +xa +ik +wX +TU +lH +Hu +KH +xF +Xf +Zu +gi +EM +EM +EM +sH +EM +EM +EM +EM +Zu +EO +YN +Xf +Ed +yo +FC +FC +SA +zg +lr +Qx +PA +Ai +SA +xa +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +ax +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +XP +XP +XP +XP +XP +XP +XP +"} +(42,1,1) = {" +XP +XP +XP +XP +XP +XP +Dy +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +yo +Ed +xa +ik +FC +BW +fv +HW +tm +xF +Xf +Zu +ve +bJ +Lh +bJ +Sr +cz +il +tW +EM +Zu +EO +yr +Xf +PQ +oG +PQ +PQ +SA +Zl +ZQ +YW +lp +HP +SA +xa +Dy +Dy +Ed +Ed +Ed +Ed +Ed +CU +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +"} +(43,1,1) = {" +XP +XP +XP +XP +XP +XP +Dy +Ed +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +yo +Ed +xa +ik +FC +FC +On +PZ +EO +vK +Xf +Zu +EM +bJ +bP +bJ +Tw +eE +il +tW +EM +Zu +uM +IL +uM +uM +yJ +BZ +PQ +PQ +PQ +PQ +PQ +ky +Yr +PQ +Sv +pU +Ed +Ed +yo +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +"} +(44,1,1) = {" +XP +XP +XP +XP +XP +XP +Dy +yo +qP +Ht +Ht +Ht +Ht +Ht +Ht +Ht +Ht +Ht +Ht +Ht +Ht +Ht +Ht +Ht +mh +yo +xa +ik +ik +ux +Hr +eH +Hr +yN +Hr +Zu +WR +bJ +bJ +bJ +il +il +il +il +EM +Zu +Qa +nD +eJ +uM +DV +Uw +PQ +PQ +XJ +PQ +iE +LK +vJ +PQ +PQ +Sv +pU +yo +rD +IU +IU +IU +IU +IU +IU +IU +IU +IU +IU +IU +IU +IU +IU +IU +oe +yo +Dy +XP +XP +XP +XP +XP +XP +XP +"} +(45,1,1) = {" +XP +XP +XP +XP +XP +XP +Dy +Ed +li +li +li +li +li +li +li +li +li +li +li +li +li +li +li +li +Ig +Ed +xa +yG +ik +ux +Ky +Pl +Dd +Px +wY +Zu +qe +il +il +Ct +EM +bO +il +il +EM +Zu +eb +nD +Vm +Jb +PQ +Qf +PQ +PQ +PQ +sM +mc +LK +mc +dD +PQ +PQ +Az +Ed +Ig +li +li +li +li +li +li +li +li +li +li +li +li +li +li +li +li +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +"} +(46,1,1) = {" +XP +XP +XP +XP +XP +XP +Dy +Ed +Ed +Ed +Ed +Ed +Ed +yo +Ed +Ed +Ed +Ed +yo +Ed +Ed +Ed +Ed +Ed +Ig +Ed +xa +ik +ik +ux +eR +Pl +dv +np +Pl +Zu +qe +il +fc +nh +EM +nh +um +il +vp +Zu +WO +nD +Ri +uM +xv +Uw +UF +kU +Jz +gm +zq +Fg +zq +iE +hU +PQ +xa +Ed +Ig +Ed +Ed +Ed +Ed +Ed +yo +Ed +Ed +Ed +Ed +yo +Ed +Ed +Ed +Ed +Ed +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +"} +(47,1,1) = {" +XP +XP +XP +XP +XP +XP +Dy +Ed +Ed +an +Ed +Ed +Ed +yo +Ed +Ed +Ed +Ed +yo +Ed +Ed +Ed +Ed +Ed +NY +Oi +gr +ik +ik +ux +tD +xG +Pl +JO +yq +zG +wh +Rv +OS +Nr +Lq +Nv +aa +Rv +nQ +zG +Dr +ph +UE +PU +Sn +cH +gJ +IE +IE +vZ +qO +HK +iE +iE +Wp +XJ +CD +Oi +Go +Ed +Ed +Ed +Ed +Ed +yo +Ed +Ed +Ed +Ed +yo +Ed +Ed +Ed +Ed +Ed +an +Dy +XP +XP +XP +XP +XP +XP +XP +"} +(48,1,1) = {" +XP +XP +XP +XP +XP +XP +Dy +Ed +Ed +Ed +Ed +Ed +Ed +yo +Ed +Ed +Ed +Ed +yo +Ed +Ed +Ed +Ed +Ed +Ig +Ed +xa +ik +ik +ux +Zd +Ta +rd +np +Pl +Zu +EM +il +Jm +gG +EM +gG +pa +il +qe +Zu +Xb +oz +Ri +uM +Rt +Uw +UF +za +iE +Uw +iE +iE +iE +No +bb +PQ +xa +Ed +Ig +Ed +Ed +Ed +Ed +Ed +yo +Ed +Ed +Ed +Ed +yo +Ed +Ed +Ed +Ed +Ed +Ed +ax +XP +XP +XP +XP +XP +XP +XP +"} +(49,1,1) = {" +XP +XP +XP +XP +XP +XP +Dy +Ed +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +Ig +Ed +xa +ik +ik +ux +wW +pV +Pl +dR +Pl +Zu +EM +il +il +nI +EM +FN +il +il +qe +Zu +Gt +GQ +cj +uM +Yr +VO +PQ +XJ +PQ +tz +vu +vu +vu +CC +PQ +PQ +xa +Ed +Ig +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +GE +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +"} +(50,1,1) = {" +XP +XP +XP +XP +XP +XP +Dy +yo +qP +Ht +Ht +Ht +Ht +Ht +Ht +Ht +Ht +Ht +Ht +Ht +Ht +Ht +Ht +Ht +sn +yo +xa +ik +ik +ux +Ad +tF +iy +To +mZ +FA +EM +XB +il +il +il +il +il +il +qe +Zu +ao +nD +Bf +uM +iE +AY +PQ +ik +PQ +PQ +bI +tx +bI +PQ +PQ +YA +GH +yo +du +IU +IU +IU +IU +IU +IU +IU +IU +IU +IU +IU +IU +IU +IU +IU +oe +yo +Dy +XP +XP +XP +XP +XP +XP +XP +"} +(51,1,1) = {" +XP +XP +XP +XP +XP +XP +Dy +Ed +li +li +li +li +li +li +li +li +li +li +li +li +li +li +li +li +yo +Ed +xa +ik +ik +ux +Hr +Hr +Hr +To +ME +Zj +EM +il +Af +il +Gz +CI +il +QR +kT +Zu +uM +yD +uM +uM +HR +De +PQ +ik +YC +PQ +PQ +PQ +XJ +PQ +YA +GH +Ed +Ed +yo +li +li +li +li +li +li +li +li +li +li +li +li +li +li +li +li +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +"} +(52,1,1) = {" +XP +XP +XP +XP +XP +XP +Dy +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +CU +Ed +yo +Ed +xa +ik +iD +pE +sv +ia +kl +To +To +zM +EM +il +dn +il +Gz +Gz +il +yC +rT +Zu +EO +yr +Xf +PQ +oW +PQ +PQ +ik +YA +lW +lW +lW +lW +lW +GH +Dy +Dy +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +"} +(53,1,1) = {" +XP +XP +XP +XP +XP +XP +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +ax +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +xa +ik +ux +Hr +Aj +Hr +Hr +Hr +Hr +Zu +fq +EM +EM +EM +Vb +EM +EM +ZV +wA +Zu +EO +rL +Xf +Ed +yo +FC +FC +ik +xa +Dy +yo +yo +Dy +Dy +Dy +Dy +Dy +yo +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +ax +Dy +Dy +Dy +Dy +Dy +Dy +Dy +XP +XP +XP +XP +XP +XP +XP +"} +(54,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +xa +ik +ux +zY +VB +Qr +qo +wd +gv +Zu +Zu +Zu +Zu +Zu +Zu +Zu +Zu +Zu +Zu +Zu +JG +YN +Xf +Ed +yo +bE +FC +ik +xa +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(55,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +xa +ik +ux +nB +Pl +Pl +SH +Pe +Hr +QN +QN +QN +Ra +BT +fa +Gd +Gd +Gd +Gd +QN +hq +YN +Xf +Ed +yo +Ed +FC +ik +xa +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(56,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +xa +ik +ux +es +Pl +Pl +Kc +RB +xL +YF +nL +nL +vd +Od +xj +QY +QY +QY +QY +QY +QY +vU +Xf +Ed +yo +Ed +wX +ik +xa +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(57,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +xa +ik +ux +Pl +Pl +Pl +Jo +FP +Hr +EF +PZ +PZ +PZ +SO +rL +Ho +PZ +PZ +PZ +On +PZ +PZ +CU +Ed +yo +Ed +FC +ik +xa +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(58,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +xa +ik +ux +PL +Pl +Pl +RD +Kb +Hr +yo +Ed +yh +yh +yh +yl +yh +yh +yh +Ed +yo +Ed +Ed +Ed +an +yo +Ed +FC +ik +xa +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(59,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +xa +ik +ux +uF +Pl +yB +ZE +ul +Hr +WC +yo +yh +RW +Qg +Rh +JC +mD +yh +yo +qn +yo +yo +yo +yo +yo +yo +FC +ik +xa +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(60,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +xa +ik +ux +ux +ob +ux +ux +iR +ux +yo +Gf +yh +JC +JC +qE +qF +mD +yh +Ed +yo +Gf +Ed +Ed +Ed +yo +FC +ik +ik +xa +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(61,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Sv +pU +ik +ik +ik +ik +ik +Vn +ik +FC +wX +FC +Nz +nS +gR +mN +qM +FC +FC +FC +FC +FC +wX +FC +FC +ik +ik +YA +GH +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(62,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Sv +pU +ik +ik +yG +ik +Vn +ik +ik +ik +ik +FC +FC +FC +wX +FC +ik +ik +ik +ik +ik +ik +ik +ik +ik +YA +GH +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(63,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Sv +lW +lW +lW +lW +bR +lW +lW +pU +ik +ik +ik +ik +ik +ik +yG +YA +lW +lW +lW +lW +lW +lW +lW +GH +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(64,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +mH +Dy +Dy +Sv +lW +lW +lW +TL +lW +lW +lW +GH +Dy +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(65,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +YO +Dy +Dy +Ed +yo +Ed +CU +Ig +Ed +Ed +yo +Ed +Dy +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(66,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +yo +rD +Oi +Oi +Mm +Oi +Oi +mh +yo +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(67,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +kV +QZ +Ed +Ed +Ed +oY +kV +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(68,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +kV +QZ +Ed +Ed +Ed +oY +kV +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(69,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +kV +QZ +Ed +Ed +Ed +oY +kV +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(70,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +kV +QZ +Ed +Ed +Ed +oY +kV +QZ +Ed +ax +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(71,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +kV +QZ +Ed +Ed +Ed +oY +kV +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(72,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +kV +QZ +yo +yo +yo +oY +kV +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(73,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +an +oY +kV +QZ +Ed +Ed +Ed +oY +kV +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(74,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +kV +QZ +Ed +Ed +Ed +oY +kV +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(75,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +kV +QZ +Ed +Ed +Ed +oY +kV +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(76,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +kV +QZ +Ed +Ed +Ed +oY +kV +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(77,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +kV +QZ +yo +yo +yo +oY +kV +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(78,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +kV +QZ +Ed +Ed +Ed +oY +kV +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(79,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +kV +QZ +Ed +Ed +Ed +oY +kV +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(80,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +ax +Ed +oY +kV +QZ +Ed +Ed +Ed +oY +kV +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(81,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +kV +QZ +Ed +Ed +Ed +oY +kV +QZ +Ed +ax +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(82,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +oY +Mm +QZ +Ed +Ed +Ed +oY +Mm +QZ +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(83,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Ed +Ed +yo +Ed +Ed +Ed +Ed +Ed +yo +Ed +Ed +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(84,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +Dy +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(85,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(86,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(87,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(88,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(89,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} +(90,1,1) = {" +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +XP +"} diff --git a/_maps/map_files/RandomRuins/SpaceRuins/turretedoutpost.dmm b/_maps/map_files/RandomRuins/SpaceRuins/turretedoutpost.dmm index 7ae763de0916..294cdbdf366d 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/turretedoutpost.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/turretedoutpost.dmm @@ -257,7 +257,7 @@ /area/ruin/space/unpowered) "S" = ( /obj/structure/table/wood, -/obj/item/food/snacks/rawcutlet, +/obj/item/food/rawcutlet, /obj/machinery/light{ dir = 8 }, diff --git a/_maps/map_files/RandomRuins/SpaceRuins/ussp.dmm b/_maps/map_files/RandomRuins/SpaceRuins/ussp.dmm index 5192ea05b614..8fe8ce5a23c5 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/ussp.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/ussp.dmm @@ -1823,7 +1823,7 @@ /area/space/nearstation) "eB" = ( /obj/structure/table/wood, -/obj/item/food/snacks/grown/peanuts, +/obj/item/food/grown/peanuts, /obj/structure/sign/poster/contraband/random{ pixel_y = 32 }, @@ -5610,7 +5610,7 @@ /area/ruin/space/derelict/hallway/primary) "nS" = ( /obj/structure/table/wood, -/obj/item/food/snacks/soup/beetsoup, +/obj/item/food/soup/beetsoup, /turf/simulated/floor/plasteel{ icon_state = "bar" }, @@ -6384,11 +6384,11 @@ layer = 2.9 }, /obj/structure/closet/crate/freezer, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/potato, +/obj/item/food/grown/potato, +/obj/item/food/grown/potato, +/obj/item/food/grown/potato, +/obj/item/food/grown/potato, +/obj/item/food/grown/potato, /turf/simulated/floor/plasteel{ icon_state = "freezerfloor" }, @@ -7534,9 +7534,7 @@ /turf/simulated/floor/plasteel/dark, /area/ruin/space/derelict/crew_quarters) "Nv" = ( -/obj/effect/spawner/airlock{ - req_access_txt = 0 - }, +/obj/effect/spawner/airlock, /turf/simulated/wall/mineral/titanium/nodecon/nodiagonal, /area/ruin/space/derelict/arrival) "NK" = ( @@ -7547,9 +7545,7 @@ /turf/template_noop, /area/template_noop) "Oh" = ( -/obj/effect/spawner/airlock/w_to_e{ - req_access_txt = 0 - }, +/obj/effect/spawner/airlock/w_to_e, /turf/simulated/wall/mineral/titanium/nodecon/nodiagonal, /area/ruin/space/derelict/crew_quarters) "PR" = ( @@ -7569,9 +7565,7 @@ }, /area/ruin/space/derelict/arrival) "Ud" = ( -/obj/effect/spawner/airlock{ - req_access_txt = 0 - }, +/obj/effect/spawner/airlock, /turf/simulated/wall/mineral/titanium/nodecon, /area/ruin/space/derelict/arrival) "Xn" = ( diff --git a/_maps/map_files/RandomRuins/SpaceRuins/whiteship.dmm b/_maps/map_files/RandomRuins/SpaceRuins/whiteship.dmm index 4e36b0536388..b6e072a07e2e 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/whiteship.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/whiteship.dmm @@ -18,9 +18,7 @@ /turf/simulated/floor/mineral/titanium/blue, /area/shuttle/abandoned) "em" = ( -/obj/effect/spawner/airlock/w_to_e/long/square{ - req_access_txt = null - }, +/obj/effect/spawner/airlock/w_to_e/long/square, /turf/simulated/wall/mineral/titanium, /area/shuttle/abandoned) "eo" = ( @@ -95,9 +93,7 @@ /area/shuttle/abandoned) "nC" = ( /obj/structure/table, -/obj/item/storage/firstaid/regular{ - pixel_y = 0 - }, +/obj/item/storage/firstaid/regular, /turf/simulated/floor/mineral/titanium/blue, /area/shuttle/abandoned) "oh" = ( diff --git a/_maps/map_files/RandomRuins/SpaceRuins/wizardcrash.dmm b/_maps/map_files/RandomRuins/SpaceRuins/wizardcrash.dmm index 079838d4da5d..80714d04e8b1 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/wizardcrash.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/wizardcrash.dmm @@ -291,7 +291,7 @@ /area/ruin/space/powered) "bc" = ( /obj/effect/decal/remains/human, -/obj/item/food/snacks/meat/monkey, +/obj/item/food/meat/monkey, /turf/simulated/floor/plating, /area/ruin/space/powered) "bd" = ( @@ -313,7 +313,7 @@ /turf/simulated/floor/plating, /area/ruin/space/powered) "bg" = ( -/obj/item/food/snacks/meat/monkey, +/obj/item/food/meat/monkey, /turf/simulated/floor/plating, /area/ruin/space/powered) "bh" = ( @@ -329,7 +329,7 @@ }, /area/ruin/space/powered) "bj" = ( -/obj/item/food/snacks/meat/human, +/obj/item/food/meat/human, /obj/effect/decal/cleanable/blood/old, /turf/simulated/floor/plasteel{ icon_state = "chapel" diff --git a/_maps/map_files/RandomRuins/SpaceRuins/wreckedcargoship.dmm b/_maps/map_files/RandomRuins/SpaceRuins/wreckedcargoship.dmm index 81b1a96b2119..f03faedabeda 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/wreckedcargoship.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/wreckedcargoship.dmm @@ -224,8 +224,8 @@ /area/ruin/space/wreck_cargoship) "jm" = ( /obj/item/toy/plushie/ipcplushie, -/obj/item/food/snacks/breadslice, -/obj/item/food/snacks/breadslice, +/obj/item/food/breadslice, +/obj/item/food/breadslice, /obj/item/paper/crumpled{ name = "unintelligible scribbles"; info = "toast... i must... the plushie..." diff --git a/_maps/map_files/generic/Lavaland.dmm b/_maps/map_files/generic/Lavaland.dmm index f4e1402aed69..680a9b55deca 100644 --- a/_maps/map_files/generic/Lavaland.dmm +++ b/_maps/map_files/generic/Lavaland.dmm @@ -667,7 +667,7 @@ /area/mine/outpost/storage) "cl" = ( /obj/structure/lattice/catwalk/mining, -/obj/item/food/snacks/fortunecookie{ +/obj/item/food/fortunecookie{ pixel_y = -5; pixel_x = -6 }, @@ -1020,7 +1020,7 @@ "de" = ( /obj/structure/rack, /obj/item/storage/toolbox/emergency, -/obj/item/food/snacks/grown/harebell, +/obj/item/food/grown/harebell, /obj/item/radio/intercom{ name = "south bump"; pixel_y = -28 @@ -5773,7 +5773,7 @@ "wm" = ( /obj/structure/table, /obj/item/storage/bag/tray, -/obj/item/food/snacks/tofu, +/obj/item/food/tofu, /obj/machinery/atmospherics/unary/outlet_injector/on{ autolink_id = "air_in"; dir = 4 diff --git a/_maps/map_files/generic/centcomm.dmm b/_maps/map_files/generic/centcomm.dmm index 7d38c76f41e9..08f6d22c9d14 100644 --- a/_maps/map_files/generic/centcomm.dmm +++ b/_maps/map_files/generic/centcomm.dmm @@ -1464,24 +1464,24 @@ /area/shuttle/administration) "fF" = ( /obj/structure/closet/secure_closet/freezer/meat/open, -/obj/item/food/snacks/raw_bacon, -/obj/item/food/snacks/raw_bacon, -/obj/item/food/snacks/raw_bacon, -/obj/item/food/snacks/raw_bacon, -/obj/item/food/snacks/sausage, -/obj/item/food/snacks/sausage, -/obj/item/food/snacks/rawcutlet, -/obj/item/food/snacks/rawcutlet, -/obj/item/food/snacks/rawcutlet, -/obj/item/food/snacks/catfishmeat, -/obj/item/food/snacks/catfishmeat, -/obj/item/food/snacks/catfishmeat, -/obj/item/food/snacks/catfishmeat, -/obj/item/food/snacks/rawcutlet, -/obj/item/food/snacks/rawcutlet, -/obj/item/food/snacks/rawcutlet, -/obj/item/food/snacks/spaghetti, -/obj/item/food/snacks/spaghetti, +/obj/item/food/raw_bacon, +/obj/item/food/raw_bacon, +/obj/item/food/raw_bacon, +/obj/item/food/raw_bacon, +/obj/item/food/sausage, +/obj/item/food/sausage, +/obj/item/food/rawcutlet, +/obj/item/food/rawcutlet, +/obj/item/food/rawcutlet, +/obj/item/food/catfishmeat, +/obj/item/food/catfishmeat, +/obj/item/food/catfishmeat, +/obj/item/food/catfishmeat, +/obj/item/food/rawcutlet, +/obj/item/food/rawcutlet, +/obj/item/food/rawcutlet, +/obj/item/food/spaghetti, +/obj/item/food/spaghetti, /turf/simulated/floor/plasteel{ icon_state = "cafeteria" }, @@ -4233,7 +4233,7 @@ /area/centcom/suppy) "nY" = ( /obj/structure/table/wood, -/obj/item/food/snacks/mushroompizzaslice{ +/obj/item/food/mushroompizzaslice{ pixel_x = -5; pixel_y = 5 }, @@ -5144,13 +5144,13 @@ /area/admin) "ro" = ( /obj/structure/table, -/obj/item/food/snacks/grown/citrus/lemon, -/obj/item/food/snacks/grown/berries, -/obj/item/food/snacks/grown/banana, -/obj/item/food/snacks/grown/cherries, -/obj/item/food/snacks/grown/citrus/orange, -/obj/item/food/snacks/grown/corn, -/obj/item/food/snacks/grown/mushroom/amanita, +/obj/item/food/grown/citrus/lemon, +/obj/item/food/grown/berries, +/obj/item/food/grown/banana, +/obj/item/food/grown/cherries, +/obj/item/food/grown/citrus/orange, +/obj/item/food/grown/corn, +/obj/item/food/grown/mushroom/amanita, /turf/simulated/floor/plasteel/freezer, /area/admin) "rp" = ( @@ -7194,22 +7194,22 @@ /area/holodeck/source_boxingcourt) "zj" = ( /obj/structure/closet/secure_closet/freezer/fridge/open, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/whitebeet, -/obj/item/food/snacks/grown/whitebeet, -/obj/item/food/snacks/grown/tomato, -/obj/item/food/snacks/grown/tomato, -/obj/item/food/snacks/grown/rice, -/obj/item/food/snacks/grown/rice, -/obj/item/food/snacks/grown/icepepper, -/obj/item/food/snacks/grown/icepepper, -/obj/item/food/snacks/grown/citrus/lemon, -/obj/item/food/snacks/grown/citrus/lime, -/obj/item/food/snacks/grown/citrus/orange, -/obj/item/food/snacks/grown/cherries, -/obj/item/food/snacks/grown/apple, -/obj/item/food/snacks/grown/ambrosia/deus, +/obj/item/food/grown/potato, +/obj/item/food/grown/potato, +/obj/item/food/grown/whitebeet, +/obj/item/food/grown/whitebeet, +/obj/item/food/grown/tomato, +/obj/item/food/grown/tomato, +/obj/item/food/grown/rice, +/obj/item/food/grown/rice, +/obj/item/food/grown/icepepper, +/obj/item/food/grown/icepepper, +/obj/item/food/grown/citrus/lemon, +/obj/item/food/grown/citrus/lime, +/obj/item/food/grown/citrus/orange, +/obj/item/food/grown/cherries, +/obj/item/food/grown/apple, +/obj/item/food/grown/ambrosia/deus, /turf/simulated/floor/plasteel{ icon_state = "cafeteria" }, @@ -9942,22 +9942,22 @@ /area/shuttle/escape) "Jl" = ( /obj/structure/closet/secure_closet/freezer/fridge/open, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/whitebeet, -/obj/item/food/snacks/grown/whitebeet, -/obj/item/food/snacks/grown/tomato, -/obj/item/food/snacks/grown/tomato, -/obj/item/food/snacks/grown/rice, -/obj/item/food/snacks/grown/rice, -/obj/item/food/snacks/grown/icepepper, -/obj/item/food/snacks/grown/icepepper, -/obj/item/food/snacks/grown/citrus/lemon, -/obj/item/food/snacks/grown/citrus/lime, -/obj/item/food/snacks/grown/citrus/orange, -/obj/item/food/snacks/grown/cherries, -/obj/item/food/snacks/grown/apple, -/obj/item/food/snacks/grown/ambrosia/deus, +/obj/item/food/grown/potato, +/obj/item/food/grown/potato, +/obj/item/food/grown/whitebeet, +/obj/item/food/grown/whitebeet, +/obj/item/food/grown/tomato, +/obj/item/food/grown/tomato, +/obj/item/food/grown/rice, +/obj/item/food/grown/rice, +/obj/item/food/grown/icepepper, +/obj/item/food/grown/icepepper, +/obj/item/food/grown/citrus/lemon, +/obj/item/food/grown/citrus/lime, +/obj/item/food/grown/citrus/orange, +/obj/item/food/grown/cherries, +/obj/item/food/grown/apple, +/obj/item/food/grown/ambrosia/deus, /turf/simulated/floor/plasteel{ icon_state = "cafeteria" }, @@ -10033,24 +10033,24 @@ /area/centcom/specops) "JB" = ( /obj/structure/closet/secure_closet/freezer/meat/open, -/obj/item/food/snacks/raw_bacon, -/obj/item/food/snacks/raw_bacon, -/obj/item/food/snacks/raw_bacon, -/obj/item/food/snacks/raw_bacon, -/obj/item/food/snacks/sausage, -/obj/item/food/snacks/sausage, -/obj/item/food/snacks/rawcutlet, -/obj/item/food/snacks/rawcutlet, -/obj/item/food/snacks/rawcutlet, -/obj/item/food/snacks/catfishmeat, -/obj/item/food/snacks/catfishmeat, -/obj/item/food/snacks/catfishmeat, -/obj/item/food/snacks/catfishmeat, -/obj/item/food/snacks/rawcutlet, -/obj/item/food/snacks/rawcutlet, -/obj/item/food/snacks/rawcutlet, -/obj/item/food/snacks/spaghetti, -/obj/item/food/snacks/spaghetti, +/obj/item/food/raw_bacon, +/obj/item/food/raw_bacon, +/obj/item/food/raw_bacon, +/obj/item/food/raw_bacon, +/obj/item/food/sausage, +/obj/item/food/sausage, +/obj/item/food/rawcutlet, +/obj/item/food/rawcutlet, +/obj/item/food/rawcutlet, +/obj/item/food/catfishmeat, +/obj/item/food/catfishmeat, +/obj/item/food/catfishmeat, +/obj/item/food/catfishmeat, +/obj/item/food/rawcutlet, +/obj/item/food/rawcutlet, +/obj/item/food/rawcutlet, +/obj/item/food/spaghetti, +/obj/item/food/spaghetti, /turf/simulated/floor/plasteel{ icon_state = "cafeteria" }, @@ -10321,25 +10321,25 @@ /area/centcom/evac) "Kw" = ( /obj/structure/closet/secure_closet/freezer/kitchen, -/obj/item/food/snacks/grown/banana, -/obj/item/food/snacks/grown/banana, -/obj/item/food/snacks/grown/wheat, -/obj/item/food/snacks/grown/wheat, -/obj/item/food/snacks/grown/vanillapod, -/obj/item/food/snacks/grown/vanillapod, -/obj/item/food/snacks/grown/sugarcane, -/obj/item/food/snacks/grown/sugarcane, -/obj/item/food/snacks/grown/oat, -/obj/item/food/snacks/grown/oat, -/obj/item/food/snacks/grown/grapes, -/obj/item/food/snacks/grown/grapes, -/obj/item/food/snacks/grown/corn, -/obj/item/food/snacks/grown/corn, -/obj/item/food/snacks/grown/chili, -/obj/item/food/snacks/grown/chili, -/obj/item/food/snacks/grown/carrot, -/obj/item/food/snacks/grown/apple, -/obj/item/food/snacks/grown/ambrosia/vulgaris, +/obj/item/food/grown/banana, +/obj/item/food/grown/banana, +/obj/item/food/grown/wheat, +/obj/item/food/grown/wheat, +/obj/item/food/grown/vanillapod, +/obj/item/food/grown/vanillapod, +/obj/item/food/grown/sugarcane, +/obj/item/food/grown/sugarcane, +/obj/item/food/grown/oat, +/obj/item/food/grown/oat, +/obj/item/food/grown/grapes, +/obj/item/food/grown/grapes, +/obj/item/food/grown/corn, +/obj/item/food/grown/corn, +/obj/item/food/grown/chili, +/obj/item/food/grown/chili, +/obj/item/food/grown/carrot, +/obj/item/food/grown/apple, +/obj/item/food/grown/ambrosia/vulgaris, /turf/simulated/floor/plasteel{ icon_state = "cafeteria" }, @@ -11470,25 +11470,25 @@ /obj/structure/closet/secure_closet/freezer/kitchen{ req_access = null }, -/obj/item/food/snacks/grown/banana, -/obj/item/food/snacks/grown/banana, -/obj/item/food/snacks/grown/wheat, -/obj/item/food/snacks/grown/wheat, -/obj/item/food/snacks/grown/vanillapod, -/obj/item/food/snacks/grown/vanillapod, -/obj/item/food/snacks/grown/sugarcane, -/obj/item/food/snacks/grown/sugarcane, -/obj/item/food/snacks/grown/oat, -/obj/item/food/snacks/grown/oat, -/obj/item/food/snacks/grown/grapes, -/obj/item/food/snacks/grown/grapes, -/obj/item/food/snacks/grown/corn, -/obj/item/food/snacks/grown/corn, -/obj/item/food/snacks/grown/chili, -/obj/item/food/snacks/grown/chili, -/obj/item/food/snacks/grown/carrot, -/obj/item/food/snacks/grown/apple, -/obj/item/food/snacks/grown/ambrosia/vulgaris, +/obj/item/food/grown/banana, +/obj/item/food/grown/banana, +/obj/item/food/grown/wheat, +/obj/item/food/grown/wheat, +/obj/item/food/grown/vanillapod, +/obj/item/food/grown/vanillapod, +/obj/item/food/grown/sugarcane, +/obj/item/food/grown/sugarcane, +/obj/item/food/grown/oat, +/obj/item/food/grown/oat, +/obj/item/food/grown/grapes, +/obj/item/food/grown/grapes, +/obj/item/food/grown/corn, +/obj/item/food/grown/corn, +/obj/item/food/grown/chili, +/obj/item/food/grown/chili, +/obj/item/food/grown/carrot, +/obj/item/food/grown/apple, +/obj/item/food/grown/ambrosia/vulgaris, /turf/simulated/floor/plasteel{ icon_state = "cafeteria" }, diff --git a/_maps/map_files/shuttles/ferry_meat.dmm b/_maps/map_files/shuttles/ferry_meat.dmm index 8a21a1c75e2d..f6b71dd5baa1 100644 --- a/_maps/map_files/shuttles/ferry_meat.dmm +++ b/_maps/map_files/shuttles/ferry_meat.dmm @@ -36,13 +36,13 @@ /obj/structure/closet/secure_closet/freezer/meat, /obj/item/grenade/chem_grenade/meat, /obj/item/grenade/clusterbuster/meat, -/obj/item/food/snacks/meat/corgi, -/obj/item/food/snacks/meat/ham, -/obj/item/food/snacks/meat/human, -/obj/item/food/snacks/meat/monkey, -/obj/item/food/snacks/meat/pug, -/obj/item/food/snacks/meat/slab/meatproduct, -/obj/item/food/snacks/meat/syntiflesh, +/obj/item/food/meat/corgi, +/obj/item/food/meat/ham, +/obj/item/food/meat/human, +/obj/item/food/meat/monkey, +/obj/item/food/meat/pug, +/obj/item/food/meat/slab/meatproduct, +/obj/item/food/meat/syntiflesh, /turf/simulated/floor/plasteel{ icon_state = "freezerfloor" }, diff --git a/_maps/map_files/stations/boxstation.dmm b/_maps/map_files/stations/boxstation.dmm index b082df3e45bd..a4ab4898cfb3 100644 --- a/_maps/map_files/stations/boxstation.dmm +++ b/_maps/map_files/stations/boxstation.dmm @@ -11463,7 +11463,7 @@ /turf/simulated/floor/plating, /area/station/maintenance/fpmaint) "aLG" = ( -/obj/item/food/snacks/meat/slab, +/obj/item/food/meat/slab, /turf/simulated/floor/plasteel{ icon_state = "showroomfloor" }, @@ -11743,7 +11743,7 @@ /area/station/maintenance/fore) "aMl" = ( /obj/structure/table, -/obj/item/food/snacks/donut, +/obj/item/food/donut, /turf/simulated/floor/plating, /area/station/maintenance/fsmaint) "aMo" = ( @@ -11944,7 +11944,7 @@ /area/station/maintenance/fpmaint) "aMT" = ( /obj/effect/decal/cleanable/dirt, -/obj/item/food/snacks/meat/slab, +/obj/item/food/meat/slab, /obj/machinery/atmospherics/pipe/simple/hidden/cyan{ dir = 4 }, @@ -12349,7 +12349,7 @@ /area/station/maintenance/fpmaint2) "aOo" = ( /obj/effect/decal/cleanable/dirt, -/obj/item/food/snacks/meat/slab, +/obj/item/food/meat/slab, /turf/simulated/floor/plasteel{ icon_state = "showroomfloor" }, @@ -12630,7 +12630,7 @@ "aPa" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random_spawners/blood_maybe, -/obj/item/food/snacks/meat/slab, +/obj/item/food/meat/slab, /obj/item/clothing/mask/face/fox, /turf/simulated/floor/plasteel, /area/station/maintenance/fpmaint2) @@ -16338,7 +16338,7 @@ /turf/simulated/floor/plating, /area/station/maintenance/fpmaint) "baa" = ( -/obj/item/food/snacks/grown/banana, +/obj/item/food/grown/banana, /turf/simulated/floor/plating, /area/station/maintenance/fpmaint) "bab" = ( @@ -16832,7 +16832,7 @@ /area/station/maintenance/fpmaint) "bbH" = ( /obj/structure/table, -/obj/item/food/snacks/baguette, +/obj/item/food/baguette, /turf/simulated/floor/plating, /area/station/maintenance/fpmaint) "bbI" = ( @@ -16853,7 +16853,7 @@ /turf/simulated/floor/plating, /area/station/maintenance/fsmaint) "bbJ" = ( -/obj/item/food/snacks/grown/banana, +/obj/item/food/grown/banana, /obj/item/storage/backpack/duffel/clown, /turf/simulated/floor/plating, /area/station/maintenance/fpmaint) @@ -17392,7 +17392,7 @@ "bdp" = ( /obj/structure/table/wood, /obj/item/flashlight/lamp/bananalamp, -/obj/item/food/snacks/pie, +/obj/item/food/pie, /obj/machinery/alarm/directional/north, /turf/simulated/floor/wood, /area/station/service/clown) @@ -18436,7 +18436,7 @@ /area/station/service/chapel) "bgj" = ( /obj/structure/table/wood, -/obj/item/food/snacks/chips, +/obj/item/food/chips, /obj/item/reagent_containers/drinks/cans/cola, /turf/simulated/floor/carpet, /area/station/hallway/secondary/entry/lounge) @@ -23582,7 +23582,7 @@ /area/station/service/kitchen) "bus" = ( /obj/structure/table, -/obj/item/food/snacks/mint, +/obj/item/food/mint, /turf/simulated/floor/plasteel{ icon_state = "cafeteria" }, @@ -24941,9 +24941,7 @@ }, /area/station/hallway/primary/central/west) "bzN" = ( -/obj/effect/spawner/airlock/w_to_e/long{ - req_access_txt = 32 - }, +/obj/effect/spawner/airlock/w_to_e/long, /turf/simulated/wall/r_wall, /area/station/engineering/ai_transit_tube) "bzO" = ( @@ -28848,6 +28846,15 @@ "bOU" = ( /turf/simulated/wall, /area/station/medical/chemistry) +"bOY" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/turf/simulated/floor/plating, +/area/station/maintenance/auxsolarport) "bPd" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -47983,7 +47990,7 @@ "dgY" = ( /obj/structure/rack, /obj/effect/spawner/lootdrop/maintenance, -/obj/item/food/snacks/donkpocket, +/obj/item/food/donkpocket, /turf/simulated/floor/plating, /area/station/maintenance/aft) "dgZ" = ( @@ -51410,7 +51417,7 @@ /area/station/medical/sleeper) "dvb" = ( /obj/effect/spawner/window/reinforced/grilled, -/obj/effect/spawner/airlock/e_to_w/arrivals, +/obj/effect/spawner/airlock/e_to_w, /turf/simulated/floor/plating, /area/station/hallway/secondary/entry/north) "dvv" = ( @@ -51674,7 +51681,7 @@ /area/station/maintenance/apmaint) "dEb" = ( /obj/effect/decal/cleanable/dirt, -/obj/item/food/snacks/meat/slab, +/obj/item/food/meat/slab, /turf/simulated/floor/plating, /area/station/maintenance/fpmaint) "dEq" = ( @@ -54725,9 +54732,7 @@ /area/station/hallway/primary/aft/south) "eXd" = ( /obj/effect/spawner/window/reinforced/grilled, -/obj/effect/spawner/airlock/s_to_n/engineer{ - req_access_txt = 13 - }, +/obj/effect/spawner/airlock/s_to_n, /turf/simulated/floor/plating, /area/station/maintenance/auxsolarstarboard) "eXy" = ( @@ -58524,7 +58529,7 @@ "gMa" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table, -/obj/item/food/snacks/dough{ +/obj/item/food/dough{ desc = "A piece of dough. It looks moldy and is hard as a rock. Hope you're not planning on turning this into a pizza.."; name = "old dough" }, @@ -64219,6 +64224,15 @@ }, /turf/simulated/floor/plasteel, /area/station/medical/storage) +"jCt" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/turf/simulated/floor/plating, +/area/station/maintenance/portsolar) "jCu" = ( /obj/machinery/economy/vending/scidrobe, /turf/simulated/floor/plasteel{ @@ -64713,9 +64727,7 @@ /turf/simulated/floor/plating, /area/station/maintenance/port) "jRo" = ( -/obj/effect/spawner/airlock/s_to_n/long/square/engineer{ - req_access_txt = null - }, +/obj/effect/spawner/airlock/s_to_n/long/square, /turf/simulated/wall, /area/station/maintenance/fpmaint2) "jRx" = ( @@ -65011,6 +65023,10 @@ icon_state = "barber" }, /area/station/service/barber) +"jVV" = ( +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/turf/simulated/floor/plating, +/area/station/maintenance/fpmaint2) "jWg" = ( /obj/machinery/disposal, /obj/structure/window/reinforced{ @@ -65217,7 +65233,7 @@ "kdh" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/light/small, -/obj/item/food/snacks/grown/cannabis, +/obj/item/food/grown/cannabis, /turf/simulated/floor/carpet, /area/station/maintenance/asmaint) "kdk" = ( @@ -67539,6 +67555,10 @@ icon_state = "purplecorner" }, /area/station/science/robotics) +"liR" = ( +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/turf/simulated/floor/plating, +/area/station/maintenance/apmaint) "lje" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -69463,7 +69483,7 @@ }, /area/station/command/server) "mdX" = ( -/obj/item/food/snacks/grown/cannabis, +/obj/item/food/grown/cannabis, /obj/effect/decal/cleanable/dirt, /obj/item/clothing/mask/cigarette/medical_marijuana, /turf/simulated/floor/wood{ @@ -71432,9 +71452,7 @@ /area/station/hallway/secondary/exit) "nee" = ( /obj/effect/spawner/window/reinforced/grilled, -/obj/effect/spawner/airlock/s_to_n{ - req_access_txt = "11,13" - }, +/obj/effect/spawner/airlock/s_to_n, /turf/simulated/floor/plating, /area/station/maintenance/auxsolarport) "neo" = ( @@ -71660,9 +71678,7 @@ /area/station/medical/virology) "nnF" = ( /obj/effect/spawner/window/reinforced/grilled, -/obj/effect/spawner/airlock/s_to_n/engineer{ - req_access_txt = 13 - }, +/obj/effect/spawner/airlock/s_to_n, /turf/simulated/floor/plating, /area/station/maintenance/fsmaint) "noq" = ( @@ -72130,9 +72146,7 @@ /area/station/science/toxins/mixing) "nBq" = ( /obj/effect/spawner/window/reinforced/grilled, -/obj/effect/spawner/airlock/long/engineer{ - req_access_txt = 13 - }, +/obj/effect/spawner/airlock/long, /turf/simulated/floor/plating, /area/station/maintenance/aft) "nBs" = ( @@ -72240,6 +72254,15 @@ icon_state = "dark" }, /area/station/science/robotics/chargebay) +"nCl" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/turf/simulated/floor/plating, +/area/station/maintenance/asmaint) "nCm" = ( /obj/structure/cable{ d1 = 1; @@ -74405,9 +74428,7 @@ /area/station/maintenance/asmaint) "oBF" = ( /obj/effect/spawner/window/reinforced/grilled, -/obj/effect/spawner/airlock/s_to_n/long/engineer{ - req_access_txt = null - }, +/obj/effect/spawner/airlock/s_to_n/long, /turf/simulated/floor/plating, /area/station/maintenance/fpmaint2) "oBJ" = ( @@ -77440,9 +77461,7 @@ /area/station/supply/miningdock) "qaB" = ( /obj/effect/spawner/window/reinforced/grilled, -/obj/effect/spawner/airlock/engineer{ - req_access_txt = 13 - }, +/obj/effect/spawner/airlock, /turf/simulated/floor/plating, /area/station/maintenance/apmaint) "qaI" = ( @@ -79584,6 +79603,15 @@ }, /turf/simulated/wall, /area/space/nearstation) +"qUj" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/turf/simulated/floor/plating, +/area/station/maintenance/starboardsolar) "qUu" = ( /obj/machinery/light_switch{ dir = 4; @@ -80256,7 +80284,7 @@ "rkL" = ( /obj/effect/decal/cleanable/dirt, /obj/item/seeds/cannabis, -/obj/item/food/snacks/grown/ambrosia/vulgaris, +/obj/item/food/grown/ambrosia/vulgaris, /turf/simulated/floor/plating, /area/station/maintenance/asmaint) "rkS" = ( @@ -80653,6 +80681,10 @@ }, /turf/simulated/floor/engine, /area/station/engineering/control) +"ruY" = ( +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/turf/simulated/floor/plating, +/area/station/maintenance/fsmaint) "rvo" = ( /obj/structure/disposalpipe/segment, /obj/effect/spawner/window/reinforced/polarized/grilled{ @@ -82536,6 +82568,10 @@ /obj/structure/statue/cyberiad/north/east, /turf/simulated/floor/plasteel, /area/station/hallway/primary/central/south) +"ssO" = ( +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/turf/simulated/floor/plating, +/area/station/maintenance/aft) "ssQ" = ( /obj/structure/closet/radiation, /obj/machinery/light{ @@ -84120,6 +84156,7 @@ /obj/machinery/light/small{ dir = 1 }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/construction, /turf/simulated/floor/plating, /area/station/maintenance/storage) "tle" = ( @@ -84631,6 +84668,10 @@ /obj/machinery/door/firedoor, /turf/simulated/floor/plating, /area/station/maintenance/turbine) +"tAH" = ( +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/turf/simulated/floor/plating/airless, +/area/station/maintenance/fpmaint2) "tAS" = ( /obj/structure/door_assembly/door_assembly_mai{ anchored = 1; @@ -85612,13 +85653,13 @@ /area/station/science/test_chamber) "tWD" = ( /obj/structure/closet/crate, -/obj/item/food/snacks/breadslice, -/obj/item/food/snacks/breadslice, -/obj/item/food/snacks/breadslice, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/onion, -/obj/item/food/snacks/grown/onion, +/obj/item/food/breadslice, +/obj/item/food/breadslice, +/obj/item/food/breadslice, +/obj/item/food/grown/potato, +/obj/item/food/grown/potato, +/obj/item/food/grown/onion, +/obj/item/food/grown/onion, /obj/item/storage/box/donkpockets, /obj/item/storage/fancy/egg_box, /obj/item/reagent_containers/condiment/flour, @@ -86212,9 +86253,7 @@ /area/station/command/office/hop) "unh" = ( /obj/effect/spawner/window/reinforced/grilled, -/obj/effect/spawner/airlock/w_to_e/engineer{ - req_access_txt = 13 - }, +/obj/effect/spawner/airlock/w_to_e, /turf/simulated/floor/plating, /area/station/maintenance/asmaint) "uno" = ( @@ -86781,6 +86820,15 @@ /obj/item/book/random/triple, /turf/simulated/floor/plating, /area/station/maintenance/asmaint) +"uDn" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/turf/simulated/floor/plating, +/area/station/maintenance/auxsolarstarboard) "uDI" = ( /obj/effect/turf_decal/stripes/line{ dir = 9 @@ -86869,7 +86917,7 @@ /area/station/engineering/atmos/distribution) "uGf" = ( /obj/structure/table/reinforced, -/obj/item/food/snacks/grilledcheese{ +/obj/item/food/grilledcheese{ pixel_y = 9 }, /turf/simulated/floor/wood, @@ -87144,7 +87192,7 @@ /area/station/hallway/secondary/exit) "uRK" = ( /obj/item/organ/internal/heart/vox, -/obj/item/food/snacks/fried_vox, +/obj/item/food/fried_vox, /obj/structure/table, /obj/item/scalpel, /turf/simulated/floor/plating, @@ -88205,7 +88253,7 @@ /area/station/maintenance/asmaint) "vrV" = ( /obj/effect/spawner/window/reinforced/grilled, -/obj/effect/spawner/airlock/engineer, +/obj/effect/spawner/airlock, /turf/simulated/floor/plating, /area/station/maintenance/starboardsolar) "vsw" = ( @@ -92785,7 +92833,7 @@ /area/station/medical/surgery/observation) "xII" = ( /obj/structure/table/wood, -/obj/item/food/snacks/pistachios, +/obj/item/food/pistachios, /obj/item/poster/random_contraband, /turf/simulated/floor/plating, /area/station/maintenance/asmaint) @@ -93237,7 +93285,7 @@ /area/station/maintenance/apmaint2) "xSF" = ( /obj/effect/spawner/window/reinforced/grilled, -/obj/effect/spawner/airlock/e_to_w/engineer, +/obj/effect/spawner/airlock/e_to_w, /turf/simulated/floor/plating, /area/station/maintenance/portsolar) "xSH" = ( @@ -106226,7 +106274,7 @@ aaa doE aHS aHS -aHS +jVV aHS pTK aND @@ -108273,7 +108321,7 @@ asb asb laU dap -dap +bOY dap hoD aEE @@ -108336,7 +108384,7 @@ jWI noP ubK coL -coL +liR coL doE aaa @@ -112133,7 +112181,7 @@ doE doE aHS lcl -lcl +tAH aHS rMP blG @@ -115555,7 +115603,7 @@ aaa aaa aab swl -ntD +jCt swl aab aab @@ -135517,7 +135565,7 @@ awQ axq axq jOz -jOz +uDn jOz sDz aHI @@ -135885,7 +135933,7 @@ cep hzG cep ghR -cep +ssO cep doE aaa @@ -137573,7 +137621,7 @@ aaa aaa doE aGY -aGY +ruY aGY cZV aGY @@ -144876,7 +144924,7 @@ deN dfa tMT sTF -sTF +qUj sTF ddE ddE @@ -148178,7 +148226,7 @@ aaa aaa aab ycI -cNq +nCl ycI ciY sKQ diff --git a/_maps/map_files/stations/cerestation.dmm b/_maps/map_files/stations/cerestation.dmm index c2c93d8be69a..49ecc4ed49ef 100644 --- a/_maps/map_files/stations/cerestation.dmm +++ b/_maps/map_files/stations/cerestation.dmm @@ -23368,7 +23368,7 @@ }, /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/simple/visible, -/turf/simulated/wall, +/turf/simulated/floor/plating, /area/station/science/misc_lab) "czg" = ( /turf/simulated/floor/plasteel{ @@ -26020,7 +26020,7 @@ /area/station/maintenance/port) "cNg" = ( /obj/structure/table, -/obj/item/food/snacks/baguette, +/obj/item/food/baguette, /obj/structure/sign/poster/official/the_owl{ pixel_y = 32 }, @@ -40487,7 +40487,7 @@ /obj/item/reagent_containers/drinks/cans/cola{ pixel_x = 10 }, -/obj/item/food/snacks/chips{ +/obj/item/food/chips{ pixel_x = -5 }, /obj/structure/railing, @@ -47444,7 +47444,7 @@ /area/station/turret_protected/aisat/interior/secondary) "ipE" = ( /obj/structure/table, -/obj/item/food/snacks/mint, +/obj/item/food/mint, /turf/simulated/floor/plasteel{ icon_state = "cafeteria" }, @@ -50945,7 +50945,7 @@ /obj/effect/decal/cleanable/dirt, /obj/structure/table, /obj/item/kitchen/knife, -/obj/item/food/snacks/meat/human, +/obj/item/food/meat/human, /turf/simulated/floor/plating, /area/station/maintenance/asmaint) "jtF" = ( @@ -59668,7 +59668,7 @@ /area/station/hallway/primary/central/west) "lYT" = ( /obj/structure/table, -/obj/item/food/snacks/fried_vox, +/obj/item/food/fried_vox, /turf/simulated/floor/plating, /area/station/maintenance/fsmaint) "lYX" = ( @@ -61497,17 +61497,6 @@ icon_state = "neutralcorner" }, /area/station/hallway/primary/starboard/south) -"mGE" = ( -/obj/structure/cable/orange{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/grille, -/turf/simulated/floor/plating{ - icon_state = "asteroidplating" - }, -/area/station/maintenance/apmaint) "mGK" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/line{ @@ -71981,7 +71970,7 @@ "pXp" = ( /obj/structure/rack, /obj/effect/spawner/lootdrop/maintenance, -/obj/item/food/snacks/donkpocket, +/obj/item/food/donkpocket, /turf/simulated/floor/plating, /area/station/maintenance/starboard) "pXq" = ( @@ -82208,7 +82197,7 @@ "tnY" = ( /obj/structure/table/wood, /obj/item/flashlight/lamp/bananalamp, -/obj/item/food/snacks/pie, +/obj/item/food/pie, /obj/machinery/light_switch{ dir = 8; pixel_x = 24; @@ -89895,8 +89884,8 @@ /area/station/hallway/primary/fore/east) "vFa" = ( /obj/structure/table, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/chili, +/obj/item/food/grown/potato, +/obj/item/food/grown/chili, /obj/item/seeds/grape, /turf/simulated/floor/plasteel{ icon_state = "darkgreenfull" @@ -123710,7 +123699,7 @@ ciG gPL nwv pQN -mGE +nta cGd pAi pAi diff --git a/_maps/map_files/stations/deltastation.dmm b/_maps/map_files/stations/deltastation.dmm index 7f746d9f27a3..c77375516e74 100644 --- a/_maps/map_files/stations/deltastation.dmm +++ b/_maps/map_files/stations/deltastation.dmm @@ -1831,11 +1831,11 @@ /area/station/hallway/secondary/entry/south) "anA" = ( /obj/structure/table/reinforced, -/obj/item/food/snacks/meat/slab{ +/obj/item/food/meat/slab{ pixel_x = 6; pixel_y = 11 }, -/obj/item/food/snacks/meat/slab, +/obj/item/food/meat/slab, /obj/effect/turf_decal/delivery, /turf/simulated/floor/plasteel, /area/station/maintenance/fore2) @@ -7755,9 +7755,9 @@ /obj/structure/table, /obj/item/seeds/poppy/lily, /obj/item/seeds/poppy/geranium, -/obj/item/food/snacks/grown/wheat, +/obj/item/food/grown/wheat, /obj/item/grown/corncob, -/obj/item/food/snacks/grown/apple, +/obj/item/food/grown/apple, /obj/effect/turf_decal/delivery/hollow, /turf/simulated/floor/plasteel, /area/station/maintenance/abandoned_garden) @@ -7779,9 +7779,9 @@ /obj/structure/table, /obj/item/stack/packageWrap, /obj/item/hand_labeler, -/obj/item/food/snacks/grown/tea, -/obj/item/food/snacks/grown/grapes, -/obj/item/food/snacks/grown/cherries, +/obj/item/food/grown/tea, +/obj/item/food/grown/grapes, +/obj/item/food/grown/cherries, /obj/effect/turf_decal/delivery/hollow, /turf/simulated/floor/plasteel, /area/station/maintenance/abandoned_garden) @@ -12962,7 +12962,7 @@ /area/station/service/bar) "aRC" = ( /obj/structure/table/wood, -/obj/item/food/snacks/cheesiehonkers, +/obj/item/food/cheesiehonkers, /turf/simulated/floor/plasteel{ icon_state = "bar" }, @@ -14812,7 +14812,7 @@ /area/station/supply/miningdock) "aWg" = ( /obj/structure/table/wood, -/obj/item/food/snacks/chips, +/obj/item/food/chips, /turf/simulated/floor/plasteel{ icon_state = "bar" }, @@ -19039,7 +19039,7 @@ /obj/item/reagent_containers/condiment/flour, /obj/effect/turf_decal/delivery/hollow, /obj/structure/table, -/obj/item/food/snacks/dough, +/obj/item/food/dough, /turf/simulated/floor/plasteel{ icon_state = "white" }, @@ -19086,7 +19086,7 @@ "bhR" = ( /obj/effect/turf_decal/delivery/hollow, /obj/structure/table, -/obj/item/food/snacks/mint{ +/obj/item/food/mint{ pixel_y = 10 }, /obj/item/reagent_containers/condiment/saltshaker{ @@ -24711,10 +24711,10 @@ /obj/item/seeds/wheat, /obj/item/seeds/potato, /obj/item/seeds/pumpkin, -/obj/item/food/snacks/grown/wheat, -/obj/item/food/snacks/grown/watermelon, -/obj/item/food/snacks/grown/grapes, -/obj/item/food/snacks/grown/tomato, +/obj/item/food/grown/wheat, +/obj/item/food/grown/watermelon, +/obj/item/food/grown/grapes, +/obj/item/food/grown/tomato, /obj/effect/turf_decal/delivery/hollow, /turf/simulated/floor/plasteel, /area/station/service/hydroponics) @@ -25915,7 +25915,7 @@ dir = 9 }, /obj/structure/displaycase{ - start_showpiece_type = /obj/item/food/snacks/donut/sprinkles + start_showpiece_type = /obj/item/food/donut/sprinkles }, /turf/simulated/floor/plasteel{ icon_state = "dark" @@ -34972,6 +34972,8 @@ icon_state = "4-8" }, /obj/machinery/light/small, +/obj/effect/mapping_helpers/airlock/access/any/science/minisat, +/obj/effect/mapping_helpers/airlock/access/any/engineering/general, /turf/simulated/floor/plasteel/dark, /area/station/engineering/ai_transit_tube) "bVB" = ( @@ -50586,7 +50588,7 @@ "cOp" = ( /obj/structure/table/wood, /obj/item/flashlight/lamp/bananalamp, -/obj/item/food/snacks/pie, +/obj/item/food/pie, /obj/machinery/power/apc/directional/west, /obj/structure/cable{ d2 = 4; @@ -58070,6 +58072,11 @@ /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plating, /area/station/maintenance/port) +"drw" = ( +/obj/effect/turf_decal/delivery, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/turf/simulated/floor/plasteel, +/area/station/maintenance/port) "drz" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -61520,7 +61527,6 @@ /area/station/service/chapel) "dKl" = ( /obj/structure/table/wood, -/obj/item/food/snacks/grown/harebell, /obj/structure/noticeboard{ pixel_y = 29 }, @@ -62509,13 +62515,6 @@ }, /turf/simulated/floor/plasteel/dark, /area/station/service/chapel) -"dPL" = ( -/obj/structure/table/wood, -/obj/item/food/snacks/grown/poppy, -/obj/item/food/snacks/grown/poppy, -/obj/item/food/snacks/grown/poppy, -/turf/simulated/floor/carpet/black, -/area/station/service/chapel) "dPM" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, @@ -64647,8 +64646,6 @@ dir = 4 }, /obj/structure/table/wood, -/obj/item/food/snacks/grown/harebell, -/obj/item/food/snacks/grown/harebell, /turf/simulated/floor/carpet/black, /area/station/service/chapel) "dYU" = ( @@ -70728,6 +70725,10 @@ icon_state = "dark" }, /area/station/turret_protected/aisat) +"hzm" = ( +/obj/effect/spawner/airlock/s_to_n, +/turf/simulated/wall/r_wall, +/area/station/security/permabrig) "hzo" = ( /turf/simulated/floor/plasteel{ icon_state = "neutralfull" @@ -73228,9 +73229,7 @@ /area/station/science/toxins/mixing) "iYu" = ( /obj/effect/spawner/window/reinforced/grilled, -/obj/effect/spawner/airlock/e_to_w/engineer{ - req_access_txt = 13 - }, +/obj/effect/spawner/airlock/e_to_w, /turf/simulated/floor/plating, /area/station/maintenance/auxsolarport) "iYX" = ( @@ -74116,9 +74115,7 @@ /area/station/medical/virology) "jEE" = ( /obj/effect/spawner/window/reinforced/grilled, -/obj/effect/spawner/airlock/w_to_e/engineer{ - req_access_txt = 13 - }, +/obj/effect/spawner/airlock/w_to_e, /turf/simulated/floor/plating, /area/station/maintenance/auxsolarstarboard) "jEI" = ( @@ -75344,7 +75341,7 @@ }, /area/station/service/chapel) "knI" = ( -/obj/item/food/snacks/donut/jelly/cherryjelly, +/obj/item/food/donut/jelly/cherryjelly, /obj/structure/table/reinforced, /turf/simulated/floor/plasteel{ dir = 9; @@ -78549,6 +78546,7 @@ /obj/structure/sign/securearea{ pixel_x = 32 }, +/obj/effect/mapping_helpers/airlock/access/all/security/brig, /turf/simulated/floor/plating, /area/station/maintenance/starboard2) "mnr" = ( @@ -79410,9 +79408,7 @@ /turf/simulated/floor/plasteel, /area/station/engineering/equipmentstorage) "mPU" = ( -/obj/effect/spawner/airlock/s_to_n{ - req_access_txt = 32 - }, +/obj/effect/spawner/airlock/s_to_n, /turf/simulated/wall, /area/station/engineering/gravitygenerator) "mQc" = ( @@ -79775,12 +79771,6 @@ icon_state = "neutral" }, /area/station/maintenance/starboard) -"mVF" = ( -/obj/effect/spawner/airlock/s_to_n{ - req_access_txt = 1 - }, -/turf/simulated/wall/r_wall, -/area/station/security/permabrig) "mWe" = ( /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 4 @@ -82544,6 +82534,7 @@ icon_state = "4-8" }, /obj/effect/turf_decal/delivery, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, /turf/simulated/floor/plating, /area/station/maintenance/portsolar) "ozw" = ( @@ -86080,6 +86071,7 @@ icon_state = "4-8" }, /obj/effect/turf_decal/delivery, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, /turf/simulated/floor/plating, /area/station/maintenance/starboardsolar) "qFT" = ( @@ -87573,9 +87565,7 @@ /area/station/security/storage) "rtH" = ( /obj/effect/spawner/window/reinforced/grilled, -/obj/effect/spawner/airlock/e_to_w/engineer{ - req_access_txt = 13 - }, +/obj/effect/spawner/airlock/e_to_w, /turf/simulated/floor/plating, /area/station/maintenance/portsolar) "rtU" = ( @@ -88461,7 +88451,7 @@ /obj/structure/table/reinforced, /obj/item/folder, /obj/item/pen, -/obj/item/food/snacks/grown/apple, +/obj/item/food/grown/apple, /obj/machinery/door/window/classic/normal{ dir = 8 }, @@ -90672,6 +90662,7 @@ icon_state = "4-8" }, /obj/effect/turf_decal/delivery, +/obj/effect/mapping_helpers/airlock/access/all/engineering/construction, /turf/simulated/floor/plating, /area/station/maintenance/auxsolarport) "sVv" = ( @@ -90707,9 +90698,7 @@ }, /area/station/hallway/primary/central/north) "sWx" = ( -/obj/effect/spawner/airlock/e_to_w/engineer{ - req_access_txt = "11,13" - }, +/obj/effect/spawner/airlock/w_to_e, /turf/simulated/wall, /area/station/engineering/ai_transit_tube) "sWI" = ( @@ -91124,6 +91113,7 @@ /area/station/medical/morgue) "tls" = ( /obj/effect/turf_decal/delivery/hollow, +/obj/effect/mapping_helpers/airlock/access/all/engineering/construction, /turf/simulated/floor/plasteel, /area/station/engineering/gravitygenerator) "tlz" = ( @@ -92602,9 +92592,7 @@ /area/station/service/chapel/office) "uci" = ( /obj/effect/spawner/window/reinforced/grilled, -/obj/effect/spawner/airlock/s_to_n{ - req_access_txt = null - }, +/obj/effect/spawner/airlock/s_to_n, /turf/simulated/floor/plating, /area/station/hallway/secondary/entry/west) "ucl" = ( @@ -92653,9 +92641,7 @@ /area/station/medical/cloning) "udZ" = ( /obj/effect/spawner/window/reinforced/grilled, -/obj/effect/spawner/airlock/w_to_e/engineer{ - req_access_txt = 13 - }, +/obj/effect/spawner/airlock/w_to_e, /turf/simulated/floor/plating, /area/station/maintenance/starboardsolar) "uec" = ( @@ -94612,9 +94598,9 @@ /obj/item/seeds/lime, /obj/item/seeds/watermelon, /obj/item/seeds/grape, -/obj/item/food/snacks/grown/wheat, -/obj/item/food/snacks/grown/watermelon, -/obj/item/food/snacks/grown/banana, +/obj/item/food/grown/wheat, +/obj/item/food/grown/watermelon, +/obj/item/food/grown/banana, /obj/machinery/door/window/classic/reversed{ dir = 8 }, @@ -94838,6 +94824,7 @@ icon_state = "4-8" }, /obj/effect/turf_decal/delivery, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, /turf/simulated/floor/plating, /area/station/maintenance/auxsolarstarboard) "vzs" = ( @@ -97578,9 +97565,7 @@ }, /area/station/maintenance/fsmaint) "wZD" = ( -/obj/effect/spawner/airlock/e_to_w/engineer{ - req_access_txt = 13 - }, +/obj/effect/spawner/airlock/e_to_w, /turf/simulated/wall, /area/station/maintenance/port) "wZK" = ( @@ -119597,7 +119582,7 @@ cTi hkk aaa cHA -cCq +drw cHA aaa aaa @@ -136088,7 +136073,7 @@ dMW dJx mrY dRv -dPL +lKc lKc dSi dTs @@ -157311,7 +157296,7 @@ ygH ygH ygH ygH -mVF +hzm bda aTM bdf diff --git a/_maps/map_files/stations/metastation.dmm b/_maps/map_files/stations/metastation.dmm index 7f4a35c6a661..1418a5a502fa 100644 --- a/_maps/map_files/stations/metastation.dmm +++ b/_maps/map_files/stations/metastation.dmm @@ -182,7 +182,7 @@ /area/station/science/toxins/mixing) "adc" = ( /obj/structure/closet/secure_closet/clown, -/obj/item/food/snacks/pie, +/obj/item/food/pie, /turf/simulated/floor/wood, /area/station/service/clown) "adi" = ( @@ -3952,7 +3952,7 @@ /area/station/maintenance/fore) "axH" = ( /obj/structure/flora/ausbushes/lavendergrass, -/obj/item/food/snacks/grown/banana, +/obj/item/food/grown/banana, /turf/simulated/floor/grass/no_creep, /area/station/medical/virology) "axM" = ( @@ -19337,7 +19337,7 @@ /area/station/hallway/secondary/entry/lounge) "btq" = ( /obj/structure/table/wood, -/obj/item/food/snacks/chips, +/obj/item/food/chips, /turf/simulated/floor/plasteel{ icon_state = "grimy" }, @@ -32187,7 +32187,7 @@ }, /area/station/science/rnd) "clv" = ( -/obj/item/food/snacks/monkeycube, +/obj/item/food/monkeycube, /obj/structure/rack, /obj/effect/spawner/lootdrop/maintenance, /turf/simulated/floor/plating, @@ -32475,6 +32475,7 @@ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, /turf/simulated/floor/plating, /area/station/maintenance/starboardsolar) "cmK" = ( @@ -33087,6 +33088,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, /turf/simulated/floor/plating, /area/station/maintenance/portsolar) "cpq" = ( @@ -33259,7 +33261,7 @@ }, /obj/structure/flora/ausbushes/sparsegrass, /obj/structure/flora/ausbushes/ywflowers, -/obj/item/food/snacks/grown/banana, +/obj/item/food/grown/banana, /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 1 }, @@ -36333,11 +36335,11 @@ dir = 1 }, /obj/structure/table/wood, -/obj/item/food/snacks/grown/poppy, -/obj/item/food/snacks/grown/poppy, -/obj/item/food/snacks/grown/poppy, -/obj/item/food/snacks/grown/poppy, -/obj/item/food/snacks/grown/poppy, +/obj/item/food/grown/poppy, +/obj/item/food/grown/poppy, +/obj/item/food/grown/poppy, +/obj/item/food/grown/poppy, +/obj/item/food/grown/poppy, /turf/simulated/floor/carpet, /area/station/service/chapel) "cCu" = ( @@ -37487,7 +37489,7 @@ dir = 4 }, /obj/structure/table/wood, -/obj/item/food/snacks/grown/harebell, +/obj/item/food/grown/harebell, /turf/simulated/floor/plasteel{ icon_state = "darkgrey" }, @@ -38267,7 +38269,7 @@ /obj/machinery/light/small{ dir = 1 }, -/obj/item/food/snacks/grown/harebell, +/obj/item/food/grown/harebell, /turf/simulated/floor/plasteel{ icon_state = "cult" }, @@ -39571,6 +39573,7 @@ /obj/structure/sign/vacuum/external{ pixel_y = 32 }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/external, /turf/simulated/floor/plating, /area/station/maintenance/apmaint) "cOG" = ( @@ -40584,11 +40587,11 @@ /area/station/maintenance/apmaint) "cSR" = ( /obj/structure/table/wood, -/obj/item/food/snacks/grown/poppy, -/obj/item/food/snacks/grown/poppy, -/obj/item/food/snacks/grown/poppy, -/obj/item/food/snacks/grown/poppy, -/obj/item/food/snacks/grown/poppy, +/obj/item/food/grown/poppy, +/obj/item/food/grown/poppy, +/obj/item/food/grown/poppy, +/obj/item/food/grown/poppy, +/obj/item/food/grown/poppy, /turf/simulated/floor/plasteel{ icon_state = "darkgrey" }, @@ -42172,6 +42175,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, /turf/simulated/floor/plating, /area/station/maintenance/asmaint) "das" = ( @@ -43838,7 +43842,7 @@ name = "Kitchen Counter Shutters" }, /obj/effect/mapping_helpers/airlock/windoor/access/all/service/kitchen, -/obj/item/food/snacks/pie, +/obj/item/food/pie, /turf/simulated/floor/plasteel{ icon_state = "cafeteria" }, @@ -45123,7 +45127,7 @@ /area/station/maintenance/starboardsolar) "dUF" = ( /obj/effect/spawner/window/reinforced/grilled, -/obj/effect/spawner/airlock/e_to_w/arrivals, +/obj/effect/spawner/airlock/e_to_w, /turf/simulated/floor/plating, /area/station/hallway/secondary/entry/north) "dUG" = ( @@ -48447,6 +48451,7 @@ /obj/structure/sign/vacuum/external{ pixel_x = 32 }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, /turf/simulated/floor/plating, /area/station/maintenance/aft2) "fpR" = ( @@ -54485,11 +54490,11 @@ /area/station/turret_protected/ai) "hLT" = ( /obj/structure/table/wood, -/obj/item/food/snacks/grown/harebell, -/obj/item/food/snacks/grown/harebell, -/obj/item/food/snacks/grown/harebell, -/obj/item/food/snacks/grown/harebell, -/obj/item/food/snacks/grown/harebell, +/obj/item/food/grown/harebell, +/obj/item/food/grown/harebell, +/obj/item/food/grown/harebell, +/obj/item/food/grown/harebell, +/obj/item/food/grown/harebell, /turf/simulated/floor/plasteel{ icon_state = "darkgrey" }, @@ -63073,15 +63078,15 @@ "lpp" = ( /obj/structure/table/reinforced, /obj/structure/window/reinforced, -/obj/item/food/snacks/muffin{ +/obj/item/food/muffin{ pixel_x = -4; pixel_y = 8 }, -/obj/item/food/snacks/carrotcakeslice{ +/obj/item/food/carrotcakeslice{ pixel_x = 8; pixel_y = -2 }, -/obj/item/food/snacks/poppypretzel{ +/obj/item/food/poppypretzel{ pixel_x = -8; pixel_y = -3 }, @@ -66916,6 +66921,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, /turf/simulated/floor/plating, /area/station/maintenance/auxsolarstarboard) "mVB" = ( @@ -75244,13 +75250,13 @@ "qvp" = ( /obj/structure/closet/crate, /obj/effect/decal/cleanable/dirt, -/obj/item/food/snacks/breadslice, -/obj/item/food/snacks/breadslice, -/obj/item/food/snacks/breadslice, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/onion, -/obj/item/food/snacks/grown/onion, +/obj/item/food/breadslice, +/obj/item/food/breadslice, +/obj/item/food/breadslice, +/obj/item/food/grown/potato, +/obj/item/food/grown/potato, +/obj/item/food/grown/onion, +/obj/item/food/grown/onion, /obj/item/storage/box/donkpockets, /obj/effect/turf_decal/tile/red, /obj/effect/turf_decal/tile/red{ @@ -77634,7 +77640,7 @@ /area/station/engineering/engine/supermatter) "rwj" = ( /obj/structure/safe/floor, -/obj/item/food/snacks/fortunecookie, +/obj/item/food/fortunecookie, /turf/simulated/floor/plating, /area/station/maintenance/fpmaint) "rwk" = ( @@ -86969,7 +86975,7 @@ /area/station/engineering/atmos) "vwA" = ( /obj/structure/table/glass, -/obj/item/food/snacks/chips{ +/obj/item/food/chips{ pixel_x = 8 }, /obj/item/reagent_containers/drinks/cans/thirteenloko{ @@ -92289,6 +92295,7 @@ /obj/structure/sign/vacuum/external{ pixel_y = 32 }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, /turf/simulated/floor/plating, /area/station/maintenance/fsmaint) "xRO" = ( diff --git a/_maps/map_files220/RandomRuins/LavaRuins/cheesus_temple.dmm b/_maps/map_files220/RandomRuins/LavaRuins/cheesus_temple.dmm index 0f700ff260b2..ecb936890f4f 100644 --- a/_maps/map_files220/RandomRuins/LavaRuins/cheesus_temple.dmm +++ b/_maps/map_files220/RandomRuins/LavaRuins/cheesus_temple.dmm @@ -95,7 +95,7 @@ /obj/effect/turf_decal/siding/yellow{ dir = 9 }, -/obj/item/food/snacks/sliceable/cheesecake, +/obj/item/food/sliceable/cheesecake, /turf/simulated/floor/wood/fancy/oak, /area/ruin/powered/cheesus) "gV" = ( @@ -227,7 +227,7 @@ /obj/effect/turf_decal/siding/yellow{ dir = 6 }, -/obj/item/food/snacks/macncheese{ +/obj/item/food/macncheese{ pixel_y = 7 }, /turf/simulated/floor/wood/fancy/oak, @@ -374,7 +374,7 @@ "Hh" = ( /obj/structure/table/wood, /obj/effect/spawner/random_spawners/dirt_maybe, -/obj/item/food/snacks/vulpix/cheese{ +/obj/item/food/vulpix/cheese{ pixel_y = 6; pixel_x = -9 }, @@ -497,7 +497,7 @@ dir = 5 }, /obj/effect/spawner/random_spawners/dirt_maybe, -/obj/item/food/snacks/sliceable/cheesewheel, +/obj/item/food/sliceable/cheesewheel, /turf/simulated/floor/wood/fancy/oak, /area/ruin/powered/cheesus) "ZK" = ( diff --git a/_maps/map_files220/RandomRuins/SpaceRuins/convoy_ambush.dmm b/_maps/map_files220/RandomRuins/SpaceRuins/convoy_ambush.dmm index 0117bc6defe7..363a7d61a31b 100644 --- a/_maps/map_files220/RandomRuins/SpaceRuins/convoy_ambush.dmm +++ b/_maps/map_files220/RandomRuins/SpaceRuins/convoy_ambush.dmm @@ -732,9 +732,9 @@ /obj/machinery/light/small/directional/east, /obj/effect/turf_decal/delivery/white, /obj/structure/closet/cardboard, -/obj/item/food/snacks/chinese/chowmein, -/obj/item/food/snacks/chinese/chowmein, -/obj/item/food/snacks/chinese/rice, +/obj/item/food/chinese/chowmein, +/obj/item/food/chinese/chowmein, +/obj/item/food/chinese/rice, /obj/item/stack/spacecash/c20, /obj/item/stack/spacecash/c10, /turf/simulated/floor/plasteel/airless{ @@ -799,8 +799,8 @@ "HA" = ( /obj/effect/turf_decal/delivery/white, /obj/structure/closet/cardboard, -/obj/item/food/snacks/chinese/rice, -/obj/item/food/snacks/chinese/chowmein, +/obj/item/food/chinese/rice, +/obj/item/food/chinese/chowmein, /obj/item/reagent_containers/pill/methamphetamine, /obj/item/reagent_containers/pill/methamphetamine, /obj/item/reagent_containers/pill/methamphetamine, @@ -1166,10 +1166,10 @@ "UE" = ( /obj/effect/turf_decal/delivery/white, /obj/structure/closet/cardboard, -/obj/item/food/snacks/chinese/rice, -/obj/item/food/snacks/chinese/chowmein, -/obj/item/food/snacks/chinese/chowmein, -/obj/item/food/snacks/chinese/rice, +/obj/item/food/chinese/rice, +/obj/item/food/chinese/chowmein, +/obj/item/food/chinese/chowmein, +/obj/item/food/chinese/rice, /obj/item/stack/spacecash/c100, /turf/simulated/floor/plasteel/airless{ icon_state = "dark" diff --git a/_maps/map_files220/RandomRuins/SpaceRuins/infected_ship.dmm b/_maps/map_files220/RandomRuins/SpaceRuins/infected_ship.dmm index 1678e302d46d..78d97748d21d 100644 --- a/_maps/map_files220/RandomRuins/SpaceRuins/infected_ship.dmm +++ b/_maps/map_files220/RandomRuins/SpaceRuins/infected_ship.dmm @@ -375,7 +375,7 @@ name = "microwave"; pixel_y = 9 }, -/obj/item/food/snacks/syndidonkpocket{ +/obj/item/food/syndidonkpocket{ pixel_x = -7 }, /turf/simulated/floor/plasteel{ @@ -832,8 +832,8 @@ /area/ruin/space/powered/requires_power_space) "sj" = ( /obj/structure/closet/crate/freezer, -/obj/item/food/snacks/meat/corgi, -/obj/item/food/snacks/meat/corgi, +/obj/item/food/meat/corgi, +/obj/item/food/meat/corgi, /obj/effect/spawner/random_spawners/dirt_often, /turf/simulated/floor/plasteel/freezer, /area/ruin/space/powered/requires_power_space) @@ -1232,7 +1232,7 @@ "Ge" = ( /obj/structure/table/wood, /obj/item/trash/plate, -/obj/item/food/snacks/syndidonkpocket{ +/obj/item/food/syndidonkpocket{ pixel_y = 14; pixel_x = 6 }, diff --git a/_maps/map_files220/RandomRuins/SpaceRuins/mechtransport_new.dmm b/_maps/map_files220/RandomRuins/SpaceRuins/mechtransport_new.dmm index 83e2d7866bd7..a8f6f7470443 100644 --- a/_maps/map_files220/RandomRuins/SpaceRuins/mechtransport_new.dmm +++ b/_maps/map_files220/RandomRuins/SpaceRuins/mechtransport_new.dmm @@ -2348,17 +2348,17 @@ "VB" = ( /obj/effect/turf_decal/delivery, /obj/structure/closet/cardboard, -/obj/item/food/snacks/baguette, -/obj/item/food/snacks/baguette, -/obj/item/food/snacks/beans, -/obj/item/food/snacks/beans, -/obj/item/food/snacks/beans, -/obj/item/food/snacks/beans, -/obj/effect/decal/cleanable/dirt, -/obj/item/food/snacks/candy/candybar, -/obj/item/food/snacks/candy/candybar, -/obj/item/food/snacks/candy/candybar, -/obj/item/food/snacks/candy/taffy, +/obj/item/food/baguette, +/obj/item/food/baguette, +/obj/item/food/beans, +/obj/item/food/beans, +/obj/item/food/beans, +/obj/item/food/beans, +/obj/effect/decal/cleanable/dirt, +/obj/item/food/candy/candybar, +/obj/item/food/candy/candybar, +/obj/item/food/candy/candybar, +/obj/item/food/candy/taffy, /turf/simulated/floor/mineral/titanium, /area/ruin/space/powered) "VF" = ( diff --git a/_maps/map_files220/RandomRuins/SpaceRuins/spacehotel.dmm b/_maps/map_files220/RandomRuins/SpaceRuins/spacehotel.dmm index 52e4491b0d92..16a961d77583 100644 --- a/_maps/map_files220/RandomRuins/SpaceRuins/spacehotel.dmm +++ b/_maps/map_files220/RandomRuins/SpaceRuins/spacehotel.dmm @@ -430,27 +430,27 @@ /obj/effect/turf_decal/delivery, /obj/structure/closet/crate/freezer, /obj/item/storage/box/monkeycubes, -/obj/item/food/snacks/grown/carrot, -/obj/item/food/snacks/grown/carrot, -/obj/item/food/snacks/grown/carrot, -/obj/item/food/snacks/grown/carrot, -/obj/item/food/snacks/grown/carrot, -/obj/item/food/snacks/grown/carrot, -/obj/item/food/snacks/grown/tomato, -/obj/item/food/snacks/grown/tomato, -/obj/item/food/snacks/grown/tomato, -/obj/item/food/snacks/grown/tomato, -/obj/item/food/snacks/grown/tomato, -/obj/item/food/snacks/grown/wheat, -/obj/item/food/snacks/grown/wheat, -/obj/item/food/snacks/grown/wheat, -/obj/item/food/snacks/grown/wheat, -/obj/item/food/snacks/grown/wheat, -/obj/item/food/snacks/grown/wheat, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/potato, +/obj/item/food/grown/carrot, +/obj/item/food/grown/carrot, +/obj/item/food/grown/carrot, +/obj/item/food/grown/carrot, +/obj/item/food/grown/carrot, +/obj/item/food/grown/carrot, +/obj/item/food/grown/tomato, +/obj/item/food/grown/tomato, +/obj/item/food/grown/tomato, +/obj/item/food/grown/tomato, +/obj/item/food/grown/tomato, +/obj/item/food/grown/wheat, +/obj/item/food/grown/wheat, +/obj/item/food/grown/wheat, +/obj/item/food/grown/wheat, +/obj/item/food/grown/wheat, +/obj/item/food/grown/wheat, +/obj/item/food/grown/potato, +/obj/item/food/grown/potato, +/obj/item/food/grown/potato, +/obj/item/food/grown/potato, /turf/simulated/floor/plating, /area/ruin/space/spacehotelv1/cargostorage) "do" = ( @@ -1603,30 +1603,30 @@ dir = 8 }, /obj/structure/closet/secure_closet/freezer/fridge, -/obj/item/food/snacks/grown/meatwheat, -/obj/item/food/snacks/grown/meatwheat, -/obj/item/food/snacks/grown/meatwheat, -/obj/item/food/snacks/grown/wheat, -/obj/item/food/snacks/grown/wheat, -/obj/item/food/snacks/grown/wheat, -/obj/item/food/snacks/grown/tomato, -/obj/item/food/snacks/grown/tomato, -/obj/item/food/snacks/grown/tomato, -/obj/item/food/snacks/grown/tomato, -/obj/item/food/snacks/grown/whitebeet, -/obj/item/food/snacks/grown/whitebeet, -/obj/item/food/snacks/grown/whitebeet, -/obj/item/food/snacks/grown/redbeet, -/obj/item/food/snacks/grown/redbeet, -/obj/item/food/snacks/grown/redbeet, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/rice, -/obj/item/food/snacks/grown/rice, -/obj/item/food/snacks/grown/rice, -/obj/item/food/snacks/grown/rice, +/obj/item/food/grown/meatwheat, +/obj/item/food/grown/meatwheat, +/obj/item/food/grown/meatwheat, +/obj/item/food/grown/wheat, +/obj/item/food/grown/wheat, +/obj/item/food/grown/wheat, +/obj/item/food/grown/tomato, +/obj/item/food/grown/tomato, +/obj/item/food/grown/tomato, +/obj/item/food/grown/tomato, +/obj/item/food/grown/whitebeet, +/obj/item/food/grown/whitebeet, +/obj/item/food/grown/whitebeet, +/obj/item/food/grown/redbeet, +/obj/item/food/grown/redbeet, +/obj/item/food/grown/redbeet, +/obj/item/food/grown/potato, +/obj/item/food/grown/potato, +/obj/item/food/grown/potato, +/obj/item/food/grown/potato, +/obj/item/food/grown/rice, +/obj/item/food/grown/rice, +/obj/item/food/grown/rice, +/obj/item/food/grown/rice, /obj/item/reagent_containers/condiment/milk, /obj/item/reagent_containers/condiment/milk, /obj/item/reagent_containers/condiment/milk, @@ -2819,7 +2819,7 @@ /area/ruin/space/spacehotelv1/reception) "uu" = ( /obj/structure/table, -/obj/item/food/snacks/meatballspaghetti, +/obj/item/food/meatballspaghetti, /obj/item/kitchen/utensil/fork, /turf/simulated/floor/plating, /area/ruin/space/spacehotelv1/forestarboardmaints) @@ -6660,31 +6660,31 @@ /area/ruin/space/spacehotelv1/engi2) "VM" = ( /obj/structure/closet/crate/freezer, -/obj/item/food/snacks/salmonmeat, -/obj/item/food/snacks/salmonmeat, -/obj/item/food/snacks/salmonmeat, -/obj/item/food/snacks/salmonmeat, -/obj/item/food/snacks/carpmeat, -/obj/item/food/snacks/carpmeat, -/obj/item/food/snacks/carpmeat, -/obj/item/food/snacks/carpmeat, -/obj/item/food/snacks/cutlet, -/obj/item/food/snacks/cutlet, -/obj/item/food/snacks/cutlet, -/obj/item/food/snacks/cutlet, -/obj/item/food/snacks/cutlet, -/obj/item/food/snacks/rawcutlet, -/obj/item/food/snacks/rawcutlet, -/obj/item/food/snacks/rawcutlet, -/obj/item/food/snacks/rawcutlet, -/obj/item/food/snacks/rawcutlet, -/obj/item/food/snacks/sausage, -/obj/item/food/snacks/sausage, -/obj/item/food/snacks/sausage, -/obj/item/food/snacks/sausage, -/obj/item/food/snacks/smokedsausage, -/obj/item/food/snacks/smokedsausage, -/obj/item/food/snacks/smokedsausage, +/obj/item/food/salmonmeat, +/obj/item/food/salmonmeat, +/obj/item/food/salmonmeat, +/obj/item/food/salmonmeat, +/obj/item/food/carpmeat, +/obj/item/food/carpmeat, +/obj/item/food/carpmeat, +/obj/item/food/carpmeat, +/obj/item/food/cutlet, +/obj/item/food/cutlet, +/obj/item/food/cutlet, +/obj/item/food/cutlet, +/obj/item/food/cutlet, +/obj/item/food/rawcutlet, +/obj/item/food/rawcutlet, +/obj/item/food/rawcutlet, +/obj/item/food/rawcutlet, +/obj/item/food/rawcutlet, +/obj/item/food/sausage, +/obj/item/food/sausage, +/obj/item/food/sausage, +/obj/item/food/sausage, +/obj/item/food/smokedsausage, +/obj/item/food/smokedsausage, +/obj/item/food/smokedsausage, /obj/item/fish/salmon, /obj/item/fish/salmon, /obj/item/fish/salmon, diff --git a/_maps/map_files220/RandomRuins/SpaceRuins/voxraiders_1.dmm b/_maps/map_files220/RandomRuins/SpaceRuins/voxraiders_1.dmm index be024cbd1225..db4ff7a72d6b 100644 --- a/_maps/map_files220/RandomRuins/SpaceRuins/voxraiders_1.dmm +++ b/_maps/map_files220/RandomRuins/SpaceRuins/voxraiders_1.dmm @@ -535,7 +535,7 @@ pixel_x = 8 }, /obj/item/toy/plushie/voxplushie, -/obj/item/food/snacks/cheesepizzaslice{ +/obj/item/food/cheesepizzaslice{ pixel_y = -2; pixel_x = -7 }, diff --git a/_maps/map_files220/RandomRuins/SpaceRuins/whiteship.dmm b/_maps/map_files220/RandomRuins/SpaceRuins/whiteship.dmm index a0185e2a7ae5..038949b91968 100644 --- a/_maps/map_files220/RandomRuins/SpaceRuins/whiteship.dmm +++ b/_maps/map_files220/RandomRuins/SpaceRuins/whiteship.dmm @@ -76,10 +76,10 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 8 }, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 4 }, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 8 }, /turf/simulated/floor/plasteel{ @@ -205,10 +205,10 @@ /area/shuttle/abandoned) "dy" = ( /obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 4 }, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 8 }, /obj/structure/barricade/wooden, @@ -251,10 +251,10 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 8 }, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 4 }, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 8 }, /mob/living/simple_animal/hostile/undead/zombie/fast, @@ -294,10 +294,10 @@ dir = 8 }, /obj/effect/decal/cleanable/blood/drip, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 4 }, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 8 }, /turf/simulated/floor/plasteel{ @@ -433,7 +433,7 @@ dir = 1 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/effect/decal/cleanable/blood/tracks, +/obj/effect/decal/cleanable/blood/tracks/mapped, /obj/effect/decal/cleanable/blood/drip, /turf/simulated/floor/plasteel{ dir = 1; @@ -526,7 +526,7 @@ dir = 1 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/effect/decal/cleanable/blood/tracks, +/obj/effect/decal/cleanable/blood/tracks/mapped, /turf/simulated/floor/plasteel{ dir = 1; icon_state = "dark" @@ -547,7 +547,7 @@ dir = 8 }, /obj/effect/decal/cleanable/blood/drip, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ pixel_y = -19 }, /turf/simulated/floor/plasteel{ @@ -618,7 +618,7 @@ /obj/structure/fans/tiny, /obj/item/tank/internals/emergency_oxygen/empty, /obj/effect/decal/cleanable/blood/drip, -/obj/effect/decal/cleanable/blood/tracks, +/obj/effect/decal/cleanable/blood/tracks/mapped, /obj/effect/decal/remains/human{ desc = "This guy seemed to have died in terrible way! Half his remains are dust."; name = "gnawed bones" @@ -686,7 +686,7 @@ desc = "This guy seemed to have died in terrible way! Half his remains are dust."; name = "gnawed bones" }, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 8 }, /obj/effect/decal/cleanable/blood, @@ -710,10 +710,10 @@ dir = 4 }, /obj/effect/decal/cleanable/blood/drip, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 4 }, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 8 }, /turf/simulated/floor/plasteel{ @@ -729,10 +729,10 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 }, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 4 }, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 8 }, /obj/item/clothing/shoes/blue, @@ -1243,7 +1243,7 @@ }, /area/shuttle/abandoned) "Ep" = ( -/obj/effect/decal/cleanable/blood/tracks, +/obj/effect/decal/cleanable/blood/tracks/mapped, /obj/machinery/door/airlock/medical/glass, /turf/simulated/floor/plasteel{ icon_state = "whitebluefull" @@ -1390,10 +1390,10 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 6 }, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 4 }, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 8 }, /turf/simulated/floor/plasteel{ @@ -1488,7 +1488,7 @@ }, /obj/item/clothing/accessory/stethoscope, /obj/item/flashlight/pen, -/obj/item/food/snacks/grown/apple{ +/obj/item/food/grown/apple{ desc = "An apple a day - keeps doctor away..."; pixel_x = 2; pixel_y = 6 @@ -1523,10 +1523,10 @@ /area/shuttle/abandoned) "Ll" = ( /obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 4 }, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 8 }, /turf/simulated/floor/plasteel, @@ -1744,7 +1744,7 @@ locked = 1; name = "External Airlock" }, -/obj/effect/decal/cleanable/blood/tracks, +/obj/effect/decal/cleanable/blood/tracks/mapped, /turf/simulated/floor/mineral/titanium, /area/shuttle/abandoned) "Qz" = ( @@ -1777,7 +1777,7 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 8 }, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 8 }, /obj/machinery/door/airlock/medical, @@ -1834,7 +1834,7 @@ name = "External Airlock" }, /obj/effect/decal/cleanable/blood/drip, -/obj/effect/decal/cleanable/blood/tracks, +/obj/effect/decal/cleanable/blood/tracks/mapped, /turf/simulated/floor/mineral/titanium, /area/shuttle/abandoned) "RU" = ( @@ -1853,7 +1853,7 @@ initialize_directions = 11 }, /obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 8 }, /turf/simulated/floor/plasteel{ @@ -1964,7 +1964,7 @@ }, /area/shuttle/abandoned) "Uy" = ( -/obj/effect/decal/cleanable/blood/tracks, +/obj/effect/decal/cleanable/blood/tracks/mapped, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "whitebluefull" @@ -1978,10 +1978,10 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 8 }, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 4 }, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 8 }, /turf/simulated/floor/plasteel{ @@ -2018,7 +2018,7 @@ dir = 8 }, /obj/item/soap, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 4 }, /turf/simulated/floor/plasteel{ diff --git a/_maps/map_files220/RandomZLevels/beach.dmm b/_maps/map_files220/RandomZLevels/beach.dmm index 5678c3ace21e..4c3a116705f9 100644 --- a/_maps/map_files220/RandomZLevels/beach.dmm +++ b/_maps/map_files220/RandomZLevels/beach.dmm @@ -1235,7 +1235,7 @@ "pm" = ( /obj/item/storage/bag/tray, /obj/effect/turf_decal/stripes/red/box, -/obj/item/food/snacks/grown/watermelon{ +/obj/item/food/grown/watermelon{ pixel_y = 2; pixel_x = 1 }, @@ -1575,16 +1575,16 @@ /area/awaymission/beach) "va" = ( /obj/structure/closet/secure_closet/freezer/fridge/open, -/obj/item/food/snacks/catfishmeat, -/obj/item/food/snacks/catfishmeat, -/obj/item/food/snacks/catfishmeat, -/obj/item/food/snacks/catfishmeat, -/obj/item/food/snacks/catfishmeat, -/obj/item/food/snacks/salmonmeat, -/obj/item/food/snacks/salmonmeat, -/obj/item/food/snacks/salmonmeat, -/obj/item/food/snacks/salmonmeat, -/obj/item/food/snacks/salmonmeat, +/obj/item/food/catfishmeat, +/obj/item/food/catfishmeat, +/obj/item/food/catfishmeat, +/obj/item/food/catfishmeat, +/obj/item/food/catfishmeat, +/obj/item/food/salmonmeat, +/obj/item/food/salmonmeat, +/obj/item/food/salmonmeat, +/obj/item/food/salmonmeat, +/obj/item/food/salmonmeat, /turf/simulated/floor/wood/fancy/cherry, /area/awaymission/beach) "vq" = ( @@ -1617,7 +1617,7 @@ pixel_x = -6; pixel_y = -5 }, -/obj/item/food/snacks/donut{ +/obj/item/food/donut{ pixel_x = 13 }, /obj/item/folder/blue{ @@ -2144,11 +2144,11 @@ /area/awaymission/beach) "Cf" = ( /obj/structure/table/wood, -/obj/item/food/snacks/grown/watermelon{ +/obj/item/food/grown/watermelon{ pixel_y = 8; pixel_x = 5 }, -/obj/item/food/snacks/grown/watermelon{ +/obj/item/food/grown/watermelon{ pixel_y = 3; pixel_x = -3 }, @@ -2499,7 +2499,7 @@ pixel_y = 10; pixel_x = 11 }, -/obj/item/food/snacks/donut/sprinkles{ +/obj/item/food/donut/sprinkles{ pixel_x = -8; pixel_y = 4 }, @@ -2869,15 +2869,15 @@ /area/awaymission/beach) "KK" = ( /obj/structure/table/wood/fancy/orange, -/obj/item/food/snacks/grown/banana{ +/obj/item/food/grown/banana{ pixel_y = 8; pixel_x = -4 }, -/obj/item/food/snacks/grown/banana{ +/obj/item/food/grown/banana{ pixel_y = 6; pixel_x = -1 }, -/obj/item/food/snacks/grown/banana{ +/obj/item/food/grown/banana{ pixel_y = 4; pixel_x = 3 }, @@ -2937,9 +2937,9 @@ /obj/item/reagent_containers/condiment/flour, /obj/item/reagent_containers/condiment/rice, /obj/item/reagent_containers/condiment/rice, -/obj/item/food/snacks/grown/banana, -/obj/item/food/snacks/grown/banana, -/obj/item/food/snacks/grown/banana, +/obj/item/food/grown/banana, +/obj/item/food/grown/banana, +/obj/item/food/grown/banana, /turf/simulated/floor/beach/away/sand_alternative, /area/awaymission/beach) "LM" = ( @@ -3871,12 +3871,12 @@ /area/awaymission/beach) "XW" = ( /obj/structure/closet/crate/freezer, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/salmonmeat, -/obj/item/food/snacks/salmonmeat, -/obj/item/food/snacks/salmonmeat, +/obj/item/food/meat, +/obj/item/food/meat, +/obj/item/food/meat, +/obj/item/food/salmonmeat, +/obj/item/food/salmonmeat, +/obj/item/food/salmonmeat, /turf/simulated/floor/beach/away/sand_alternative, /area/awaymission/beach) "Ya" = ( @@ -3949,11 +3949,11 @@ /area/awaymission/beach) "Ze" = ( /obj/structure/table/wood, -/obj/item/food/snacks/grown/watermelon{ +/obj/item/food/grown/watermelon{ pixel_y = 6; pixel_x = 6 }, -/obj/item/food/snacks/watermelonslice{ +/obj/item/food/watermelonslice{ pixel_x = -6 }, /turf/simulated/floor/beach/away/sand_alternative, diff --git a/_maps/map_files220/RandomZLevels/blackmarketpackers.dmm b/_maps/map_files220/RandomZLevels/blackmarketpackers.dmm index 1553f6efec87..805cb18ea0fc 100644 --- a/_maps/map_files220/RandomZLevels/blackmarketpackers.dmm +++ b/_maps/map_files220/RandomZLevels/blackmarketpackers.dmm @@ -267,8 +267,8 @@ /area/awaymission/BMPship/Gate) "bi" = ( /obj/structure/closet/crate/freezer, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat, +/obj/item/food/meat, +/obj/item/food/meat, /obj/effect/turf_decal/stripes/line{ dir = 1 }, @@ -423,7 +423,7 @@ icon_state = "2-8" }, /obj/item/shard, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 4 }, /turf/simulated/floor/wood/oak, @@ -555,7 +555,7 @@ /area/awaymission/BMPship/Containment) "bW" = ( /obj/machinery/gateway, -/obj/effect/decal/cleanable/blood/tracks, +/obj/effect/decal/cleanable/blood/tracks/mapped, /turf/simulated/floor/plating, /area/awaymission/BMPship/Gate) "bY" = ( @@ -684,7 +684,7 @@ /obj/structure/cable{ icon_state = "1-4" }, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 4 }, /obj/item/ammo_casing, @@ -707,10 +707,10 @@ "cu" = ( /obj/effect/turf_decal/stripes/line, /obj/structure/closet/crate/freezer, -/obj/item/food/snacks/monstermeat/bearmeat, -/obj/item/food/snacks/monstermeat/bearmeat, -/obj/item/food/snacks/monstermeat/bearmeat, -/obj/item/food/snacks/monstermeat/bearmeat, +/obj/item/food/monstermeat/bearmeat, +/obj/item/food/monstermeat/bearmeat, +/obj/item/food/monstermeat/bearmeat, +/obj/item/food/monstermeat/bearmeat, /obj/item/clothing/gloves/furgloves, /obj/item/clothing/head/furcap, /obj/item/clothing/shoes/furboots, @@ -761,7 +761,7 @@ "cB" = ( /obj/structure/alien/weeds, /obj/effect/decal/cleanable/greenglow, -/obj/item/food/snacks/monstermeat/spiderleg, +/obj/item/food/monstermeat/spiderleg, /turf/simulated/floor/plating/airless, /area/awaymission/BMPship/Fore) "cC" = ( @@ -816,7 +816,7 @@ "cH" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/light_construct/small/south, -/obj/item/food/snacks/meat, +/obj/item/food/meat, /obj/structure/spider/stickyweb, /obj/structure/spider/cocoon, /turf/simulated/floor/plating, @@ -884,7 +884,7 @@ "cR" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/light_construct/small/south, -/obj/item/food/snacks/meat, +/obj/item/food/meat, /turf/simulated/floor/engine, /area/awaymission/BMPship/Containment) "cS" = ( @@ -943,8 +943,8 @@ /area/awaymission/BMPship/Fore) "cZ" = ( /obj/structure/closet/crate/freezer, -/obj/item/food/snacks/monstermeat/lizardmeat, -/obj/item/food/snacks/monstermeat/lizardmeat, +/obj/item/food/monstermeat/lizardmeat, +/obj/item/food/monstermeat/lizardmeat, /obj/item/stack/sheet/animalhide/lizard, /obj/effect/spawner/lootdrop/lizardboots, /obj/effect/decal/cleanable/dirt, @@ -1122,8 +1122,8 @@ /area/awaymission/BMPship/Engines) "dA" = ( /obj/structure/closet/crate/freezer, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat, +/obj/item/food/meat, +/obj/item/food/meat, /turf/simulated/floor/plasteel{ icon_state = "white" }, @@ -1488,7 +1488,7 @@ "ey" = ( /obj/structure/table, /obj/item/kitchen/knife/butcher, -/obj/item/food/snacks/monstermeat/lizardmeat, +/obj/item/food/monstermeat/lizardmeat, /obj/item/trash/plate{ pixel_x = -5; pixel_y = -1; @@ -1614,7 +1614,7 @@ color = "yellow"; layer = 2.9 }, -/obj/item/food/snacks/grown/wheat, +/obj/item/food/grown/wheat, /turf/simulated/floor/grass, /area/awaymission/BMPship/Kitchen) "eR" = ( @@ -1866,7 +1866,7 @@ "fy" = ( /obj/structure/table, /obj/item/storage/box/donkpockets, -/obj/item/food/snacks/fried_vox{ +/obj/item/food/fried_vox{ pixel_x = 4; pixel_y = 12; layer = 2.9 @@ -2207,7 +2207,7 @@ /area/space) "gv" = ( /obj/structure/table, -/obj/item/food/snacks/sliceable/xenomeatbread, +/obj/item/food/sliceable/xenomeatbread, /obj/item/kitchen/knife, /turf/simulated/floor/plasteel{ icon_state = "cafeteria" @@ -2306,7 +2306,7 @@ }, /area/awaymission/BMPship/Kitchen) "gM" = ( -/obj/item/food/snacks/hugemushroomslice, +/obj/item/food/hugemushroomslice, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, /area/awaymission/BMPship/Kitchen) @@ -2510,7 +2510,7 @@ icon_state = "4-8" }, /obj/effect/decal/cleanable/greenglow, -/obj/item/food/snacks/monstermeat/spiderleg, +/obj/item/food/monstermeat/spiderleg, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/mineral/plastitanium/red, /area/awaymission/BMPship/Containment) @@ -2736,10 +2736,10 @@ /area/awaymission/BMPship/Kitchen) "it" = ( /obj/structure/closet/crate/freezer, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/hugemushroomslice, +/obj/item/food/meat, +/obj/item/food/hugemushroomslice, /obj/effect/turf_decal/stripes/line, -/obj/item/food/snacks/monstermeat/spidermeat, +/obj/item/food/monstermeat/spidermeat, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plating, /area/awaymission/BMPship/Gate) @@ -2923,7 +2923,7 @@ /turf/simulated/floor/plating, /area/awaymission/BMPship/ChemLab) "iZ" = ( -/obj/item/food/snacks/chips, +/obj/item/food/chips, /turf/simulated/floor/plating, /area/awaymission/BMPship/ChemLab) "ja" = ( @@ -2985,7 +2985,7 @@ /obj/item/kitchen/utensil/fork{ pixel_x = -2 }, -/obj/item/food/snacks/pastatomato, +/obj/item/food/pastatomato, /turf/simulated/floor/plasteel{ icon_state = "cafeteria" }, @@ -3044,9 +3044,9 @@ "jB" = ( /obj/structure/window/reinforced, /obj/structure/table, -/obj/item/food/snacks/candy/candycane, -/obj/item/food/snacks/candy/confectionery/caramel_nougat, -/obj/item/food/snacks/candy/confectionery/toffee, +/obj/item/food/candy/candycane, +/obj/item/food/candy/confectionery/caramel_nougat, +/obj/item/food/candy/confectionery/toffee, /turf/simulated/floor/plasteel{ icon_state = "barber" }, @@ -3058,7 +3058,7 @@ /area/space) "jF" = ( /obj/structure/table, -/obj/item/food/snacks/xenomeatbreadslice{ +/obj/item/food/xenomeatbreadslice{ pixel_x = -8 }, /obj/item/trash/plate{ @@ -3078,7 +3078,7 @@ "jG" = ( /obj/effect/decal/cleanable/blood/gibs/xeno, /obj/structure/alien/weeds, -/obj/item/food/snacks/meat, +/obj/item/food/meat, /obj/machinery/light_construct/small/north, /turf/simulated/floor/engine, /area/awaymission/BMPship/Containment) @@ -3304,7 +3304,7 @@ /obj/structure/closet/critter{ opened = 1 }, -/obj/item/food/snacks/meat, +/obj/item/food/meat, /turf/simulated/floor/engine, /area/awaymission/BMPship/Containment) "lL" = ( @@ -3566,7 +3566,7 @@ /turf/simulated/floor/mineral/plastitanium/red, /area/awaymission/BMPship/Containment) "oh" = ( -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 4 }, /obj/item/ammo_casing{ @@ -3596,7 +3596,7 @@ /obj/structure/cable{ icon_state = "4-8" }, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 4 }, /obj/effect/decal/cleanable/dirt, @@ -3669,19 +3669,19 @@ /turf/space, /area/space) "pc" = ( -/obj/item/food/snacks/grown/banana, -/obj/item/food/snacks/grown/banana{ +/obj/item/food/grown/banana, +/obj/item/food/grown/banana{ pixel_x = -6; pixel_y = 3 }, -/obj/item/food/snacks/grown/banana{ +/obj/item/food/grown/banana{ pixel_x = 7; pixel_y = 3 }, /turf/simulated/floor/grass, /area/awaymission/BMPship/Kitchen) "pd" = ( -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 4 }, /obj/item/ammo_casing/shotgun{ @@ -4532,7 +4532,7 @@ /area/awaymission/BMPship/CommonArea) "wG" = ( /obj/effect/decal/cleanable/greenglow, -/obj/item/food/snacks/monstermeat/spiderleg, +/obj/item/food/monstermeat/spiderleg, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/mineral/plastitanium/red, /area/awaymission/BMPship/Containment) @@ -4722,7 +4722,7 @@ /turf/simulated/wall/indestructible/whiteshuttle/nodiagonal, /area/awaymission/BMPship/Fore) "yu" = ( -/obj/item/food/snacks/meat, +/obj/item/food/meat, /obj/effect/decal/cleanable/dirt, /obj/machinery/light_construct/small/north, /mob/living/simple_animal/hostile/poison/giant_spider/hunter{ @@ -4838,7 +4838,7 @@ opened = 1 }, /obj/structure/spider/stickyweb, -/obj/item/food/snacks/meat, +/obj/item/food/meat, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/engine, /area/awaymission/BMPship/Containment) @@ -4919,7 +4919,7 @@ /obj/item/shard{ icon_state = "small" }, -/obj/item/food/snacks/meat, +/obj/item/food/meat, /turf/simulated/floor/engine, /area/awaymission/BMPship/Containment) "Aw" = ( @@ -5224,7 +5224,7 @@ /turf/simulated/floor/engine, /area/awaymission/BMPship/Containment) "Dr" = ( -/obj/item/food/snacks/meat, +/obj/item/food/meat, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/engine, /area/awaymission/BMPship/Containment) @@ -5407,7 +5407,7 @@ /turf/simulated/wall/indestructible/whiteshuttle/nodiagonal, /area/awaymission/BMPship/Kitchen) "EO" = ( -/obj/item/food/snacks/meat, +/obj/item/food/meat, /obj/effect/decal/cleanable/dirt, /obj/structure/spider/stickyweb, /turf/simulated/floor/engine, @@ -5568,7 +5568,7 @@ /area/awaymission/BMPship/Containment) "Gu" = ( /obj/item/assembly/mousetrap/armed, -/obj/item/food/snacks/breadslice{ +/obj/item/food/breadslice{ pixel_y = 3 }, /obj/effect/decal/cleanable/dirt, @@ -6399,12 +6399,12 @@ /area/awaymission/BMPship/CommonArea) "Qi" = ( /obj/effect/decal/cleanable/dirt, -/obj/item/food/snacks/meat, +/obj/item/food/meat, /turf/simulated/floor/engine, /area/awaymission/BMPship/Containment) "Qj" = ( /obj/structure/alien/weeds, -/obj/item/food/snacks/monstermeat/spiderleg, +/obj/item/food/monstermeat/spiderleg, /obj/effect/decal/cleanable/greenglow, /turf/simulated/floor/plating/airless, /area/awaymission/BMPship/Fore) @@ -6648,16 +6648,16 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/item/food/snacks/meat/corgi, -/obj/item/food/snacks/meat/corgi, -/obj/item/food/snacks/meat/corgi, -/obj/item/food/snacks/meat/corgi, -/obj/item/food/snacks/meat/corgi, +/obj/item/food/meat/corgi, +/obj/item/food/meat/corgi, +/obj/item/food/meat/corgi, +/obj/item/food/meat/corgi, +/obj/item/food/meat/corgi, /turf/simulated/floor/plating, /area/awaymission/BMPship/Gate) "Tv" = ( /mob/living/simple_animal/hostile/retaliate/poison/snake, -/obj/item/food/snacks/meat, +/obj/item/food/meat, /obj/item/shard, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/engine, @@ -6864,7 +6864,7 @@ /area/awaymission/BMPship/CommonArea) "VG" = ( /obj/effect/decal/cleanable/greenglow, -/obj/item/food/snacks/monstermeat/spiderleg, +/obj/item/food/monstermeat/spiderleg, /obj/structure/spider/stickyweb, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/mineral/plastitanium/red, @@ -7104,7 +7104,7 @@ "Yh" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/light_construct/small/south, -/obj/item/food/snacks/meat, +/obj/item/food/meat, /obj/structure/spider/stickyweb, /obj/structure/spider/cocoon, /turf/simulated/floor/engine, @@ -7201,7 +7201,7 @@ "Zg" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/cobweb2, -/obj/item/food/snacks/meat, +/obj/item/food/meat, /turf/simulated/floor/engine, /area/awaymission/BMPship/Containment) "Zj" = ( diff --git a/_maps/map_files220/RandomZLevels/blackmesa.dmm b/_maps/map_files220/RandomZLevels/blackmesa.dmm index f10e7477857b..6c13104c5b03 100644 --- a/_maps/map_files220/RandomZLevels/blackmesa.dmm +++ b/_maps/map_files220/RandomZLevels/blackmesa.dmm @@ -44,7 +44,7 @@ /turf/simulated/floor/plasteel/smooth, /area/awaymission/black_mesa/lambda_hallway) "aez" = ( -/obj/item/food/snacks/choccherrycakeslice, +/obj/item/food/choccherrycakeslice, /obj/structure/table/wood, /turf/simulated/floor/wood/fancy/cherry, /area/awaymission/black_mesa/xen/vortigaunt_village_nihilanth) @@ -1992,8 +1992,8 @@ pixel_x = 3; pixel_y = 3 }, -/obj/item/food/snacks/grown/coffee/robusta, -/obj/item/food/snacks/grown/coffee{ +/obj/item/food/grown/coffee/robusta, +/obj/item/food/grown/coffee{ pixel_x = -3; pixel_y = -3 }, @@ -2024,7 +2024,7 @@ /area/awaymission/black_mesa/xen/vortigaunt_village) "cvC" = ( /obj/structure/table/wood, -/obj/item/food/snacks/sliceable/xenomeatbread, +/obj/item/food/sliceable/xenomeatbread, /turf/simulated/floor/wood/fancy/cherry, /area/awaymission/black_mesa/xen/vortigaunt_village) "cwd" = ( @@ -2471,7 +2471,7 @@ /turf/simulated/floor/plasteel, /area/awaymission/black_mesa/black_ops_entrance) "cZn" = ( -/obj/item/food/snacks/beans, +/obj/item/food/beans, /turf/simulated/floor/plating/xen, /area/awaymission/black_mesa/xen/freeman_puzzle) "cZp" = ( @@ -2721,7 +2721,7 @@ /turf/simulated/floor/beach/away/coastline/xen, /area/awaymission/black_mesa/xen/entering_zone) "dpl" = ( -/obj/item/food/snacks/popcorn, +/obj/item/food/popcorn, /turf/simulated/floor/wood, /area/awaymission/black_mesa/employee_dorm_room) "dpo" = ( @@ -2982,12 +2982,12 @@ /area/awaymission/black_mesa/black_ops_armory) "dGp" = ( /obj/structure/table, -/obj/item/food/snacks/candy/candybar, -/obj/item/food/snacks/candy/confectionery{ +/obj/item/food/candy/candybar, +/obj/item/food/candy/confectionery{ pixel_x = 3; pixel_y = 3 }, -/obj/item/food/snacks/candy/confectionery{ +/obj/item/food/candy/confectionery{ pixel_x = 6; pixel_y = 6 }, @@ -3694,7 +3694,7 @@ /area/awaymission/black_mesa/high_security_hallway) "ewJ" = ( /obj/structure/table/wood, -/obj/item/food/snacks/xenomeatbreadslice, +/obj/item/food/xenomeatbreadslice, /turf/simulated/floor/wood/fancy/cherry, /area/awaymission/black_mesa/xen/vortigaunt_village) "ewP" = ( @@ -4273,7 +4273,7 @@ /area/awaymission/black_mesa/entrance_lobby) "fiC" = ( /obj/structure/closet/crate/wooden/wooden_crate, -/obj/item/food/snacks/meat, +/obj/item/food/meat, /turf/simulated/floor/wood/fancy/cherry, /area/awaymission/black_mesa/xen/vortigaunt_village) "fje" = ( @@ -4397,7 +4397,7 @@ /area/awaymission/black_mesa/xen/freeman_hallway) "frM" = ( /obj/structure/table, -/obj/item/food/snacks/doshik_spicy, +/obj/item/food/doshik_spicy, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel/dark, /area/awaymission/black_mesa/xen/lost_camp) @@ -5780,7 +5780,7 @@ /area/awaymission/black_mesa/xen/lost_camp) "han" = ( /obj/structure/table/wood, -/obj/item/food/snacks/monstermeat/xenomeat, +/obj/item/food/monstermeat/xenomeat, /turf/simulated/floor/wood/fancy/cherry, /area/awaymission/black_mesa/xen/vortigaunt_village) "haK" = ( @@ -6845,7 +6845,7 @@ /turf/simulated/floor/plasteel, /area/awaymission/black_mesa/entrance_lobby) "ixB" = ( -/obj/item/food/snacks/beans, +/obj/item/food/beans, /turf/simulated/floor/plating/xen, /area/awaymission/black_mesa/xen/nihilanth_computer) "iyO" = ( @@ -6923,13 +6923,13 @@ /obj/structure/window/reinforced{ dir = 8 }, -/obj/item/food/snacks/muffin, -/obj/item/food/snacks/muffin{ +/obj/item/food/muffin, +/obj/item/food/muffin{ pixel_x = 3; pixel_y = 3 }, -/obj/item/food/snacks/poppypretzel, -/obj/item/food/snacks/plum_pie, +/obj/item/food/poppypretzel, +/obj/item/food/plum_pie, /turf/simulated/floor/plasteel/dark{ icon_state = "dark" }, @@ -7495,7 +7495,7 @@ /area/awaymission/black_mesa/xen/acid_lake_building) "jka" = ( /obj/structure/closet/crate/wooden/wooden_crate, -/obj/item/food/snacks/doshik_spicy, +/obj/item/food/doshik_spicy, /turf/simulated/floor/plasteel/smooth, /area/awaymission/black_mesa/deep_sci_storage) "jkk" = ( @@ -8878,10 +8878,10 @@ /obj/item/reagent_containers/drinks/chicken_soup, /obj/item/reagent_containers/drinks/chicken_soup, /obj/item/reagent_containers/drinks/chicken_soup, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat, +/obj/item/food/meat, +/obj/item/food/meat, +/obj/item/food/meat, +/obj/item/food/meat, /obj/effect/turf_decal/stripes/line{ dir = 10 }, @@ -9748,7 +9748,7 @@ /area/awaymission/black_mesa/science_labs) "lTy" = ( /obj/structure/table, -/obj/item/food/snacks/doshik, +/obj/item/food/doshik, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel/dark, /area/awaymission/black_mesa/xen/lost_camp) @@ -10755,7 +10755,7 @@ /area/awaymission/black_mesa/xen/vortigaunt_village) "ncG" = ( /obj/structure/table, -/obj/item/food/snacks/beans, +/obj/item/food/beans, /turf/simulated/floor/plasteel/dark, /area/awaymission/black_mesa/xen/lost_camp) "ncU" = ( @@ -12195,12 +12195,12 @@ /area/awaymission/black_mesa/hecu_zone_camp) "oNw" = ( /obj/structure/table, -/obj/item/food/snacks/grown/banana, -/obj/item/food/snacks/grown/banana{ +/obj/item/food/grown/banana, +/obj/item/food/grown/banana{ pixel_x = 3; pixel_y = 3 }, -/obj/item/food/snacks/grown/banana{ +/obj/item/food/grown/banana{ pixel_x = 6; pixel_y = 6 }, @@ -12643,7 +12643,7 @@ /area/awaymission/black_mesa/entrance_large_office) "pnW" = ( /obj/structure/table/wood, -/obj/item/food/snacks/meat, +/obj/item/food/meat, /turf/simulated/floor/wood/fancy/cherry, /area/awaymission/black_mesa/xen/vortigaunt_village_nihilanth) "ppc" = ( @@ -12878,7 +12878,7 @@ pixel_y = 5; pixel_x = 5 }, -/obj/item/food/snacks/donut/sprinkles, +/obj/item/food/donut/sprinkles, /turf/simulated/floor/plasteel, /area/awaymission/black_mesa/entrance_lobby) "pDE" = ( @@ -13278,7 +13278,7 @@ /area/awaymission/black_mesa/hecu_zone_camp) "qeH" = ( /obj/structure/table, -/obj/item/food/snacks/doshik_spicy, +/obj/item/food/doshik_spicy, /turf/simulated/floor/plasteel/dark, /area/awaymission/black_mesa/xen/acid_lake_building) "qfg" = ( @@ -13926,7 +13926,7 @@ /area/awaymission/black_mesa/entrance_large_office) "qPE" = ( /obj/structure/closet/crate/wooden/wooden_crate, -/obj/item/food/snacks/doshik, +/obj/item/food/doshik, /turf/simulated/floor/plasteel/smooth, /area/awaymission/black_mesa/deep_sci_storage) "qPF" = ( @@ -14756,7 +14756,7 @@ /area/awaymission/black_mesa/hecu_zone_external_hall) "rSI" = ( /obj/structure/table, -/obj/item/food/snacks/beans, +/obj/item/food/beans, /turf/simulated/floor/plating/xen, /area/awaymission/black_mesa/xen/vortigaunt_village) "rSN" = ( @@ -15530,7 +15530,7 @@ /area/awaymission/black_mesa/entrance_lobby) "sNn" = ( /obj/structure/closet/crate/can, -/obj/item/food/snacks/donut/sprinkles, +/obj/item/food/donut/sprinkles, /turf/simulated/floor/plasteel, /area/awaymission/black_mesa/gas_emitter_chamber) "sNG" = ( @@ -16514,7 +16514,7 @@ /area/awaymission/black_mesa/entrance_lobby) "uhs" = ( /obj/structure/table, -/obj/item/food/snacks/candy/taffy, +/obj/item/food/candy/taffy, /turf/simulated/floor/plasteel, /area/awaymission/black_mesa/hecu_zone_infirmary) "uhN" = ( @@ -17512,7 +17512,7 @@ /turf/simulated/floor/plasteel/smooth, /area/awaymission/black_mesa/entrance_internal_hall) "vrW" = ( -/obj/item/food/snacks/donut/sprinkles, +/obj/item/food/donut/sprinkles, /obj/structure/table/wood, /turf/simulated/floor/wood/fancy/cherry, /area/awaymission/black_mesa/xen/vortigaunt_village_nihilanth) @@ -18228,7 +18228,7 @@ pixel_x = 8; pixel_y = 2 }, -/obj/item/food/snacks/chips, +/obj/item/food/chips, /turf/simulated/floor/plating/ironsand, /area/awaymission/black_mesa/hecu_zone_camp) "woi" = ( @@ -19438,7 +19438,7 @@ /area/awaymission/black_mesa/employee_dorm_room) "xKX" = ( /obj/structure/closet/crate/wooden/wooden_crate, -/obj/item/food/snacks/beans, +/obj/item/food/beans, /turf/simulated/floor/plasteel/smooth, /area/awaymission/black_mesa/deep_sci_storage) "xMb" = ( diff --git a/_maps/map_files220/RandomZLevels/caves.dmm b/_maps/map_files220/RandomZLevels/caves.dmm index 5ebf6244e891..78be5c500b7f 100644 --- a/_maps/map_files220/RandomZLevels/caves.dmm +++ b/_maps/map_files220/RandomZLevels/caves.dmm @@ -446,7 +446,7 @@ pixel_y = 10 }, /obj/effect/spawner/random_spawners/dirt_often, -/obj/item/food/snacks/grown/apple/poisoned, +/obj/item/food/grown/apple/poisoned, /turf/simulated/floor/wood/lavaland_air, /area/awaymission/caves) "bY" = ( @@ -1762,7 +1762,7 @@ /turf/simulated/floor/plating/lavaland_air, /area/awaymission/caves) "iy" = ( -/obj/item/food/snacks/grown/poppy{ +/obj/item/food/grown/poppy{ pixel_y = -15; pixel_x = -5 }, @@ -2154,7 +2154,7 @@ /area/awaymission/caves/build) "kC" = ( /obj/effect/decal/remains/human, -/obj/item/food/snacks/grown/harebell, +/obj/item/food/grown/harebell, /obj/item/clothing/suit/armor/riot/knight/red, /turf/simulated/floor/plating/asteroid/basalt/lava_land_surface, /area/awaymission/caves) @@ -2316,13 +2316,13 @@ /area/awaymission/caves/build/reqpower_build) "lw" = ( /obj/structure/table/wood/fancy/red, -/obj/item/food/snacks/candy/cotton/poison, -/obj/item/food/snacks/candy/jellybean/poison{ +/obj/item/food/candy/cotton/poison, +/obj/item/food/candy/jellybean/poison{ pixel_x = -5; pixel_y = 4 }, -/obj/item/food/snacks/candy/gummyworm/poison, -/obj/item/food/snacks/candy/gummybear/poison{ +/obj/item/food/candy/gummyworm/poison, +/obj/item/food/candy/gummybear/poison{ pixel_x = 5; pixel_y = 5 }, diff --git a/_maps/map_files220/RandomZLevels/gate_lizard.dmm b/_maps/map_files220/RandomZLevels/gate_lizard.dmm index 00a5f907a580..ca75be18fc61 100644 --- a/_maps/map_files220/RandomZLevels/gate_lizard.dmm +++ b/_maps/map_files220/RandomZLevels/gate_lizard.dmm @@ -981,9 +981,9 @@ /area/awaymission/jungle_planet/outside/river) "bru" = ( /obj/structure/closet/crate/wooden/barrel, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat, +/obj/item/food/meat, +/obj/item/food/meat, +/obj/item/food/meat, /turf/simulated/floor/wood/oak, /area/awaymission/jungle_planet/outside/cave) "brT" = ( @@ -1195,13 +1195,13 @@ }, /area/awaymission/jungle_planet/outside) "bBR" = ( -/obj/item/food/snacks/grown/chili, -/obj/item/food/snacks/grown/carrot, -/obj/item/food/snacks/grown/mushroom/chanterelle, -/obj/item/food/snacks/grown/mushroom/chanterelle, -/obj/item/food/snacks/grown/onion, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/potato, +/obj/item/food/grown/chili, +/obj/item/food/grown/carrot, +/obj/item/food/grown/mushroom/chanterelle, +/obj/item/food/grown/mushroom/chanterelle, +/obj/item/food/grown/onion, +/obj/item/food/grown/potato, +/obj/item/food/grown/potato, /obj/structure/closet/crate/wooden/wooden_crate, /turf/simulated/floor/wood/oak, /area/awaymission/jungle_planet/outside/cave/small) @@ -1387,7 +1387,7 @@ }, /area/awaymission/jungle_planet/inside/complex) "bNN" = ( -/obj/item/food/snacks/grown/harebell, +/obj/item/food/grown/harebell, /obj/structure/stone_tile/slab/cracked{ dir = 4 }, @@ -1588,7 +1588,7 @@ /area/awaymission/jungle_planet/outside) "ccc" = ( /obj/structure/closet/crate/wooden/barrel, -/obj/item/food/snacks/syntikebab, +/obj/item/food/syntikebab, /turf/simulated/floor/wood/oak, /area/awaymission/jungle_planet/outside/cave) "cco" = ( @@ -2574,7 +2574,7 @@ /area/awaymission/jungle_planet/outside) "dpL" = ( /obj/structure/closet, -/obj/item/food/snacks/candy/candybar, +/obj/item/food/candy/candybar, /obj/item/stack/spacecash/c10, /obj/item/flashlight/seclite, /obj/item/clothing/shoes/combat, @@ -5241,8 +5241,8 @@ /area/awaymission/jungle_planet/inside/complex) "gYH" = ( /obj/structure/stone_tile/slab/cracked, -/obj/item/food/snacks/grown/lily, -/obj/item/food/snacks/grown/moonflower, +/obj/item/food/grown/lily, +/obj/item/food/grown/moonflower, /turf/simulated/floor/engine/cult, /area/awaymission/jungle_planet/outside/cave) "gZm" = ( @@ -5693,10 +5693,10 @@ /area/awaymission/jungle_planet/outside/abandoned) "hws" = ( /obj/structure/table/wood, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat, +/obj/item/food/meat, +/obj/item/food/meat, +/obj/item/food/meat, +/obj/item/food/meat, /turf/simulated/floor/wood/oak, /area/awaymission/jungle_planet/outside/cave) "hwW" = ( @@ -5946,7 +5946,7 @@ pixel_y = -23; pixel_x = 9 }, -/obj/item/food/snacks/grown/mushroom/chanterelle, +/obj/item/food/grown/mushroom/chanterelle, /turf/simulated/floor/engine/cult, /area/awaymission/jungle_planet/outside/cave) "hPx" = ( @@ -8289,7 +8289,7 @@ /area/awaymission/jungle_planet/inside/complex) "kHh" = ( /obj/structure/table/wood, -/obj/item/food/snacks/monkeysdelight, +/obj/item/food/monkeysdelight, /turf/simulated/floor/wood/oak, /area/awaymission/jungle_planet/outside/cave) "kHP" = ( @@ -8689,12 +8689,12 @@ "lfb" = ( /obj/effect/turf_decal/delivery/white, /obj/structure/closet/cardboard, -/obj/item/food/snacks/beans, -/obj/item/food/snacks/beans, -/obj/item/food/snacks/beans, -/obj/item/food/snacks/beans, -/obj/item/food/snacks/candy/donor, -/obj/item/food/snacks/candy/donor, +/obj/item/food/beans, +/obj/item/food/beans, +/obj/item/food/beans, +/obj/item/food/beans, +/obj/item/food/candy/donor, +/obj/item/food/candy/donor, /turf/simulated/floor/plasteel, /area/awaymission/jungle_planet/inside/complex) "lfj" = ( @@ -8768,11 +8768,11 @@ pixel_y = -23; pixel_x = 9 }, -/obj/item/food/snacks/grown/mushroom/libertycap, -/obj/item/food/snacks/grown/mushroom/reishi{ +/obj/item/food/grown/mushroom/libertycap, +/obj/item/food/grown/mushroom/reishi{ pixel_x = -7 }, -/obj/item/food/snacks/grown/mushroom/amanita, +/obj/item/food/grown/mushroom/amanita, /obj/structure/stone_tile/block/cracked, /turf/simulated/floor/engine/cult, /area/awaymission/jungle_planet/outside/cave) @@ -9850,7 +9850,7 @@ /area/awaymission/jungle_planet/inside/complex) "mBN" = ( /obj/structure/table/wood, -/obj/item/food/snacks/meat, +/obj/item/food/meat, /turf/simulated/floor/plating/asteroid/ancient{ name = "ground" }, @@ -10054,8 +10054,8 @@ /area/awaymission/jungle_planet/outside/cave) "mMo" = ( /obj/structure/closet/crate/wooden/barrel, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat, +/obj/item/food/meat, +/obj/item/food/meat, /obj/effect/landmark/damageturf, /turf/simulated/floor/wood/oak, /area/awaymission/jungle_planet/outside/cave) @@ -10471,7 +10471,7 @@ /area/awaymission/jungle_planet/outside/abandoned) "njL" = ( /obj/structure/table/wood, -/obj/item/food/snacks/monkeysdelight, +/obj/item/food/monkeysdelight, /turf/simulated/floor/engine/cult, /area/awaymission/jungle_planet/outside/cave) "njP" = ( @@ -10489,7 +10489,7 @@ "nok" = ( /obj/structure/table/wood, /obj/item/reagent_containers/drinks/mushroom_bowl, -/obj/item/food/snacks/grown/mushroom/chanterelle, +/obj/item/food/grown/mushroom/chanterelle, /turf/simulated/floor/engine/cult, /area/awaymission/jungle_planet/outside/cave) "nou" = ( @@ -11139,11 +11139,11 @@ "omT" = ( /obj/effect/decal/cleanable/cobweb, /obj/structure/closet/crate/wooden/wooden_crate, -/obj/item/food/snacks/grown/cannabis, -/obj/item/food/snacks/grown/cannabis, -/obj/item/food/snacks/grown/cannabis/ultimate, -/obj/item/food/snacks/grown/cannabis/ultimate, -/obj/item/food/snacks/grown/cannabis/ultimate, +/obj/item/food/grown/cannabis, +/obj/item/food/grown/cannabis, +/obj/item/food/grown/cannabis/ultimate, +/obj/item/food/grown/cannabis/ultimate, +/obj/item/food/grown/cannabis/ultimate, /obj/effect/landmark/damageturf, /turf/simulated/floor/wood/oak, /area/awaymission/jungle_planet/outside/cave) @@ -13099,11 +13099,11 @@ /area/awaymission/jungle_planet/inside/complex) "qOH" = ( /obj/structure/table/wood, -/obj/item/food/snacks/meat{ +/obj/item/food/meat{ pixel_y = -22; pixel_x = -7 }, -/obj/item/food/snacks/monkeysdelight, +/obj/item/food/monkeysdelight, /turf/simulated/floor/engine/cult, /area/awaymission/jungle_planet/outside/cave) "qOM" = ( @@ -13246,7 +13246,7 @@ /area/awaymission/jungle_planet/inside/complex) "qVY" = ( /obj/structure/table/wood, -/obj/item/food/snacks/meat, +/obj/item/food/meat, /turf/simulated/floor/engine/cult, /area/awaymission/jungle_planet/outside/cave) "qVZ" = ( @@ -14636,8 +14636,8 @@ /area/awaymission/jungle_planet/inside/complex) "sDQ" = ( /obj/structure/stone_tile/slab/cracked, -/obj/item/food/snacks/grown/poppy, -/obj/item/food/snacks/grown/geranium, +/obj/item/food/grown/poppy, +/obj/item/food/grown/geranium, /turf/simulated/floor/engine/cult, /area/awaymission/jungle_planet/outside/cave) "sFa" = ( @@ -15008,13 +15008,13 @@ }, /area/awaymission/jungle_planet/outside/river) "tey" = ( -/obj/item/food/snacks/grown/chili, -/obj/item/food/snacks/grown/carrot, -/obj/item/food/snacks/grown/mushroom/chanterelle, -/obj/item/food/snacks/grown/mushroom/chanterelle, -/obj/item/food/snacks/grown/onion, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/potato, +/obj/item/food/grown/chili, +/obj/item/food/grown/carrot, +/obj/item/food/grown/mushroom/chanterelle, +/obj/item/food/grown/mushroom/chanterelle, +/obj/item/food/grown/onion, +/obj/item/food/grown/potato, +/obj/item/food/grown/potato, /obj/effect/decal/cleanable/cobweb2, /obj/structure/closet/crate/wooden/wooden_crate, /turf/simulated/floor/wood/oak, @@ -17086,7 +17086,7 @@ /area/awaymission/jungle_planet/outside/cave) "vCb" = ( /obj/structure/table/wood, -/obj/item/food/snacks/fried_vox{ +/obj/item/food/fried_vox{ pixel_y = 5 }, /turf/simulated/floor/wood/oak, @@ -18455,7 +18455,7 @@ /area/awaymission/jungle_planet/inside/complex) "xmJ" = ( /obj/item/reagent_containers/drinks/mushroom_bowl, -/obj/item/food/snacks/badrecipe, +/obj/item/food/badrecipe, /turf/simulated/floor/engine/cult, /area/awaymission/jungle_planet/outside/cave) "xmQ" = ( diff --git a/_maps/map_files220/RandomZLevels/spacebattle.dmm b/_maps/map_files220/RandomZLevels/spacebattle.dmm index 060e90b7f1f4..b06482e5811e 100644 --- a/_maps/map_files220/RandomZLevels/spacebattle.dmm +++ b/_maps/map_files220/RandomZLevels/spacebattle.dmm @@ -957,7 +957,6 @@ /turf/simulated/floor/mineral/plastitanium/red, /area/awaymission/space_battle/syndicate/syndicate2) "cV" = ( -/obj/machinery/cooking, /turf/simulated/floor/plasteel{ icon_state = "blueyellowfull" }, @@ -985,8 +984,8 @@ /area/awaymission/space_battle/syndicate) "da" = ( /obj/structure/closet/cardboard, -/obj/item/food/snacks/beans, -/obj/item/food/snacks/beans, +/obj/item/food/beans, +/obj/item/food/beans, /obj/machinery/light/directional/west, /turf/simulated/floor/mineral/titanium, /area/awaymission/space_battle/storage) @@ -1116,9 +1115,9 @@ /area/awaymission/space_battle/hallway1) "dz" = ( /obj/structure/closet/crate/freezer, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat, +/obj/item/food/meat, +/obj/item/food/meat, +/obj/item/food/meat, /turf/simulated/floor/plasteel/freezer, /area/awaymission/space_battle/kitchen) "dA" = ( @@ -1646,9 +1645,9 @@ /area/awaymission/space_battle) "fn" = ( /obj/structure/closet/crate/wooden/barrel, -/obj/item/food/snacks/honeycomb, -/obj/item/food/snacks/honeycomb, -/obj/item/food/snacks/honeycomb, +/obj/item/food/honeycomb, +/obj/item/food/honeycomb, +/obj/item/food/honeycomb, /turf/simulated/floor/wood/cherry, /area/awaymission/space_battle) "fo" = ( @@ -2941,9 +2940,8 @@ /obj/machinery/door/airlock{ id_tag = "t3" }, -/obj/effect/decal/cleanable/blood/tracks{ - dir = 1; - icon_state = "wheels2" +/obj/effect/decal/cleanable/blood/tracks/mapped{ + dir = 1 }, /obj/effect/mapping_helpers/airlock/locked, /turf/simulated/floor/plasteel, @@ -3539,9 +3537,8 @@ /obj/item/shard{ icon_state = "medium" }, -/obj/effect/decal/cleanable/blood/tracks{ - dir = 4; - icon_state = "xeno2" +/obj/effect/decal/cleanable/blood/tracks/mapped{ + dir = 4 }, /obj/effect/decal/cleanable/blood/drip{ icon_state = "5" @@ -3602,9 +3599,8 @@ /obj/effect/decal/cleanable/blood/drip{ icon_state = "3" }, -/obj/effect/decal/cleanable/blood/tracks{ - dir = 1; - icon_state = "paw2" +/obj/effect/decal/cleanable/blood/tracks/mapped{ + dir = 1 }, /obj/effect/landmark/awaymissions/spacebattle/mine_spawner{ id = "toilet" @@ -3632,8 +3628,8 @@ /area/awaymission/space_battle/syndicate/syndicate6) "kR" = ( /obj/structure/closet/cardboard, -/obj/item/food/snacks/beans, -/obj/item/food/snacks/beans, +/obj/item/food/beans, +/obj/item/food/beans, /turf/simulated/floor/mineral/titanium, /area/awaymission/space_battle/storage) "kS" = ( @@ -3659,7 +3655,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/decal/cleanable/blood/tracks, +/obj/effect/decal/cleanable/blood/tracks/mapped, /turf/simulated/floor/plasteel/dark, /area/awaymission/space_battle/hallway4) "kX" = ( @@ -4084,7 +4080,7 @@ /turf/simulated/floor/mineral/plastitanium/red/airless, /area/awaymission/space_battle/syndicate/syndicate2) "mq" = ( -/obj/effect/decal/cleanable/blood/tracks, +/obj/effect/decal/cleanable/blood/tracks/mapped, /obj/structure/cable{ d1 = 1; d2 = 2; @@ -4249,9 +4245,8 @@ /turf/simulated/floor/plasteel/freezer, /area/awaymission/space_battle/kitchen) "mX" = ( -/obj/effect/decal/cleanable/blood/tracks{ - dir = 4; - icon_state = "blood1" +/obj/effect/decal/cleanable/blood/tracks/mapped{ + dir = 4 }, /turf/simulated/floor/plasteel, /area/awaymission/space_battle/hallway3) @@ -4466,9 +4461,7 @@ }, /area/awaymission/space_battle/server) "nI" = ( -/obj/effect/decal/cleanable/blood/tracks{ - icon_state = "blood1" - }, +/obj/effect/decal/cleanable/blood/tracks/mapped, /turf/simulated/floor/plasteel, /area/awaymission/space_battle/hallway4) "nJ" = ( @@ -4508,7 +4501,7 @@ }, /area/awaymission/space_battle/hallway11) "nN" = ( -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 8 }, /turf/simulated/floor/plasteel, @@ -5512,7 +5505,7 @@ }, /area/awaymission/space_battle/hallway11) "rc" = ( -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 1 }, /turf/simulated/floor/plasteel, @@ -5874,7 +5867,7 @@ /turf/simulated/floor/plasteel, /area/awaymission/space_battle/hallway1) "sl" = ( -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 8 }, /turf/simulated/floor/plasteel{ @@ -6122,9 +6115,8 @@ /obj/machinery/door/airlock/security{ name = "Turret Room" }, -/obj/effect/decal/cleanable/blood/tracks{ - dir = 4; - icon_state = "blood1" +/obj/effect/decal/cleanable/blood/tracks/mapped{ + dir = 4 }, /turf/simulated/floor/plasteel, /area/awaymission/space_battle/hallway6) @@ -6312,9 +6304,9 @@ /area/awaymission/space_battle/syndicate/syndicate1) "tH" = ( /obj/structure/closet/crate/freezer, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat, +/obj/item/food/meat, +/obj/item/food/meat, +/obj/item/food/meat, /obj/machinery/light/small/directional/south, /turf/simulated/floor/plasteel/freezer, /area/awaymission/space_battle/kitchen) @@ -6668,9 +6660,8 @@ /turf/simulated/floor/mineral/plastitanium/red, /area/awaymission/space_battle/syndicate) "uM" = ( -/obj/effect/decal/cleanable/blood/tracks{ - dir = 1; - icon_state = "blood2" +/obj/effect/decal/cleanable/blood/tracks/mapped{ + dir = 1 }, /turf/simulated/floor/plasteel{ icon_state = "neutral"; @@ -7819,9 +7810,8 @@ }, /area/awaymission/space_battle/hallway10) "yv" = ( -/obj/effect/decal/cleanable/blood/tracks{ - dir = 1; - icon_state = "blood2" +/obj/effect/decal/cleanable/blood/tracks/mapped{ + dir = 1 }, /turf/simulated/floor/plasteel{ icon_state = "white" @@ -8600,7 +8590,7 @@ /turf/simulated/floor/plasteel, /area/awaymission/space_battle/engine) "AY" = ( -/obj/effect/decal/cleanable/blood/tracks, +/obj/effect/decal/cleanable/blood/tracks/mapped, /turf/simulated/floor/plasteel{ dir = 1; icon_state = "whiteblue" @@ -8670,9 +8660,8 @@ }, /area/awaymission/space_battle/hallway2) "Bg" = ( -/obj/effect/decal/cleanable/blood/tracks{ - dir = 8; - icon_state = "xeno2" +/obj/effect/decal/cleanable/blood/tracks/mapped{ + dir = 8 }, /turf/simulated/floor/plating/airless, /area/awaymission/space_battle/hallway10) @@ -9287,7 +9276,7 @@ /area/awaymission/space_battle/hallway5) "CU" = ( /obj/effect/landmark/damageturf, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 8 }, /turf/simulated/floor/plasteel, @@ -10105,9 +10094,8 @@ }, /area/awaymission/space_battle/hallway2) "Fs" = ( -/obj/effect/decal/cleanable/blood/tracks{ - dir = 4; - icon_state = "xeno2" +/obj/effect/decal/cleanable/blood/tracks/mapped{ + dir = 4 }, /turf/simulated/floor/plasteel{ icon_state = "bar" @@ -10798,7 +10786,7 @@ }, /area/awaymission/space_battle/engine) "Hq" = ( -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 4 }, /turf/simulated/floor/plasteel{ @@ -11313,7 +11301,7 @@ /turf/simulated/wall/indestructible/whiteshuttle, /area/awaymission/space_battle/engineering) "IS" = ( -/obj/effect/decal/cleanable/blood/tracks, +/obj/effect/decal/cleanable/blood/tracks/mapped, /turf/simulated/floor/plasteel, /area/awaymission/space_battle/hallway8) "IT" = ( @@ -11441,9 +11429,8 @@ /obj/effect/turf_decal/stripes/corner{ dir = 1 }, -/obj/effect/decal/cleanable/blood/tracks{ - dir = 8; - icon_state = "blood1" +/obj/effect/decal/cleanable/blood/tracks/mapped{ + dir = 8 }, /turf/simulated/floor/plasteel, /area/awaymission/space_battle/sec_storage) @@ -11604,10 +11591,6 @@ /obj/effect/decal/cleanable/glass, /turf/simulated/floor/plasteel, /area/awaymission/space_battle/sec_storage) -"JQ" = ( -/obj/effect/decal/cleanable/blood/tracks, -/turf/simulated/floor/plasteel, -/area/awaymission/space_battle/hallway4) "JR" = ( /obj/machinery/light/small/directional/west, /turf/simulated/floor/plating, @@ -12352,7 +12335,7 @@ /turf/simulated/floor/plating, /area/awaymission/space_battle/turret2) "Mg" = ( -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 1 }, /turf/simulated/floor/plasteel{ @@ -14532,9 +14515,8 @@ /turf/simulated/floor/mineral/plastitanium/red, /area/awaymission/space_battle/syndicate/syndicate1) "SS" = ( -/obj/effect/decal/cleanable/blood/tracks{ - dir = 8; - icon_state = "blood1" +/obj/effect/decal/cleanable/blood/tracks/mapped{ + dir = 8 }, /turf/simulated/floor/plasteel{ icon_state = "white" @@ -14993,7 +14975,7 @@ /area/awaymission/space_battle/kitchen) "Ux" = ( /obj/structure/closet/secure_closet/freezer/meat/open, -/obj/item/food/snacks/amanitajelly, +/obj/item/food/amanitajelly, /turf/simulated/floor/plasteel/freezer, /area/awaymission/space_battle/kitchen) "Uy" = ( @@ -15061,9 +15043,7 @@ /turf/simulated/floor/mineral/titanium, /area/awaymission/space_battle/storage) "UI" = ( -/obj/effect/decal/cleanable/blood/tracks{ - icon_state = "blood1" - }, +/obj/effect/decal/cleanable/blood/tracks/mapped, /turf/simulated/floor/plasteel{ icon_state = "neutral" }, @@ -15294,7 +15274,7 @@ /obj/item/stack/rods{ amount = 15 }, -/obj/effect/decal/cleanable/blood/tracks, +/obj/effect/decal/cleanable/blood/tracks/mapped, /turf/simulated/floor/plasteel, /area/awaymission/space_battle/hallway4) "Vo" = ( @@ -15802,7 +15782,7 @@ /obj/structure/table/reinforced, /obj/item/kitchen/rollingpin, /obj/item/kitchen/knife, -/obj/item/food/snacks/carpmeat, +/obj/item/food/carpmeat, /turf/simulated/floor/plasteel{ icon_state = "blueyellowfull" }, @@ -15859,9 +15839,7 @@ /turf/simulated/floor/plasteel, /area/awaymission/space_battle/hallway9) "Xf" = ( -/obj/effect/decal/cleanable/blood/tracks{ - icon_state = "xeno2" - }, +/obj/effect/decal/cleanable/blood/tracks/mapped, /obj/effect/decal/cleanable/blood/drip{ icon_state = "3" }, @@ -15945,7 +15923,7 @@ }, /area/awaymission/space_battle/syndicate/syndicate1) "Xr" = ( -/obj/effect/decal/cleanable/blood/tracks, +/obj/effect/decal/cleanable/blood/tracks/mapped, /turf/simulated/floor/plasteel{ icon_state = "neutral"; dir = 1 @@ -16132,7 +16110,7 @@ /area/awaymission/space_battle/sec_storage) "XQ" = ( /obj/machinery/door/airlock, -/obj/effect/decal/cleanable/blood/tracks, +/obj/effect/decal/cleanable/blood/tracks/mapped, /turf/simulated/floor/plasteel, /area/awaymission/space_battle/hallway3) "XR" = ( @@ -16645,7 +16623,7 @@ d2 = 8; icon_state = "4-8" }, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 8 }, /turf/simulated/floor/plasteel{ @@ -56065,7 +56043,7 @@ VC cf nK Vn -JQ +nI nI kW rh diff --git a/_maps/map_files220/RandomZLevels/wildwest.dmm b/_maps/map_files220/RandomZLevels/wildwest.dmm index ec05f3bcfde0..cd8a9700a2f2 100644 --- a/_maps/map_files220/RandomZLevels/wildwest.dmm +++ b/_maps/map_files220/RandomZLevels/wildwest.dmm @@ -48,7 +48,7 @@ "ap" = ( /obj/effect/mine/dnascramble, /obj/item/stack/sheet/mineral/sandstone, -/obj/effect/decal/cleanable/blood/tracks, +/obj/effect/decal/cleanable/blood/tracks/mapped, /turf/simulated/floor/wood/oak, /area/awaymission/wildwest/wildwest_mines) "ar" = ( @@ -138,7 +138,7 @@ /area/awaymission/wildwest/wildwest_refine) "bd" = ( /obj/structure/table/holotable/wood, -/obj/item/food/snacks/mint, +/obj/item/food/mint, /obj/item/kitchen/utensil/fork, /turf/simulated/floor/wood/oak, /area/awaymission/wildwest/wildwest_mines) @@ -1974,7 +1974,7 @@ /turf/simulated/floor/wood/oak, /area/awaymission/wildwest/wildwest_mines) "sq" = ( -/obj/effect/decal/cleanable/blood/tracks, +/obj/effect/decal/cleanable/blood/tracks/mapped, /turf/simulated/floor/wood/oak, /area/awaymission/wildwest/wildwest_mines) "sr" = ( @@ -3410,7 +3410,7 @@ /area/awaymission/wildwest/wildwest_mines) "GF" = ( /obj/structure/table, -/obj/item/food/snacks/carpmeat, +/obj/item/food/carpmeat, /obj/item/kitchen/knife, /turf/simulated/floor/wood/oak, /area/awaymission/wildwest/wildwest_mines) @@ -3482,7 +3482,7 @@ /area/awaymission/wildwest/wildwest_mines) "Hj" = ( /obj/structure/table/holotable/wood, -/obj/item/food/snacks/mint, +/obj/item/food/mint, /turf/simulated/floor/wood/oak, /area/awaymission/wildwest/wildwest_mines) "Hm" = ( @@ -4230,7 +4230,7 @@ /area/awaymission/wildwest/wildwest_mines) "Pz" = ( /obj/structure/table/holotable/wood, -/obj/item/food/snacks/mint, +/obj/item/food/mint, /obj/item/kitchen/utensil/spoon, /obj/item/kitchen/utensil/fork{ pixel_x = 6 @@ -4817,7 +4817,7 @@ /area/awaymission/wildwest/wildwest_mines) "VG" = ( /obj/structure/table/holotable/wood, -/obj/item/food/snacks/mint, +/obj/item/food/mint, /obj/item/kitchen/utensil/fork, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/wood/oak, diff --git a/_maps/map_files220/generic/Admin_Zone.dmm b/_maps/map_files220/generic/Admin_Zone.dmm index c47718b54bcd..f7ce7dd533e9 100644 --- a/_maps/map_files220/generic/Admin_Zone.dmm +++ b/_maps/map_files220/generic/Admin_Zone.dmm @@ -692,13 +692,13 @@ /area/admin) "kQ" = ( /obj/structure/table, -/obj/item/food/snacks/grown/citrus/lemon, -/obj/item/food/snacks/grown/berries, -/obj/item/food/snacks/grown/banana, -/obj/item/food/snacks/grown/cherries, -/obj/item/food/snacks/grown/citrus/orange, -/obj/item/food/snacks/grown/corn, -/obj/item/food/snacks/grown/mushroom/amanita, +/obj/item/food/grown/citrus/lemon, +/obj/item/food/grown/berries, +/obj/item/food/grown/banana, +/obj/item/food/grown/cherries, +/obj/item/food/grown/citrus/orange, +/obj/item/food/grown/corn, +/obj/item/food/grown/mushroom/amanita, /turf/simulated/floor/wood/oak, /area/admin) "kT" = ( diff --git a/_maps/map_files220/generic/Lavaland.dmm b/_maps/map_files220/generic/Lavaland.dmm index e2a2366943c0..85f818c2b312 100644 --- a/_maps/map_files220/generic/Lavaland.dmm +++ b/_maps/map_files220/generic/Lavaland.dmm @@ -952,7 +952,7 @@ /area/mine/outpost/storage) "cl" = ( /obj/structure/lattice/catwalk/mining, -/obj/item/food/snacks/fortunecookie{ +/obj/item/food/fortunecookie{ pixel_y = -5; pixel_x = -6 }, @@ -5258,7 +5258,7 @@ "oB" = ( /obj/structure/rack, /obj/item/storage/toolbox/emergency, -/obj/item/food/snacks/grown/harebell, +/obj/item/food/grown/harebell, /obj/item/radio/intercom/directional/south, /turf/simulated/floor/plating, /area/mine/outpost/maintenance/east) diff --git a/_maps/map_files220/generic/centcomm.dmm b/_maps/map_files220/generic/centcomm.dmm index 5df73cf82337..8077537d47d0 100644 --- a/_maps/map_files220/generic/centcomm.dmm +++ b/_maps/map_files220/generic/centcomm.dmm @@ -1519,25 +1519,25 @@ /area/centcom/ss220/admin2) "aUI" = ( /obj/structure/closet/secure_closet/freezer/fridge, -/obj/item/food/snacks/frozen/icecream/icecreamcone, -/obj/item/food/snacks/frozen/icecream/icecreamcone, -/obj/item/food/snacks/frozen/icecream/icecreamcone, -/obj/item/food/snacks/frozen/icecream/icecreamcone, -/obj/item/food/snacks/frozen/icecream, -/obj/item/food/snacks/frozen/icecream, -/obj/item/food/snacks/frozen/icecreamsandwich, -/obj/item/food/snacks/frozen/icecreamsandwich, -/obj/item/food/snacks/frozen/berryicecreamsandwich, -/obj/item/food/snacks/frozen/berryicecreamsandwich, -/obj/item/food/snacks/frozen/berryicecreamsandwich, -/obj/item/food/snacks/frozen/berryicecreamsandwich, -/obj/item/food/snacks/frozen/popsicle/frozenpineapple, -/obj/item/food/snacks/frozen/popsicle/frozenpineapple, -/obj/item/food/snacks/frozen/popsicle/frozenpineapple, -/obj/item/food/snacks/frozen/popsicle/orangecream, -/obj/item/food/snacks/frozen/popsicle/orangecream, -/obj/item/food/snacks/frozen/popsicle/orangecream, -/obj/item/food/snacks/frozen/popsicle/orangecream, +/obj/item/food/frozen/icecream/icecreamcone, +/obj/item/food/frozen/icecream/icecreamcone, +/obj/item/food/frozen/icecream/icecreamcone, +/obj/item/food/frozen/icecream/icecreamcone, +/obj/item/food/frozen/icecream, +/obj/item/food/frozen/icecream, +/obj/item/food/frozen/icecreamsandwich, +/obj/item/food/frozen/icecreamsandwich, +/obj/item/food/frozen/berryicecreamsandwich, +/obj/item/food/frozen/berryicecreamsandwich, +/obj/item/food/frozen/berryicecreamsandwich, +/obj/item/food/frozen/berryicecreamsandwich, +/obj/item/food/frozen/popsicle/frozenpineapple, +/obj/item/food/frozen/popsicle/frozenpineapple, +/obj/item/food/frozen/popsicle/frozenpineapple, +/obj/item/food/frozen/popsicle/orangecream, +/obj/item/food/frozen/popsicle/orangecream, +/obj/item/food/frozen/popsicle/orangecream, +/obj/item/food/frozen/popsicle/orangecream, /turf/simulated/floor/plasteel/white, /area/centcom/ss220/evac) "aVi" = ( @@ -1574,7 +1574,7 @@ /area/centcom/ss220/admin1) "aWC" = ( /obj/structure/table/wood, -/obj/item/food/snacks/grown/geranium, +/obj/item/food/grown/geranium, /turf/simulated/floor/carpet/green, /area/centcom/ss220/park) "aWI" = ( @@ -3726,20 +3726,20 @@ /area/centcom/ss220/command) "cam" = ( /obj/structure/closet/crate/freezer, -/obj/item/food/snacks/candy/cotton/blue, -/obj/item/food/snacks/candy/cotton/pink, -/obj/item/food/snacks/candy/cotton/rainbow, -/obj/item/food/snacks/candy/cotton/yellow, -/obj/item/food/snacks/candy/cotton/rainbow, -/obj/item/food/snacks/candy/cotton/rainbow, -/obj/item/food/snacks/candy/cotton/rainbow, -/obj/item/food/snacks/candy/cotton/rainbow, -/obj/item/food/snacks/candy/cotton/pink, -/obj/item/food/snacks/candy/cotton/pink, -/obj/item/food/snacks/candy/cotton/yellow, -/obj/item/food/snacks/candy/cotton/yellow, -/obj/item/food/snacks/candy/cotton/blue, -/obj/item/food/snacks/candy/cotton/blue, +/obj/item/food/candy/cotton/blue, +/obj/item/food/candy/cotton/pink, +/obj/item/food/candy/cotton/rainbow, +/obj/item/food/candy/cotton/yellow, +/obj/item/food/candy/cotton/rainbow, +/obj/item/food/candy/cotton/rainbow, +/obj/item/food/candy/cotton/rainbow, +/obj/item/food/candy/cotton/rainbow, +/obj/item/food/candy/cotton/pink, +/obj/item/food/candy/cotton/pink, +/obj/item/food/candy/cotton/yellow, +/obj/item/food/candy/cotton/yellow, +/obj/item/food/candy/cotton/blue, +/obj/item/food/candy/cotton/blue, /turf/simulated/floor/plasteel/white, /area/centcom/ss220/evac) "cas" = ( @@ -5071,7 +5071,7 @@ /area/centcom/ss220/admin1) "cRb" = ( /obj/structure/table/wood, -/obj/item/food/snacks/grown/poppy, +/obj/item/food/grown/poppy, /turf/simulated/floor/carpet/red, /area/centcom/ss220/park) "cRs" = ( @@ -6316,7 +6316,7 @@ /area/syndicate_mothership/cargo) "dzI" = ( /obj/structure/table/wood, -/obj/item/food/snacks/sliceable/chocolatecake, +/obj/item/food/sliceable/chocolatecake, /turf/simulated/floor/wood/oak, /area/syndicate_mothership/elite_squad) "dzJ" = ( @@ -6833,7 +6833,7 @@ /area/ghost_bar) "dLA" = ( /obj/structure/table/glass/reinforced/titanium, -/obj/item/food/snacks/meatbun, +/obj/item/food/meatbun, /turf/simulated/floor/mineral/plastitanium, /area/centcom/ss220/general) "dLC" = ( @@ -7174,7 +7174,7 @@ /area/centcom/ss220/admin2) "dXE" = ( /obj/structure/table/glass/reinforced/titanium, -/obj/item/food/snacks/junglesalad, +/obj/item/food/junglesalad, /turf/simulated/floor/mineral/plastitanium, /area/centcom/ss220/general) "dXK" = ( @@ -8084,24 +8084,24 @@ /area/shuttle/syndicate_elite) "eyi" = ( /obj/structure/closet/secure_closet/freezer/meat/open, -/obj/item/food/snacks/raw_bacon, -/obj/item/food/snacks/raw_bacon, -/obj/item/food/snacks/raw_bacon, -/obj/item/food/snacks/raw_bacon, -/obj/item/food/snacks/sausage, -/obj/item/food/snacks/sausage, -/obj/item/food/snacks/rawcutlet, -/obj/item/food/snacks/rawcutlet, -/obj/item/food/snacks/rawcutlet, -/obj/item/food/snacks/catfishmeat, -/obj/item/food/snacks/catfishmeat, -/obj/item/food/snacks/catfishmeat, -/obj/item/food/snacks/catfishmeat, -/obj/item/food/snacks/rawcutlet, -/obj/item/food/snacks/rawcutlet, -/obj/item/food/snacks/rawcutlet, -/obj/item/food/snacks/spaghetti, -/obj/item/food/snacks/spaghetti, +/obj/item/food/raw_bacon, +/obj/item/food/raw_bacon, +/obj/item/food/raw_bacon, +/obj/item/food/raw_bacon, +/obj/item/food/sausage, +/obj/item/food/sausage, +/obj/item/food/rawcutlet, +/obj/item/food/rawcutlet, +/obj/item/food/rawcutlet, +/obj/item/food/catfishmeat, +/obj/item/food/catfishmeat, +/obj/item/food/catfishmeat, +/obj/item/food/catfishmeat, +/obj/item/food/rawcutlet, +/obj/item/food/rawcutlet, +/obj/item/food/rawcutlet, +/obj/item/food/spaghetti, +/obj/item/food/spaghetti, /turf/simulated/floor/plasteel{ icon_state = "cafeteria" }, @@ -8625,7 +8625,7 @@ /area/syndicate_mothership) "eKK" = ( /obj/structure/table/glass/reinforced/titanium, -/obj/item/food/snacks/limecakeslice, +/obj/item/food/limecakeslice, /turf/simulated/floor/mineral/plastitanium, /area/centcom/ss220/general) "eLW" = ( @@ -9226,7 +9226,7 @@ /obj/structure/table/wood{ color = "#996633" }, -/obj/item/food/snacks/sliceable/pizza/diablo, +/obj/item/food/sliceable/pizza/diablo, /obj/machinery/computer/security/telescreen/entertainment/directional/south, /turf/simulated/floor/wood/parquet/tile, /area/centcom/ss220/admin1) @@ -9666,25 +9666,25 @@ /obj/structure/closet/secure_closet/freezer/kitchen{ req_access = null }, -/obj/item/food/snacks/grown/banana, -/obj/item/food/snacks/grown/banana, -/obj/item/food/snacks/grown/wheat, -/obj/item/food/snacks/grown/wheat, -/obj/item/food/snacks/grown/vanillapod, -/obj/item/food/snacks/grown/vanillapod, -/obj/item/food/snacks/grown/sugarcane, -/obj/item/food/snacks/grown/sugarcane, -/obj/item/food/snacks/grown/oat, -/obj/item/food/snacks/grown/oat, -/obj/item/food/snacks/grown/grapes, -/obj/item/food/snacks/grown/grapes, -/obj/item/food/snacks/grown/corn, -/obj/item/food/snacks/grown/corn, -/obj/item/food/snacks/grown/chili, -/obj/item/food/snacks/grown/chili, -/obj/item/food/snacks/grown/carrot, -/obj/item/food/snacks/grown/apple, -/obj/item/food/snacks/grown/ambrosia/vulgaris, +/obj/item/food/grown/banana, +/obj/item/food/grown/banana, +/obj/item/food/grown/wheat, +/obj/item/food/grown/wheat, +/obj/item/food/grown/vanillapod, +/obj/item/food/grown/vanillapod, +/obj/item/food/grown/sugarcane, +/obj/item/food/grown/sugarcane, +/obj/item/food/grown/oat, +/obj/item/food/grown/oat, +/obj/item/food/grown/grapes, +/obj/item/food/grown/grapes, +/obj/item/food/grown/corn, +/obj/item/food/grown/corn, +/obj/item/food/grown/chili, +/obj/item/food/grown/chili, +/obj/item/food/grown/carrot, +/obj/item/food/grown/apple, +/obj/item/food/grown/ambrosia/vulgaris, /turf/simulated/floor/plasteel{ icon_state = "cafeteria" }, @@ -10713,7 +10713,7 @@ /area/centcom/ss220/admin1) "fOj" = ( /obj/structure/table/glass, -/obj/item/food/snacks/applepie, +/obj/item/food/applepie, /turf/simulated/floor/carpet/black, /area/centcom/ss220/admin1) "fOJ" = ( @@ -10877,7 +10877,7 @@ /obj/structure/table/wood{ color = "#996633" }, -/obj/item/food/snacks/onionrings, +/obj/item/food/onionrings, /turf/simulated/floor/wood/parquet/tile, /area/centcom/ss220/admin1) "fTe" = ( @@ -11724,9 +11724,9 @@ /turf/simulated/floor/carpet/black, /area/ghost_bar) "gyx" = ( -/obj/item/food/snacks/grown/cannabis/rainbow, -/obj/item/food/snacks/grown/cannabis/rainbow, -/obj/item/food/snacks/grown/cannabis/rainbow, +/obj/item/food/grown/cannabis/rainbow, +/obj/item/food/grown/cannabis/rainbow, +/obj/item/food/grown/cannabis/rainbow, /turf/simulated/floor/wood/fancy/cherry, /area/trader_station/sol) "gyy" = ( @@ -11890,22 +11890,22 @@ /area/syndicate_mothership/infteam) "gDl" = ( /obj/structure/closet/secure_closet/freezer/fridge/open, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/whitebeet, -/obj/item/food/snacks/grown/whitebeet, -/obj/item/food/snacks/grown/tomato, -/obj/item/food/snacks/grown/tomato, -/obj/item/food/snacks/grown/rice, -/obj/item/food/snacks/grown/rice, -/obj/item/food/snacks/grown/icepepper, -/obj/item/food/snacks/grown/icepepper, -/obj/item/food/snacks/grown/citrus/lemon, -/obj/item/food/snacks/grown/citrus/lime, -/obj/item/food/snacks/grown/citrus/orange, -/obj/item/food/snacks/grown/cherries, -/obj/item/food/snacks/grown/apple, -/obj/item/food/snacks/grown/ambrosia/deus, +/obj/item/food/grown/potato, +/obj/item/food/grown/potato, +/obj/item/food/grown/whitebeet, +/obj/item/food/grown/whitebeet, +/obj/item/food/grown/tomato, +/obj/item/food/grown/tomato, +/obj/item/food/grown/rice, +/obj/item/food/grown/rice, +/obj/item/food/grown/icepepper, +/obj/item/food/grown/icepepper, +/obj/item/food/grown/citrus/lemon, +/obj/item/food/grown/citrus/lime, +/obj/item/food/grown/citrus/orange, +/obj/item/food/grown/cherries, +/obj/item/food/grown/apple, +/obj/item/food/grown/ambrosia/deus, /turf/simulated/floor/plasteel{ icon_state = "cafeteria" }, @@ -13936,7 +13936,7 @@ /area/abductor_ship) "hHu" = ( /obj/structure/table/glass, -/obj/item/food/snacks/burger/cheese{ +/obj/item/food/burger/cheese{ pixel_y = 3 }, /obj/item/kitchen/utensil/fork{ @@ -15680,7 +15680,7 @@ /area/shuttle/syndicate) "iwf" = ( /obj/structure/table/wood, -/obj/item/food/snacks/chocolatecakeslice, +/obj/item/food/chocolatecakeslice, /turf/simulated/floor/wood/oak, /area/syndicate_mothership/elite_squad) "iwk" = ( @@ -17279,7 +17279,7 @@ /area/syndicate_mothership/control) "jAn" = ( /obj/machinery/kitchen_machine/oven, -/obj/item/food/snacks/rawcookies/chocochips{ +/obj/item/food/rawcookies/chocochips{ pixel_x = -1; pixel_y = 6 }, @@ -17923,7 +17923,7 @@ /area/syndicate_mothership/elite_squad) "jRW" = ( /obj/structure/table/glass, -/obj/item/food/snacks/benedict, +/obj/item/food/benedict, /obj/structure/light_fake{ dir = 1 }, @@ -18107,10 +18107,10 @@ /area/centcom/ss220/admin1) "jZg" = ( /obj/structure/table/wood, -/obj/item/food/snacks/tofukebab, -/obj/item/food/snacks/tofukebab, -/obj/item/food/snacks/tofukebab, -/obj/item/food/snacks/tofukebab, +/obj/item/food/tofukebab, +/obj/item/food/tofukebab, +/obj/item/food/tofukebab, +/obj/item/food/tofukebab, /turf/simulated/floor/plasteel{ icon_state = "darkyellowfull" }, @@ -19276,8 +19276,8 @@ /obj/structure/table/wood{ color = "#996633" }, -/obj/item/food/snacks/sliceable/noel, -/obj/item/food/snacks/smokedsausage, +/obj/item/food/sliceable/noel, +/obj/item/food/smokedsausage, /turf/simulated/floor/plasteel/dark{ icon_state = "dark_large" }, @@ -21564,7 +21564,7 @@ /area/syndicate_mothership/elite_squad) "lMX" = ( /obj/structure/table/glass, -/obj/item/food/snacks/benedict{ +/obj/item/food/benedict{ pixel_y = 6 }, /obj/item/kitchen/utensil/fork{ @@ -23585,7 +23585,7 @@ amount = 115; desc = null }, -/obj/item/food/snacks/soup/beetsoup{ +/obj/item/food/soup/beetsoup{ desc = "Со вкусом политических убийств"; name = "Борщ"; pixel_y = 16 @@ -24002,11 +24002,11 @@ /area/shuttle/syndicate) "nkM" = ( /obj/structure/table/wood, -/obj/item/food/snacks/burger/superbite, -/obj/item/food/snacks/burger/superbite, -/obj/item/food/snacks/burger/superbite, -/obj/item/food/snacks/burger/superbite, -/obj/item/food/snacks/burger/superbite, +/obj/item/food/burger/superbite, +/obj/item/food/burger/superbite, +/obj/item/food/burger/superbite, +/obj/item/food/burger/superbite, +/obj/item/food/burger/superbite, /turf/simulated/floor/plasteel{ icon_state = "darkyellowfull" }, @@ -25717,8 +25717,8 @@ /area/ghost_bar) "olw" = ( /obj/structure/table/glass, -/obj/item/food/snacks/boiledpelmeni, -/obj/item/food/snacks/boiledpelmeni{ +/obj/item/food/boiledpelmeni, +/obj/item/food/boiledpelmeni{ pixel_y = 14 }, /obj/item/kitchen/utensil/fork{ @@ -26421,7 +26421,7 @@ /obj/structure/table/holotable/wood{ color = "#996633" }, -/obj/item/food/snacks/burger/cheese, +/obj/item/food/burger/cheese, /turf/simulated/floor/carpet/black, /area/trader_station/sol) "oGr" = ( @@ -26527,8 +26527,8 @@ /area/centcom/ss220/park) "oIC" = ( /obj/structure/table/glass, -/obj/item/food/snacks/boiledpelmeni, -/obj/item/food/snacks/boiledpelmeni{ +/obj/item/food/boiledpelmeni, +/obj/item/food/boiledpelmeni{ pixel_y = 14 }, /obj/item/kitchen/utensil/fork{ @@ -27679,7 +27679,7 @@ /area/syndicate_mothership) "prs" = ( /obj/structure/table/glass, -/obj/item/food/snacks/applecakeslice{ +/obj/item/food/applecakeslice{ pixel_y = 4 }, /obj/item/kitchen/utensil/fork{ @@ -28703,8 +28703,8 @@ /area/centcom/ss220/admin1) "pWT" = ( /obj/structure/table/glass, -/obj/item/food/snacks/boiledpelmeni, -/obj/item/food/snacks/boiledpelmeni{ +/obj/item/food/boiledpelmeni, +/obj/item/food/boiledpelmeni{ pixel_y = 14 }, /obj/item/kitchen/utensil/fork{ @@ -29655,7 +29655,7 @@ /area/shuttle/transport) "qDb" = ( /obj/structure/table/glass, -/obj/item/food/snacks/bbqribs, +/obj/item/food/bbqribs, /turf/simulated/floor/mineral/plastitanium, /area/centcom/ss220/supply) "qDc" = ( @@ -30140,7 +30140,7 @@ /area/ghost_bar) "qQI" = ( /obj/structure/table/glass, -/obj/item/food/snacks/applepie, +/obj/item/food/applepie, /turf/simulated/floor/mineral/plastitanium, /area/centcom/ss220/supply) "qRh" = ( @@ -30808,7 +30808,7 @@ /area/centcom/ss220/evac) "rjq" = ( /obj/structure/table/wood, -/obj/item/food/snacks/watermelonslice, +/obj/item/food/watermelonslice, /obj/effect/decal/syndie_logo{ icon_state = "logo11" }, @@ -32842,7 +32842,7 @@ pixel_y = 10; pixel_x = 4 }, -/obj/item/food/snacks/grown/banana{ +/obj/item/food/grown/banana{ pixel_x = -4; pixel_y = -6 }, @@ -33624,7 +33624,7 @@ /obj/structure/table/wood{ color = "#996633" }, -/obj/item/food/snacks/meatsteak, +/obj/item/food/meatsteak, /turf/simulated/floor/wood/parquet/tile, /area/centcom/ss220/admin1) "sIl" = ( @@ -33909,7 +33909,7 @@ /obj/structure/table/wood{ color = "#996633" }, -/obj/item/food/snacks/sliceable/clowncake, +/obj/item/food/sliceable/clowncake, /turf/simulated/floor/plasteel/dark{ icon_state = "dark_large" }, @@ -34614,7 +34614,7 @@ /obj/structure/table/holotable/wood{ color = "#996633" }, -/obj/item/food/snacks/sliceable/turkey, +/obj/item/food/sliceable/turkey, /turf/simulated/floor/carpet/black, /area/trader_station/sol) "thG" = ( @@ -35688,7 +35688,7 @@ /obj/structure/table/wood{ color = "#996633" }, -/obj/item/food/snacks/sliceable/birthdaycake, +/obj/item/food/sliceable/birthdaycake, /turf/simulated/floor/plasteel/dark{ icon_state = "dark_large" }, @@ -35763,7 +35763,7 @@ /obj/structure/table/wood{ color = "#996633" }, -/obj/item/food/snacks/sliceable/pizza/macpizza, +/obj/item/food/sliceable/pizza/macpizza, /obj/machinery/computer/security/telescreen/entertainment/directional/south, /turf/simulated/floor/wood/parquet/tile, /area/centcom/ss220/admin1) @@ -35833,12 +35833,12 @@ }, /obj/item/stack/cable_coil/random, /obj/item/stack/cable_coil/random, -/obj/item/food/snacks/grown/banana, -/obj/item/food/snacks/grown/banana, -/obj/item/food/snacks/grown/banana, -/obj/item/food/snacks/grown/banana, -/obj/item/food/snacks/grown/banana, -/obj/item/food/snacks/grown/banana, +/obj/item/food/grown/banana, +/obj/item/food/grown/banana, +/obj/item/food/grown/banana, +/obj/item/food/grown/banana, +/obj/item/food/grown/banana, +/obj/item/food/grown/banana, /turf/simulated/floor/wood/oak, /area/syndicate_mothership/infteam) "tSy" = ( @@ -36138,7 +36138,7 @@ /area/centcom/ss220/admin3) "uao" = ( /obj/structure/table/wood, -/obj/item/food/snacks/grown/moonflower, +/obj/item/food/grown/moonflower, /turf/simulated/floor/wood/fancy/cherry, /area/centcom/ss220/park) "uaw" = ( @@ -36603,26 +36603,26 @@ "ups" = ( /obj/structure/closet/secure_closet/freezer/fridge, /obj/effect/turf_decal/delivery/white, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat, +/obj/item/food/meat, +/obj/item/food/meat, +/obj/item/food/meat, /obj/structure/light_fake/spot{ dir = 1 }, -/obj/item/food/snacks/pelmeni, -/obj/item/food/snacks/pelmeni, -/obj/item/food/snacks/pelmeni, -/obj/item/food/snacks/pelmeni, -/obj/item/food/snacks/pelmeni, -/obj/item/food/snacks/pelmeni, -/obj/item/food/snacks/pelmeni, -/obj/item/food/snacks/pelmeni, -/obj/item/food/snacks/pelmeni, -/obj/item/food/snacks/pelmeni, -/obj/item/food/snacks/pelmeni, -/obj/item/food/snacks/pelmeni, -/obj/item/food/snacks/pelmeni, -/obj/item/food/snacks/pelmeni, +/obj/item/food/pelmeni, +/obj/item/food/pelmeni, +/obj/item/food/pelmeni, +/obj/item/food/pelmeni, +/obj/item/food/pelmeni, +/obj/item/food/pelmeni, +/obj/item/food/pelmeni, +/obj/item/food/pelmeni, +/obj/item/food/pelmeni, +/obj/item/food/pelmeni, +/obj/item/food/pelmeni, +/obj/item/food/pelmeni, +/obj/item/food/pelmeni, +/obj/item/food/pelmeni, /turf/simulated/floor/plasteel/dark{ icon_state = "darkbluefull" }, @@ -36721,31 +36721,31 @@ /obj/structure/table/wood{ color = "#996633" }, -/obj/item/food/snacks/salad/herb, +/obj/item/food/salad/herb, /turf/simulated/floor/wood/parquet/tile, /area/centcom/ss220/admin1) "usQ" = ( /obj/structure/closet/secure_closet/freezer/fridge, -/obj/item/food/snacks/grown/meatwheat, -/obj/item/food/snacks/grown/meatwheat, -/obj/item/food/snacks/grown/meatwheat, -/obj/item/food/snacks/grown/wheat, -/obj/item/food/snacks/grown/wheat, -/obj/item/food/snacks/grown/wheat, -/obj/item/food/snacks/grown/tomato, -/obj/item/food/snacks/grown/tomato, -/obj/item/food/snacks/grown/tomato, -/obj/item/food/snacks/grown/tomato, -/obj/item/food/snacks/grown/whitebeet, -/obj/item/food/snacks/grown/redbeet, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/rice, -/obj/item/food/snacks/grown/rice, -/obj/item/food/snacks/grown/rice, -/obj/item/food/snacks/grown/rice, +/obj/item/food/grown/meatwheat, +/obj/item/food/grown/meatwheat, +/obj/item/food/grown/meatwheat, +/obj/item/food/grown/wheat, +/obj/item/food/grown/wheat, +/obj/item/food/grown/wheat, +/obj/item/food/grown/tomato, +/obj/item/food/grown/tomato, +/obj/item/food/grown/tomato, +/obj/item/food/grown/tomato, +/obj/item/food/grown/whitebeet, +/obj/item/food/grown/redbeet, +/obj/item/food/grown/potato, +/obj/item/food/grown/potato, +/obj/item/food/grown/potato, +/obj/item/food/grown/potato, +/obj/item/food/grown/rice, +/obj/item/food/grown/rice, +/obj/item/food/grown/rice, +/obj/item/food/grown/rice, /obj/effect/turf_decal/delivery/white, /turf/simulated/floor/plasteel/dark{ icon_state = "darkbluefull" @@ -37852,7 +37852,7 @@ /area/centcom/ss220/park) "vdd" = ( /obj/structure/table/glass, -/obj/item/food/snacks/boiledbuckwheat{ +/obj/item/food/boiledbuckwheat{ pixel_y = 2 }, /turf/simulated/floor/carpet/black, @@ -39941,7 +39941,7 @@ /area/centcom/ss220/bar) "whc" = ( /obj/structure/table/wood, -/obj/item/food/snacks/grown/harebell, +/obj/item/food/grown/harebell, /turf/simulated/floor/carpet/royalblack, /area/centcom/ss220/park) "whl" = ( @@ -41075,7 +41075,7 @@ /area/syndicate_mothership/elite_squad) "wIW" = ( /obj/structure/table/glass, -/obj/item/food/snacks/burger/bigbite{ +/obj/item/food/burger/bigbite{ pixel_y = 8; pixel_x = 3 }, @@ -41465,7 +41465,7 @@ /area/shuttle/escape) "wTj" = ( /obj/structure/table/wood, -/obj/item/food/snacks/grown/lily, +/obj/item/food/grown/lily, /turf/simulated/floor/carpet/green, /area/centcom/ss220/park) "wTs" = ( @@ -41486,7 +41486,7 @@ /obj/structure/table/wood{ color = "#996633" }, -/obj/item/food/snacks/hotdog, +/obj/item/food/hotdog, /turf/simulated/floor/wood/parquet/tile, /area/centcom/ss220/admin1) "wVB" = ( @@ -41518,7 +41518,7 @@ /area/syndicate_mothership/infteam) "wWB" = ( /obj/structure/table/glass, -/obj/item/food/snacks/appletart{ +/obj/item/food/appletart{ pixel_y = -3 }, /obj/item/kitchen/utensil/fork{ @@ -41678,7 +41678,7 @@ /area/shuttle/syndicate) "xbg" = ( /obj/structure/table/glass, -/obj/item/food/snacks/bananacakeslice{ +/obj/item/food/bananacakeslice{ pixel_y = 4 }, /obj/item/kitchen/utensil/fork{ @@ -42343,8 +42343,8 @@ /obj/structure/table/wood{ color = "#996633" }, -/obj/item/food/snacks/sliceable/pizza/bacon, -/obj/item/food/snacks/lemoncakeslice, +/obj/item/food/sliceable/pizza/bacon, +/obj/item/food/lemoncakeslice, /turf/simulated/floor/plasteel/dark{ icon_state = "dark_large" }, @@ -42473,8 +42473,8 @@ /area/syndicate_mothership/control) "xtW" = ( /obj/structure/table/glass, -/obj/item/food/snacks/boiledpelmeni, -/obj/item/food/snacks/boiledpelmeni{ +/obj/item/food/boiledpelmeni, +/obj/item/food/boiledpelmeni{ pixel_y = 14 }, /obj/item/kitchen/utensil/fork{ @@ -42751,8 +42751,8 @@ /obj/structure/light_fake/spot{ dir = 1 }, -/obj/item/food/snacks/boiledpelmeni, -/obj/item/food/snacks/boiledpelmeni{ +/obj/item/food/boiledpelmeni, +/obj/item/food/boiledpelmeni{ pixel_y = 14 }, /obj/item/kitchen/utensil/fork{ @@ -43658,7 +43658,7 @@ /area/centcom/ss220/admin1) "ycd" = ( /obj/structure/table/glass, -/obj/item/food/snacks/benedict, +/obj/item/food/benedict, /turf/simulated/floor/mineral/plastitanium, /area/centcom/ss220/supply) "ych" = ( diff --git a/_maps/map_files220/shuttles/ferry_clown.dmm b/_maps/map_files220/shuttles/ferry_clown.dmm index d75c27374b4e..9e8014d6abbf 100644 --- a/_maps/map_files220/shuttles/ferry_clown.dmm +++ b/_maps/map_files220/shuttles/ferry_clown.dmm @@ -74,7 +74,7 @@ /area/shuttle/transport) "s" = ( /obj/structure/dresser, -/obj/item/food/snacks/grown/banana, +/obj/item/food/grown/banana, /obj/item/grenade/bananade, /turf/simulated/floor/noslip, /area/shuttle/transport) diff --git a/_maps/map_files220/stations/boxstation.dmm b/_maps/map_files220/stations/boxstation.dmm index fde88460778a..0d7cd18c0eaf 100644 --- a/_maps/map_files220/stations/boxstation.dmm +++ b/_maps/map_files220/stations/boxstation.dmm @@ -7813,7 +7813,7 @@ "aDq" = ( /obj/effect/decal/cleanable/dust, /obj/structure/table, -/obj/item/food/snacks/cheesewedge, +/obj/item/food/cheesewedge, /turf/simulated/floor/plating, /area/station/maintenance/fsmaint) "aDr" = ( @@ -10168,7 +10168,7 @@ /turf/simulated/floor/plating, /area/station/maintenance/fpmaint) "aLG" = ( -/obj/item/food/snacks/meat/slab, +/obj/item/food/meat/slab, /turf/simulated/floor/plasteel{ icon_state = "showroomfloor" }, @@ -10796,7 +10796,7 @@ /area/station/maintenance/fpmaint2) "aOo" = ( /obj/effect/decal/cleanable/dirt, -/obj/item/food/snacks/meat/slab, +/obj/item/food/meat/slab, /turf/simulated/floor/plasteel{ icon_state = "showroomfloor" }, @@ -11014,7 +11014,7 @@ "aPa" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random_spawners/blood_maybe, -/obj/item/food/snacks/meat/slab, +/obj/item/food/meat/slab, /obj/item/clothing/mask/face/fox, /turf/simulated/floor/plasteel, /area/station/maintenance/fpmaint2) @@ -13151,12 +13151,12 @@ /obj/machinery/button/windowtint/south{ id = "clown" }, -/obj/item/food/snacks/grown/banana, -/obj/item/food/snacks/grown/banana{ +/obj/item/food/grown/banana, +/obj/item/food/grown/banana{ pixel_x = -4; pixel_y = -6 }, -/obj/item/food/snacks/grown/banana{ +/obj/item/food/grown/banana{ pixel_x = 6; pixel_y = 4 }, @@ -13195,7 +13195,7 @@ pixel_x = 6; pixel_y = 12 }, -/obj/item/food/snacks/pie{ +/obj/item/food/pie{ pixel_y = 8; pixel_x = -4 }, @@ -14256,7 +14256,7 @@ /turf/simulated/floor/plating, /area/station/maintenance/fpmaint) "baa" = ( -/obj/item/food/snacks/grown/banana, +/obj/item/food/grown/banana, /turf/simulated/floor/plating, /area/station/maintenance/fpmaint) "bab" = ( @@ -14675,7 +14675,7 @@ /area/station/maintenance/fpmaint) "bbH" = ( /obj/structure/table, -/obj/item/food/snacks/baguette, +/obj/item/food/baguette, /turf/simulated/floor/plating, /area/station/maintenance/fpmaint) "bbI" = ( @@ -14696,7 +14696,7 @@ /turf/simulated/floor/plating, /area/station/maintenance/fsmaint) "bbJ" = ( -/obj/item/food/snacks/grown/banana, +/obj/item/food/grown/banana, /obj/item/storage/backpack/duffel/clown, /turf/simulated/floor/plating, /area/station/maintenance/fpmaint) @@ -15908,7 +15908,7 @@ /area/station/service/chapel) "bgj" = ( /obj/structure/table/wood, -/obj/item/food/snacks/chips, +/obj/item/food/chips, /obj/item/reagent_containers/drinks/cans/cola, /turf/simulated/floor/carpet, /area/station/hallway/secondary/entry) @@ -19955,7 +19955,7 @@ /obj/structure/table/wood, /obj/machinery/newscaster/directional/north, /obj/item/storage/fancy/donut_box, -/obj/item/food/snacks/grown/poppy, +/obj/item/food/grown/poppy, /obj/item/radio/intercom/directional/east, /turf/simulated/floor/wood/fancy, /area/station/public/sleep_female) @@ -45718,7 +45718,7 @@ /area/station/engineering/utility) "dEb" = ( /obj/effect/decal/cleanable/dirt, -/obj/item/food/snacks/meat/slab, +/obj/item/food/meat/slab, /turf/simulated/floor/plating, /area/station/maintenance/fpmaint) "dEc" = ( @@ -45772,7 +45772,7 @@ /obj/item/toy/figure/crew/mime{ pixel_x = -5 }, -/obj/item/food/snacks/baguette, +/obj/item/food/baguette, /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 1 }, @@ -48650,7 +48650,7 @@ /obj/effect/decal/cleanable/dust, /obj/item/lighter/random, /obj/item/rollingpaper, -/obj/item/food/snacks/grown/cannabis, +/obj/item/food/grown/cannabis, /obj/item/ashtray/plastic, /turf/simulated/floor/carpet/orange, /area/station/maintenance/fsmaint) @@ -51546,7 +51546,7 @@ }, /area/station/maintenance/fpmaint) "fHA" = ( -/obj/effect/decal/cleanable/blood/tracks, +/obj/effect/decal/cleanable/blood/tracks/mapped, /obj/effect/decal/cleanable/dirt, /obj/structure/curtain/black, /turf/simulated/floor/plasteel{ @@ -54716,7 +54716,7 @@ "gMa" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table, -/obj/item/food/snacks/dough{ +/obj/item/food/dough{ desc = "A piece of dough. It looks moldy and is hard as a rock. Hope you're not planning on turning this into a pizza.."; name = "old dough" }, @@ -57562,7 +57562,7 @@ pixel_y = 10; pixel_x = 4 }, -/obj/item/food/snacks/grown/banana{ +/obj/item/food/grown/banana{ pixel_x = -4; pixel_y = -6 }, @@ -59413,7 +59413,7 @@ /turf/simulated/floor/plating, /area/station/maintenance/fsmaint) "isD" = ( -/obj/effect/decal/cleanable/blood/tracks, +/obj/effect/decal/cleanable/blood/tracks/mapped, /turf/simulated/floor/plating, /area/station/maintenance/asmaint) "isE" = ( @@ -62075,8 +62075,8 @@ /area/station/maintenance/fore) "jsv" = ( /obj/effect/decal/cleanable/dirt, -/obj/item/food/snacks/disk, -/obj/item/food/snacks/disk{ +/obj/item/food/disk, +/obj/item/food/disk{ pixel_y = -6; pixel_x = 5 }, @@ -63312,7 +63312,7 @@ /area/station/engineering/atmos) "jRo" = ( /obj/effect/decal/cleanable/dust, -/obj/effect/decal/cleanable/blood/tracks, +/obj/effect/decal/cleanable/blood/tracks/mapped, /turf/simulated/floor/plating, /area/station/maintenance/fsmaint) "jRz" = ( @@ -63642,7 +63642,7 @@ d2 = 8; icon_state = "2-8" }, -/obj/item/food/snacks/tomatoslice, +/obj/item/food/tomatoslice, /obj/machinery/atmospherics/pipe/simple/hidden/cyan{ dir = 4 }, @@ -63859,7 +63859,7 @@ "kdh" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/light/small/directional/south, -/obj/item/food/snacks/grown/cannabis, +/obj/item/food/grown/cannabis, /turf/simulated/floor/carpet, /area/station/maintenance/asmaint) "kdx" = ( @@ -67901,7 +67901,7 @@ "lAc" = ( /obj/effect/landmark/burnturf, /obj/effect/decal/cleanable/blood/old, -/obj/effect/decal/cleanable/blood/tracks{ +/obj/effect/decal/cleanable/blood/tracks/mapped{ dir = 1 }, /turf/simulated/floor/plating, @@ -69753,7 +69753,7 @@ /turf/simulated/floor/plasteel, /area/station/supply/miningdock) "mdX" = ( -/obj/item/food/snacks/grown/cannabis, +/obj/item/food/grown/cannabis, /obj/effect/decal/cleanable/dirt, /obj/item/clothing/mask/cigarette/medical_marijuana, /obj/effect/landmark/damageturf, @@ -70256,7 +70256,7 @@ /area/station/maintenance/fore) "mll" = ( /obj/effect/decal/cleanable/dirt, -/obj/item/food/snacks/meat/slab, +/obj/item/food/meat/slab, /obj/machinery/atmospherics/pipe/simple/hidden/cyan{ dir = 4 }, @@ -70949,7 +70949,7 @@ /area/station/security/prisonershuttle) "mze" = ( /obj/structure/table/reinforced, -/obj/item/food/snacks/breadslice, +/obj/item/food/breadslice, /obj/item/reagent_containers/condiment/saltshaker{ pixel_x = -8; pixel_y = 11 @@ -84598,7 +84598,7 @@ "rkL" = ( /obj/effect/decal/cleanable/dirt, /obj/item/seeds/cannabis, -/obj/item/food/snacks/grown/ambrosia/vulgaris, +/obj/item/food/grown/ambrosia/vulgaris, /turf/simulated/floor/plating, /area/station/maintenance/asmaint) "rkR" = ( @@ -86121,7 +86121,7 @@ "rSe" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/autoname, -/obj/effect/decal/cleanable/blood/tracks, +/obj/effect/decal/cleanable/blood/tracks/mapped, /turf/simulated/floor/plating, /area/station/maintenance/asmaint) "rSz" = ( @@ -88294,7 +88294,7 @@ "sDr" = ( /obj/structure/rack, /obj/effect/spawner/lootdrop/maintenance, -/obj/item/food/snacks/donkpocket, +/obj/item/food/donkpocket, /turf/simulated/floor/plating, /area/station/maintenance/aft) "sDy" = ( @@ -92097,13 +92097,13 @@ /area/station/science/test_chamber) "tWD" = ( /obj/structure/closet/crate, -/obj/item/food/snacks/breadslice, -/obj/item/food/snacks/breadslice, -/obj/item/food/snacks/breadslice, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/onion, -/obj/item/food/snacks/grown/onion, +/obj/item/food/breadslice, +/obj/item/food/breadslice, +/obj/item/food/breadslice, +/obj/item/food/grown/potato, +/obj/item/food/grown/potato, +/obj/item/food/grown/onion, +/obj/item/food/grown/onion, /obj/item/storage/box/donkpockets, /obj/item/storage/fancy/egg_box, /obj/item/reagent_containers/condiment/flour, @@ -94078,7 +94078,7 @@ /area/station/security/permabrig) "uGf" = ( /obj/structure/table/reinforced, -/obj/item/food/snacks/grilledcheese{ +/obj/item/food/grilledcheese{ pixel_y = 9 }, /turf/simulated/floor/wood/oak, @@ -94648,7 +94648,7 @@ /area/station/engineering/supermatter_room) "uRK" = ( /obj/item/organ/internal/heart/vox, -/obj/item/food/snacks/fried_vox, +/obj/item/food/fried_vox, /obj/structure/table, /obj/item/scalpel, /turf/simulated/floor/plating, @@ -102428,7 +102428,7 @@ "xEb" = ( /obj/effect/decal/cleanable/dust, /obj/structure/table/wood, -/obj/item/food/snacks/muffin{ +/obj/item/food/muffin{ pixel_x = -5; pixel_y = 9 }, @@ -102590,10 +102590,10 @@ /area/station/maintenance/abandonedbar) "xHy" = ( /obj/effect/decal/cleanable/dirt, -/obj/item/food/snacks/disk{ +/obj/item/food/disk{ pixel_x = -6 }, -/obj/item/food/snacks/disk{ +/obj/item/food/disk{ pixel_y = 10; pixel_x = 8 }, @@ -102670,7 +102670,7 @@ /area/station/medical/surgery/secondary) "xII" = ( /obj/structure/table/wood, -/obj/item/food/snacks/pistachios, +/obj/item/food/pistachios, /obj/item/poster/random_contraband, /turf/simulated/floor/plating, /area/station/maintenance/asmaint) @@ -103893,7 +103893,7 @@ /obj/machinery/light/small/directional/north, /obj/effect/landmark/damageturf, /obj/structure/table, -/obj/item/food/snacks/meat/tomatomeat, +/obj/item/food/meat/tomatomeat, /obj/effect/decal/cleanable/ants, /turf/simulated/floor/plating, /area/station/maintenance/fsmaint) diff --git a/_maps/map_files220/stations/deltastation.dmm b/_maps/map_files220/stations/deltastation.dmm index 6d1a660cb02a..5852828a095c 100644 --- a/_maps/map_files220/stations/deltastation.dmm +++ b/_maps/map_files220/stations/deltastation.dmm @@ -23,7 +23,7 @@ dir = 9 }, /obj/structure/table/glass, -/obj/item/food/snacks/grown/banana{ +/obj/item/food/grown/banana{ pixel_x = 6; pixel_y = 4 }, @@ -1495,11 +1495,11 @@ "alR" = ( /obj/structure/closet/secure_closet/freezer/fridge/open, /obj/effect/decal/cleanable/dirt, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat, +/obj/item/food/meat, +/obj/item/food/meat, +/obj/item/food/meat, +/obj/item/food/meat, +/obj/item/food/meat, /obj/item/reagent_containers/condiment/soymilk, /obj/item/reagent_containers/condiment/soymilk, /obj/item/reagent_containers/condiment/soymilk, @@ -5420,7 +5420,7 @@ pixel_x = 4; pixel_y = 4 }, -/obj/item/food/snacks/baguette, +/obj/item/food/baguette, /obj/item/flashlight/lamp/green/off{ pixel_x = 8; pixel_y = -6 @@ -6918,14 +6918,14 @@ /area/station/service/theatre) "aEB" = ( /obj/structure/table/wood, -/obj/item/food/snacks/grown/banana{ +/obj/item/food/grown/banana{ pixel_y = 4; pixel_x = -6 }, -/obj/item/food/snacks/grown/banana{ +/obj/item/food/grown/banana{ pixel_x = -6 }, -/obj/item/food/snacks/grown/banana{ +/obj/item/food/grown/banana{ pixel_y = -4; pixel_x = -6 }, @@ -13798,8 +13798,8 @@ /area/station/medical/storage/secondary) "bhH" = ( /obj/structure/table/reinforced, -/obj/item/food/snacks/dough, -/obj/item/food/snacks/dough{ +/obj/item/food/dough, +/obj/item/food/dough{ pixel_x = 2; pixel_y = 2 }, @@ -15896,7 +15896,7 @@ /obj/structure/table/reinforced, /obj/item/folder, /obj/item/pen, -/obj/item/food/snacks/grown/apple, +/obj/item/food/grown/apple, /obj/machinery/door/window/classic/normal{ dir = 8; name = "Hydroponics Desk" @@ -16332,9 +16332,9 @@ /obj/item/seeds/lime, /obj/item/seeds/watermelon, /obj/item/seeds/grape, -/obj/item/food/snacks/grown/wheat, -/obj/item/food/snacks/grown/watermelon, -/obj/item/food/snacks/grown/banana, +/obj/item/food/grown/wheat, +/obj/item/food/grown/watermelon, +/obj/item/food/grown/banana, /obj/machinery/door/window/classic/reversed{ dir = 8; name = "Hydroponics Desk" @@ -31610,7 +31610,7 @@ /area/station/public/locker) "cxf" = ( /obj/structure/table/reinforced, -/obj/item/food/snacks/mint, +/obj/item/food/mint, /obj/item/reagent_containers/drinks/bottle/cream, /turf/simulated/floor/plasteel{ icon_state = "redfull" @@ -45193,7 +45193,7 @@ "dMg" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table/wood, -/obj/item/food/snacks/friedegg, +/obj/item/food/friedegg, /turf/simulated/floor/wood/oak, /area/station/maintenance/starboard) "dMh" = ( @@ -46976,8 +46976,8 @@ dir = 4 }, /obj/structure/table/wood, -/obj/item/food/snacks/grown/harebell, -/obj/item/food/snacks/grown/harebell, +/obj/item/food/grown/harebell, +/obj/item/food/grown/harebell, /obj/structure/sign/vacuum/external{ pixel_y = -32 }, @@ -50576,7 +50576,7 @@ /area/station/hallway/primary/central/east) "eJW" = ( /obj/structure/table/wood, -/obj/item/food/snacks/grown/redbeet, +/obj/item/food/grown/redbeet, /obj/item/clothing/head/ushanka, /turf/simulated/floor/plating, /area/station/maintenance/old_kitchen) @@ -51575,7 +51575,7 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/light/small/directional/north, /obj/effect/landmark/start/prisoner, -/obj/item/food/snacks/grown/pineapple{ +/obj/item/food/grown/pineapple{ name = "Старый ананас"; desc = "Довольно старый ананас. Интересно как он тут оказался и почему он так странно пахнет..." }, @@ -52960,7 +52960,7 @@ /turf/simulated/floor/wood/parquet, /area/station/service/library) "fwG" = ( -/obj/item/food/snacks/disk, +/obj/item/food/disk, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plating, /area/station/maintenance/starboard2) @@ -52983,7 +52983,7 @@ }, /area/station/engineering/break_room) "fwP" = ( -/obj/item/food/snacks/disk{ +/obj/item/food/disk{ pixel_x = -6 }, /obj/effect/decal/cleanable/dust, @@ -56296,8 +56296,8 @@ /area/station/maintenance/apmaint) "gAT" = ( /obj/effect/spawner/random_spawners/blood_maybe, -/obj/item/food/snacks/meat/human, -/obj/item/food/snacks/meat/human, +/obj/item/food/meat/human, +/obj/item/food/meat/human, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "showroomfloor" @@ -71511,14 +71511,14 @@ /area/station/maintenance/old_kitchen) "lkZ" = ( /obj/structure/closet/secure_closet/freezer/fridge, -/obj/item/food/snacks/frozen/icecream/icecreamcone, -/obj/item/food/snacks/frozen/icecream/icecreamcone, -/obj/item/food/snacks/frozen/icecream/icecreamcone, -/obj/item/food/snacks/frozen/icecream/icecreamcone, -/obj/item/food/snacks/frozen/icecream, -/obj/item/food/snacks/frozen/icecream, -/obj/item/food/snacks/frozen/icecreamsandwich, -/obj/item/food/snacks/frozen/icecreamsandwich, +/obj/item/food/frozen/icecream/icecreamcone, +/obj/item/food/frozen/icecream/icecreamcone, +/obj/item/food/frozen/icecream/icecreamcone, +/obj/item/food/frozen/icecream/icecreamcone, +/obj/item/food/frozen/icecream, +/obj/item/food/frozen/icecream, +/obj/item/food/frozen/icecreamsandwich, +/obj/item/food/frozen/icecreamsandwich, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "redyellowfull" @@ -73249,13 +73249,13 @@ /area/station/maintenance/starboard2) "lLS" = ( /obj/structure/closet/crate, -/obj/item/food/snacks/breadslice, -/obj/item/food/snacks/breadslice, -/obj/item/food/snacks/breadslice, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/onion, -/obj/item/food/snacks/grown/onion, +/obj/item/food/breadslice, +/obj/item/food/breadslice, +/obj/item/food/breadslice, +/obj/item/food/grown/potato, +/obj/item/food/grown/potato, +/obj/item/food/grown/onion, +/obj/item/food/grown/onion, /obj/item/storage/box/donkpockets, /obj/item/reagent_containers/condiment/flour, /obj/item/reagent_containers/condiment/rice, @@ -74490,8 +74490,8 @@ /area/station/maintenance/dormitory_maintenance) "mhO" = ( /obj/structure/table/wood, -/obj/item/food/snacks/grown/geranium, -/obj/item/food/snacks/grown/lily{ +/obj/item/food/grown/geranium, +/obj/item/food/grown/lily{ pixel_x = 4; pixel_y = 5 }, @@ -74716,8 +74716,8 @@ name = "Kitchen Shutters" }, /obj/machinery/door/firedoor, -/obj/item/food/snacks/burrito, -/obj/item/food/snacks/burrito{ +/obj/item/food/burrito, +/obj/item/food/burrito{ pixel_x = 5; pixel_y = 5 }, @@ -74843,10 +74843,10 @@ /obj/structure/window/reinforced{ dir = 1 }, -/obj/item/food/snacks/disk{ +/obj/item/food/disk{ pixel_x = -6 }, -/obj/item/food/snacks/disk{ +/obj/item/food/disk{ pixel_x = 9; pixel_y = 4 }, @@ -75558,8 +75558,8 @@ /area/station/service/library) "mzE" = ( /obj/structure/table/reinforced, -/obj/item/food/snacks/meat, -/obj/item/food/snacks/meat{ +/obj/item/food/meat, +/obj/item/food/meat{ pixel_x = 4 }, /obj/item/reagent_containers/condiment/saltshaker{ @@ -81825,7 +81825,7 @@ d2 = 2; icon_state = "1-2" }, -/obj/item/food/snacks/grown/redbeet, +/obj/item/food/grown/redbeet, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/wood/oak, @@ -90286,11 +90286,11 @@ /turf/simulated/floor/plating, /area/station/maintenance/fore) "qVu" = ( -/obj/item/food/snacks/disk{ +/obj/item/food/disk{ pixel_y = -6; pixel_x = 5 }, -/obj/item/food/snacks/disk{ +/obj/item/food/disk{ pixel_y = 10; pixel_x = 8 }, @@ -90405,7 +90405,7 @@ /area/station/service/hydroponics) "qXz" = ( /obj/structure/table/wood, -/obj/item/food/snacks/grown/harebell, +/obj/item/food/grown/harebell, /obj/structure/noticeboard{ pixel_y = 29 }, @@ -92925,7 +92925,7 @@ /area/station/medical/storage) "rMZ" = ( /obj/structure/table, -/obj/item/food/snacks/beans, +/obj/item/food/beans, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "neutralfull" @@ -93305,7 +93305,7 @@ dir = 5 }, /obj/structure/table/glass, -/obj/item/food/snacks/grown/banana{ +/obj/item/food/grown/banana{ pixel_x = 6; pixel_y = 4 }, @@ -95239,9 +95239,9 @@ /area/station/maintenance/starboard2) "sxB" = ( /obj/structure/table/wood, -/obj/item/food/snacks/grown/poppy, -/obj/item/food/snacks/grown/poppy, -/obj/item/food/snacks/grown/poppy, +/obj/item/food/grown/poppy, +/obj/item/food/grown/poppy, +/obj/item/food/grown/poppy, /turf/simulated/floor/carpet/black, /area/station/service/chapel) "sxU" = ( @@ -100666,7 +100666,7 @@ /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 4 }, -/obj/item/food/snacks/pie{ +/obj/item/food/pie{ pixel_y = 16 }, /turf/simulated/floor/plasteel{ @@ -103449,7 +103449,7 @@ "uYg" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dust, -/obj/item/food/snacks/meat, +/obj/item/food/meat, /obj/effect/decal/cleanable/blood/old, /turf/simulated/floor/plasteel{ icon_state = "showroomfloor" @@ -103553,7 +103553,7 @@ "vaT" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table/wood, -/obj/item/food/snacks/fries{ +/obj/item/food/fries{ pixel_y = 2 }, /turf/simulated/floor/plating, @@ -103760,7 +103760,7 @@ /area/station/legal/lawoffice) "veB" = ( /obj/structure/table/wood, -/obj/item/food/snacks/grown/geranium, +/obj/item/food/grown/geranium, /obj/item/soap/deluxe, /obj/machinery/power/apc/critical/directional/east, /obj/structure/cable{ @@ -106868,7 +106868,7 @@ "weH" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table/wood, -/obj/item/food/snacks/birthdaycakeslice, +/obj/item/food/birthdaycakeslice, /turf/simulated/floor/plating, /area/station/maintenance/fsmaint) "weO" = ( @@ -109861,9 +109861,9 @@ /area/station/medical/virology/lab) "xcg" = ( /obj/structure/closet/crate/freezer, -/obj/item/food/snacks/meat/human, -/obj/item/food/snacks/meat/human, -/obj/item/food/snacks/meat/human, +/obj/item/food/meat/human, +/obj/item/food/meat/human, +/obj/item/food/meat/human, /obj/machinery/alarm/directional/south, /turf/simulated/floor/plasteel{ dir = 10; diff --git a/_maps/map_files220/stations/metastation.dmm b/_maps/map_files220/stations/metastation.dmm index c612c1f24db3..8bbd2f7a3d75 100644 --- a/_maps/map_files220/stations/metastation.dmm +++ b/_maps/map_files220/stations/metastation.dmm @@ -228,7 +228,7 @@ /area/station/security/detective) "adc" = ( /obj/structure/closet/secure_closet/clown, -/obj/item/food/snacks/pie, +/obj/item/food/pie, /obj/machinery/newscaster/directional/south, /turf/simulated/floor/wood, /area/station/service/clown) @@ -4090,7 +4090,7 @@ /area/station/maintenance/fore) "axH" = ( /obj/structure/flora/ausbushes/lavendergrass, -/obj/item/food/snacks/grown/banana, +/obj/item/food/grown/banana, /turf/simulated/floor/grass/no_creep, /area/station/medical/virology) "axM" = ( @@ -19182,7 +19182,7 @@ /area/station/hallway/primary/port) "btq" = ( /obj/structure/table/wood, -/obj/item/food/snacks/chips, +/obj/item/food/chips, /turf/simulated/floor/plasteel{ icon_state = "grimy" }, @@ -21902,7 +21902,7 @@ /area/station/turret_protected/aisat/interior) "bAB" = ( /obj/structure/table/wood, -/obj/item/food/snacks/pie, +/obj/item/food/pie, /obj/machinery/light/small/directional/north, /obj/structure/sign/poster/random{ pixel_y = 32 @@ -26410,7 +26410,7 @@ /area/station/service/kitchen) "bQP" = ( /obj/structure/table, -/obj/item/food/snacks/mint, +/obj/item/food/mint, /obj/item/kitchen/rollingpin, /obj/item/reagent_containers/glass/beaker{ pixel_x = 5 @@ -30950,10 +30950,10 @@ }, /obj/structure/table/glass, /obj/structure/extinguisher_cabinet/directional/west, -/obj/item/food/snacks/grown/wheat, -/obj/item/food/snacks/grown/watermelon, -/obj/item/food/snacks/grown/citrus/orange, -/obj/item/food/snacks/grown/grapes, +/obj/item/food/grown/wheat, +/obj/item/food/grown/watermelon, +/obj/item/food/grown/citrus/orange, +/obj/item/food/grown/grapes, /turf/simulated/floor/plasteel{ dir = 6; icon_state = "green" @@ -31479,9 +31479,9 @@ /obj/item/seeds/potato, /obj/item/seeds/apple, /obj/item/grown/corncob, -/obj/item/food/snacks/grown/carrot, -/obj/item/food/snacks/grown/wheat, -/obj/item/food/snacks/grown/pumpkin{ +/obj/item/food/grown/carrot, +/obj/item/food/grown/wheat, +/obj/item/food/grown/pumpkin{ pixel_y = 5 }, /obj/effect/turf_decal/stripes/line{ @@ -33791,7 +33791,7 @@ }, /obj/structure/flora/ausbushes/sparsegrass, /obj/structure/flora/ausbushes/ywflowers, -/obj/item/food/snacks/grown/banana, +/obj/item/food/grown/banana, /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 1 }, @@ -37153,11 +37153,11 @@ pixel_y = 32 }, /obj/structure/table/wood, -/obj/item/food/snacks/grown/poppy, -/obj/item/food/snacks/grown/poppy, -/obj/item/food/snacks/grown/poppy, -/obj/item/food/snacks/grown/poppy, -/obj/item/food/snacks/grown/poppy, +/obj/item/food/grown/poppy, +/obj/item/food/grown/poppy, +/obj/item/food/grown/poppy, +/obj/item/food/grown/poppy, +/obj/item/food/grown/poppy, /obj/machinery/light/directional/north, /turf/simulated/floor/carpet, /area/station/service/chapel) @@ -38418,7 +38418,7 @@ dir = 4 }, /obj/structure/table/wood, -/obj/item/food/snacks/grown/harebell, +/obj/item/food/grown/harebell, /turf/simulated/floor/plasteel{ icon_state = "darkneutralfull" }, @@ -39219,7 +39219,7 @@ "cJo" = ( /obj/machinery/hydroponics/soil, /obj/machinery/light/small/directional/north, -/obj/item/food/snacks/grown/harebell, +/obj/item/food/grown/harebell, /turf/simulated/floor/plasteel{ icon_state = "cult" }, @@ -41458,11 +41458,11 @@ /area/station/maintenance/apmaint) "cSR" = ( /obj/structure/table/wood, -/obj/item/food/snacks/grown/poppy, -/obj/item/food/snacks/grown/poppy, -/obj/item/food/snacks/grown/poppy, -/obj/item/food/snacks/grown/poppy, -/obj/item/food/snacks/grown/poppy, +/obj/item/food/grown/poppy, +/obj/item/food/grown/poppy, +/obj/item/food/grown/poppy, +/obj/item/food/grown/poppy, +/obj/item/food/grown/poppy, /turf/simulated/floor/plasteel{ icon_state = "darkneutralfull" }, @@ -54307,11 +54307,11 @@ /area/station/turret_protected/ai) "hLT" = ( /obj/structure/table/wood, -/obj/item/food/snacks/grown/harebell, -/obj/item/food/snacks/grown/harebell, -/obj/item/food/snacks/grown/harebell, -/obj/item/food/snacks/grown/harebell, -/obj/item/food/snacks/grown/harebell, +/obj/item/food/grown/harebell, +/obj/item/food/grown/harebell, +/obj/item/food/grown/harebell, +/obj/item/food/grown/harebell, +/obj/item/food/grown/harebell, /turf/simulated/floor/plasteel{ icon_state = "darkneutralfull" }, @@ -57716,7 +57716,7 @@ }, /area/station/engineering/control) "jxj" = ( -/obj/item/food/snacks/monkeycube, +/obj/item/food/monkeycube, /turf/simulated/floor/grass, /area/station/maintenance/aft2) "jyP" = ( @@ -60841,7 +60841,7 @@ /area/station/maintenance/aft2) "kQv" = ( /obj/structure/grille/broken, -/obj/item/food/snacks/grown/poppy, +/obj/item/food/grown/poppy, /turf/simulated/floor/plating/airless, /area/space/nearstation) "kQx" = ( @@ -62088,15 +62088,15 @@ "lpp" = ( /obj/structure/table/reinforced, /obj/structure/window/reinforced, -/obj/item/food/snacks/muffin{ +/obj/item/food/muffin{ pixel_x = -4; pixel_y = 8 }, -/obj/item/food/snacks/carrotcakeslice{ +/obj/item/food/carrotcakeslice{ pixel_x = 8; pixel_y = -2 }, -/obj/item/food/snacks/poppypretzel{ +/obj/item/food/poppypretzel{ pixel_x = -8; pixel_y = -3 }, @@ -73072,13 +73072,13 @@ "qvp" = ( /obj/structure/closet/crate, /obj/effect/decal/cleanable/dirt, -/obj/item/food/snacks/breadslice, -/obj/item/food/snacks/breadslice, -/obj/item/food/snacks/breadslice, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/potato, -/obj/item/food/snacks/grown/onion, -/obj/item/food/snacks/grown/onion, +/obj/item/food/breadslice, +/obj/item/food/breadslice, +/obj/item/food/breadslice, +/obj/item/food/grown/potato, +/obj/item/food/grown/potato, +/obj/item/food/grown/onion, +/obj/item/food/grown/onion, /obj/item/storage/box/donkpockets, /obj/effect/turf_decal/tile/red, /obj/effect/turf_decal/tile/red{ @@ -75099,7 +75099,7 @@ /area/station/engineering/engine/supermatter) "rwj" = ( /obj/structure/safe/floor, -/obj/item/food/snacks/fortunecookie, +/obj/item/food/fortunecookie, /turf/simulated/floor/plating, /area/station/maintenance/fpmaint) "rwk" = ( @@ -78317,7 +78317,7 @@ "sXU" = ( /obj/machinery/light/directional/north, /mob/living/carbon/human/monkey, -/obj/item/food/snacks/grown/banana, +/obj/item/food/grown/banana, /turf/simulated/floor/grass/no_creep, /area/station/science/genetics) "sXZ" = ( @@ -83151,7 +83151,7 @@ /area/station/maintenance/starboard2) "voV" = ( /obj/structure/table/reinforced, -/obj/item/food/snacks/pie, +/obj/item/food/pie, /obj/machinery/door/window/classic/normal{ name = "Kitchen" }, @@ -83476,7 +83476,7 @@ /area/station/engineering/atmos) "vwA" = ( /obj/structure/table/glass, -/obj/item/food/snacks/chips{ +/obj/item/food/chips{ pixel_x = 8 }, /obj/item/reagent_containers/drinks/cans/thirteenloko{ diff --git a/code/__DEFINES/antag_defines.dm b/code/__DEFINES/antag_defines.dm index 24cfb19d97e4..01a9b291e6a2 100644 --- a/code/__DEFINES/antag_defines.dm +++ b/code/__DEFINES/antag_defines.dm @@ -62,6 +62,16 @@ GLOBAL_LIST(contractors) */ #define PULSEDEMON_SOURCE_DRAIN_INVALID (-1) +/** + * Objectives + */ +#define THEFT_FLAG_SPECIAL 1 // Unused, maybe someone will use it some day, I'll leave it here for the children +#define THEFT_FLAG_UNIQUE 2 + +/** + * IS_ANTAG defines + */ #define IS_CHANGELING(mob) (isliving(mob) && mob?:mind?:has_antag_datum(/datum/antagonist/changeling)) #define IS_MINDSLAVE(mob) (ishuman(mob) && mob?:mind?:has_antag_datum(/datum/antagonist/mindslave, FALSE)) + diff --git a/code/__DEFINES/dcs/signals.dm b/code/__DEFINES/dcs/signals.dm index e00e6f47f1dd..d3bab088c96a 100644 --- a/code/__DEFINES/dcs/signals.dm +++ b/code/__DEFINES/dcs/signals.dm @@ -876,7 +876,7 @@ //Food -///from base of obj/item/food/snacks/attack(): (mob/living/eater, mob/feeder) +///from base of obj/item/food/attack(): (mob/living/eater, mob/feeder) #define COMSIG_FOOD_EATEN "food_eaten" //Reagent diff --git a/code/__DEFINES/proc_refs.dm b/code/__DEFINES/proc_refs.dm new file mode 100644 index 000000000000..74d404c79802 --- /dev/null +++ b/code/__DEFINES/proc_refs.dm @@ -0,0 +1,6 @@ +/// Validates the proc exists on this type (or global unfortunately) +#define PROC_REF(X) (nameof(.proc/##X)) +#define TYPE_PROC_REF(TYPE, X) (nameof(##TYPE.proc/##X)) +#define GLOBAL_PROC_REF(X) (/proc/##X) +#define NAMEOF_STATIC(datum, X) (#X || type::##X) +#define CALL_EXT call_ext diff --git a/code/__DEFINES/regex.dm b/code/__DEFINES/regex.dm new file mode 100644 index 000000000000..ea1aece06276 --- /dev/null +++ b/code/__DEFINES/regex.dm @@ -0,0 +1,2 @@ +/// Use this for every proc passed in as second argument in regex.Replace. regex.Replace does not allow calling procs by name but as of 515 using proc refs will always call the top level proc instead of overrides +#define REGEX_REPLACE_HANDLER SHOULD_NOT_OVERRIDE(TRUE) diff --git a/code/__HELPERS/name_helpers.dm b/code/__HELPERS/name_helpers.dm index 389d8a9759db..8ae3763c85d7 100644 --- a/code/__HELPERS/name_helpers.dm +++ b/code/__HELPERS/name_helpers.dm @@ -132,22 +132,13 @@ GLOBAL_DATUM(syndicate_code_response_regex, /regex) . = "" else . = list() - var/words = pick(//How many words there will be. Minimum of two. 2, 4 and 5 have a lesser chance of being selected. 3 is the most likely. - 50; 2, - 200; 3, - 50; 4, + var/words = pick(//How many words there will be. Minimum of three. 4 is the most likely. + 100; 3, + 150; 4, 25; 5 ) var/safety[] = list(1,2,3)//Tells the proc which options to remove later on. - // var/nouns[] = list("love","hate","anger","peace","pride","sympathy","bravery","loyalty","honesty","integrity","compassion","charity","success","courage","deceit","skill","beauty","brilliance","pain","misery","beliefs","dreams","justice","truth","faith","liberty","knowledge","thought","information","culture","trust","dedication","progress","education","hospitality","leisure","trouble","friendships", "relaxation") - // var/drinks[] = list("vodka and tonic","gin fizz","bahama mama","manhattan","black Russian","whiskey soda","long island tea","margarita","Irish coffee"," manly dwarf","Irish cream","doctor's delight","Beepksy Smash","tequila sunrise","brave bull","gargle blaster","bloody mary","whiskey cola","white Russian","vodka martini","martini","Cuba libre","kahlua","vodka","wine","moonshine") - // var/locations[] = length(SSmapping.teleportlocs) ? SSmapping.teleportlocs : drinks//if null, defaults to drinks instead. - // SS220 DELETE - var/names[] = list() - for(var/datum/data/record/t in GLOB.data_core.general)//Picks from crew manifest. - names += t.fields["name"] - var/maxwords = words//Extra var to check for duplicates. for(words,words>0,words--)//Randomly picks from one of the choices below. @@ -159,24 +150,15 @@ GLOBAL_DATUM(syndicate_code_response_regex, /regex) switch(pick(safety))//Chance based on the safety list. if(1)//1 and 2 can only be selected once each to prevent more than two specific names/places/etc. - switch(rand(1, 2)) // Mainly to add more options later. - if(1) - if(length(names)) - . += pick(names) - if(2) - . += pick(GLOB.jobs)//Returns a job. // SS220 EDIT - ORIGINAL: (GLOB.joblist) + . += pick(GLOB.jobs)//Returns a job. // SS220 EDIT - ORIGINAL: GLOB.joblist safety -= 1 if(2) - switch(rand(1,2))//Places or things. - if(1) - . += pick(GLOB.cocktails) // SS220 EDIT - ORIGINAL: (drinks) - if(2) - . += pick(GLOB.locations) // SS220 EDIT - ORIGINAL: (locations) + . += pick(GLOB.locations) // SS220 EDIT - ORIGINAL: GLOB.codeword_locations safety -= 2 if(3) switch(rand(1, 3)) // Nouns, adjectives, verbs. Can be selected more than once. if(1) - . += pick(GLOB.nouns) // SS220 EDIT - ORIGINAL: (nouns) + . += pick(GLOB.nouns) // SS220 EDIT - ORIGINAL:(GLOB.codeword_nouns if(2) . += pick(GLOB.adjectives) if(3) diff --git a/code/__HELPERS/radiation_helpers.dm b/code/__HELPERS/radiation_helpers.dm index 79a6194dc80c..357377c96d38 100644 --- a/code/__HELPERS/radiation_helpers.dm +++ b/code/__HELPERS/radiation_helpers.dm @@ -21,6 +21,10 @@ . += thing if((thing.flags_2 & RAD_PROTECT_CONTENTS_2) || (SEND_SIGNAL(thing, COMSIG_ATOM_RAD_PROBE) & COMPONENT_BLOCK_RADIATION)) continue + if(ishuman(thing)) + var/mob/living/carbon/human/H = thing + if(H.get_rad_protection() >= 0.99) // I would do exactly equal to 1, but you will never hit anything between 1 and .975, and byond seems to output 0.99999 + continue processing_list += thing.contents /proc/radiation_pulse(atom/source, intensity, range_modifier, log = FALSE, can_contaminate = TRUE) diff --git a/code/__byond_version_compat.dm b/code/__byond_version_compat.dm index c95b0e51e382..a45e657e2eef 100644 --- a/code/__byond_version_compat.dm +++ b/code/__byond_version_compat.dm @@ -1,20 +1 @@ // This file contains defines allowing targeting byond versions newer than the supported -//TODO: REMOVE THE 514 STUFF WHEN DREAMCHECKER AND DM LANG SERVER GET THEIR ACT TOGETHER -// So we want to have compile time guarantees these procs exist on local type, unfortunately 515 killed the .proc/procname syntax so we have to use nameof() -#if DM_VERSION < 515 -#define PROC_REF(X) (.proc/##X) -#define TYPE_PROC_REF(TYPE, X) (##TYPE.proc/##X) -#define GLOBAL_PROC_REF(X) (.proc/##X) -#define NAMEOF_STATIC(datum, X) (#X || ##datum.##X) -#define CALL_EXT call -#else -/// Validates the proc exists on this type (or global unfortunately) -#define PROC_REF(X) (nameof(.proc/##X)) -#define TYPE_PROC_REF(TYPE, X) (nameof(##TYPE.proc/##X)) -#define GLOBAL_PROC_REF(X) (/proc/##X) -#define NAMEOF_STATIC(datum, X) (#X || type::##X) -#define CALL_EXT call_ext -#endif - -/// Use this for every proc passed in as second argument in regex.Replace. regex.Replace does not allow calling procs by name but as of 515 using proc refs will always call the top level proc instead of overrides -#define REGEX_REPLACE_HANDLER SHOULD_NOT_OVERRIDE(TRUE) diff --git a/code/_compile_options.dm b/code/_compile_options.dm index a7d8bcbd35cd..8c6d4580c43a 100644 --- a/code/_compile_options.dm +++ b/code/_compile_options.dm @@ -39,10 +39,10 @@ #define IS_MODE_COMPILED(MODE) (ispath(text2path("/datum/game_mode/"+(MODE)))) //Update this whenever you need to take advantage of more recent byond features -#define MIN_COMPILER_VERSION 514 -#define MIN_COMPILER_BUILD 1554 +#define MIN_COMPILER_VERSION 515 +#define MIN_COMPILER_BUILD 1619 #if DM_VERSION < MIN_COMPILER_VERSION || DM_BUILD < MIN_COMPILER_BUILD //Don't forget to update this part #error Your version of BYOND is too out-of-date to compile this project. Go to https://secure.byond.com/download and update. -#error You need version 514.1554 or higher +#error You need version 515.1619 or higher #endif diff --git a/code/_globalvars/lists/names.dm b/code/_globalvars/lists/names.dm index 777411685510..998d76f2e1db 100644 --- a/code/_globalvars/lists/names.dm +++ b/code/_globalvars/lists/names.dm @@ -26,6 +26,8 @@ GLOBAL_LIST_INIT(nouns, file2list("config/names/nouns.txt")) // SS220 EDIT - COD GLOBAL_LIST_INIT(adjectives, file2list("config/names/adjectives.txt")) GLOBAL_LIST_INIT(dream_strings, file2list("config/names/dreams.txt")) GLOBAL_LIST_INIT(nightmare_strings, file2list("config/names/nightmares.txt")) +GLOBAL_LIST_INIT(codeword_locations, file2list("config/names/codeword_locations.txt")) +GLOBAL_LIST_INIT(codeword_nouns, file2list("config/names/codeword_nouns.txt")) //loaded on startup because of " //would include in rsc if ' was used diff --git a/code/_onclick/ai_onclick.dm b/code/_onclick/ai_onclick.dm index f5e450ad1355..b08604a13006 100644 --- a/code/_onclick/ai_onclick.dm +++ b/code/_onclick/ai_onclick.dm @@ -192,7 +192,7 @@ /obj/machinery/power/apc/AICtrlClick(mob/living/user) // turns off/on APCs. if(stat & BROKEN) return - if(aidisabled) + if(!user.can_remote_apc_interface(src)) to_chat(user, "Unable to interface: Connection refused.") return toggle_breaker(user) diff --git a/code/_onclick/click_override.dm b/code/_onclick/click_override.dm index 38cbf357bf97..3322218791e7 100644 --- a/code/_onclick/click_override.dm +++ b/code/_onclick/click_override.dm @@ -33,7 +33,7 @@ to_chat(user, "You draw a bit of power from [src], you can use middle click or alt click to release the power!") /datum/middleClickOverride/badminClicker - var/summon_path = /obj/item/food/snacks/cookie + var/summon_path = /obj/item/food/cookie /datum/middleClickOverride/badminClicker/onClick(atom/A, mob/living/user) var/atom/movable/newObject = new summon_path diff --git a/code/controllers/subsystem/SSnightshift.dm b/code/controllers/subsystem/SSnightshift.dm index d29f506d71d2..dd8451ebc987 100644 --- a/code/controllers/subsystem/SSnightshift.dm +++ b/code/controllers/subsystem/SSnightshift.dm @@ -59,4 +59,3 @@ SUBSYSTEM_DEF(nightshift) var/obj/machinery/power/apc/APC = A if(is_station_level(APC.z)) APC.set_nightshift(active) - CHECK_TICK diff --git a/code/controllers/subsystem/SSticker.dm b/code/controllers/subsystem/SSticker.dm index 4c9357867b5d..42b1b960a38a 100644 --- a/code/controllers/subsystem/SSticker.dm +++ b/code/controllers/subsystem/SSticker.dm @@ -225,7 +225,7 @@ SUBSYSTEM_DEF(ticker) P.ready = FALSE //Configure mode and assign player to special mode stuff - mode.pre_pre_setup() + var/can_continue = FALSE can_continue = mode.pre_setup() //Setup special modes. This also does the antag fishing checks. diff --git a/code/controllers/subsystem/non_firing/SSmapping.dm b/code/controllers/subsystem/non_firing/SSmapping.dm index b46e15175fca..1b07dae138de 100644 --- a/code/controllers/subsystem/non_firing/SSmapping.dm +++ b/code/controllers/subsystem/non_firing/SSmapping.dm @@ -108,9 +108,11 @@ SUBSYSTEM_DEF(mapping) var/list/pickable_turfs = list() for(var/turf/turfs in AR) pickable_turfs += turfs + CHECK_TICK var/turf/picked = safepick(pickable_turfs) if(picked && is_station_level(picked.z)) teleportlocs[AR.name] = AR + CHECK_TICK teleportlocs = sortAssoc(teleportlocs) @@ -121,8 +123,10 @@ SUBSYSTEM_DEF(mapping) var/list/pickable_turfs = list() for(var/turf/turfs in AR) pickable_turfs += turfs + CHECK_TICK if(length(pickable_turfs)) ghostteleportlocs[AR.name] = AR + CHECK_TICK ghostteleportlocs = sortAssoc(ghostteleportlocs) @@ -132,9 +136,11 @@ SUBSYSTEM_DEF(mapping) var/list/pickable_turfs = list() for(var/turf/turfs in AR) pickable_turfs += turfs + CHECK_TICK var/turf/picked = safepick(pickable_turfs) if(picked && is_station_level(picked.z)) existing_station_areas += AR + CHECK_TICK // World name if(GLOB.configuration.general.server_name) diff --git a/code/controllers/subsystem/processing/SSobj_tab_items.dm b/code/controllers/subsystem/processing/SSobj_tab_items.dm index 617b5e96682b..d03fcd24e79e 100644 --- a/code/controllers/subsystem/processing/SSobj_tab_items.dm +++ b/code/controllers/subsystem/processing/SSobj_tab_items.dm @@ -5,7 +5,7 @@ PROCESSING_SUBSYSTEM_DEF(obj_tab_items) wait = 0.1 SECONDS // I know this is mostly copypasta, but I want to change the processing logic -// Sorry bestie :( +// Sorry bestie :( // my name is AA and I am putting a ) here to make the bracket pairs right /datum/controller/subsystem/processing/obj_tab_items/fire(resumed = FALSE) if(!resumed) currentrun = processing.Copy() diff --git a/code/datums/datacore.dm b/code/datums/datacore.dm index 8f64e8654f6a..5998626b26ea 100644 --- a/code/datums/datacore.dm +++ b/code/datums/datacore.dm @@ -362,6 +362,28 @@ GLOBAL_VAR_INIT(record_id_num, 1001) face_s.Blend(h_marking_s, ICON_OVERLAY) preview_icon.Blend(face_s, ICON_OVERLAY) + //Underwear + var/icon/underwear_standing = new /icon('icons/mob/clothing/underwear.dmi', "nude") + if(H.underwear && H.dna.species.clothing_flags & HAS_UNDERWEAR) + var/datum/sprite_accessory/underwear/U = GLOB.underwear_list[H.underwear] + if(U) + var/u_icon = U.sprite_sheets && (H.dna.species.sprite_sheet_name in U.sprite_sheets) ? U.sprite_sheets[H.dna.species.sprite_sheet_name] : U.icon //Species-fit the undergarment. + underwear_standing.Blend(new /icon(u_icon, "uw_[U.icon_state]_s"), ICON_OVERLAY) + + if(H.undershirt && H.dna.species.clothing_flags & HAS_UNDERSHIRT) + var/datum/sprite_accessory/undershirt/U2 = GLOB.undershirt_list[H.undershirt] + if(U2) + var/u2_icon = U2.sprite_sheets && (H.dna.species.sprite_sheet_name in U2.sprite_sheets) ? U2.sprite_sheets[H.dna.species.sprite_sheet_name] : U2.icon + underwear_standing.Blend(new /icon(u2_icon, "us_[U2.icon_state]_s"), ICON_OVERLAY) + + if(H.socks && H.dna.species.clothing_flags & HAS_SOCKS) + var/datum/sprite_accessory/socks/U3 = GLOB.socks_list[H.socks] + if(U3) + var/u3_icon = U3.sprite_sheets && (H.dna.species.sprite_sheet_name in U3.sprite_sheets) ? U3.sprite_sheets[H.dna.species.sprite_sheet_name] : U3.icon + underwear_standing.Blend(new /icon(u3_icon, "sk_[U3.icon_state]_s"), ICON_OVERLAY) + + if(underwear_standing) + preview_icon.Blend(underwear_standing, ICON_OVERLAY) var/icon/hands_icon = icon(preview_icon) hands_icon.Blend(icon('icons/mob/clothing/masking_helpers.dmi', "l_hand_mask"), ICON_MULTIPLY) @@ -555,6 +577,8 @@ GLOBAL_VAR_INIT(record_id_num, 1001) clothes_s = new /icon('icons/mob/clothing/under/centcom.dmi', "officer_s") clothes_s.Blend(new /icon('icons/mob/clothing/feet.dmi', "jackboots"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/clothing/hands.dmi', "swat_gl"), ICON_UNDERLAY) + if("Naked") + clothes_s = null else if(H.mind && (H.mind.assigned_role in get_all_centcom_jobs())) clothes_s = new /icon('icons/mob/clothing/under/centcom.dmi', "officer_s") diff --git a/code/datums/mind.dm b/code/datums/mind.dm index 5ccf535012f8..4e95d97f77c2 100644 --- a/code/datums/mind.dm +++ b/code/datums/mind.dm @@ -1547,29 +1547,30 @@ * Create and/or add the `datum_type_or_instance` antag datum to the src mind. * * Arguments: - * * datum_type - an antag datum typepath or instance + * * antag_datum - an antag datum typepath or instance. If it's a typepath, it will create a new antag datum * * datum/team/team - the antag team that the src mind should join, if any */ -/datum/mind/proc/add_antag_datum(datum_type_or_instance, datum/team/team = null) - var/datum/antagonist/A +/datum/mind/proc/add_antag_datum(datum_type_or_instance, datum/team/team) + var/datum/antagonist/antag_datum if(!ispath(datum_type_or_instance)) - A = datum_type_or_instance - if(!istype(A)) + antag_datum = datum_type_or_instance + if(!istype(antag_datum)) return else - A = new datum_type_or_instance() - if(!A.can_be_owned(src)) - qdel(A) + antag_datum = new datum_type_or_instance() + + if(!antag_datum.can_be_owned(src)) + qdel(antag_datum) return - A.owner = src - LAZYADD(antag_datums, A) - A.create_team(team) - var/datum/team/antag_team = A.get_team() + antag_datum.owner = src + LAZYADD(antag_datums, antag_datum) + antag_datum.create_team(team) + var/datum/team/antag_team = antag_datum.get_team() if(antag_team) antag_team.add_member(src) - ASSERT(A.owner && A.owner.current) - A.on_gain() - return A + ASSERT(antag_datum.owner && antag_datum.owner.current) + antag_datum.on_gain() + return antag_datum /** * Remove the specified `datum_type` antag datum from the src mind. diff --git a/code/datums/outfits/outfit_admin.dm b/code/datums/outfits/outfit_admin.dm index 1e3bdc048fd1..0ffdc3b81e4a 100644 --- a/code/datums/outfits/outfit_admin.dm +++ b/code/datums/outfits/outfit_admin.dm @@ -44,7 +44,7 @@ /obj/item/storage/box/engineer = 1, /obj/item/flashlight = 1, /obj/item/card/emag = 1, - /obj/item/food/snacks/syndidonkpocket = 1 + /obj/item/food/syndidonkpocket = 1 ) var/id_icon = "syndie" @@ -97,7 +97,7 @@ /obj/item/ammo_box/magazine/m10mm = 1, /obj/item/crowbar/red = 1, /obj/item/grenade/plastic/c4 = 1, - /obj/item/food/snacks/syndidonkpocket = 1, + /obj/item/food/syndidonkpocket = 1, /obj/item/flashlight = 1, /obj/item/clothing/shoes/combat = 1 ) @@ -384,7 +384,7 @@ l_ear = /obj/item/radio/headset glasses = /obj/item/clothing/glasses/thermal/monocle id = /obj/item/card/id - l_pocket = /obj/item/food/snacks/grown/banana + l_pocket = /obj/item/food/grown/banana r_pocket = /obj/item/bikehorn r_hand = /obj/item/fireaxe backpack_contents = list( @@ -430,7 +430,7 @@ /obj/item/suppressor = 1, /obj/item/card/emag = 1, /obj/item/radio/uplink = 1, - /obj/item/food/snacks/syndidonkpocket = 1, + /obj/item/food/syndidonkpocket = 1, /obj/item/flashlight = 1 ) @@ -1387,7 +1387,7 @@ /obj/item/stamp/clown = 1, /obj/item/toy/crayon/rainbow = 1, /obj/item/reagent_containers/spray/waterflower = 1, - /obj/item/food/snacks/grown/banana = 1, + /obj/item/food/grown/banana = 1, ) shoes = /obj/item/clothing/shoes/clown_shoes diff --git a/code/datums/recipe.dm b/code/datums/recipe.dm index bd684231f9bc..7ee1c021631c 100644 --- a/code/datums/recipe.dm +++ b/code/datums/recipe.dm @@ -36,7 +36,7 @@ /datum/recipe var/list/reagents // example: = list("berryjuice" = 5) // do not list same reagent twice var/list/items // example: =list(/obj/item/crowbar, /obj/item/welder) // place /foo/bar before /foo - var/result //example: = /obj/item/food/snacks/donut + var/result //example: = /obj/item/food/donut var/time = 100 // 1/10 part of second /// Whether or not an upgraded kitchen machine will create more products using the same amount of ingredients var/duplicate = TRUE diff --git a/code/datums/ruins/space_ruins.dm b/code/datums/ruins/space_ruins.dm index 9cd7206d607f..a939f952dd27 100644 --- a/code/datums/ruins/space_ruins.dm +++ b/code/datums/ruins/space_ruins.dm @@ -194,6 +194,14 @@ cost = 5 // This is a chonky boy allow_duplicates = FALSE // Absolutely huge, also has its own APC and the area isnt set to allow many +/datum/map_template/ruin/space/malftcommsat + id = "malftcommsat" + suffix = "telecomns_returns.dmm" + name = "D.V.O.R.A.K'S Telecommunications Satellite" + description = "Seems the telecomunication satellite that went dark 4 years ago finally re-appeared on scanners? Strange signals are coming from it." + cost = 5 // Huge. Large. In charge + allow_duplicates = FALSE // One sadistic malfunctioning AI is enough. Also unique apcs. + /datum/map_template/ruin/space/clownmime id = "clownmime" suffix = "clownmime.dmm" diff --git a/code/game/area/areas/ruins/space_areas.dm b/code/game/area/areas/ruins/space_areas.dm index 73cd2a0329bf..deec93e41dae 100644 --- a/code/game/area/areas/ruins/space_areas.dm +++ b/code/game/area/areas/ruins/space_areas.dm @@ -213,3 +213,30 @@ /area/ruin/space/powered/casino/maints name = "Service Tunnels" + +/// telecomms: Alternative telecomms sat +/area/ruin/space/telecomms + name = "\improper Telecommunications Sat" + icon_state = "tcomms" + tele_proof = TRUE // No patrick, you can not syndicate teleport or hand teleport instantly into or out of this ruin + +/area/ruin/space/telecomms/powercontrol + name = "\improper Telecommunications Power Control" + icon_state = "engine_smes" + +/area/ruin/space/telecomms/tele + name = "\improper Tel3coMMunic@tions-SS-S KILL_Welcoming Room" // If you teleport to it. With a name like that. Thats on you. + icon_state = "teleporter" + tele_proof = FALSE // Oh, right. The teleporter room. The teleporter room for Kuzco, the poison chosen especially to teleport Kuzco, Kuzco's teleporter room. That teleporter room? + +/area/ruin/space/telecomms/foyer + name = "\improper Telecommunications Foyer" + icon_state = "entry" + +/area/ruin/space/telecomms/computer + name = "\improper Telecommunications Control Room" + icon_state = "bridge" + +/area/ruin/space/telecomms/chamber + name = "\improper Telecommunications Central Compartment" + icon_state = "ai_chamber" diff --git a/code/game/atoms.dm b/code/game/atoms.dm index c09d202f8660..a10af53d45ee 100644 --- a/code/game/atoms.dm +++ b/code/game/atoms.dm @@ -159,6 +159,7 @@ /atom/proc/Initialize(mapload, ...) SHOULD_CALL_PARENT(TRUE) + SHOULD_NOT_SLEEP(TRUE) if(initialized) stack_trace("Warning: [src]([type]) initialized multiple times!") initialized = TRUE @@ -189,6 +190,7 @@ //called if Initialize returns INITIALIZE_HINT_LATELOAD /atom/proc/LateInitialize() + SHOULD_NOT_SLEEP(TRUE) return /atom/proc/onCentcom() diff --git a/code/game/dna/dna_modifier.dm b/code/game/dna/dna_modifier.dm index 89b670b09756..96d602fd4d6a 100644 --- a/code/game/dna/dna_modifier.dm +++ b/code/game/dna/dna_modifier.dm @@ -185,9 +185,7 @@ return TRUE /obj/machinery/dna_scannernew/attackby(obj/item/I, mob/user, params) - if(exchange_parts(user, I)) - return - else if(istype(I, /obj/item/reagent_containers/glass)) + if(istype(I, /obj/item/reagent_containers/glass)) if(beaker) to_chat(user, "A beaker is already loaded into the machine.") return @@ -201,26 +199,33 @@ I.forceMove(src) user.visible_message("[user] adds \a [I] to \the [src]!", "You add \a [I] to \the [src]!") return + if(istype(I, /obj/item/grab)) var/obj/item/grab/G = I if(!ismob(G.affecting)) return + if(occupant) to_chat(user, "The scanner is already occupied!") return + if(G.affecting.abiotic()) to_chat(user, "Subject may not hold anything in their hands.") return + if(G.affecting.has_buckled_mobs()) //mob attached to us to_chat(user, "[G] will not fit into [src] because [G.affecting.p_they()] [G.affecting.p_have()] a slime latched onto [G.affecting.p_their()] head.") return + if(panel_open) to_chat(usr, "Close the maintenance panel first.") return + put_in(G.affecting) add_fingerprint(user) qdel(G) return + return ..() /obj/machinery/dna_scannernew/crowbar_act(mob/user, obj/item/I) diff --git a/code/game/gamemodes/game_mode.dm b/code/game/gamemodes/game_mode.dm index c47a80a6a1e2..78b5bb918fa0 100644 --- a/code/game/gamemodes/game_mode.dm +++ b/code/game/gamemodes/game_mode.dm @@ -104,23 +104,17 @@ /datum/game_mode/proc/can_start() var/playerC = 0 for(var/mob/new_player/player in GLOB.player_list) - if((player.client)&&(player.ready)) + if((player.client) && (player.ready)) playerC++ if(!GLOB.configuration.gamemode.enable_gamemode_player_limit || (playerC >= required_players)) - return 1 - return 0 - -//pre_pre_setup() For when you really don't want certain jobs ingame. -/datum/game_mode/proc/pre_pre_setup() - - return 1 + return TRUE + return FALSE ///pre_setup() ///Attempts to select players for special roles the mode might have. /datum/game_mode/proc/pre_setup() - - return 1 + return TRUE ///post_setup() @@ -137,12 +131,12 @@ GLOB.start_state = new /datum/station_state() GLOB.start_state.count() - return 1 + return TRUE ///process() ///Called by the gameticker /datum/game_mode/process() - return 0 + return FALSE // I wonder what this could do guessing by the name /datum/game_mode/proc/set_mode_in_db() @@ -264,11 +258,9 @@ if(rev_team) rev_team.check_all_victory() -/datum/game_mode/proc/get_players_for_role(role, override_jobbans=0) +/datum/game_mode/proc/get_players_for_role(role, override_jobbans = FALSE) var/list/players = list() var/list/candidates = list() - //var/list/drafted = list() - //var/datum/mind/applicant = null var/roletext = get_roletext(role) @@ -293,29 +285,56 @@ // Remove candidates who want to be antagonist but have a job that precludes it if(restricted_jobs) for(var/datum/mind/player in candidates) - for(var/job in restricted_jobs) - if(player.assigned_role == job) - candidates -= player + if(player.assigned_role in restricted_jobs) + candidates -= player return candidates // Returns: The number of people who had the antagonist role set to yes, regardless of recomended_enemies, if that number is greater than recommended_enemies // recommended_enemies if the number of people with that role set to yes is less than recomended_enemies, // Less if there are not enough valid players in the game entirely to make recommended_enemies. +// Just the above proc but for alive players +/// Gets all alive players for a specific role. Disables offstation roles by default +/datum/game_mode/proc/get_alive_players_for_role(role, override_jobbans = FALSE, allow_offstation_roles = FALSE) + var/list/players = list() + var/list/candidates = list() + + var/roletext = get_roletext(role) + + // Assemble a list of active players without jobbans. + for(var/mob/living/carbon/human/player in GLOB.player_list) + if(!player.client || (locate(player) in SSafk.afk_players)) + continue + if(!jobban_isbanned(player, ROLE_SYNDICATE) && !jobban_isbanned(player, roletext)) + players += player + + // Shuffle the players list so that it becomes ping-independent. + players = shuffle(players) + + // Get a list of all the people who want to be the antagonist for this round, except those with incompatible species + for(var/mob/living/carbon/human/player in players) + if(player.client.skip_antag || !(allow_offstation_roles || !player.mind?.offstation_role)) + continue + + if(!(role in player.client.prefs.be_special) || (player.client.prefs.active_character.species in protected_species)) + continue + + player_draft_log += "[player.key] had [roletext] enabled, so we are drafting them." + candidates += player.mind + players -= player + + // Remove candidates who want to be antagonist but have a job that precludes it + if(restricted_jobs) + for(var/datum/mind/player in candidates) + if(player.assigned_role in restricted_jobs) + candidates -= player + return candidates /datum/game_mode/proc/latespawn(mob) if(rev_team) rev_team.update_team_objectives() rev_team.process_promotion(REVOLUTION_PROMOTION_OPTIONAL) - -/* -/datum/game_mode/proc/check_player_role_pref(role, mob/player) - if(player.preferences.be_special & role) - return 1 - return 0 -*/ - /datum/game_mode/proc/num_players() . = 0 for(var/mob/new_player/P in GLOB.player_list) @@ -606,3 +625,34 @@ . += auto_declare_completion_revolution() . += auto_declare_completion_abduction() listclearnulls(.) + +/// Returns how many traitors should be added to the round +/datum/game_mode/proc/traitors_to_add() + return 0 + +/datum/game_mode/proc/fill_antag_slots() + var/traitors_to_add = 0 + + traitors_to_add += traitors_to_add() + + if(length(traitors) < traitors_to_add()) + traitors_to_add += (traitors_to_add() - length(traitors)) + + if(!traitors_to_add) + return + + var/list/potential_recruits = get_alive_players_for_role(ROLE_TRAITOR) + for(var/datum/mind/candidate as anything in potential_recruits) + if(candidate.special_role) // no traitor vampires or changelings or traitors or wizards or ... yeah you get the deal + potential_recruits.Remove(candidate) + + if(!length(potential_recruits)) + return + + log_admin("Attempting to add [traitors_to_add] traitors to the round. There are [length(potential_recruits)] potential recruits.") + + for(var/i in 1 to traitors_to_add) + var/datum/mind/traitor = pick_n_take(potential_recruits) + traitor.special_role = SPECIAL_ROLE_TRAITOR + traitor.restricted_roles = restricted_jobs + traitor.add_antag_datum(/datum/antagonist/traitor) // They immediately get a new objective diff --git a/code/game/gamemodes/miniantags/abduction/gland.dm b/code/game/gamemodes/miniantags/abduction/gland.dm index fe9fc6505d87..f350a6205911 100644 --- a/code/game/gamemodes/miniantags/abduction/gland.dm +++ b/code/game/gamemodes/miniantags/abduction/gland.dm @@ -264,7 +264,7 @@ /obj/item/organ/internal/heart/gland/egg/activate() owner.visible_message("[owner] [pick(EGG_LAYING_MESSAGES)]") - new /obj/item/food/snacks/egg/gland(get_turf(owner)) + new /obj/item/food/egg/gland(get_turf(owner)) /obj/item/organ/internal/heart/gland/electric cooldown_low = 800 diff --git a/code/game/gamemodes/miniantags/guardian/guardian.dm b/code/game/gamemodes/miniantags/guardian/guardian.dm index 74178fef9837..cfa12d92b6a5 100644 --- a/code/game/gamemodes/miniantags/guardian/guardian.dm +++ b/code/game/gamemodes/miniantags/guardian/guardian.dm @@ -29,7 +29,7 @@ melee_damage_lower = 15 melee_damage_upper = 15 AIStatus = AI_OFF - butcher_results = list(/obj/item/food/snacks/ectoplasm = 1) + butcher_results = list(/obj/item/food/ectoplasm = 1) hud_type = /datum/hud/guardian var/summoned = FALSE var/cooldown = 0 diff --git a/code/game/gamemodes/miniantags/guardian/types/ranged.dm b/code/game/gamemodes/miniantags/guardian/types/ranged.dm index b35c3aad562a..efd4d59801ec 100644 --- a/code/game/gamemodes/miniantags/guardian/types/ranged.dm +++ b/code/game/gamemodes/miniantags/guardian/types/ranged.dm @@ -77,6 +77,11 @@ to_chat(src, "[msg]") +/mob/living/simple_animal/hostile/guardian/ranged/blob_act(obj/structure/blob/B) + if(toggle) + return // we don't want blob tiles to hurt us when we fly over them and trigger /Crossed(), this prevents ranged scouts from being insta killed + return ..() // otherwise do normal damage! + /obj/item/effect/snare name = "snare" desc = "You shouldn't be seeing this!" diff --git a/code/game/gamemodes/miniantags/morph/morph.dm b/code/game/gamemodes/miniantags/morph/morph.dm index 549719125546..0b84b06ab5d2 100644 --- a/code/game/gamemodes/miniantags/morph/morph.dm +++ b/code/game/gamemodes/miniantags/morph/morph.dm @@ -34,7 +34,7 @@ wander = FALSE attacktext = "glomps" attack_sound = 'sound/effects/blobattack.ogg' - butcher_results = list(/obj/item/food/snacks/meat/slab = 2) + butcher_results = list(/obj/item/food/meat/slab = 2) /// If the morph is disguised or not var/morphed = FALSE diff --git a/code/game/gamemodes/miniantags/pulsedemon/pulsedemon.dm b/code/game/gamemodes/miniantags/pulsedemon/pulsedemon.dm index dbac0830d9c4..8ef863e2dcbf 100644 --- a/code/game/gamemodes/miniantags/pulsedemon/pulsedemon.dm +++ b/code/game/gamemodes/miniantags/pulsedemon/pulsedemon.dm @@ -804,6 +804,11 @@ /mob/living/simple_animal/demon/pulse_demon/mob_has_gravity() return TRUE +/mob/living/simple_animal/demon/pulse_demon/can_remote_apc_interface(obj/machinery/power/apc/ourapc) + if(ourapc.hacked_by_ruin_AI || ourapc.malfai || ourapc.malfhack) + return FALSE + return TRUE + /obj/item/organ/internal/heart/demon/pulse name = "perpetual pacemaker" desc = "It still beats furiously, thousands of bright lights shine within it." diff --git a/code/game/gamemodes/miniantags/pulsedemon/pulsedemon_event.dm b/code/game/gamemodes/miniantags/pulsedemon/pulsedemon_event.dm index 876c223d9c3e..2fb91852d078 100644 --- a/code/game/gamemodes/miniantags/pulsedemon/pulsedemon_event.dm +++ b/code/game/gamemodes/miniantags/pulsedemon/pulsedemon_event.dm @@ -1,3 +1,6 @@ +/// A pulse demon requires 1000 watts to regenerate +#define DEMON_REQUIRED_POWER 1000 + /datum/event/spawn_pulsedemon var/key_of_pulsedemon @@ -11,7 +14,7 @@ var/mob/C = pick(candidates) key_of_pulsedemon = C.key dust_if_respawnable(C) - + if(!key_of_pulsedemon) kill() return @@ -29,14 +32,14 @@ var/list/spawn_centers = list() for(var/datum/regional_powernet/P in SSmachines.powernets) for(var/obj/structure/cable/C in P.cables) - if(!is_station_level(C.z) || P.available_power <= 0) + if(!is_station_level(C.z) || P.available_power < DEMON_REQUIRED_POWER) break // skip iterating over this entire powernet, it's not on station or it has zero available power (so it's not suitable) var/turf/simulated/floor/F = get_turf(C) // is a floor, not tiled, on station, in maintenance and cable has power? if(istype(F) && (!F.intact && !F.transparent_floor) && istype(get_area(C), /area/station/maintenance)) spawn_centers += F - if(!spawn_centers) + if(!length(spawn_centers)) message_admins("no suitable spawn locations were found for the pulse demon event.") log_debug("no suitable spawn locations were found for the pulse demon event.") kill() @@ -45,3 +48,5 @@ /datum/event/spawn_pulsedemon/start() INVOKE_ASYNC(src, PROC_REF(get_pulsedemon)) + +#undef DEMON_REQUIRED_POWER diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm index b523c09f3b5e..abe31706428b 100644 --- a/code/game/gamemodes/objective.dm +++ b/code/game/gamemodes/objective.dm @@ -35,7 +35,10 @@ GLOBAL_LIST_INIT(potential_theft_objectives, (subtypesof(/datum/theft_objective) var/datum/objective_holder/holder -/datum/objective/New(text, datum/team/team_to_join) + /// What is the text we show when our objective is delayed? + var/delayed_objective_text = "This is a bug! Report it on the github and ask an admin what type of objective" + +/datum/objective/New(text, datum/team/team_to_join, datum/mind/_owner) . = ..() SHOULD_CALL_PARENT(TRUE) GLOB.all_objectives += src @@ -43,6 +46,8 @@ GLOBAL_LIST_INIT(potential_theft_objectives, (subtypesof(/datum/theft_objective) explanation_text = text if(team_to_join) team = team_to_join + if(_owner) + owner = _owner /datum/objective/Destroy() GLOB.all_objectives -= src @@ -120,7 +125,6 @@ GLOBAL_LIST_INIT(potential_theft_objectives, (subtypesof(/datum/theft_objective) possible_targets += possible_target - if(length(possible_targets) > 0) target = pick(possible_targets) @@ -160,6 +164,7 @@ GLOBAL_LIST_INIT(potential_theft_objectives, (subtypesof(/datum/theft_objective) /datum/objective/assassinate name = "Assassinate" martyr_compatible = TRUE + delayed_objective_text = "Your objective is to assassinate another crewmember. You will receive further information in a few minutes." /datum/objective/assassinate/update_explanation_text() if(target?.current) @@ -181,6 +186,7 @@ GLOBAL_LIST_INIT(potential_theft_objectives, (subtypesof(/datum/theft_objective) /datum/objective/assassinateonce name = "Assassinate once" martyr_compatible = TRUE + delayed_objective_text = "Your objective is to teach another crewmember a lesson. You will receive further information in a few minutes." var/won = FALSE /datum/objective/assassinateonce/update_explanation_text() @@ -244,6 +250,7 @@ GLOBAL_LIST_INIT(potential_theft_objectives, (subtypesof(/datum/theft_objective) /datum/objective/maroon name = "Maroon" martyr_compatible = FALSE + delayed_objective_text = "Your objective is to make sure another crewmember doesn't leave on the Escape Shuttle. You will receive further information in a few minutes." /datum/objective/maroon/update_explanation_text() if(target?.current) @@ -265,11 +272,11 @@ GLOBAL_LIST_INIT(potential_theft_objectives, (subtypesof(/datum/theft_objective) return TRUE return TRUE - /// I want braaaainssss /datum/objective/debrain name = "Debrain" martyr_compatible = FALSE + delayed_objective_text = "Your objective is to steal another crewmember's brain. You will receive further information in a few minutes." /datum/objective/debrain/is_invalid_target(datum/mind/possible_target) . = ..() @@ -433,7 +440,6 @@ GLOBAL_LIST_INIT(potential_theft_objectives, (subtypesof(/datum/theft_objective) return TRUE - /datum/objective/escape/escape_with_identity name = null /// Stored because the target's `[mob/var/real_name]` can change over the course of the round. @@ -526,9 +532,10 @@ GLOBAL_LIST_INIT(potential_theft_objectives, (subtypesof(/datum/theft_objective) /datum/objective/steal name = "Steal Item" - var/datum/theft_objective/steal_target martyr_compatible = FALSE + delayed_objective_text = "Your objective is to steal a high-value item. You will receive further information in a few minutes." var/theft_area + var/datum/theft_objective/steal_target /datum/objective/steal/found_target() return steal_target @@ -552,7 +559,7 @@ GLOBAL_LIST_INIT(potential_theft_objectives, (subtypesof(/datum/theft_objective) continue if(!O.check_objective_conditions()) continue - if(O.flags & 2) // THEFT_FLAG_UNIQUE + if(O.flags & THEFT_FLAG_UNIQUE) continue steal_target = O @@ -649,7 +656,6 @@ GLOBAL_LIST_INIT(potential_theft_objectives, (subtypesof(/datum/theft_objective) to_chat(failed_receiver, "Unfortunately, you weren't able to get a stealing kit. This is very bad and you should adminhelp immediately (press F1).") message_admins("[ADMIN_LOOKUPFLW(failed_receiver)] Failed to spawn with their [item_path] theft kit.") - /datum/objective/absorb name = "Absorb DNA" needs_target = FALSE @@ -691,6 +697,7 @@ GLOBAL_LIST_INIT(potential_theft_objectives, (subtypesof(/datum/theft_objective) /datum/objective/destroy name = "Destroy AI" martyr_compatible = TRUE + delayed_objective_text = "Your objective is to destroy an Artificial Intelligence. You will receive further information in a few minutes." /datum/objective/destroy/find_target(list/target_blacklist) var/list/possible_targets = active_ais(1) @@ -823,3 +830,23 @@ GLOBAL_LIST_INIT(potential_theft_objectives, (subtypesof(/datum/theft_objective) explanation_text = "Hunger grows within us, we need to feast on the brains of the uninfected. Scratch, bite, and spread the plague." needs_target = FALSE completed = TRUE + +// Placeholder objectives that will replace themselves + +/datum/objective/delayed + needs_target = FALSE + var/datum/objective/objective_to_replace_with + +/datum/objective/delayed/New(datum/objective/delayed_objective) + ..() + if(!ispath(delayed_objective)) + stack_trace("A delayed objective has been given a non-path. Given was instead [delayed_objective]") + return + objective_to_replace_with = delayed_objective + explanation_text = initial(delayed_objective.delayed_objective_text) + +/datum/objective/delayed/update_explanation_text() + return + +/datum/objective/delayed/proc/reveal_objective() + return holder.replace_objective(src, new objective_to_replace_with(null, team, owner)) diff --git a/code/game/gamemodes/objective_holder.dm b/code/game/gamemodes/objective_holder.dm index 2b65e1eb7b47..cdd29db4af98 100644 --- a/code/game/gamemodes/objective_holder.dm +++ b/code/game/gamemodes/objective_holder.dm @@ -60,8 +60,7 @@ */ /datum/objective_holder/proc/replace_objective(datum/objective/old_objective, datum/objective/new_objective) new_objective = add_objective(new_objective, add_to_list = FALSE) - new_objective.owner = old_objective.owner - new_objective.team = old_objective.team + // Replace where the old objective was, with the new one objectives.Insert(objectives.Find(old_objective), new_objective) remove_objective(old_objective) @@ -106,7 +105,7 @@ /datum/objective_holder/proc/handle_objective(datum/objective/Objective) for(var/loop in 1 to 5) Objective.find_target(assigned_targets) - if(Objective.found_target()) // handles normal objectives, and steal objectives + if(Objective.found_target()) // Handles normal objectives, and steal objectives return // We failed to find any target. Oh well... diff --git a/code/game/gamemodes/steal_items.dm b/code/game/gamemodes/steal_items.dm index c74a0200a685..1122ec65ef19 100644 --- a/code/game/gamemodes/steal_items.dm +++ b/code/game/gamemodes/steal_items.dm @@ -2,9 +2,6 @@ // // Separated into datums so we can prevent roles from getting certain objectives. -#define THEFT_FLAG_SPECIAL 1//unused, maybe someone will use it some day, I'll leave it here for the children -#define THEFT_FLAG_UNIQUE 2 - /datum/theft_objective var/name = "this objective is impossible, yell at a coder" var/typepath=/obj/effect/debugging diff --git a/code/game/gamemodes/traitor/traitor.dm b/code/game/gamemodes/traitor/traitor.dm index db1e758add63..10aebe27312b 100644 --- a/code/game/gamemodes/traitor/traitor.dm +++ b/code/game/gamemodes/traitor/traitor.dm @@ -17,7 +17,6 @@ to_chat(world, "The current game mode is - Traitor!") to_chat(world, "There is a syndicate traitor on the station. Do not let the traitor succeed!") - /datum/game_mode/traitor/pre_setup() if(GLOB.configuration.gamemode.prevent_mindshield_antags) @@ -35,10 +34,7 @@ var/num_traitors = 1 - if(GLOB.configuration.gamemode.traitor_scaling) - num_traitors = max(1, round((num_players())/(traitor_scaling_coeff))) - else - num_traitors = max(1, min(num_players(), traitors_possible)) + num_traitors = traitors_to_add() for(var/i in 1 to num_traitors) if(!length(possible_traitors)) @@ -52,13 +48,35 @@ return FALSE return TRUE - /datum/game_mode/traitor/post_setup() - for(var/t in pre_traitors) - var/datum/mind/traitor = t - traitor.add_antag_datum(/datum/antagonist/traitor) - ..() + . = ..() + + var/random_time = rand(5 MINUTES, 15 MINUTES) + if(length(pre_traitors)) + addtimer(CALLBACK(src, PROC_REF(fill_antag_slots)), random_time) + + for(var/datum/mind/traitor in pre_traitors) + var/datum/antagonist/traitor/traitor_datum = new(src) + if(ishuman(traitor.current)) + traitor_datum.delayed_objectives = TRUE + traitor_datum.addtimer(CALLBACK(traitor_datum, TYPE_PROC_REF(/datum/antagonist/traitor, reveal_delayed_objectives)), random_time, TIMER_DELETE_ME) + + traitor.add_antag_datum(traitor_datum) + +/datum/game_mode/traitor/traitors_to_add() + if(GLOB.configuration.gamemode.traitor_scaling) + . = max(1, round(num_players() / traitor_scaling_coeff)) + else + . = max(1, min(num_players(), traitors_possible)) + + if(!length(traitors)) + return + for(var/datum/mind/traitor_mind as anything in traitors) + if(!QDELETED(traitor_mind) && traitor_mind.current) // Explicitly no client check in case you happen to fall SSD when this gets ran + continue + .++ + traitors -= traitor_mind /datum/game_mode/traitor/declare_completion() ..() diff --git a/code/game/gamemodes/trifecta/trifecta.dm b/code/game/gamemodes/trifecta/trifecta.dm index 61bd9188ffac..13ed99be84a5 100644 --- a/code/game/gamemodes/trifecta/trifecta.dm +++ b/code/game/gamemodes/trifecta/trifecta.dm @@ -20,14 +20,16 @@ var/amount_vamp = 1 var/amount_cling = 1 var/amount_tot = 1 + /// How many points did we get at roundstart + var/cost_at_roundstart /datum/game_mode/trifecta/announce() to_chat(world, "The current game mode is - Trifecta") to_chat(world, "Vampires, traitors, and changelings, oh my! Stay safe as these forces work to bring down the station.") - /datum/game_mode/trifecta/pre_setup() calculate_quantities() + cost_at_roundstart = num_players() if(GLOB.configuration.gamemode.prevent_mindshield_antags) restricted_jobs += protected_jobs var/list/datum/mind/possible_vampires = get_players_for_role(ROLE_VAMPIRE) @@ -101,12 +103,38 @@ /datum/game_mode/trifecta/post_setup() for(var/datum/mind/vampire as anything in pre_vampires) vampire.add_antag_datum(/datum/antagonist/vampire) + for(var/datum/mind/changeling as anything in pre_changelings) changeling.add_antag_datum(/datum/antagonist/changeling) + for(var/datum/mind/traitor as anything in pre_traitors) - traitor.add_antag_datum(/datum/antagonist/traitor) + var/datum/antagonist/traitor/tot_datum = new() + tot_datum.delayed_objectives = TRUE + traitor.add_antag_datum(tot_datum) + + if(length(pre_traitors)) + var/random_time = rand(5 MINUTES, 15 MINUTES) + addtimer(CALLBACK(src, PROC_REF(fill_antag_slots)), random_time) + ..() +/datum/game_mode/trifecta/traitors_to_add() + . = 0 + for(var/datum/mind/traitor_mind as anything in traitors) + if(!QDELETED(traitor_mind) && traitor_mind.current) // Explicitly no client check in case you happen to fall SSD when this gets ran + continue + .++ + traitors -= traitor_mind + + var/extra_points = num_players_started() - cost_at_roundstart + if(extra_points - TOT_COST < 0) + return 0 // Not enough new players to add extra tots + + while(extra_points) + .++ + if(extra_points < TOT_COST) // The leftover change is enough for us to buy another traitor with, what a deal! + return + extra_points -= TOT_COST #undef TOT_COST #undef VAMP_COST diff --git a/code/game/gamemodes/wizard/artefact.dm b/code/game/gamemodes/wizard/artefact.dm index 121da3dea0c4..0292df084c56 100644 --- a/code/game/gamemodes/wizard/artefact.dm +++ b/code/game/gamemodes/wizard/artefact.dm @@ -886,6 +886,7 @@ GLOBAL_LIST_EMPTY(multiverse) flags_inv = HIDEFACE flags_cover = HEADCOVERSEYES armor = list(MELEE = 20, BULLET = 5, LASER = 5, ENERGY = 5, BOMB = 0, RAD = INFINITY, FIRE = 5, ACID = 5) + flags_2 = RAD_PROTECT_CONTENTS_2 cold_protection = HEAD min_cold_protection_temperature = SPACE_HELM_MIN_TEMP_PROTECT magical = TRUE @@ -910,6 +911,7 @@ GLOBAL_LIST_EMPTY(multiverse) armor = list(MELEE = 35, BULLET = 20, LASER = 35, ENERGY = 10, BOMB = 15, RAD = INFINITY, FIRE = 5, ACID = 5) flags_inv = HIDEJUMPSUIT | HIDESHOES | HIDETAIL | HIDESHOES flags = THICKMATERIAL + flags_2 = RAD_PROTECT_CONTENTS_2 magical = TRUE sprite_sheets = list( "Vox" = 'icons/mob/clothing/species/vox/suit.dmi', diff --git a/code/game/jobs/job/support.dm b/code/game/jobs/job/support.dm index ccf93842238e..7cab1816b598 100644 --- a/code/game/jobs/job/support.dm +++ b/code/game/jobs/job/support.dm @@ -345,7 +345,7 @@ id = /obj/item/card/id/clown pda = /obj/item/pda/clown backpack_contents = list( - /obj/item/food/snacks/grown/banana = 1, + /obj/item/food/grown/banana = 1, /obj/item/stamp/clown = 1, /obj/item/toy/crayon/rainbow = 1, /obj/item/storage/fancy/crayons = 1, diff --git a/code/game/machinery/Sleeper.dm b/code/game/machinery/Sleeper.dm index 2cd16f5f1d00..5c2f5a7ff976 100644 --- a/code/game/machinery/Sleeper.dm +++ b/code/game/machinery/Sleeper.dm @@ -317,19 +317,19 @@ to_chat(user, "The sleeper has a beaker already.") return - if(exchange_parts(user, I)) - return - if(istype(I, /obj/item/grab)) var/obj/item/grab/G = I if(panel_open) to_chat(user, "Close the maintenance panel first.") return + if(!ismob(G.affecting)) return + if(occupant) to_chat(user, "The sleeper is already occupied!") return + if(G.affecting.has_buckled_mobs()) //mob attached to us to_chat(user, "[G.affecting] will not fit into [src] because [G.affecting.p_they()] [G.affecting.p_have()] a slime latched onto [G.affecting.p_their()] head.") return @@ -340,8 +340,10 @@ if(occupant) to_chat(user, "The sleeper is already occupied!") return + if(!G || !G.affecting) return + var/mob/M = G.affecting M.forceMove(src) occupant = M diff --git a/code/game/machinery/adv_med.dm b/code/game/machinery/adv_med.dm index 965532d04e48..5ef02606a44b 100644 --- a/code/game/machinery/adv_med.dm +++ b/code/game/machinery/adv_med.dm @@ -65,26 +65,28 @@ icon_state = "bodyscanner-open" /obj/machinery/bodyscanner/attackby(obj/item/I, mob/user) - if(exchange_parts(user, I)) - return - if(istype(I, /obj/item/grab)) var/obj/item/grab/TYPECAST_YOUR_SHIT = I if(panel_open) to_chat(user, "Close the maintenance panel first.") return + if(!ishuman(TYPECAST_YOUR_SHIT.affecting)) return + if(occupant) to_chat(user, "The scanner is already occupied!") return + if(TYPECAST_YOUR_SHIT.affecting.has_buckled_mobs()) //mob attached to us to_chat(user, "[TYPECAST_YOUR_SHIT.affecting] will not fit into [src] because [TYPECAST_YOUR_SHIT.affecting.p_they()] [TYPECAST_YOUR_SHIT.affecting.p_have()] a fucking slime latched onto [TYPECAST_YOUR_SHIT.affecting.p_their()] head.") return + var/mob/living/carbon/human/M = TYPECAST_YOUR_SHIT.affecting if(M.abiotic()) to_chat(user, "Subject may not hold anything in their hands.") return + M.forceMove(src) occupant = M playsound(src, 'sound/machines/podclose.ogg', 5) diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm index b5d28534dd9c..96c54e3e9474 100644 --- a/code/game/machinery/autolathe.dm +++ b/code/game/machinery/autolathe.dm @@ -265,11 +265,10 @@ /obj/machinery/autolathe/attackby(obj/item/O, mob/user, params) if(busy) to_chat(user, "The autolathe is busy. Please wait for completion of previous operation.") - return 1 - if(exchange_parts(user, O)) - return + return TRUE + if(stat) - return 1 + return TRUE // Disks in general if(istype(O, /obj/item/disk)) @@ -280,14 +279,17 @@ if(design.id in files.known_designs) to_chat(user, "This design has already been loaded into the autolathe.") - return 1 + return TRUE if(!files.CanAddDesign2Known(design)) to_chat(user, "This design is not compatible with the autolathe.") - return 1 - user.visible_message("[user] begins to load \the [O] in \the [src]...", + return TRUE + + user.visible_message( + "[user] begins to load \the [O] in \the [src]...", "You begin to load a design from \the [O]...", - "You hear the chatter of a floppy drive.") + "You hear the chatter of a floppy drive." + ) playsound(get_turf(src), 'sound/goonstation/machines/printer_dotmatrix.ogg', 50, 1) busy = TRUE if(do_after(user, 14.4, target = src)) @@ -298,11 +300,12 @@ busy = FALSE else to_chat(user, "That disk does not have a design on it!") - return 1 + return TRUE + else // So that people who are bad at computers don't shred their disks to_chat(user, "This is not the correct type of disk for the autolathe!") - return 1 + return TRUE return ..() diff --git a/code/game/machinery/clonepod.dm b/code/game/machinery/clonepod.dm index 75d0230ad4ff..cf6e0473b044 100644 --- a/code/game/machinery/clonepod.dm +++ b/code/game/machinery/clonepod.dm @@ -2,12 +2,12 @@ #define VALID_REAGENTS list("sanguine_reagent", "osseous_reagent") /// Meats that can be used as biomass for the cloner. -#define VALID_BIOMASSABLES list(/obj/item/food/snacks/meat, \ - /obj/item/food/snacks/monstermeat, \ - /obj/item/food/snacks/carpmeat, \ - /obj/item/food/snacks/salmonmeat, \ - /obj/item/food/snacks/catfishmeat, \ - /obj/item/food/snacks/tofurkey) +#define VALID_BIOMASSABLES list(/obj/item/food/meat, \ + /obj/item/food/monstermeat, \ + /obj/item/food/carpmeat, \ + /obj/item/food/salmonmeat, \ + /obj/item/food/catfishmeat, \ + /obj/item/food/tofurkey) /// Internal organs the cloner will *never* accept for insertion. #define FORBIDDEN_INTERNAL_ORGANS list(/obj/item/organ/internal/regenerative_core, \ @@ -556,9 +556,6 @@ //Attackby and x_acts /obj/machinery/clonepod/attackby(obj/item/I, mob/user, params) - if(exchange_parts(user, I)) - return - if(I.is_open_container()) return diff --git a/code/game/machinery/computer/depot_consoles.dm b/code/game/machinery/computer/depot_consoles.dm index 1a44d688d6aa..a59eb62726b5 100644 --- a/code/game/machinery/computer/depot_consoles.dm +++ b/code/game/machinery/computer/depot_consoles.dm @@ -14,8 +14,6 @@ light_color = LIGHT_COLOR_PURE_CYAN req_access = list(ACCESS_SYNDICATE) bubble_icon = "syndibot" - var/window_height = 400 // should be roughly 100 per section. Allow extra space for the lockout alert. - var/window_width = 400 var/security_lockout = FALSE var/sound_yes = 'sound/machines/twobeep.ogg' var/sound_no = 'sound/machines/buzz-sigh.ogg' @@ -149,7 +147,6 @@ /obj/machinery/computer/syndicate_depot/doors name = "depot door control computer" req_access = list() - window_height = 300 var/pub_access = FALSE /obj/machinery/computer/syndicate_depot/doors/ui_data(mob/user) @@ -197,7 +194,6 @@ icon_screen = "explosive" req_access = list() alerts_when_broken = TRUE - window_height = 200 // this might appear big, but it has to have space for the lockout alert /obj/machinery/computer/syndicate_depot/selfdestruct/ui_data(mob/user) var/list/data = ..() @@ -227,7 +223,6 @@ icon_screen = "accelerator" req_access = list(ACCESS_SYNDICATE_LEADER) alerts_when_broken = TRUE - window_height = 280 var/area/syndicate_depot/perimeter/perimeterarea /obj/machinery/computer/syndicate_depot/shieldcontrol/Initialize(mapload) @@ -291,7 +286,6 @@ icon_screen = "syndishuttle" req_access = list() alerts_when_broken = TRUE - window_height = 300 var/message_sent = FALSE /obj/machinery/computer/syndicate_depot/syndiecomms/Initialize(mapload) @@ -394,7 +388,6 @@ name = "syndicate teleporter console" icon_screen = "telesci" icon_keyboard = "teleport_key" - window_height = 300 req_access = list(ACCESS_SYNDICATE_LEADER) var/obj/machinery/bluespace_beacon/syndicate/mybeacon var/obj/effect/portal/advanced/myportal @@ -454,9 +447,8 @@ var/desc = tgui_input_list(usr, "Please select a location to lock in.", "Syndicate Teleporter", L) return L[desc] -/obj/machinery/computer/syndicate_depot/teleporter/proc/update_portal() +/obj/machinery/computer/syndicate_depot/teleporter/proc/update_portal(turf/tele_target) if(portal_enabled && !myportal) - var/turf/tele_target = choosetarget() if(!tele_target) return var/turf/portal_turf = get_step(src, portaldir) @@ -508,21 +500,24 @@ if(!portal_enabled && myportal) to_chat(user, "Outgoing Teleport Portal: deactivating... please wait...") return - toggle_portal() - to_chat(user, "Outgoing Teleport Portal: [portal_enabled ? "ON" : "OFF"]") - updateUsrDialog() - playsound(user, sound_yes, 50, 0) -/obj/machinery/computer/syndicate_depot/teleporter/proc/toggle_portal() + var/turf/tele_target = null + if(!portal_enabled) + tele_target = choosetarget() + if(!tele_target) + return + portal_enabled = !portal_enabled - update_portal() + update_portal(tele_target) + + to_chat(user, "Outgoing Teleport Portal: [portal_enabled ? "ON" : "OFF"]") + playsound(user, sound_yes, 50, 0) /obj/machinery/computer/syndicate_depot/aiterminal name = "syndicate ai terminal" icon_screen = "command" req_access = list() - window_height = 750 // has to be very tall since it has many sections which can expand /obj/machinery/computer/syndicate_depot/aiterminal/ui_data(mob/user) var/list/data = ..() diff --git a/code/game/machinery/computer/law.dm b/code/game/machinery/computer/law.dm index 2032635e7047..742800f2ab8b 100644 --- a/code/game/machinery/computer/law.dm +++ b/code/game/machinery/computer/law.dm @@ -35,8 +35,7 @@ return if(!emagged) //non-emag law change var/obj/item/aiModule/M = O - M.install(src) - return + return M.install(src) apply_emag_laws(user) return @@ -46,7 +45,7 @@ to_chat(user, "Не выбран ИИ. Пожалуйста, выберите его перед загрузкой законов.") return FALSE var/turf/T = get_turf(current) - if(!atoms_share_level(T, src))//off Z level + if(!atoms_share_level(T, get_turf(src))) // off Z level to_chat(user, "Невозможно подключиться: Вы слишком далеко от выбранного силикона!") return FALSE return TRUE diff --git a/code/game/machinery/doors/airlock_types.dm b/code/game/machinery/doors/airlock_types.dm index 9b96ab09c123..d41d4495f024 100644 --- a/code/game/machinery/doors/airlock_types.dm +++ b/code/game/machinery/doors/airlock_types.dm @@ -380,6 +380,22 @@ to_chat(user, "The electronic systems in this door are far too advanced for your primitive hacking peripherals.") return +/// This door is used in the malf AI telecomms ruin. This door starts early access, and will try to crush someone to death who enters it's turf like how an AI door crushes. +/obj/machinery/door/airlock/hatch/syndicate/command/trapped + emergency = TRUE + hackProof = TRUE + aiControlDisabled = AICONTROLDISABLED_ON + safe = FALSE + normal_integrity = 100 // going to get boosted by security level anyway + +/obj/machinery/door/airlock/hatch/syndicate/command/trapped/process() + if(locate(/mob/living) in get_turf(src)) + unlock(TRUE) + if(density) + open() + else + close() + /obj/machinery/door/airlock/hatch/syndicate/vault name = "syndicate vault hatch" req_access_txt = "151" diff --git a/code/game/machinery/doors/door.dm b/code/game/machinery/doors/door.dm index f338a799e4b3..a07d1427dfdc 100644 --- a/code/game/machinery/doors/door.dm +++ b/code/game/machinery/doors/door.dm @@ -458,12 +458,6 @@ if(!glass && GLOB.cameranet) GLOB.cameranet.updateVisibility(src, 0) -/obj/machinery/door/get_superconductivity(direction) - // Only heatproof airlocks block heat, currently only varedited doors have this - if(heat_proof && density) - return FALSE - return ..() - /obj/machinery/door/proc/check_unres() //unrestricted sides. This overlay indicates which directions the player can access even without an ID if(hasPower() && unres_sides) . = list() diff --git a/code/game/machinery/hologram.dm b/code/game/machinery/hologram.dm index 5afe6da741b1..5f5e72aad486 100644 --- a/code/game/machinery/hologram.dm +++ b/code/game/machinery/hologram.dm @@ -149,11 +149,6 @@ GLOBAL_LIST_EMPTY(holopads) holograph_range += 1 * B.rating holo_range = holograph_range -/obj/machinery/hologram/holopad/attackby(obj/item/I, mob/user, params) - if(exchange_parts(user, I)) - return - return ..() - /obj/machinery/hologram/holopad/multitool_act(mob/living/user, obj/item/I) . = TRUE if(!I.use_tool(src, user, 0, volume = I.tool_volume)) diff --git a/code/game/machinery/machinery.dm b/code/game/machinery/machinery.dm index 2acb73839c11..7188f8546ccd 100644 --- a/code/game/machinery/machinery.dm +++ b/code/game/machinery/machinery.dm @@ -344,28 +344,37 @@ power_change() /obj/machinery/attackby(obj/item/O, mob/user, params) + if(exchange_parts(user, O)) + return + if(istype(O, /obj/item/stack/nanopaste)) var/obj/item/stack/nanopaste/N = O if(stat & BROKEN) to_chat(user, "[src] is too damaged to be fixed with nanopaste!") return + if(obj_integrity == max_integrity) to_chat(user, "[src] is fully intact.") return + if(being_repaired) return + if(N.get_amount() < 1) to_chat(user, "You don't have enough to complete this task!") return + to_chat(user, "You start applying [O] to [src].") being_repaired = TRUE var/result = do_after(user, 3 SECONDS, target = src) being_repaired = FALSE if(!result) return + if(!N.use(1)) to_chat(user, "You don't have enough to complete this task!") // this is here, as we don't want to use nanopaste until you finish applying return + obj_integrity = min(obj_integrity + 50, max_integrity) user.visible_message("[user] applied some [O] at [src]'s damaged areas.",\ "You apply some [O] at [src]'s damaged areas.") @@ -376,57 +385,58 @@ var/shouldplaysound = 0 if(flags & NODECONSTRUCT) return FALSE - if(istype(W) && component_parts) - if(panel_open || W.works_from_distance) - var/obj/item/circuitboard/CB = locate(/obj/item/circuitboard) in component_parts - var/P - if(W.works_from_distance) - to_chat(user, display_parts(user)) - for(var/obj/item/stock_parts/A in component_parts) - for(var/D in CB.req_components) - if(ispath(A.type, D)) - P = D - break - for(var/obj/item/stock_parts/B in W.contents) - if(istype(B, P) && istype(A, P)) - //If it's cell - check: 1) Max charge is better? 2) Max charge same but current charge better? - If both NO -> next content - if(ispath(B.type, /obj/item/stock_parts/cell)) - var/obj/item/stock_parts/cell/tA = A - var/obj/item/stock_parts/cell/tB = B - if(!(tB.maxcharge > tA.maxcharge) && !((tB.maxcharge == tA.maxcharge) && (tB.charge > tA.charge))) - continue - //If it's not cell and not better -> next content - else if(B.rating <= A.rating) + + if(!istype(W) || !component_parts) + return FALSE + + if(panel_open || W.works_from_distance) + var/obj/item/circuitboard/CB = locate(/obj/item/circuitboard) in component_parts + var/P + if(W.works_from_distance) + to_chat(user, display_parts(user)) + for(var/obj/item/stock_parts/A in component_parts) + for(var/D in CB.req_components) + if(ispath(A.type, D)) + P = D + break + for(var/obj/item/stock_parts/B in W.contents) + if(istype(B, P) && istype(A, P)) + //If it's cell - check: 1) Max charge is better? 2) Max charge same but current charge better? - If both NO -> next content + if(ispath(B.type, /obj/item/stock_parts/cell)) + var/obj/item/stock_parts/cell/tA = A + var/obj/item/stock_parts/cell/tB = B + if(!(tB.maxcharge > tA.maxcharge) && !((tB.maxcharge == tA.maxcharge) && (tB.charge > tA.charge))) continue - W.remove_from_storage(B, src) - W.handle_item_insertion(A, user, TRUE) - component_parts -= A - component_parts += B - B.loc = null - to_chat(user, "[A.name] replaced with [B.name].") - shouldplaysound = TRUE - break - for(var/obj/item/reagent_containers/glass/beaker/A in component_parts) - for(var/obj/item/reagent_containers/glass/beaker/B in W.contents) - // If it's not better -> next content - if(B.reagents.maximum_volume <= A.reagents.maximum_volume) + //If it's not cell and not better -> next content + else if(B.rating <= A.rating) continue W.remove_from_storage(B, src) - W.handle_item_insertion(A, TRUE) + W.handle_item_insertion(A, user, TRUE) component_parts -= A component_parts += B B.loc = null to_chat(user, "[A.name] replaced with [B.name].") shouldplaysound = TRUE break - RefreshParts() - else - to_chat(user, display_parts(user)) - if(shouldplaysound) - W.play_rped_sound() - return 1 + for(var/obj/item/reagent_containers/glass/beaker/A in component_parts) + for(var/obj/item/reagent_containers/glass/beaker/B in W.contents) + // If it's not better -> next content + if(B.reagents.maximum_volume <= A.reagents.maximum_volume) + continue + W.remove_from_storage(B, src) + W.handle_item_insertion(A, TRUE) + component_parts -= A + component_parts += B + B.loc = null + to_chat(user, "[A.name] replaced with [B.name].") + shouldplaysound = TRUE + break + RefreshParts() else - return 0 + to_chat(user, display_parts(user)) + if(shouldplaysound) + W.play_rped_sound() + return TRUE /obj/machinery/proc/display_parts(mob/user) . = list("Following parts detected in the machine:") diff --git a/code/game/machinery/portable_turret.dm b/code/game/machinery/portable_turret.dm index 017fede11642..567cc838aed1 100644 --- a/code/game/machinery/portable_turret.dm +++ b/code/game/machinery/portable_turret.dm @@ -962,16 +962,6 @@ GLOBAL_LIST_EMPTY(turret_icons) build_step = 6 return - if(is_pen(I)) //you can rename turrets like bots! - var/t = input(user, "Enter new turret name", name, finish_name) as text - t = sanitize(copytext_char(t, 1, MAX_MESSAGE_LEN)) - if(!t) - return - if(!in_range(src, usr) && loc != usr) - return - - finish_name = t - return ..() /obj/machinery/porta_turret_construct/screwdriver_act(mob/living/user, obj/item/I) diff --git a/code/game/machinery/quantum_pad.dm b/code/game/machinery/quantum_pad.dm index 0a6f672216b4..a57de59b9f15 100644 --- a/code/game/machinery/quantum_pad.dm +++ b/code/game/machinery/quantum_pad.dm @@ -88,11 +88,6 @@ teleport_cooldown = initial(teleport_cooldown) teleport_cooldown -= (E * 100) -/obj/machinery/quantumpad/attackby(obj/item/I, mob/user, params) - if(exchange_parts(user, I)) - return - return ..() - /obj/machinery/quantumpad/crowbar_act(mob/user, obj/item/I) . = TRUE if(!I.tool_use_check(user, 0)) diff --git a/code/game/machinery/rechargestation.dm b/code/game/machinery/rechargestation.dm index 99f063351139..5661fbc1bf7a 100644 --- a/code/game/machinery/rechargestation.dm +++ b/code/game/machinery/rechargestation.dm @@ -125,13 +125,6 @@ else icon_state = "borgcharger0" -/obj/machinery/recharge_station/attackby(obj/item/I, mob/user, params) - if(exchange_parts(user, I)) - return - - else - return ..() - /obj/machinery/recharge_station/crowbar_act(mob/user, obj/item/I) if(default_deconstruction_crowbar(user, I)) return TRUE diff --git a/code/game/machinery/recycler.dm b/code/game/machinery/recycler.dm index 36be7f6cd038..a9b800a59337 100644 --- a/code/game/machinery/recycler.dm +++ b/code/game/machinery/recycler.dm @@ -57,12 +57,6 @@ return update_icon(UPDATE_ICON_STATE) -/obj/machinery/recycler/attackby(obj/item/I, mob/user, params) - add_fingerprint(user) - if(exchange_parts(user, I)) - return - return ..() - /obj/machinery/recycler/crowbar_act(mob/user, obj/item/I) if(default_deconstruction_crowbar(user, I)) return TRUE diff --git a/code/game/machinery/shieldgen.dm b/code/game/machinery/shieldgen.dm index c51c0d667108..db9e46148d87 100644 --- a/code/game/machinery/shieldgen.dm +++ b/code/game/machinery/shieldgen.dm @@ -392,6 +392,7 @@ /obj/machinery/shieldwallgen/proc/activate() activated = TRUE START_PROCESSING(SSmachines, src) + update_icon(UPDATE_ICON_STATE) for(var/direction in GLOB.cardinal) INVOKE_ASYNC(src, PROC_REF(try_link_generators), direction) diff --git a/code/game/machinery/syndicatebomb.dm b/code/game/machinery/syndicatebomb.dm index d4d0257317dd..f6158b34e363 100644 --- a/code/game/machinery/syndicatebomb.dm +++ b/code/game/machinery/syndicatebomb.dm @@ -400,7 +400,7 @@ qdel(src) /obj/item/bombcore/badmin/summon - var/summon_path = /obj/item/food/snacks/cookie + var/summon_path = /obj/item/food/cookie var/amt_summon = 1 /obj/item/bombcore/badmin/summon/detonate() diff --git a/code/game/machinery/tcomms/tcomms_presets.dm b/code/game/machinery/tcomms/tcomms_presets.dm index 647ef13c3597..14fa95b6d6c5 100644 --- a/code/game/machinery/tcomms/tcomms_presets.dm +++ b/code/game/machinery/tcomms/tcomms_presets.dm @@ -31,6 +31,14 @@ hidden_link = TRUE password_bypass = TRUE +/// DVORAK RELAY +/obj/machinery/tcomms/relay/dvorak + network_id = "DEBUG_RELAY_DO_NOT_REMOVE" // I'll change this if needed to avoid confusion, but if I was trying to sneak into a relay system, well... + autolink_id = "STATION-CORE" + hidden_link = TRUE + password_bypass = TRUE // No one can steal this anyway. + active = TRUE + GLOBAL_VAR(cc_tcomms_relay_uid) /obj/machinery/tcomms/relay/cc/Initialize(mapload) . = ..() diff --git a/code/game/machinery/teleporter.dm b/code/game/machinery/teleporter.dm index 8956abda0143..c3285fca8eae 100644 --- a/code/game/machinery/teleporter.dm +++ b/code/game/machinery/teleporter.dm @@ -419,11 +419,6 @@ use_power(5000) return -/obj/machinery/teleport/hub/attackby(obj/item/I, mob/user, params) - if(exchange_parts(user, I)) - return - return ..() - /obj/machinery/teleport/hub/crowbar_act(mob/user, obj/item/I) if(default_deconstruction_crowbar(user, I)) return TRUE @@ -555,11 +550,6 @@ else set_light(0) -/obj/machinery/teleport/perma/attackby(obj/item/I, mob/user, params) - if(exchange_parts(user, I)) - return - return ..() - /obj/machinery/teleport/perma/crowbar_act(mob/user, obj/item/I) if(default_deconstruction_crowbar(user, I)) return TRUE @@ -634,16 +624,16 @@ return ..() /obj/machinery/teleport/station/attackby(obj/item/I, mob/user, params) - if(exchange_parts(user, I)) - return if(panel_open && istype(I, /obj/item/circuitboard/teleporter_perma)) if(!teleporter_console) to_chat(user, "[src] is not linked to a teleporter console.") return + var/obj/item/circuitboard/teleporter_perma/C = I C.target = teleporter_console.target to_chat(user, "You copy the targeting information from [src] to [C].") return + return ..() /obj/machinery/teleport/station/crowbar_act(mob/user, obj/item/I) diff --git a/code/game/machinery/vendors/contraband_vendors.dm b/code/game/machinery/vendors/contraband_vendors.dm index 0e97db6d7b2c..073e744e4ed5 100644 --- a/code/game/machinery/vendors/contraband_vendors.dm +++ b/code/game/machinery/vendors/contraband_vendors.dm @@ -70,10 +70,10 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/economy/vending/wallmed/syndicate, 32 icon_off = "nutri" icon_panel = "thin_vendor" category = VENDOR_TYPE_FOOD - products = list(/obj/item/food/snacks/chips = 6, - /obj/item/food/snacks/sosjerky = 6, - /obj/item/food/snacks/syndicake = 6, - /obj/item/food/snacks/cheesiehonkers = 6) + products = list(/obj/item/food/chips = 6, + /obj/item/food/sosjerky = 6, + /obj/item/food/syndicake = 6, + /obj/item/food/cheesiehonkers = 6) /obj/machinery/economy/vending/hydroseeds/syndicate_druglab products = list(/obj/item/seeds/ambrosia/deus = 2, diff --git a/code/game/machinery/vendors/departmental_vendors.dm b/code/game/machinery/vendors/departmental_vendors.dm index 8e1f1115fcef..2a31d622ef6c 100644 --- a/code/game/machinery/vendors/departmental_vendors.dm +++ b/code/game/machinery/vendors/departmental_vendors.dm @@ -288,7 +288,7 @@ contraband = list(/obj/item/reagent_containers/syringe/insulin = 4, /obj/item/reagent_containers/glass/bottle/sulfonal = 1, /obj/item/reagent_containers/glass/bottle/pancuronium = 1, - /obj/item/food/snacks/candy/sucker = 2) + /obj/item/food/candy/sucker = 2) armor = list(MELEE = 50, BULLET = 20, LASER = 20, ENERGY = 20, BOMB = 0, RAD = 0, FIRE = 100, ACID = 70) resistance_flags = FIRE_PROOF @@ -336,7 +336,7 @@ /obj/item/grenade/flashbang = 4, /obj/item/flash = 5, /obj/item/reagent_containers/spray/pepper = 5, - /obj/item/food/snacks/donut = 12, + /obj/item/food/donut = 12, /obj/item/storage/box/evidence = 6, /obj/item/flashlight/seclite = 4, /obj/item/restraints/legcuffs/bola/energy = 7, @@ -348,5 +348,5 @@ /obj/item/hailer = 5) refill_canister = /obj/item/vending_refill/security - prices = list(/obj/item/food/snacks/donut = 40, + prices = list(/obj/item/food/donut = 40, /obj/item/storage/fancy/donut_box = 200) //Bulk discount diff --git a/code/game/machinery/vendors/generic_vendors.dm b/code/game/machinery/vendors/generic_vendors.dm index 429a265bdb3f..9f48606fde57 100644 --- a/code/game/machinery/vendors/generic_vendors.dm +++ b/code/game/machinery/vendors/generic_vendors.dm @@ -866,9 +866,9 @@ icon_off = "nutri" icon_panel = "thin_vendor" category = VENDOR_TYPE_FOOD - products = list(/obj/item/food/snacks/tofu = 24, + products = list(/obj/item/food/tofu = 24, /obj/item/reagent_containers/drinks/ice = 12, - /obj/item/food/snacks/candy/candy_corn = 6) + /obj/item/food/candy/candy_corn = 6) contraband = list(/obj/item/kitchen/knife = 6, /obj/item/reagent_containers/drinks/coffee = 12, @@ -918,32 +918,32 @@ icon_off = "nutri" icon_panel = "thin_vendor" category = VENDOR_TYPE_FOOD - products = list(/obj/item/food/snacks/candy/candybar = 6, + products = list(/obj/item/food/candy/candybar = 6, /obj/item/reagent_containers/drinks/dry_ramen = 6, - /obj/item/food/snacks/chips = 6, - /obj/item/food/snacks/twimsts = 6, - /obj/item/food/snacks/sosjerky = 6, - /obj/item/food/snacks/no_raisin = 6, - /obj/item/food/snacks/pistachios = 6, - /obj/item/food/snacks/spacetwinkie = 6, - /obj/item/food/snacks/cheesiehonkers = 6, - /obj/item/food/snacks/tastybread = 6, - /obj/item/food/snacks/stroopwafel = 2) - - contraband = list(/obj/item/food/snacks/syndicake = 6) - - prices = list(/obj/item/food/snacks/candy/candybar = 64, + /obj/item/food/chips = 6, + /obj/item/food/twimsts = 6, + /obj/item/food/sosjerky = 6, + /obj/item/food/no_raisin = 6, + /obj/item/food/pistachios = 6, + /obj/item/food/spacetwinkie = 6, + /obj/item/food/cheesiehonkers = 6, + /obj/item/food/tastybread = 6, + /obj/item/food/stroopwafel = 2) + + contraband = list(/obj/item/food/syndicake = 6) + + prices = list(/obj/item/food/candy/candybar = 64, /obj/item/reagent_containers/drinks/dry_ramen = 32, - /obj/item/food/snacks/chips = 64, - /obj/item/food/snacks/twimsts = 64, - /obj/item/food/snacks/sosjerky = 64, - /obj/item/food/snacks/no_raisin = 80, - /obj/item/food/snacks/pistachios = 80, - /obj/item/food/snacks/spacetwinkie = 64, - /obj/item/food/snacks/cheesiehonkers = 64, - /obj/item/food/snacks/tastybread = 80, - /obj/item/food/snacks/stroopwafel = 100, - /obj/item/food/snacks/syndicake = 175) //syndicakes are genuinely kind of powerful + /obj/item/food/chips = 64, + /obj/item/food/twimsts = 64, + /obj/item/food/sosjerky = 64, + /obj/item/food/no_raisin = 80, + /obj/item/food/pistachios = 80, + /obj/item/food/spacetwinkie = 64, + /obj/item/food/cheesiehonkers = 64, + /obj/item/food/tastybread = 80, + /obj/item/food/stroopwafel = 100, + /obj/item/food/syndicake = 175) //syndicakes are genuinely kind of powerful refill_canister = /obj/item/vending_refill/snack @@ -961,19 +961,19 @@ icon_state = "chang" icon_lightmask = "chang" category = VENDOR_TYPE_FOOD - products = list(/obj/item/food/snacks/chinese/chowmein = 6, - /obj/item/food/snacks/chinese/tao = 6, - /obj/item/food/snacks/chinese/sweetsourchickenball = 6, - /obj/item/food/snacks/chinese/newdles = 6, - /obj/item/food/snacks/chinese/rice = 6, - /obj/item/food/snacks/fortunecookie = 6) - - prices = list(/obj/item/food/snacks/chinese/chowmein = 125, - /obj/item/food/snacks/chinese/tao = 125, - /obj/item/food/snacks/chinese/sweetsourchickenball = 125, - /obj/item/food/snacks/chinese/newdles = 100, - /obj/item/food/snacks/chinese/rice = 100, - /obj/item/food/snacks/fortunecookie = 50) + products = list(/obj/item/food/chinese/chowmein = 6, + /obj/item/food/chinese/tao = 6, + /obj/item/food/chinese/sweetsourchickenball = 6, + /obj/item/food/chinese/newdles = 6, + /obj/item/food/chinese/rice = 6, + /obj/item/food/fortunecookie = 6) + + prices = list(/obj/item/food/chinese/chowmein = 125, + /obj/item/food/chinese/tao = 125, + /obj/item/food/chinese/sweetsourchickenball = 125, + /obj/item/food/chinese/newdles = 100, + /obj/item/food/chinese/rice = 100, + /obj/item/food/fortunecookie = 50) refill_canister = /obj/item/vending_refill/chinese diff --git a/code/game/machinery/vendors/vending.dm b/code/game/machinery/vendors/vending.dm index 56b10af653c3..4f5603c2567d 100644 --- a/code/game/machinery/vendors/vending.dm +++ b/code/game/machinery/vendors/vending.dm @@ -140,6 +140,9 @@ /// The category of this vendor. Used for announcing brand intelligence. var/category = VENDOR_TYPE_GENERIC + /// How often will the vendor tip when you walk by it when aggressive is true? + var/aggressive_tilt_chance = 25 + /obj/machinery/economy/vending/Initialize(mapload) . = ..() var/build_inv = FALSE @@ -176,6 +179,8 @@ power_change() RegisterSignal(src, COMSIG_MOVABLE_UNTILTED, PROC_REF(on_untilt)) RegisterSignal(src, COMSIG_MOVABLE_TRY_UNTILT, PROC_REF(on_try_untilt)) + if(aggressive) + AddComponent(/datum/component/proximity_monitor) /obj/machinery/economy/vending/Destroy() SStgui.close_uis(wires) @@ -414,7 +419,7 @@ if(!aggressive || tilted || !tiltable) return - if(isliving(AM) && prob(25)) + if(isliving(AM) && prob(aggressive_tilt_chance)) AM.visible_message( "[src] suddenly topples over onto [AM]!", "[src] topples over onto you without warning!" diff --git a/code/game/mecha/mech_bay.dm b/code/game/mecha/mech_bay.dm index 7f1f01500399..be9227943b51 100644 --- a/code/game/mecha/mech_bay.dm +++ b/code/game/mecha/mech_bay.dm @@ -90,11 +90,6 @@ MC += C.rating max_charge = MC * 25 -/obj/machinery/mech_bay_recharge_port/attackby(obj/item/I, mob/user, params) - if(exchange_parts(user, I)) - return - return ..() - /obj/machinery/mech_bay_recharge_port/screwdriver_act(mob/user, obj/item/I) if(default_deconstruction_screwdriver(user, "recharge_port-o", "recharge_port", I)) return TRUE diff --git a/code/game/mecha/mech_fabricator.dm b/code/game/mecha/mech_fabricator.dm index 4df9d1b4a636..86a5576160b2 100644 --- a/code/game/mecha/mech_fabricator.dm +++ b/code/game/mecha/mech_fabricator.dm @@ -297,10 +297,10 @@ /obj/machinery/mecha_part_fabricator/attackby(obj/item/W, mob/user, params) if(default_deconstruction_screwdriver(user, "fab-o", "fab-idle", W)) return - if(exchange_parts(user, W)) - return + if(default_deconstruction_crowbar(user, W)) return TRUE + return ..() /obj/machinery/mecha_part_fabricator/attack_ghost(mob/user) diff --git a/code/game/objects/effects/effect_system/effects_chem_smoke.dm b/code/game/objects/effects/effect_system/effects_chem_smoke.dm index 0dd6e1810362..ccc7923c799f 100644 --- a/code/game/objects/effects/effect_system/effects_chem_smoke.dm +++ b/code/game/objects/effects/effect_system/effects_chem_smoke.dm @@ -45,6 +45,10 @@ /datum/effect_system/smoke_spread/chem + var/eff_range = 2 + var/eff_colour = "#12A5F4" // This is a random blue incase it doesnt get set right + var/process_count = 0 + var/max_process_count = 10 var/obj/chemholder var/list/smoked_atoms = list() @@ -94,22 +98,21 @@ /datum/effect_system/smoke_spread/chem/start(effect_range = 2) - set waitfor = FALSE - - var/color = mix_color_from_reagents(chemholder.reagents.reagent_list) - - for(var/x in 0 to 99) - for(var/i = 0, i < rand(2, 6), i++) - if(effect_range < 3) - new /obj/effect/particle_effect/chem_smoke/small(location, color) - else - new /obj/effect/particle_effect/chem_smoke(location, color) - - if(x % 10 == 0) //Once every 10 ticks. - INVOKE_ASYNC(src, PROC_REF(SmokeEm), effect_range) + eff_colour = mix_color_from_reagents(chemholder.reagents.reagent_list) + eff_range = effect_range + START_PROCESSING(SSprocessing, src) + +/datum/effect_system/smoke_spread/chem/process() + process_count++ + if(eff_range < 3) + new /obj/effect/particle_effect/chem_smoke/small(location, eff_colour) + else + new /obj/effect/particle_effect/chem_smoke(location, eff_colour) - sleep(1) - qdel(src) + INVOKE_ASYNC(src, PROC_REF(SmokeEm), eff_range) + if(process_count > max_process_count) + STOP_PROCESSING(SSprocessing, src) + qdel(src) /datum/effect_system/smoke_spread/chem/proc/SmokeEm(effect_range = 2) diff --git a/code/game/objects/effects/meteors.dm b/code/game/objects/effects/meteors.dm index edb05feb8e93..075ba79412e4 100644 --- a/code/game/objects/effects/meteors.dm +++ b/code/game/objects/effects/meteors.dm @@ -304,7 +304,7 @@ GLOBAL_LIST_INIT(meteors_ops, list(/obj/effect/meteor/goreops)) //Meaty Ops hits = 2 heavy = TRUE meteorsound = 'sound/effects/blobattack.ogg' - meteordrop = list(/obj/item/food/snacks/meat/human, /obj/item/organ/internal/heart, /obj/item/organ/internal/lungs, /obj/item/organ/internal/appendix) + meteordrop = list(/obj/item/food/meat/human, /obj/item/organ/internal/heart, /obj/item/organ/internal/lungs, /obj/item/organ/internal/appendix) var/meteorgibs = /obj/effect/gibspawner/generic /obj/effect/meteor/meaty/make_debris() @@ -323,7 +323,7 @@ GLOBAL_LIST_INIT(meteors_ops, list(/obj/effect/meteor/goreops)) //Meaty Ops //Meaty Ore Xeno edition /obj/effect/meteor/meaty/xeno color = "#5EFF00" - meteordrop = list(/obj/item/food/snacks/monstermeat/xenomeat) + meteordrop = list(/obj/item/food/monstermeat/xenomeat) meteorgibs = /obj/effect/gibspawner/xeno /obj/effect/meteor/meaty/xeno/Initialize(mapload, target) @@ -342,7 +342,7 @@ GLOBAL_LIST_INIT(meteors_ops, list(/obj/effect/meteor/goreops)) //Meaty Ops hits = 10 hitpwr = EXPLODE_DEVASTATE meteorsound = 'sound/effects/blobattack.ogg' - meteordrop = list(/obj/item/food/snacks/meat) + meteordrop = list(/obj/item/food/meat) var/meteorgibs = /obj/effect/gibspawner/generic /obj/effect/meteor/goreops/make_debris() @@ -370,7 +370,7 @@ GLOBAL_LIST_INIT(meteors_ops, list(/obj/effect/meteor/goreops)) //Meaty Ops hits = 10 heavy = TRUE dropamt = 1 - meteordrop = list(/obj/item/clothing/head/hardhat/pumpkinhead, /obj/item/food/snacks/grown/pumpkin) + meteordrop = list(/obj/item/clothing/head/hardhat/pumpkinhead, /obj/item/food/grown/pumpkin) /obj/effect/meteor/pumpkin/Initialize(mapload, target) . = ..() diff --git a/code/game/objects/effects/spawners/airlock_spawner.dm b/code/game/objects/effects/spawners/airlock_spawner.dm index a81fc5285fe9..cfeea9b4448e 100644 --- a/code/game/objects/effects/spawners/airlock_spawner.dm +++ b/code/game/objects/effects/spawners/airlock_spawner.dm @@ -33,7 +33,6 @@ This spawner places pipe leading up to the interior door, you will need to finis var/tiles_in_x_direction = 1 var/tiles_in_y_direction = 1 var/id_to_link - req_access_txt = ACCESS_EXTERNAL_AIRLOCKS //If req_one_access_txt is set, this is ignored var/door_name = "external access" var/door_type = /obj/machinery/door/airlock/external/glass var/one_door_interior //For square airlocks, if you set this then a) only one door will spawn, and b) you can choose if the door should go opposite to how it normally goes. Please use the define @@ -58,6 +57,9 @@ This spawner places pipe leading up to the interior door, you will need to finis handle_pipes_creation(turf_interior) handle_control_placement() + for(var/obj/effect/mapping_helpers/airlock/access/access_helper in loc) + qdel(access_helper) + return INITIALIZE_HINT_QDEL /obj/effect/spawner/airlock/proc/get_airlock_location(desired_direction) //Finds a turf to place an airlock and returns it, this turf will be in the middle of the relevant wall @@ -198,12 +200,24 @@ This spawner places pipe leading up to the interior door, you will need to finis created_pump.autolink_id = VENT_ID /obj/effect/spawner/airlock/proc/set_access_helper(obj/I) - if(req_one_access_txt == "0") - I.req_access_txt = "[req_access_txt]" + var/obj/machinery/door/airlock/airlock = I + if(istype(airlock)) + for(var/obj/effect/mapping_helpers/airlock/access/access_helper in loc) + access_helper.payload(airlock) + // Since airlocks are created first, we steal the payload logic + // to apply to the controls later + req_access = airlock.req_access + req_access_txt = airlock.req_access_txt + req_one_access = airlock.req_one_access + req_one_access_txt = airlock.req_one_access_txt else - I.req_one_access_txt = "[req_one_access_txt]" + I.req_access = req_access + I.req_access_txt = req_access_txt + I.req_one_access = req_one_access + I.req_one_access_txt = req_one_access_txt + +// MARK: AIRLOCK HELPERS -//Premade airlocks for mappers, probably won't need all of these but whatever /obj/effect/spawner/airlock/s_to_n name = "1 by 1 airlock spawner (interior south, exterior north)" icon_state = "1x1_S_to_N" @@ -222,7 +236,8 @@ This spawner places pipe leading up to the interior door, you will need to finis interior_direction = WEST exterior_direction = EAST -/// Long and thin +// MARK: LONG AIRLOCKS + /obj/effect/spawner/airlock/long name = "long airlock spawner (interior north, exterior south)" icon_state = "1x2_N_to_S" @@ -233,14 +248,6 @@ This spawner places pipe leading up to the interior door, you will need to finis icon_state = "1x2_S_to_N" tiles_in_y_direction = 2 -/obj/effect/spawner/airlock/s_to_n/long/square/engineer - req_access_txt = ACCESS_ENGINE_EQUIP - door_name = "engineering external access" - -/obj/effect/spawner/airlock/s_to_n/long/engineer - req_access_txt = ACCESS_ENGINE_EQUIP - door_name = "engineering external access" - /obj/effect/spawner/airlock/e_to_w/long name = "long airlock spawner (interior east, exterior west)" icon_state = "1x2_E_to_W" @@ -251,7 +258,7 @@ This spawner places pipe leading up to the interior door, you will need to finis icon_state = "1x2_W_to_E" tiles_in_x_direction = 2 -/// Square +// MARK: SQUARE AIRLOCKS /obj/effect/spawner/airlock/long/square name = "square airlock spawner (interior north, exterior south)" icon_state = "2x2_N_to_S" @@ -306,66 +313,8 @@ This spawner places pipe leading up to the interior door, you will need to finis tiles_in_x_direction = 3 tiles_in_y_direction = 3 -/obj/effect/spawner/airlock/e_to_w/arrivals - req_access_txt = null - -/obj/effect/spawner/airlock/engineer - req_access_txt = ACCESS_ENGINE_EQUIP - door_name = "engineering external access" - -/obj/effect/spawner/airlock/e_to_w/engineer - req_access_txt = ACCESS_ENGINE_EQUIP - door_name = "engineering external access" - -/obj/effect/spawner/airlock/w_to_e/engineer - req_access_txt = ACCESS_ENGINE_EQUIP - door_name = "engineering external access" - -/obj/effect/spawner/airlock/s_to_n/engineer - req_access_txt = ACCESS_ENGINE_EQUIP - door_name = "engineering external access" - -/obj/effect/spawner/airlock/long/engineer - req_access_txt = ACCESS_ENGINE_EQUIP - door_name = "engineering external access" - -/obj/effect/spawner/airlock/long/square/engine - req_access_txt = ACCESS_ENGINE_EQUIP - door_name = "engine external access" - icon_state = "2x2_N_to_S_leftdoors" - door_type = /obj/machinery/door/airlock/external - one_door_interior = DOOR_NORMAL_PLACEMENT - one_door_exterior = DOOR_NORMAL_PLACEMENT - -/obj/effect/spawner/airlock/long/square/engine/reversed - icon_state = "2x2_N_to_S_rightdoors" - one_door_interior = DOOR_FLIPPED_PLACEMENT - one_door_exterior = DOOR_FLIPPED_PLACEMENT - -/obj/effect/spawner/airlock/w_to_e/long/square/wide/mining - door_name = "mining external access" - req_access_txt = ACCESS_MINING - -/obj/effect/spawner/airlock/long/square/wide/mining - door_name = "mining external access" - req_access_txt = ACCESS_MINING - -/obj/effect/spawner/airlock/e_to_w/minisat - door_name = "minisat external access" - req_access_txt = ACCESS_MINISAT - /obj/effect/spawner/airlock/long/square/e_to_s/telecoms door_name = "telecoms external access" - req_access_txt = "61;13" //ACCESS_TCOMSAT,ACCESS_EXTERNAL_AIRLOCKS - door_type = /obj/machinery/door/airlock/external - -/obj/effect/spawner/airlock/long/square/three/syndicate - name = "3 by 3 square airlock spawner (interior west, exterior north)" - icon_state = "3x3_W_to_N" - interior_direction = WEST - exterior_direction = NORTH - door_name = "ship external access" - req_access_txt = ACCESS_SYNDICATE door_type = /obj/machinery/door/airlock/external #undef HALF_X diff --git a/code/game/objects/effects/spawners/lootdrop.dm b/code/game/objects/effects/spawners/lootdrop.dm index b700e7971298..069fd19b3b21 100644 --- a/code/game/objects/effects/spawners/lootdrop.dm +++ b/code/game/objects/effects/spawners/lootdrop.dm @@ -486,7 +486,7 @@ /obj/item/clothing/under/new_soviet = 50, /obj/item/clothing/suit/sovietcoat = 50, /obj/item/clothing/head/ushanka = 50, - /obj/item/food/snacks/grown/potato = 50, + /obj/item/food/grown/potato = 50, /obj/item/reagent_containers/drinks/bottle/vodka/badminka = 50, /obj/item/clothing/head/sovietsidecap = 50, /obj/item/flag/ussp = 30, @@ -745,20 +745,20 @@ lootcount = 3 lootdoubles = FALSE var/soups = list( - /obj/item/food/snacks/soup/beetsoup, - /obj/item/food/snacks/soup/stew, - /obj/item/food/snacks/soup/hotchili, - /obj/item/food/snacks/soup/nettlesoup, - /obj/item/food/snacks/soup/meatballsoup) + /obj/item/food/soup/beetsoup, + /obj/item/food/soup/stew, + /obj/item/food/soup/hotchili, + /obj/item/food/soup/nettlesoup, + /obj/item/food/soup/meatballsoup) var/salads = list( - /obj/item/food/snacks/salad/herb, - /obj/item/food/snacks/salad/valid, - /obj/item/food/snacks/salad/aesir) + /obj/item/food/salad/herb, + /obj/item/food/salad/valid, + /obj/item/food/salad/aesir) var/mains = list( - /obj/item/food/snacks/enchiladas, - /obj/item/food/snacks/stewedsoymeat, - /obj/item/food/snacks/burger/bigbite, - /obj/item/food/snacks/burger/superbite) + /obj/item/food/enchiladas, + /obj/item/food/stewedsoymeat, + /obj/item/food/burger/bigbite, + /obj/item/food/burger/superbite) /obj/effect/spawner/lootdrop/three_course_meal/Initialize(mapload) loot = list(pick(soups) = 1,pick(salads) = 1,pick(mains) = 1) diff --git a/code/game/objects/effects/spawners/mess_spawners.dm b/code/game/objects/effects/spawners/mess_spawners.dm index 164777537c7d..9f97a15782c9 100644 --- a/code/game/objects/effects/spawners/mess_spawners.dm +++ b/code/game/objects/effects/spawners/mess_spawners.dm @@ -182,7 +182,7 @@ /obj/effect/spawner/themed_mess/cooking/drop_object(turf/T) var/extra_trash = pick( /obj/item/trash/plate, - /obj/item/food/snacks/meat, + /obj/item/food/meat, /obj/item/trash/snack_bowl, ) var/obj/trash = new extra_trash(T) diff --git a/code/game/objects/effects/spawners/random_spawners.dm b/code/game/objects/effects/spawners/random_spawners.dm index 00c4c9434870..a9decc5055eb 100644 --- a/code/game/objects/effects/spawners/random_spawners.dm +++ b/code/game/objects/effects/spawners/random_spawners.dm @@ -265,7 +265,7 @@ spawn_inside = null result = list(/datum/nothing = 1, /obj/item/wrench = 1, - /obj/item/food/snacks/syndicake = 1, + /obj/item/food/syndicake = 1, /obj/item/coin/antagtoken/syndicate = 1, /obj/item/gun/projectile/automatic/pistol = 1) diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 8c6602ec290e..8374e17145d0 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -428,7 +428,7 @@ GLOBAL_DATUM_INIT(welding_sparks, /mutable_appearance, mutable_appearance('icons if(isstorage(src)) // Don't tape the bag if we can put the duct tape inside it instead var/obj/item/storage/bag = src if(bag.can_be_inserted(I)) - return ..() + return var/obj/item/stack/tape_roll/TR = I var/list/clickparams = params2list(params) var/x_offset = text2num(clickparams["icon-x"]) @@ -443,8 +443,6 @@ GLOBAL_DATUM_INIT(welding_sparks, /mutable_appearance, mutable_appearance('icons user.transfer_fingerprints_to(src) else to_chat(user, "You don't have enough tape to do that!") - else - return ..() /obj/item/proc/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK) var/signal_result = (SEND_SIGNAL(src, COMSIG_ITEM_HIT_REACT, owner, hitby, damage, attack_type)) + prob(final_block_chance) diff --git a/code/game/objects/items/devices/autopsy.dm b/code/game/objects/items/devices/autopsy.dm index af9646366c7d..d9304ac3bd98 100644 --- a/code/game/objects/items/devices/autopsy.dm +++ b/code/game/objects/items/devices/autopsy.dm @@ -86,7 +86,6 @@ R.name = "Official Coroner's Report - [dead_name]" R.info = "
[station_name()] - Coroner's Report


Name of Deceased: [dead_name]

Rank of Deceased: [rank]

Time of Death: [tod]

Cause of Death: [cause]

Trace Chemicals: [chems]

Additional Coroner's Notes: [notes]

Coroner's Signature: " playsound(loc, 'sound/goonstation/machines/printer_thermal.ogg', 50, TRUE) - sleep(1 SECONDS) user.put_in_hands(R) /obj/item/autopsy_scanner/attack_self(mob/user) diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm index 3260884c7f32..0a0d634c1932 100644 --- a/code/game/objects/items/devices/scanners.dm +++ b/code/game/objects/items/devices/scanners.dm @@ -746,7 +746,7 @@ SLIME SCANNER dat += "
[TAB][R] [details ? ":([R.volume / one_percent]%)" : ""]" else blood_type = R.data["blood_type"] - dat += "
[TAB][blood_type ? "[blood_type]" : ""] [R.name] [details ? ":([R.volume / one_percent]%)" : ""]" + dat += "
[TAB][blood_type ? "[blood_type]" : ""] [R.data["species"]] [R.name] [details ? ":([R.volume / one_percent]%)" : ""]" if(dat) to_chat(user, "Chemicals found: [dat]") datatoprint = dat diff --git a/code/game/objects/items/devices/transfer_valve.dm b/code/game/objects/items/devices/transfer_valve.dm index ce408dc2f5d1..465a5da14c5d 100644 --- a/code/game/objects/items/devices/transfer_valve.dm +++ b/code/game/objects/items/devices/transfer_valve.dm @@ -1,3 +1,6 @@ +///if the icon_state for the TTV's tank is in assemblies.dmi +#define TTV_TANK_ICON_STATES list("anesthetic", "emergency", "emergency_double", "emergency_engi", "emergency_sleep", "jetpack", "jetpack_black", "jetpack_void", "oxygen", "oxygen_f", "oxygen_fr", "plasma") + /obj/item/transfer_valve icon = 'icons/obj/assemblies.dmi' name = "tank transfer valve" @@ -166,12 +169,23 @@ underlays.Cut() if(!tank_one && !tank_two && !attached_device) return + if(tank_one) - . += "[tank_one.icon_state]" + var/tank_one_icon_state = tank_one.icon_state + if(!(tank_one_icon_state in TTV_TANK_ICON_STATES)) //if no valid sprite fall back to an oxygen tank + tank_one_icon_state = "oxygen" + stack_trace("[tank_one] was inserted into a TTV with an invalid icon_state, \"[tank_one.icon_state]\"") + . += "[tank_one_icon_state]" + if(tank_two) - var/icon/J = new(icon, icon_state = "[tank_two.icon_state]") - J.Shift(WEST, 13) - underlays += J + var/tank_two_icon_state = tank_two.icon_state + if(!(tank_two_icon_state in TTV_TANK_ICON_STATES)) //if no valid sprite fall back to an oxygen tank + tank_two_icon_state = "oxygen" + stack_trace("[tank_two] was inserted into a TTV with an invalid icon_state, \"[tank_two.icon_state]\"") + var/icon/tank_two_icon = new(icon, icon_state = tank_two_icon_state) + tank_two_icon.Shift(WEST, 13) + underlays += tank_two_icon + if(attached_device) . += "device" @@ -225,3 +239,5 @@ split_gases() valve_open = FALSE update_icon() + +#undef TTV_TANK_ICON_STATES diff --git a/code/game/objects/items/documents.dm b/code/game/objects/items/documents.dm index dd2c351da2f2..3304620db402 100644 --- a/code/game/objects/items/documents.dm +++ b/code/game/objects/items/documents.dm @@ -56,3 +56,13 @@ poison_total -= poison_dose add_attack_logs(src, user, "Picked up [src], the trapped syndicate documents") return ..() + +/obj/item/documents/syndicate/dvorak_blackbox + name = "\improper D.V.O.R.A.K Blackbox Disk" + desc = "This disk contains a full record of all information that passed through D.V.O.R.A.K's systems during its uptime, not to mention what may have gone wrong. NT might be interested in this." + icon = 'icons/obj/module.dmi' + w_class = WEIGHT_CLASS_TINY + item_state = "card-id" + icon_state = "holodisk" + drop_sound = 'sound/items/handling/disk_drop.ogg' + pickup_sound = 'sound/items/handling/disk_pickup.ogg' diff --git a/code/game/objects/items/granters/action_granters/summon_cheese.dm b/code/game/objects/items/granters/action_granters/summon_cheese.dm index f86c89c86364..29209f6479cb 100644 --- a/code/game/objects/items/granters/action_granters/summon_cheese.dm +++ b/code/game/objects/items/granters/action_granters/summon_cheese.dm @@ -22,7 +22,7 @@ /obj/item/book/granter/spell/summon_cheese/recoil(mob/living/user) to_chat(user, "[src] turns into a wedge of cheese!") - var/obj/item/food/snacks/cheesewedge/presliced/book_cheese = new + var/obj/item/food/cheesewedge/presliced/book_cheese = new user.drop_item() user.put_in_hands(book_cheese) qdel(src) @@ -35,7 +35,7 @@ overlay = null action_icon_state = "cheese_wedge" action_background_icon_state = "bg_spell" - summon_type = list(/obj/item/food/snacks/cheesewedge/presliced) + summon_type = list(/obj/item/food/cheesewedge/presliced) summon_amt = 9 aoe_range = 1 summon_ignore_prev_spawn_points = TRUE diff --git a/code/game/objects/items/mixing_bowl.dm b/code/game/objects/items/mixing_bowl.dm index 0beed2a583a4..f7c7b9c9697e 100644 --- a/code/game/objects/items/mixing_bowl.dm +++ b/code/game/objects/items/mixing_bowl.dm @@ -68,20 +68,20 @@ var/list/items_measures_p = list() for(var/obj/O in contents) var/display_name = O.name - if(istype(O,/obj/item/food/snacks/egg)) + if(istype(O,/obj/item/food/egg)) items_measures[display_name] = "egg" items_measures_p[display_name] = "eggs" - if(istype(O,/obj/item/food/snacks/tofu)) + if(istype(O,/obj/item/food/tofu)) items_measures[display_name] = "tofu chunk" items_measures_p[display_name] = "tofu chunks" - if(istype(O,/obj/item/food/snacks/meat)) //any meat + if(istype(O,/obj/item/food/meat)) //any meat items_measures[display_name] = "slab of meat" items_measures_p[display_name] = "slabs of meat" - if(istype(O,/obj/item/food/snacks/donkpocket)) + if(istype(O,/obj/item/food/donkpocket)) display_name = "Turnovers" items_measures[display_name] = "turnover" items_measures_p[display_name] = "turnovers" - if(istype(O,/obj/item/food/snacks/carpmeat)) + if(istype(O,/obj/item/food/carpmeat)) items_measures[display_name] = "fillet of meat" items_measures_p[display_name] = "fillets of meat" items_counts[display_name]++ @@ -165,7 +165,7 @@ if(id) amount += reagents.get_reagent_amount(id) reagents.clear_reagents() - var/obj/item/food/snacks/badrecipe/mysteryfood = new(get_turf(source)) + var/obj/item/food/badrecipe/mysteryfood = new(get_turf(source)) mysteryfood.reagents.add_reagent("carbon", amount) mysteryfood.reagents.add_reagent("????", amount / 10) make_dirty(75) diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index 45ceb0577851..b7d53ab3d383 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -785,8 +785,8 @@ item_state = "plushie_ipc" /obj/item/toy/plushie/ipcplushie/attackby(obj/item/B, mob/user, params) - if(istype(B, /obj/item/food/snacks/breadslice)) - new /obj/item/food/snacks/toast(get_turf(loc)) + if(istype(B, /obj/item/food/breadslice)) + new /obj/item/food/toast(get_turf(loc)) to_chat(user, "You insert bread into the toaster.") playsound(loc, 'sound/machines/ding.ogg', 50, 1) qdel(B) diff --git a/code/game/objects/items/weapons/AI_modules.dm b/code/game/objects/items/weapons/AI_modules.dm index c2d555010ed8..3e004dd58686 100755 --- a/code/game/objects/items/weapons/AI_modules.dm +++ b/code/game/objects/items/weapons/AI_modules.dm @@ -64,6 +64,7 @@ AI MODULES to_chat(R, "Ваши законы теперь:") R.show_laws() to_chat(usr, "Загрузка завершена. Законы ИИ были успешно изменены.") + return TRUE else if(istype(C, /obj/machinery/computer/borgupload)) var/obj/machinery/computer/borgupload/comp = C diff --git a/code/game/objects/items/weapons/RSF.dm b/code/game/objects/items/weapons/RSF.dm index e06f2c8001dd..8c5895727298 100644 --- a/code/game/objects/items/weapons/RSF.dm +++ b/code/game/objects/items/weapons/RSF.dm @@ -27,10 +27,10 @@ "Pen" = /obj/item/pen, "Dice Pack" = /obj/item/storage/bag/dice, "Cigarette" = /obj/item/clothing/mask/cigarette, - "Newdles" = /obj/item/food/snacks/chinese/newdles, - "Donut" = /obj/item/food/snacks/donut, + "Newdles" = /obj/item/food/chinese/newdles, + "Donut" = /obj/item/food/donut, "Chicken Soup" = /obj/item/reagent_containers/drinks/chicken_soup, - "Tofu Burger" = /obj/item/food/snacks/burger/tofu) + "Tofu Burger" = /obj/item/food/burger/tofu) var/static/list/rsf_icons = list("Drinking Glass" = image(icon = 'icons/obj/drinks.dmi', icon_state = "glass_empty"), "Paper" = image(icon = 'icons/obj/bureaucracy.dmi', icon_state = "paper"), "Pen" = image(icon = 'icons/obj/bureaucracy.dmi', icon_state = "pen"), diff --git a/code/game/objects/items/weapons/cigs.dm b/code/game/objects/items/weapons/cigs.dm index 740101a388f6..4adb39fdb883 100644 --- a/code/game/objects/items/weapons/cigs.dm +++ b/code/game/objects/items/weapons/cigs.dm @@ -522,8 +522,8 @@ LIGHTERS ARE IN LIGHTERS.DM // Refill or light the pipe /obj/item/clothing/mask/cigarette/pipe/attackby(obj/item/I, mob/user, params) - if(istype(I, /obj/item/food/snacks/grown)) - var/obj/item/food/snacks/grown/O = I + if(istype(I, /obj/item/food/grown)) + var/obj/item/food/grown/O = I if(O.dry) if(reagents.total_volume == reagents.maximum_volume) to_chat(user, "[src] is full!") @@ -568,10 +568,10 @@ LIGHTERS ARE IN LIGHTERS.DM /obj/item/rollingpaper/afterattack(atom/target, mob/user, proximity) if(!proximity) return - if(!istype(target, /obj/item/food/snacks/grown)) + if(!istype(target, /obj/item/food/grown)) return ..() - var/obj/item/food/snacks/grown/plant = target + var/obj/item/food/grown/plant = target if(!plant.dry) to_chat(user, "You need to dry this first!") return diff --git a/code/game/objects/items/weapons/dice.dm b/code/game/objects/items/weapons/dice.dm index f5679c0ad1ef..79ba850f4fe3 100644 --- a/code/game/objects/items/weapons/dice.dm +++ b/code/game/objects/items/weapons/dice.dm @@ -226,7 +226,7 @@ if(11) //Cookie T.visible_message("A cookie appears out of thin air!") - var/obj/item/food/snacks/cookie/C = new(drop_location()) + var/obj/item/food/cookie/C = new(drop_location()) create_smoke(2) C.name = "Cookie of Fate" if(12) diff --git a/code/game/objects/items/weapons/gift_wrappaper.dm b/code/game/objects/items/weapons/gift_wrappaper.dm index 00cdd95782b8..ffc83904ed83 100644 --- a/code/game/objects/items/weapons/gift_wrappaper.dm +++ b/code/game/objects/items/weapons/gift_wrappaper.dm @@ -79,8 +79,8 @@ /obj/random/mech, /obj/item/toy/spinningtoy, /obj/item/toy/sword, - /obj/item/food/snacks/grown/ambrosia/deus, - /obj/item/food/snacks/grown/ambrosia/vulgaris, + /obj/item/food/grown/ambrosia/deus, + /obj/item/food/grown/ambrosia/vulgaris, /obj/item/paicard, /obj/item/instrument/violin, /obj/item/instrument/guitar, diff --git a/code/game/objects/items/weapons/kitchen.dm b/code/game/objects/items/weapons/kitchen.dm index 7e68911d6e6d..7b4dfe477bac 100644 --- a/code/game/objects/items/weapons/kitchen.dm +++ b/code/game/objects/items/weapons/kitchen.dm @@ -57,7 +57,7 @@ return ..() if(length(contents)) - var/obj/item/food/snacks/toEat = contents[1] + var/obj/item/food/toEat = contents[1] if(istype(toEat)) if(C.eat(toEat, user)) toEat.On_Consume(C, user) diff --git a/code/game/objects/items/weapons/stock_parts.dm b/code/game/objects/items/weapons/stock_parts.dm index 570c1c8f8b0a..0e3ddf146831 100644 --- a/code/game/objects/items/weapons/stock_parts.dm +++ b/code/game/objects/items/weapons/stock_parts.dm @@ -1,5 +1,6 @@ -///////////////////////////////////////Stock Parts ///////////////////////////////// - +//////////////////////////////////////// +// MARK: RPEDs +//////////////////////////////////////// /obj/item/storage/part_replacer name = "Rapid Part Exchange Device" desc = "Special mechanical module made to store, sort, and apply standard machine parts." @@ -21,11 +22,11 @@ display_contents_with_number = TRUE max_w_class = WEIGHT_CLASS_NORMAL max_combined_w_class = 100 + toolspeed = 1 + usesound = 'sound/items/rped.ogg' var/works_from_distance = FALSE var/primary_sound = 'sound/items/rped.ogg' var/alt_sound = null - toolspeed = 1 - usesound = 'sound/items/rped.ogg' /obj/item/storage/part_replacer/Initialize(mapload) . = ..() @@ -34,6 +35,7 @@ /obj/item/storage/part_replacer/can_be_inserted(obj/item/I, stop_messages = FALSE) if(!istype(I, /obj/item/reagent_containers/glass/beaker)) return ..() + var/obj/item/reagent_containers/glass/beaker/B = I if(B.reagents?.total_volume) if(!stop_messages) @@ -41,18 +43,26 @@ return FALSE return ..() -/obj/item/storage/part_replacer/afterattack(obj/machinery/M, mob/user, flag, params) - if(!flag && works_from_distance && istype(M)) - // Make sure its in range - if(get_dist(src, M) <= (user.client.maxview() + 2)) - if(M.component_parts) - M.exchange_parts(user, src) - user.Beam(M,icon_state="rped_upgrade", icon='icons/effects/effects.dmi', time=5) - else - message_admins("\[EXPLOIT] [key_name_admin(user)] attempted to upgrade machinery with a BRPED via a camera console. (Attempted range exploit)") - playsound(src, 'sound/machines/synth_no.ogg', 15, TRUE) - to_chat(user, "ERROR: [M] is out of [src]'s range!") +/obj/item/storage/part_replacer/afterattack(obj/machinery/M, mob/user, proximity_flag, params) + if(!istype(M)) + return ..() + + if(!proximity_flag && !works_from_distance) + return + + if(get_dist(src, M) <= (user.client.maxview() + 2)) + if(M.component_parts) + M.exchange_parts(user, src) + if(works_from_distance) + user.Beam(M, icon_state="rped_upgrade", icon='icons/effects/effects.dmi', time=5) + else + message_admins("\[EXPLOIT] [key_name_admin(user)] attempted to upgrade machinery with a BRPED via a camera console (attempted range exploit).") + playsound(src, 'sound/machines/synth_no.ogg', 15, TRUE) + to_chat(user, "ERROR: [M] is out of [src]'s range!") +//////////////////////////////////////// +// Bluespace Part Replacer +//////////////////////////////////////// /obj/item/storage/part_replacer/bluespace name = "bluespace rapid part exchange device" desc = "A version of the RPED that allows for replacement of parts and scanning from a distance, along with higher capacity for parts." @@ -85,6 +95,9 @@ else playsound(src, primary_sound, 40, 1) +//////////////////////////////////////// +// MARK: Stock parts +//////////////////////////////////////// /obj/item/stock_parts name = "stock part" desc = "What?" diff --git a/code/game/objects/items/weapons/storage/backpack.dm b/code/game/objects/items/weapons/storage/backpack.dm index b126796b3b37..be43682943e4 100644 --- a/code/game/objects/items/weapons/storage/backpack.dm +++ b/code/game/objects/items/weapons/storage/backpack.dm @@ -116,7 +116,7 @@ new /obj/item/radio/headset/headset_service(src) new /obj/item/pda/clown(src) new /obj/item/storage/box/survival(src) - new /obj/item/food/snacks/grown/banana(src) + new /obj/item/food/grown/banana(src) new /obj/item/stamp/clown(src) new /obj/item/toy/crayon/rainbow(src) new /obj/item/storage/fancy/crayons(src) @@ -752,7 +752,7 @@ value += 1 if(8) if(prob(25)) - new /obj/item/food/snacks/grown/nymph_pod(src) + new /obj/item/food/grown/nymph_pod(src) new /obj/item/slimepotion/sentience(src) else new /obj/item/paicard(src) //Still useful, not a point useful. @@ -762,8 +762,8 @@ /obj/item/storage/box/syndidonkpockets, // Healing + speed /obj/item/reagent_containers/drinks/bottle/dragonsbreath, // Killing /obj/item/reagent_containers/drinks/bottle/immortality, // Super healing for 20 seconds - /obj/item/food/snacks/meatsteak/stimulating, //Healing + stun immunity - /obj/item/food/snacks/plum_pie ) // Great healing over long period of time + /obj/item/food/meatsteak/stimulating, //Healing + stun immunity + /obj/item/food/plum_pie ) // Great healing over long period of time new pickedt(src) @@ -793,13 +793,13 @@ volume = 5 list_reagents = list("adminordrazine" = 5) -/obj/item/food/snacks/meatsteak/stimulating +/obj/item/food/meatsteak/stimulating name = "stimulating steak" desc = "Stimulate your senses." list_reagents = list("nutriment" = 5, "stimulants" = 25) bitesize = 100 -/obj/item/food/snacks/plum_pie +/obj/item/food/plum_pie name = "perfect plum pie" desc = "The Jack Horner brand of pie. 2 big thumbs up." icon = 'icons/obj/food/bakedgoods.dmi' diff --git a/code/game/objects/items/weapons/storage/bags.dm b/code/game/objects/items/weapons/storage/bags.dm index fd596ae58b35..a40a41c986e8 100644 --- a/code/game/objects/items/weapons/storage/bags.dm +++ b/code/game/objects/items/weapons/storage/bags.dm @@ -209,10 +209,10 @@ can_hold = list( /obj/item/seeds, /obj/item/unsorted_seeds, - /obj/item/food/snacks/grown, + /obj/item/food/grown, /obj/item/grown, - /obj/item/food/snacks/grown/ash_flora, - /obj/item/food/snacks/honeycomb) + /obj/item/food/grown/ash_flora, + /obj/item/food/honeycomb) cant_hold = list(/obj/item/grown/bananapeel/traitorpeel) resistance_flags = FLAMMABLE @@ -398,7 +398,7 @@ return ..() /obj/item/storage/bag/tray/cookies_tray - var/cookie = /obj/item/food/snacks/cookie + var/cookie = /obj/item/food/cookie /obj/item/storage/bag/tray/cookies_tray/populate_contents() // By Azule Utama, thank you a lot! for(var/i in 1 to 6) @@ -407,7 +407,7 @@ update_icon(UPDATE_OVERLAYS) /obj/item/storage/bag/tray/cookies_tray/sugarcookie - cookie = /obj/item/food/snacks/sugarcookie + cookie = /obj/item/food/sugarcookie //////////////////////////////////////// // MARK: Chemistry bag @@ -437,7 +437,7 @@ storage_slots = 25 max_combined_w_class = 200 w_class = WEIGHT_CLASS_TINY - can_hold = list(/obj/item/slime_extract, /obj/item/food/snacks/monkeycube, + can_hold = list(/obj/item/slime_extract, /obj/item/food/monkeycube, /obj/item/reagent_containers/syringe, /obj/item/reagent_containers/glass/beaker, /obj/item/reagent_containers/glass/bottle, /obj/item/reagent_containers/iv_bag, /obj/item/reagent_containers/hypospray/autoinjector/epinephrine) diff --git a/code/game/objects/items/weapons/storage/belt.dm b/code/game/objects/items/weapons/storage/belt.dm index 6043fdfbad2e..24257e07a92c 100644 --- a/code/game/objects/items/weapons/storage/belt.dm +++ b/code/game/objects/items/weapons/storage/belt.dm @@ -300,7 +300,7 @@ /obj/item/clothing/glasses, /obj/item/ammo_casing/shotgun, /obj/item/ammo_box, - /obj/item/food/snacks/donut, + /obj/item/food/donut, /obj/item/kitchen/knife/combat, /obj/item/melee/baton, /obj/item/melee/classic_baton, @@ -353,7 +353,7 @@ /obj/item/clothing/glasses, /obj/item/ammo_casing/shotgun, /obj/item/ammo_box, - /obj/item/food/snacks/donut, + /obj/item/food/donut, /obj/item/kitchen/knife/combat, /obj/item/melee/baton, /obj/item/melee/classic_baton, @@ -1007,6 +1007,6 @@ /obj/item/reagent_containers/drinks/bottle, /obj/item/reagent_containers/drinks/cans, /obj/item/reagent_containers/drinks/shaker, - /obj/item/food/snacks, + /obj/item/food, /obj/item/reagent_containers/condiment, /obj/item/reagent_containers/glass/beaker) diff --git a/code/game/objects/items/weapons/storage/boxes.dm b/code/game/objects/items/weapons/storage/boxes.dm index 570c764f553e..e0ce91148662 100644 --- a/code/game/objects/items/weapons/storage/boxes.dm +++ b/code/game/objects/items/weapons/storage/boxes.dm @@ -349,8 +349,8 @@ desc = "Drymate brand monkey cubes. Just add water!" icon_state = "monkey_box" storage_slots = 7 - can_hold = list(/obj/item/food/snacks/monkeycube) - var/monkey_cube_type = /obj/item/food/snacks/monkeycube + can_hold = list(/obj/item/food/monkeycube) + var/monkey_cube_type = /obj/item/food/monkeycube /obj/item/storage/box/monkeycubes/populate_contents() for(var/I in 1 to 5) @@ -358,37 +358,37 @@ /obj/item/storage/box/monkeycubes/syndicate desc = "Waffle Co. brand monkey cubes. Just add water and a dash of subterfuge!" - monkey_cube_type = /obj/item/food/snacks/monkeycube/syndicate + monkey_cube_type = /obj/item/food/monkeycube/syndicate /obj/item/storage/box/monkeycubes/farwacubes name = "farwa cube box" desc = "Drymate brand farwa cubes. Just add water!" icon_state = "farwa_box" - monkey_cube_type = /obj/item/food/snacks/monkeycube/farwacube + monkey_cube_type = /obj/item/food/monkeycube/farwacube /obj/item/storage/box/monkeycubes/stokcubes name = "stok cube box" desc = "Drymate brand stok cubes. Just add water!" icon_state = "stok_box" - monkey_cube_type = /obj/item/food/snacks/monkeycube/stokcube + monkey_cube_type = /obj/item/food/monkeycube/stokcube /obj/item/storage/box/monkeycubes/neaeracubes name = "neaera cube box" desc = "Drymate brand neaera cubes. Just add water!" icon_state = "neaera_box" - monkey_cube_type = /obj/item/food/snacks/monkeycube/neaeracube + monkey_cube_type = /obj/item/food/monkeycube/neaeracube /obj/item/storage/box/monkeycubes/wolpincubes name = "wolpin cube box" desc = "Drymate brand wolpin cubes. Just add water!" icon_state = "wolpin_box" - monkey_cube_type = /obj/item/food/snacks/monkeycube/wolpincube + monkey_cube_type = /obj/item/food/monkeycube/wolpincube /obj/item/storage/box/monkeycubes/nian_worme_cubes name = "nian worme cube box" desc = "Nian Trade Guild brand worme cubes. Just add water!" icon_state = "nian_worme_box" - monkey_cube_type = /obj/item/food/snacks/monkeycube/nian_wormecube + monkey_cube_type = /obj/item/food/monkeycube/nian_wormecube /////////////////// /* Medical Boxes */ @@ -749,14 +749,14 @@ icon_state = "donk_box" storage_slots = 6 can_hold = list( - /obj/item/food/snacks/donkpocket, - /obj/item/food/snacks/warmdonkpocket, - /obj/item/food/snacks/warmdonkpocket_weak, - /obj/item/food/snacks/syndidonkpocket) + /obj/item/food/donkpocket, + /obj/item/food/warmdonkpocket, + /obj/item/food/warmdonkpocket_weak, + /obj/item/food/syndidonkpocket) /obj/item/storage/box/donkpockets/populate_contents() for(var/I in 1 to 6) - new /obj/item/food/snacks/donkpocket(src) + new /obj/item/food/donkpocket(src) /obj/item/storage/box/donkpockets/empty/populate_contents() return @@ -768,7 +768,7 @@ /obj/item/storage/box/syndidonkpockets/populate_contents() for(var/I in 1 to 6) - new /obj/item/food/snacks/syndidonkpocket(src) + new /obj/item/food/syndidonkpocket(src) //////////////// /* Misc Boxes */ diff --git a/code/game/objects/items/weapons/storage/fancy.dm b/code/game/objects/items/weapons/storage/fancy.dm index db2b8793b008..f37f7a52c39b 100644 --- a/code/game/objects/items/weapons/storage/fancy.dm +++ b/code/game/objects/items/weapons/storage/fancy.dm @@ -42,14 +42,14 @@ icon_type = "donut" icon_state = "donutbox" storage_slots = 6 - can_hold = list(/obj/item/food/snacks/donut) + can_hold = list(/obj/item/food/donut) foldable = /obj/item/stack/sheet/cardboard foldable_amt = 1 /obj/item/storage/fancy/donut_box/update_overlays() . = ..() for(var/I = 1 to length(contents)) - var/obj/item/food/snacks/donut/donut = contents[I] + var/obj/item/food/donut/donut = contents[I] var/icon/new_donut_icon = icon('icons/obj/food/containers.dmi', "[(I - 1)]donut[donut.donut_sprite_type]") . += new_donut_icon @@ -58,7 +58,7 @@ /obj/item/storage/fancy/donut_box/populate_contents() for(var/I in 1 to storage_slots) - new /obj/item/food/snacks/donut(src) + new /obj/item/food/donut(src) update_icon(UPDATE_OVERLAYS) /obj/item/storage/fancy/donut_box/empty/populate_contents() @@ -82,11 +82,11 @@ item_state = "eggbox" name = "egg box" storage_slots = 12 - can_hold = list(/obj/item/food/snacks/egg) + can_hold = list(/obj/item/food/egg) /obj/item/storage/fancy/egg_box/populate_contents() for(var/I in 1 to storage_slots) - new /obj/item/food/snacks/egg(src) + new /obj/item/food/egg(src) /* * Candle Box diff --git a/code/game/objects/items/weapons/storage/uplink_kits.dm b/code/game/objects/items/weapons/storage/uplink_kits.dm index 490c4213713b..ffac415f5082 100644 --- a/code/game/objects/items/weapons/storage/uplink_kits.dm +++ b/code/game/objects/items/weapons/storage/uplink_kits.dm @@ -406,9 +406,9 @@ name = "combat bakery kit" /obj/item/storage/box/syndie_kit/combat_baking/populate_contents() - new /obj/item/food/snacks/baguette/combat(src) + new /obj/item/food/baguette/combat(src) for(var/i in 1 to 2) - new /obj/item/food/snacks/croissant/throwing(src) + new /obj/item/food/croissant/throwing(src) new /obj/item/book/granter/crafting_recipe/combat_baking(src) /obj/item/storage/box/syndie_kit/atmosn2ogrenades diff --git a/code/game/objects/items/weapons/tanks/watertank.dm b/code/game/objects/items/weapons/tanks/watertank.dm index cfbd5e7f904d..86685a831972 100644 --- a/code/game/objects/items/weapons/tanks/watertank.dm +++ b/code/game/objects/items/weapons/tanks/watertank.dm @@ -314,7 +314,7 @@ if(metal_synthesis_cooldown >= 5) to_chat(user, "Metal foam mix is still being synthesized.") return - var/obj/effect/particle_effect/foam/F = new /obj/effect/particle_effect/foam(get_turf(target), TRUE) + var/obj/effect/particle_effect/foam/metal/F = new /obj/effect/particle_effect/foam/metal(get_turf(target), TRUE) F.spread_amount = 0 metal_synthesis_cooldown++ addtimer(CALLBACK(src, PROC_REF(metal_cooldown)), 10 SECONDS) diff --git a/code/game/objects/items/weapons/teleprod.dm b/code/game/objects/items/weapons/teleprod.dm index b94494a1185f..c659c3e3d597 100644 --- a/code/game/objects/items/weapons/teleprod.dm +++ b/code/game/objects/items/weapons/teleprod.dm @@ -16,5 +16,5 @@ "You accidentally hit yourself with [src]!") deductcharge(hitcost) do_teleport(user, get_turf(user), 50)//honk honk - else if(iscarbon(M) && !M.anchored) + else if(isliving(M) && !M.anchored) do_teleport(M, get_turf(M), 15) diff --git a/code/game/objects/mail.dm b/code/game/objects/mail.dm index 6175ec810e73..680b69a7371c 100644 --- a/code/game/objects/mail.dm +++ b/code/game/objects/mail.dm @@ -63,7 +63,7 @@ /obj/item/envelope/security icon_state = "mail_sec" - possible_contents = list(/obj/item/food/snacks/donut/sprinkles, + possible_contents = list(/obj/item/food/donut/sprinkles, /obj/item/megaphone, /obj/item/clothing/mask/whistle, /obj/item/poster/random_official, @@ -121,7 +121,7 @@ /obj/item/reagent_containers/applicator/brute, /obj/item/reagent_containers/applicator/burn, /obj/item/clothing/glasses/sunglasses, - /obj/item/food/snacks/fortunecookie, + /obj/item/food/fortunecookie, /obj/item/scalpel/laser/laser1, /obj/item/surgical_drapes, /obj/item/toy/figure/crew/cmo, @@ -136,7 +136,7 @@ icon_state = "mail_eng" possible_contents = list(/obj/item/airlock_electronics, /obj/item/reagent_containers/drinks/cans/beer, - /obj/item/food/snacks/candy/confectionery/nougat, + /obj/item/food/candy/confectionery/nougat, /obj/item/mod/module/storage/large_capacity, /obj/item/weldingtool/hugetank, /obj/item/geiger_counter, @@ -192,7 +192,7 @@ /obj/item/book/manual/wiki/sop_command, /obj/item/reagent_containers/patch/synthflesh, /obj/item/paper_bin/nanotrasen, - /obj/item/food/snacks/spesslaw, + /obj/item/food/spesslaw, /obj/item/clothing/head/collectable/petehat, /obj/item/toy/figure/crew/captain, /obj/item/toy/figure/crew/iaa, diff --git a/code/game/objects/obj_defense.dm b/code/game/objects/obj_defense.dm index a21489172e89..e12847d2e648 100644 --- a/code/game/objects/obj_defense.dm +++ b/code/game/objects/obj_defense.dm @@ -103,7 +103,7 @@ /obj/attack_animal(mob/living/simple_animal/M) if((M.a_intent == INTENT_HELP && M.ckey) || (!M.melee_damage_upper && !M.obj_damage)) - M.custom_emote(EMOTE_VISIBLE, "[M.friendly] [src].") + M.emote("me", EMOTE_VISIBLE, "[M.friendly] [src].") return 0 else var/play_soundeffect = 1 diff --git a/code/game/objects/structures/crates_lockers/closets/secure/freezer.dm b/code/game/objects/structures/crates_lockers/closets/secure/freezer.dm index 0374a5526875..8eead41d2096 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/freezer.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/freezer.dm @@ -44,7 +44,7 @@ /obj/structure/closet/secure_closet/freezer/meat/populate_contents() for(var/i in 1 to 4) - new /obj/item/food/snacks/meat/monkey(src) + new /obj/item/food/meat/monkey(src) /obj/structure/closet/secure_closet/freezer/meat/open req_access = null diff --git a/code/game/objects/structures/crates_lockers/closets/secure/medical_lockers.dm b/code/game/objects/structures/crates_lockers/closets/secure/medical_lockers.dm index 9a0f455f0d46..9e8e7d49a9e9 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/medical_lockers.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/medical_lockers.dm @@ -135,7 +135,7 @@ new /obj/item/storage/pill_bottle/psychiatrist(src) new /obj/random/plushie(src) for(var/i in 0 to 3) - var/candy = pick(subtypesof(/obj/item/food/snacks/candy/fudge)) + var/candy = pick(subtypesof(/obj/item/food/candy/fudge)) new candy(src) /obj/structure/closet/secure_closet/CMO diff --git a/code/game/objects/structures/displaycase.dm b/code/game/objects/structures/displaycase.dm index f367879cae3f..11409c535f17 100644 --- a/code/game/objects/structures/displaycase.dm +++ b/code/game/objects/structures/displaycase.dm @@ -26,6 +26,8 @@ var/list/start_showpieces = list() /// A flavor message to show with this item. var/trophy_message = "" + /// Do we want to force alarms even if off station? + var/force_alarm = FALSE /obj/structure/displaycase/Initialize(mapload) . = ..() @@ -107,7 +109,7 @@ /obj/structure/displaycase/proc/trigger_alarm() set waitfor = FALSE - if(alert && is_station_contact(z)) + if(alert && (is_station_contact(z) || force_alarm)) var/area/alarmed = get_area(src) alarmed.burglaralert(src) visible_message("The burglar alarm goes off!") diff --git a/code/game/objects/structures/kitchen_spike.dm b/code/game/objects/structures/kitchen_spike.dm index 921d18accf5f..6ed12684b0dc 100644 --- a/code/game/objects/structures/kitchen_spike.dm +++ b/code/game/objects/structures/kitchen_spike.dm @@ -79,7 +79,7 @@ if(has_buckled_mobs()) to_chat(user, "You can't do that while something's on the spike!") return - if(!I.use_tool(src, user, 2 SECONDS, I.tool_volume)) + if(!I.use_tool(src, user, 2 SECONDS, volume = I.tool_volume)) return to_chat(user, "You pry the spikes out of the frame.") deconstruct(TRUE) diff --git a/code/game/objects/structures/statues.dm b/code/game/objects/structures/statues.dm index f6ece981b4ca..3a0a16795376 100644 --- a/code/game/objects/structures/statues.dm +++ b/code/game/objects/structures/statues.dm @@ -331,7 +331,7 @@ desc = "Just like the ones you remember from childhood!" /obj/structure/snowman/built/Destroy() - new /obj/item/food/snacks/grown/carrot(drop_location()) + new /obj/item/food/grown/carrot(drop_location()) new /obj/item/grown/log(drop_location()) new /obj/item/grown/log(drop_location()) return ..() diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm index 01920f047e4b..7e3b121de04a 100644 --- a/code/game/objects/structures/tables_racks.dm +++ b/code/game/objects/structures/tables_racks.dm @@ -343,26 +343,28 @@ /obj/structure/table/proc/flip(direction) if(flipped) - return 0 + return FALSE - if(!straight_table_check(turn(direction,90)) || !straight_table_check(turn(direction,-90))) - return 0 + if(!straight_table_check(turn(direction, 90)) || !straight_table_check(turn(direction, -90))) + return FALSE dir = direction if(dir != NORTH) layer = 5 - var/list/targets = list(get_step(src,dir),get_step(src,turn(dir, 45)),get_step(src,turn(dir, -45))) + + var/list/targets = list(get_step(src, dir), get_step(src, turn(dir, 45)), get_step(src, turn(dir, -45))) for(var/atom/movable/A in get_turf(src)) + if(isobserver(A)) + continue if(!A.anchored) - spawn(0) - A.throw_at(pick(targets),1,1) + INVOKE_ASYNC(A, TYPE_PROC_REF(/atom/movable/, throw_at), pick(targets), 1, 1) flipped = TRUE smoothing_flags = NONE flags |= ON_BORDER for(var/D in list(turn(direction, 90), turn(direction, -90))) - if(locate(/obj/structure/table,get_step(src,D))) - var/obj/structure/table/T = locate(/obj/structure/table,get_step(src,D)) + if(locate(/obj/structure/table, get_step(src, D))) + var/obj/structure/table/T = locate(/obj/structure/table, get_step(src, D)) T.flip(direction) update_icon() @@ -370,7 +372,7 @@ if(isturf(loc)) REMOVE_TRAIT(loc, TRAIT_TURF_COVERED, UNIQUE_TRAIT_SOURCE(src)) - return 1 + return TRUE /obj/structure/table/proc/unflip() if(!flipped) diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm index 2c2bc64e6989..d86fe2932014 100644 --- a/code/modules/admin/topic.dm +++ b/code/modules/admin/topic.dm @@ -1798,10 +1798,10 @@ to_chat(usr, "This can only be used on instances of type /mob/living/carbon/human") return - H.equip_to_slot_or_del( new /obj/item/food/snacks/cookie(H), SLOT_HUD_LEFT_HAND ) - if(!(istype(H.l_hand,/obj/item/food/snacks/cookie))) - H.equip_to_slot_or_del( new /obj/item/food/snacks/cookie(H), SLOT_HUD_RIGHT_HAND ) - if(!(istype(H.r_hand,/obj/item/food/snacks/cookie))) + H.equip_to_slot_or_del( new /obj/item/food/cookie(H), SLOT_HUD_LEFT_HAND ) + if(!(istype(H.l_hand,/obj/item/food/cookie))) + H.equip_to_slot_or_del( new /obj/item/food/cookie(H), SLOT_HUD_RIGHT_HAND ) + if(!(istype(H.r_hand,/obj/item/food/cookie))) log_admin("[key_name(H)] has their hands full, so they did not receive their cookie, spawned by [key_name(src.owner)].") message_admins("[key_name_admin(H)] has [H.p_their()] hands full, so [H.p_they()] did not receive [H.p_their()] cookie, spawned by [key_name_admin(src.owner)].") return @@ -2084,7 +2084,7 @@ var/punishment = input(owner, "How would you like to smite [M]?", "Its good to be baaaad...", "") as null|anything in ptypes if(!(punishment in ptypes)) return - var/logmsg = null + var/logmsg = "UNSET LOG MESSAGE: [punishment]" switch(punishment) // These smiting types are valid for all living mobs if("Lightning bolt") @@ -2134,7 +2134,7 @@ ADD_TRAIT(H, TRAIT_BADDNA, "smiting") logmsg = "cluwned." if("Mutagen Cookie") - var/obj/item/food/snacks/cookie/evilcookie = new /obj/item/food/snacks/cookie + var/obj/item/food/cookie/evilcookie = new /obj/item/food/cookie evilcookie.reagents.add_reagent("mutagen", 10) evilcookie.desc = "It has a faint green glow." evilcookie.bitesize = 100 @@ -2143,7 +2143,7 @@ H.equip_to_slot_or_del(evilcookie, SLOT_HUD_LEFT_HAND) logmsg = "a mutagen cookie." if("Hellwater Cookie") - var/obj/item/food/snacks/cookie/evilcookie = new /obj/item/food/snacks/cookie + var/obj/item/food/cookie/evilcookie = new /obj/item/food/cookie evilcookie.reagents.add_reagent("hell_water", 25) evilcookie.desc = "Sulphur-flavored." evilcookie.bitesize = 100 @@ -2208,7 +2208,7 @@ logmsg = "nugget" if("Bread") var/mob/living/simple_animal/shade/sword/bread/breadshade = new(H.loc) - var/bready = pick(/obj/item/food/snacks/customizable/cook/bread, /obj/item/food/snacks/sliceable/meatbread, /obj/item/food/snacks/sliceable/xenomeatbread, /obj/item/food/snacks/sliceable/spidermeatbread, /obj/item/food/snacks/sliceable/bananabread, /obj/item/food/snacks/sliceable/tofubread, /obj/item/food/snacks/sliceable/bread, /obj/item/food/snacks/sliceable/creamcheesebread, /obj/item/food/snacks/sliceable/banarnarbread, /obj/item/food/snacks/flatbread, /obj/item/food/snacks/baguette) + var/bready = pick(/obj/item/food/customizable/cook/bread, /obj/item/food/sliceable/meatbread, /obj/item/food/sliceable/xenomeatbread, /obj/item/food/sliceable/spidermeatbread, /obj/item/food/sliceable/bananabread, /obj/item/food/sliceable/tofubread, /obj/item/food/sliceable/bread, /obj/item/food/sliceable/creamcheesebread, /obj/item/food/sliceable/banarnarbread, /obj/item/food/flatbread, /obj/item/food/baguette) var/obj/item/bread = new bready(get_turf(H)) breadshade.forceMove(bread) breadshade.key = H.key @@ -2223,6 +2223,7 @@ var/turf/start = locate(starting_turf_x, starting_turf_y, M.z) new /obj/effect/immovablerod/smite(start, M) + logmsg = "a rod" if(logmsg) log_admin("[key_name(owner)] smited [key_name(M)] with: [logmsg]") message_admins("[key_name_admin(owner)] smited [key_name_admin(M)] with: [logmsg]") diff --git a/code/modules/antagonists/_common/antag_datum.dm b/code/modules/antagonists/_common/antag_datum.dm index 746da7561072..868a73482d89 100644 --- a/code/modules/antagonists/_common/antag_datum.dm +++ b/code/modules/antagonists/_common/antag_datum.dm @@ -55,6 +55,9 @@ GLOBAL_LIST_EMPTY(antagonists) var/blurb_b = 0 var/blurb_a = 0 + /// Do we have delayed objective giving? + var/delayed_objectives = FALSE + /datum/antagonist/New() GLOB.antagonists += src objective_holder = new(src) @@ -240,14 +243,15 @@ GLOBAL_LIST_EMPTY(antagonists) * * explanation_text - the explanation text that will be passed into the objective's `New()` proc * * mob/target_override - a target for the objective */ -/datum/antagonist/proc/add_antag_objective(datum/objective/O, explanation_text, mob/target_override) - if(ispath(O)) - O = new O() - if(O.owner) - stack_trace("[O], [O.type] was assigned as an objective to [owner] (mind), but already had an owner: [O.owner] (mind). Overriding.") - O.owner = owner - - return objective_holder.add_objective(O, explanation_text, target_override) +/datum/antagonist/proc/add_antag_objective(datum/objective/objective_to_add, explanation_text, mob/target_override) + if(ispath(objective_to_add)) + objective_to_add = new objective_to_add() + + if(objective_to_add.owner) + stack_trace("[objective_to_add], [objective_to_add.type] was assigned as an objective to [owner] (mind), but already had an owner: [objective_to_add.owner] (mind). Overriding.") + objective_to_add.owner = owner + + return objective_holder.add_objective(objective_to_add, explanation_text, target_override) /** * Complement to add_antag_objective that removes the objective. diff --git a/code/modules/antagonists/changeling/powers/mutations.dm b/code/modules/antagonists/changeling/powers/mutations.dm index 2a67499d0da8..23b2063148e7 100644 --- a/code/modules/antagonists/changeling/powers/mutations.dm +++ b/code/modules/antagonists/changeling/powers/mutations.dm @@ -293,68 +293,74 @@ /obj/item/projectile/tentacle/on_hit(atom/target, blocked = 0) - qdel(source.gun) //one tentacle only unless you miss - if(blocked >= 100) - return 0 var/mob/living/carbon/human/H = firer + qdel(source.gun) + if(blocked >= 100) + return FALSE if(isitem(target)) var/obj/item/I = target - if(!I.anchored) - to_chat(firer, "You grab [I] with your tentacle.") - add_attack_logs(H, I, "[src] grabs [I] with a tentacle") - I.forceMove(H.loc) - I.attack_hand(H)//The tentacle takes the item back with them and makes them pick it up. No silly throw mode. - . = 1 - - else if(isliving(target)) - var/mob/living/L = target - if(!L.anchored && !L.throwing)//avoid double hits - if(iscarbon(L)) - var/mob/living/carbon/C = L - switch(firer.a_intent) - if(INTENT_HELP) - C.visible_message("[L] is pulled to their feet towards [H]!","A tentacle grabs you and pulls you up towards [H]!") - add_attack_logs(H, L, "[H] pulled [L] towards them with a tentacle") - C.throw_at(get_step_towards(H,C), 8, 2) - C.AdjustParalysis(-2 SECONDS) - C.AdjustStunned(-4 SECONDS) - C.AdjustWeakened(-4 SECONDS) - C.AdjustKnockDown(-4 SECONDS) - C.adjustStaminaLoss(-25) - return TRUE - - if(INTENT_DISARM) - var/obj/item/I = C.get_active_hand() - if(I) - if(C.drop_item()) - C.visible_message("[I] is yanked out of [C]'s hand by [src]!","A tentacle pulls [I] away from you!") - add_attack_logs(H, C, "[H] has grabbed [I] out of [C]'s hand with a tentacle") - on_hit(I) //grab the item as if you had hit it directly with the tentacle - return TRUE - to_chat(firer, "You can't seem to pry [I] out of [C]'s hands!") - add_attack_logs(H, C, "[H] tried to grab [I] out of their hand with a tentacle, but failed") - C.visible_message("[C] is knocked over by [src]!", "A tentacle hits you in the chest and knocks you over!") - add_attack_logs(H, C, "[H] knocked over with a tentacle") - C.KnockDown(2 SECONDS) //Not useless with antidrop. - return TRUE - - if(INTENT_GRAB) - C.visible_message("[L] is entangled by [H]'s tentacle!", "A tentacle grabs you and wraps around your legs!") - add_attack_logs(H, C, "imobilised with a changeling tentacle") - if(!iscarbon(H)) - return TRUE - var/obj/item/restraints/legcuffs/beartrap/changeling/B = new(H.loc) - B.Crossed(C) - return TRUE - - if(INTENT_HARM) - C.visible_message("[L] is thrown towards [H] by a tentacle!","A tentacle grabs you and throws you towards [H]!") - C.throw_at(get_step_towards(H,C), 8, 2, callback=CALLBACK(H, TYPE_PROC_REF(/mob, tentacle_stab), C)) - return TRUE - else - L.visible_message("[L] is pulled by [H]'s tentacle!","A tentacle grabs you and pulls you towards [H]!") - L.throw_at(get_step_towards(H,L), 8, 2) - . = TRUE + if(I.anchored) + return FALSE + + to_chat(H, "You grab [I] with your tentacle.") + add_attack_logs(H, I, "[src] grabs [I] with a tentacle") + I.forceMove(H.loc) + I.attack_hand(H) // The tentacle takes the item back with them and makes them pick it up. No silly throw mode. + return TRUE + + if(!isliving(target)) + return FALSE + + var/mob/living/L = target + if(L.anchored || L.throwing) // avoid double hits + return FALSE + + if(!iscarbon(L)) + L.visible_message("[L] is pulled by [H]'s tentacle!","A tentacle grabs you and pulls you towards [H]!") + L.throw_at(get_step_towards(H,L), 8, 2) + return TRUE + + var/mob/living/carbon/C = L + switch(H.a_intent) + if(INTENT_HELP) + C.visible_message("[L] is pulled to their feet towards [H]!","A tentacle grabs you and pulls you up towards [H]!") + add_attack_logs(H, L, "[H] pulled [L] towards them with a tentacle") + C.throw_at(get_step_towards(H,C), 8, 2) + C.AdjustParalysis(-2 SECONDS) + C.AdjustStunned(-4 SECONDS) + C.AdjustWeakened(-4 SECONDS) + C.AdjustKnockDown(-4 SECONDS) + C.adjustStaminaLoss(-25) + return TRUE + + if(INTENT_DISARM) + var/obj/item/I = C.get_active_hand() + if(I) + if(C.drop_item()) + C.visible_message("[I] is yanked out of [C]'s hand by [src]!","A tentacle pulls [I] away from you!") + add_attack_logs(H, C, "[H] has grabbed [I] out of [C]'s hand with a tentacle") + on_hit(I) // grab the item as if you had hit it directly with the tentacle + return TRUE + to_chat(H, "You can't seem to pry [I] out of [C]'s hands!") + add_attack_logs(H, C, "[H] tried to grab [I] out of their hand with a tentacle, but failed") + C.visible_message("[C] is knocked over by [src]!", "A tentacle hits you in the chest and knocks you over!") + add_attack_logs(H, C, "[H] knocked over with a tentacle") + C.KnockDown(2 SECONDS) // Not useless with antidrop. + return TRUE + + if(INTENT_GRAB) + C.visible_message("[L] is entangled by [H]'s tentacle!", "A tentacle grabs you and wraps around your legs!") + add_attack_logs(H, C, "imobilised with a changeling tentacle") + if(!iscarbon(H)) + return TRUE + var/obj/item/restraints/legcuffs/beartrap/changeling/B = new(H.loc) + B.Crossed(C) + return TRUE + + if(INTENT_HARM) + C.visible_message("[L] is thrown towards [H] by a tentacle!","A tentacle grabs you and throws you towards [H]!") + C.throw_at(get_step_towards(H,C), 8, 2, callback=CALLBACK(H, TYPE_PROC_REF(/mob, tentacle_stab), C)) + return TRUE /obj/item/projectile/tentacle/Destroy() qdel(chain) diff --git a/code/modules/antagonists/traitor/contractor/datums/syndicate_contract.dm b/code/modules/antagonists/traitor/contractor/datums/syndicate_contract.dm index e18b886eb968..55dfc2453474 100644 --- a/code/modules/antagonists/traitor/contractor/datums/syndicate_contract.dm +++ b/code/modules/antagonists/traitor/contractor/datums/syndicate_contract.dm @@ -23,8 +23,8 @@ /obj/item/clothing/under/syndicate/tacticool, /obj/item/coin/antagtoken/syndicate, /obj/item/poster/syndicate_recruitment, - /obj/item/food/snacks/syndicake, - /obj/item/food/snacks/tatortot, + /obj/item/food/syndicake, + /obj/item/food/tatortot, /obj/item/storage/box/fakesyndiesuit, /obj/item/storage/fancy/cigarettes/cigpack_syndicate, /obj/item/toy/figure/crew/syndie, @@ -423,7 +423,7 @@ M.update_icons() // Supply them with some chow. How generous is the Syndicate? - var/obj/item/food/snacks/breadslice/food = new(get_turf(M)) + var/obj/item/food/breadslice/food = new(get_turf(M)) food.name = "stale bread" food.desc = "Looks like your captors care for their prisoners as much as their bread." food.trash = null diff --git a/code/modules/antagonists/traitor/datum_traitor.dm b/code/modules/antagonists/traitor/datum_traitor.dm index ecf473462f88..ab96107a0f47 100644 --- a/code/modules/antagonists/traitor/datum_traitor.dm +++ b/code/modules/antagonists/traitor/datum_traitor.dm @@ -136,19 +136,29 @@ RESTRICT_TYPE(/datum/antagonist/traitor) * Create and assign a single randomized human traitor objective. */ /datum/antagonist/traitor/proc/forge_single_human_objective() + var/datum/objective/objective_to_add + if(prob(50)) if(length(active_ais()) && prob(100 / length(GLOB.player_list))) - add_antag_objective(/datum/objective/destroy) + objective_to_add = /datum/objective/destroy + else if(prob(5)) - add_antag_objective(/datum/objective/debrain) + objective_to_add = /datum/objective/debrain + else if(prob(30)) - add_antag_objective(/datum/objective/maroon) + objective_to_add = /datum/objective/maroon + else if(prob(30)) - add_antag_objective(/datum/objective/assassinateonce) + objective_to_add = /datum/objective/assassinateonce + else - add_antag_objective(/datum/objective/assassinate) + objective_to_add = /datum/objective/assassinate else - add_antag_objective(/datum/objective/steal) + objective_to_add = /datum/objective/steal + + if(delayed_objectives) + objective_to_add = new /datum/objective/delayed(objective_to_add) + add_antag_objective(objective_to_add) /** * Give human traitors their uplink, and AI traitors their law 0. Play the traitor an alert sound. @@ -267,3 +277,14 @@ RESTRICT_TYPE(/datum/antagonist/traitor) /datum/antagonist/traitor/custom_blurb() return "[GLOB.current_date_string], [station_time_timestamp()]\n[station_name()], [get_area_name(owner.current, TRUE)]\nBEGIN_MISSION" + +/datum/antagonist/traitor/proc/reveal_delayed_objectives() + for(var/datum/objective/delayed/delayed_obj in objective_holder.objectives) + delayed_obj.reveal_objective() + + if(!owner?.current) + return + SEND_SOUND(owner.current, sound('sound/ambience/alarm4.ogg')) + var/list/messages = owner.prepare_announce_objectives() + to_chat(owner.current, chat_box_red(messages.Join("
"))) + delayed_objectives = FALSE diff --git a/code/modules/arcade/arcade_base.dm b/code/modules/arcade/arcade_base.dm index 2232b48e2905..5a1949b426f4 100644 --- a/code/modules/arcade/arcade_base.dm +++ b/code/modules/arcade/arcade_base.dm @@ -57,18 +57,18 @@ return /obj/machinery/economy/arcade/attackby(obj/item/O, mob/user, params) - if(exchange_parts(user, O)) - return if(!freeplay) if(isspacecash(O)) insert_cash(O, user, token_price) if(pay_with_cash(token_price, "Arcade Token Purchase", "DonkBook Gaming", user, account_database.vendor_account)) tokens += 1 return + if(istype(O, /obj/item/card/id)) if(pay_with_card(O, token_price, "Arcade Token Purchase", "DonkBook Gaming", user, account_database.vendor_account)) tokens += 1 return + return ..() /obj/machinery/economy/arcade/screwdriver_act(mob/living/user, obj/item/I) diff --git a/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm b/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm index 1025b299100d..e884e77593cf 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm @@ -304,9 +304,11 @@ if(beaker) to_chat(user, "A beaker is already loaded into the machine.") return + if(!user.drop_item()) - to_chat(user, "[B] is stuck to you!") + to_chat(user, "[B] is stuck to you!") return + B.forceMove(src) beaker = B add_attack_logs(user, null, "Added [B] containing [B.reagents.log_list()] to a cryo cell at [COORD(src)]") @@ -314,23 +316,24 @@ SStgui.update_uis(src) return - if(exchange_parts(user, G)) - return - if(istype(G, /obj/item/grab)) var/obj/item/grab/GG = G if(panel_open) - to_chat(user, "Close the maintenance panel first.") + to_chat(user, "Close the maintenance panel first.") return + if(!ismob(GG.affecting)) return + if(GG.affecting.has_buckled_mobs()) //mob attached to us to_chat(user, "[GG.affecting] will not fit into [src] because [GG.affecting.p_they()] [GG.affecting.p_have()] a slime latched onto [GG.affecting.p_their()] head.") return + var/mob/M = GG.affecting if(put_mob(M)) qdel(GG) return + return ..() /obj/machinery/atmospherics/unary/cryo_cell/crowbar_act(mob/user, obj/item/I) diff --git a/code/modules/atmospherics/machinery/components/unary_devices/thermomachine.dm b/code/modules/atmospherics/machinery/components/unary_devices/thermomachine.dm index d9a48dce55ac..22893029b46e 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/thermomachine.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/thermomachine.dm @@ -123,11 +123,6 @@ change_power_mode(IDLE_POWER_USE) return -/obj/machinery/atmospherics/unary/thermomachine/attackby(obj/item/I, mob/user, params) - if(exchange_parts(user, I)) - return - return ..() - /obj/machinery/atmospherics/unary/thermomachine/crowbar_act(mob/user, obj/item/I) if(default_deconstruction_crowbar(user, I)) return TRUE diff --git a/code/modules/awaymissions/mission_code/ruins/oldstation.dm b/code/modules/awaymissions/mission_code/ruins/oldstation.dm index fd81abee344e..fd18caec5b2d 100644 --- a/code/modules/awaymissions/mission_code/ruins/oldstation.dm +++ b/code/modules/awaymissions/mission_code/ruins/oldstation.dm @@ -201,6 +201,7 @@ armor = list(MELEE = 30, BULLET = 5, LASER = 5, ENERGY = 0, BOMB = 50, RAD = INFINITY, FIRE = INFINITY, ACID = 75) item_color = "ancient" resistance_flags = FIRE_PROOF + flags_2 = RAD_PROTECT_CONTENTS_2 sprite_sheets = null /obj/item/clothing/suit/space/hardsuit/ancient @@ -211,6 +212,7 @@ armor = list(MELEE = 30, BULLET = 5, LASER = 5, ENERGY = 0, BOMB = 50, RAD = INFINITY, FIRE = INFINITY, ACID = 75) slowdown = 3 resistance_flags = FIRE_PROOF + flags_2 = RAD_PROTECT_CONTENTS_2 sprite_sheets = null helmettype = /obj/item/clothing/head/helmet/space/hardsuit/ancient var/footstep = 1 diff --git a/code/modules/awaymissions/mission_code/ruins/telecomns.dm b/code/modules/awaymissions/mission_code/ruins/telecomns.dm new file mode 100644 index 000000000000..b5fdd54a6bc1 --- /dev/null +++ b/code/modules/awaymissions/mission_code/ruins/telecomns.dm @@ -0,0 +1,528 @@ +// stuff for the telecomms sat (telecomms_returns.dmm) + +GLOBAL_LIST_EMPTY(telecomms_bots) +GLOBAL_LIST_EMPTY(telecomms_doomsday_device) +GLOBAL_LIST_EMPTY(telecomms_trap_tank) + +/mob/living/simple_animal/bot/secbot/buzzsky/telecomms + name = "Soldier Shocksy" + desc = "It's Soldier Shocksy! Rusted and falling apart, this bot seems quite intent in beating you up." + faction = list("malf_drone") + +/mob/living/simple_animal/bot/secbot/buzzsky/telecomms/Initialize(mapload) + . = ..() + GLOB.telecomms_bots += src + +/mob/living/simple_animal/bot/secbot/buzzsky/telecomms/Destroy() + GLOB.telecomms_bots -= src + return ..() + +/obj/effect/abstract/bot_trap + name = "evil bot trap to make explorers hate you" + +/obj/effect/abstract/bot_trap/Crossed(atom/movable/AM, oldloc) + . = ..() + if(isrobot(AM) || ishuman(AM)) + var/turf/T = get_turf(src) + for(var/mob/living/simple_animal/bot/B in GLOB.telecomms_bots) + B.call_bot(null, T, FALSE) + qdel(src) + +// This effect surrounds the table with loot in the telecomms core room. If you take from this table, dvorak will be pissed if you try to leave. +/obj/effect/abstract/loot_trap + name = "table surrounding loot trap" + +/obj/effect/abstract/loot_trap/Crossed(atom/movable/AM, oldloc) + . = ..() + if(isrobot(AM) || ishuman(AM)) + var/turf/T = get_turf(src) + for(var/obj/structure/telecomms_doomsday_device/DD in GLOB.telecomms_doomsday_device) + DD.thief = TRUE + break + for(var/obj/effect/abstract/loot_trap/LT in range(3, T)) + qdel(LT) + qdel(src) + +// If you stole loot, without killing dvorak, he starts doomsday +/obj/effect/abstract/cheese_trap + name = "cheese preventer" + +/obj/effect/abstract/cheese_trap/Crossed(atom/movable/AM, oldloc) + . = ..() + if(isrobot(AM) || ishuman(AM)) + for(var/obj/structure/telecomms_doomsday_device/DD in GLOB.telecomms_doomsday_device) + if(DD.thief) + DD.start_the_party(TRUE) + return + +/obj/machinery/autolathe/trapped + name = "recharger" + desc = "A charging dock for energy based weaponry. Did it just-" + icon_state = "autolathe_trap" + //Has someone put an item in the autolathe, breaking the hologram? + var/disguise_broken = FALSE + +/obj/machinery/autolathe/trapped/Initialize() + . = ..() + RegisterSignal(src, COMSIG_PARENT_ATTACKBY, PROC_REF(material_container_shenanigins)) + +/obj/machinery/autolathe/trapped/proc/material_container_shenanigins(datum/source, obj/item/attacker, mob/user) + if(!disguise_broken) + to_chat(user, "As you stick [attacker] into the recharger, it sparks and flashes blue. Wait a minute, this isn't a recharger!") + name = "modified autolathe" + desc = "An autolathe modified with holopad parts, to make it look like a harmless weapon recharger!" + do_sparks(3, 1, src) + icon_state = "autolathe" + disguise_broken = TRUE + +/obj/machinery/shieldgen/telecomms + name = "overclocked shield generator" + desc = "These shield generators seem to have been rewired a lot." + anchored = TRUE + shield_range = 6 + req_access = list(ACCESS_ENGINE) + +/obj/machinery/shieldwallgen/telecomms + icon_state = "Shield_Gen +a" // should avoid misplacing with this + anchored = TRUE + activated = TRUE + req_access = list(ACCESS_TCOMSAT) + +/obj/machinery/shieldwallgen/telecomms/Initialize(mapload) + . = ..() + addtimer(CALLBACK(src, PROC_REF(activate)), 5 MINUTES) // Let the bloody powernet start up, no one will get in this ruin in the first 5 minutes of the map template *initializing*, much less roundstart + +/mob/living/silicon/decoy/telecomms + faction = list("malf_drone") + bubble_icon = "swarmer" + name = "D.V.O.R.A.K" + desc = "A Downloadable and Versatile, fully Overclocked and Reactive Ai Kernel." + icon_state = "ai-triumvirate-malf" + universal_speak = TRUE + universal_understand = TRUE + var/has_died = FALSE // fucking decoy silicons are weird. + +/mob/living/silicon/decoy/telecomms/death(gibbed) + if(has_died) + return ..() + has_died = TRUE + for(var/obj/structure/telecomms_doomsday_device/D in GLOB.telecomms_doomsday_device) + D.start_the_party() + break + new /obj/item/documents/syndicate/dvorak_blackbox(get_turf(src)) + if(prob(50)) + if(prob(80)) + new /obj/item/surveillance_upgrade(get_turf(src)) + else // 10% chance + new /obj/item/malf_upgrade(get_turf(src)) + return ..() + +/obj/structure/telecomms_trap_tank + name = "rigged plasma tank" + desc = "That plasma tank seems rigged to explode!" + icon = 'icons/atmos/tank.dmi' + icon_state = "toxins_map" + anchored = TRUE + layer = DISPOSAL_PIPE_LAYER + plane = FLOOR_PLANE + resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF + +/obj/structure/telecomms_trap_tank/Initialize(mapload) + . = ..() + GLOB.telecomms_trap_tank += src + +/obj/structure/telecomms_trap_tank/Destroy() + GLOB.telecomms_trap_tank -= src + return ..() + +/obj/structure/telecomms_trap_tank/bullet_act(obj/item/projectile/P) + explode() + +/obj/structure/telecomms_trap_tank/proc/explode() + explosion(loc, 1, 4, 6, flame_range = 6) + qdel(src) + +/obj/structure/telecomms_doomsday_device + name = "turret" + desc = "Looks like the cover to a turret. Not deploying, however?" + icon = 'icons/obj/turrets.dmi' + icon_state = "turretCover" + resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF + anchored = TRUE + /// Has someone stolen loot from the ruins core room? If they try to leave without killing dvorak, they are punished. + var/thief = FALSE + +/obj/structure/telecomms_doomsday_device/Initialize(mapload) + . = ..() + GLOB.telecomms_doomsday_device += src + +/obj/structure/telecomms_doomsday_device/Destroy() + GLOB.telecomms_doomsday_device -= src + return ..() + +/obj/structure/telecomms_doomsday_device/proc/start_the_party(ruin_cheese_attempted = FALSE) + invisibility = 90 + var/obj/machinery/syndicatebomb/doomsday/kaboom = new /obj/machinery/syndicatebomb/doomsday(get_turf(src)) + kaboom.icon_state = "death-bomb-active" + var/atom/flick_holder = new /atom/movable/porta_turret_cover(loc) + for(var/obj/structure/telecomms_trap_tank/TTT in GLOB.telecomms_trap_tank) + TTT.explode() + flick_holder.layer = kaboom.layer + 0.1 + flick("popup", flick_holder) + sleep(1 SECONDS) + for(var/obj/machinery/shieldgen/telecomms/shield in urange(15, get_turf(src))) + shield.shields_up() + if(ruin_cheese_attempted) + for(var/obj/machinery/door/airlock/A in urange(20, get_turf(src))) + A.unlock(TRUE) //Fuck your bolted open doors, you cheesed it. + A.close(override = TRUE) + for(var/area/A in urange(25, get_turf(src), areas = TRUE)) + if(istype(A, /area/space)) + continue + if(ruin_cheese_attempted) + A.burglaralert(src) + else if(!A.fire) + A.firealert(kaboom) + for(var/obj/effect/abstract/cheese_trap/CT in urange(15, get_turf(src))) + qdel(CT) + kaboom.activate() + kaboom.icon_state = "death-bomb-active" // something funny goes on with icons here + qdel(flick_holder) + qdel(src) + +/obj/machinery/syndicatebomb/doomsday + name = "\improper D.V.O.R.A.K's Doomsday Device" + icon_state = "death-bomb" + desc = "Nice to see that AI's are improving on the standard doomsday device. Good to have variety. Also probably a good idea to start running." + anchored = TRUE + timer_set = 100 + payload = /obj/item/bombcore/doomsday + resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF + +/obj/machinery/syndicatebomb/doomsday/singularity_act() + return // saves me headache later + +/obj/machinery/syndicatebomb/doomsday/ex_act(severity) + return // No. + +/obj/machinery/syndicatebomb/doomsday/screwdriver_act(mob/user, obj/item/I) + to_chat(user, "[src] is welded shut! You can't get at the wires!") + +/obj/machinery/syndicatebomb/doomsday/Initialize(mapload) + . = ..() + var/turf/T = get_turf(src) + if(is_station_level(T.z)) + log_debug("something tried to spawn a telecomms doomsday ruin bomb on the station, deleting!") + return INITIALIZE_HINT_QDEL + +/obj/item/bombcore/doomsday + name = "supermatter charged bomb core" + desc = "If you are looking at this, please don't put it in a bomb" + +/obj/item/bombcore/doomsday/Initialize() + . = ..() + if(!istype(loc, /obj/machinery/syndicatebomb/doomsday)) + log_debug("something tried to spawn a telecomms doomsday ruin payload outside the ruin, deleting!") + return INITIALIZE_HINT_QDEL + +/obj/item/bombcore/doomsday/ex_act(severity) // No + return + +/obj/item/bombcore/doomsday/burn() // Still no. + return + +/obj/item/bombcore/doomsday/detonate() + if(loc && istype(loc, /obj/machinery/syndicatebomb)) + loc.invisibility = 90 + for(var/turf/simulated/wall/indestructible/riveted/R in urange(25, get_turf(src))) + R.ChangeTurf(/turf/space) + explosion(get_turf(src), 30, 40, 50, 60, 1, 1, 65, 0) + sleep(3 SECONDS) + var/obj/singularity/S = new /obj/singularity(get_turf(src)) + S.consumedSupermatter = TRUE // woe large supermatter to eat the remains apon thee + S.energy = 4000 + QDEL_IN(S, 25 SECONDS) + if(istype(loc, /obj/machinery/syndicatebomb)) + qdel(loc) + qdel(src) + +/turf/simulated/floor/catwalk/airless + oxygen = 0 + nitrogen = 0 + temperature = TCMB + +/obj/machinery/economy/vending/snack/trapped + aggressive = TRUE + aggressive_tilt_chance = 100 //It will tip on you, and it will be funny. + +/mob/living/simple_animal/hostile/hivebot/strong/malfborg + name = "Security cyborg" + desc = "Oh god they still have access to these" + icon = 'icons/mob/robots.dmi' + icon_state = "Noble-SEC" + health = 200 + maxHealth = 200 + faction = list("malf_drone") + ranged = TRUE + rapid = 2 + speed = 0.5 + projectiletype = /obj/item/projectile/beam/disabler/weak + projectilesound = 'sound/weapons/taser2.ogg' + gold_core_spawnable = NO_SPAWN // Could you imagine xenobio with this? lmao. + a_intent = INTENT_HARM + var/obj/item/melee/baton/infinite_cell/baton = null // stunbaton bot uses to melee attack + +/mob/living/simple_animal/hostile/hivebot/strong/malfborg/Initialize(mapload) + . = ..() + baton = new(src) + +/mob/living/simple_animal/hostile/hivebot/strong/malfborg/Destroy() + QDEL_NULL(baton) + return ..() + +/mob/living/simple_animal/hostile/hivebot/strong/malfborg/AttackingTarget() + if(QDELETED(target)) + return + face_atom(target) + baton.melee_attack_chain(src, target) + return TRUE + +/mob/living/simple_animal/hostile/hivebot/strong/malfborg/do_attack_animation(atom/A, visual_effect_icon, obj/item/used_item, no_effect) + if(!used_item && !isturf(A)) + used_item = baton + ..() + +/mob/living/simple_animal/hostile/hivebot/strong/malfborg/emp_act(severity) + . = ..() + target = null + adjustBruteLoss(50) + +/obj/structure/displaycase/dvoraks_treat + alert = TRUE // Ooopsies you opened this after doomsday and the doors bolted, oh nooooo + force_alarm = TRUE + req_access = list(ACCESS_CAPTAIN) + trophy_message = "BEHOLD MY ONE SHINY THING TO LOOK AT. LOOK AT ITS VALUE. REALISE IT IS WORTH SO MUCH MORE THAN YOU PUNY ORGANICS." + +/obj/structure/displaycase/dvoraks_treat/Initialize(mapload) + if(prob(50)) + start_showpiece_type = /obj/item/remote_ai_upload + else if(prob(25)) // Can't use anomaly/random due to how this works. + start_showpiece_type = pick(/obj/item/assembly/signaler/anomaly/pyro, /obj/item/assembly/signaler/anomaly/cryo, /obj/item/assembly/signaler/anomaly/grav, /obj/item/assembly/signaler/anomaly/flux, /obj/item/assembly/signaler/anomaly/bluespace, /obj/item/assembly/signaler/anomaly/vortex) + else + start_showpiece_type = pick(/obj/item/organ/internal/cyberimp/brain/sensory_enhancer, /obj/item/organ/internal/cyberimp/brain/hackerman_deck, /obj/item/storage/lockbox/experimental_weapon) + return ..() + +/obj/structure/displaycase/dvoraks_treat/trigger_alarm() + for(var/obj/structure/telecomms_doomsday_device/DD in GLOB.telecomms_doomsday_device) + DD.thief = TRUE + break + return ..() + +/obj/item/remote_ai_upload // A 1 use AI upload. Potential D.V.O.R.A.K reward. + name = "remote AI upload" + desc = "A mobile AI upload. The bluespace relay will likely overload after one use. Make it count." + icon = 'icons/obj/device.dmi' + icon_state = "dvorak_upload" + w_class = WEIGHT_CLASS_TINY + item_state = "camera_bug" + origin_tech = "syndicate=4;programming=6" + /// Integrated AI upload + var/obj/machinery/computer/aiupload/dvorak/integrated_console + +/obj/machinery/computer/aiupload/dvorak + name = "internal ai upload" + desc = "How did this get here?! Please report this as a bug to github" + power_state = NO_POWER_USE + interact_offline = TRUE + +/obj/item/remote_ai_upload/Initialize(mapload) + . = ..() + integrated_console = new(src) + +/obj/item/remote_ai_upload/Destroy() + QDEL_NULL(integrated_console) + return ..() + +/obj/item/remote_ai_upload/attack_self(mob/user as mob) + integrated_console.attack_hand(user) + +/obj/item/remote_ai_upload/attackby(obj/item/O, mob/user, params) + if(istype(O, /obj/item/card/emag)) + to_chat(user, "You are more likely to damage this with an emag, than achieve something useful.") + return + var/time_to_die = integrated_console.attackby(O, user, params) + if(time_to_die) + to_chat(user, "[src]'s relay begins to overheat...") + playsound(loc, 'sound/weapons/armbomb.ogg', 75, 1, -3) + addtimer(CALLBACK(src, PROC_REF(prime)), 5 SECONDS) + +/obj/item/remote_ai_upload/proc/prime() + explosion(loc, -1, -1, 2, 4, flame_range = 4) + qdel(src) + +/obj/effect/spawner/lootdrop/telecomms_core_table + name = "telecomms core table spawner" + lootcount = 1 + loot = list( + /obj/item/rcd/combat, + /obj/item/gun/medbeam, + /obj/item/mod/module/energy_shield, + /obj/item/storage/box/syndie_kit/oops_all_extraction_flares + ) + +/obj/item/storage/box/syndie_kit/oops_all_extraction_flares + name = "surplus box of extraction flares" + +/obj/item/storage/box/syndie_kit/oops_all_extraction_flares/populate_contents() + for(var/I in 1 to 7) + new /obj/item/wormhole_jaunter/contractor(src) + +/obj/effect/spawner/random_spawners/telecomms_emp_loot + name = "telecomms emp loot" + result = list( + /obj/item/grenade/empgrenade = 8, + /obj/item/gun/energy/ionrifle/carbine = 1, + /obj/item/gun/energy/ionrifle = 1) + +/obj/effect/spawner/random_spawners/telecomms_teleprod_maybe + name = "teleprod maybe" + result = list( + /datum/nothing = 4, + /obj/item/melee/baton/cattleprod/teleprod = 1) + +// This could work in any ruin. However for now, as the scope is quite large, it's going to be coded a bit more to D.V.O.R.A.K +/obj/structure/environmental_storytelling_holopad + name = "holopad" + desc = "It's a floor-mounted device for projecting holographic images." + icon = 'icons/obj/stationobjs.dmi' + icon_state = "holopad0" + anchored = TRUE + layer = HOLOPAD_LAYER + plane = FLOOR_PLANE + max_integrity = 300 + /// Have we been activated? If we have, we do not activate again. + var/activated = FALSE + /// Tied effect to kill when we die. + var/obj/effect/overlay/our_holo + /// Name of who we are speaking as. + var/speaking_name = "D.V.O.R.A.K" + /// List of things to say. + var/list/things_to_say = list("Hi future coders.", "Welcome to real lore hologram hours.", "People should have fun with these!") + /// The key of the soundblock. Used to align for the 3 sounds we have. If null, no sound will be played. + var/soundblock = null + /// How long do we sleep between messages? 5 seconds by default. + var/loop_sleep_time = 5 SECONDS + +/obj/structure/environmental_storytelling_holopad/Initialize(mapload) + . = ..() + AddComponent(/datum/component/proximity_monitor) + +/obj/structure/environmental_storytelling_holopad/Destroy() + QDEL_NULL(our_holo) + return ..() + +/obj/structure/environmental_storytelling_holopad/HasProximity(atom/movable/AM) + if(!ishuman(AM) || activated) // No simple mobs or borgs setting this off. + return + var/mob/living/carbon/human/H = AM + start_message(H) + +/obj/structure/environmental_storytelling_holopad/proc/start_message(mob/living/carbon/human/H) + activated = TRUE + qdel(GetComponent(/datum/component/proximity_monitor)) + icon_state = "holopad1" + update_icon(UPDATE_OVERLAYS) + var/obj/effect/overlay/hologram = new(get_turf(src)) + our_holo = hologram + hologram.icon = getHologramIcon(get_id_photo(H, "Naked"), colour = null, opacity = 0.8, colour_blocking = TRUE) // This is more offputting. Also in colour more and less transparent. + hologram.alpha = 166 + hologram.mouse_opacity = MOUSE_OPACITY_TRANSPARENT + hologram.layer = FLY_LAYER + hologram.anchored = TRUE + hologram.name = speaking_name + hologram.set_light(2) + hologram.bubble_icon = "swarmer" + hologram.pixel_y = 16 + var/loops = 0 + for(var/I in things_to_say) + loops++ + hologram.atom_say("[I]") + if(soundblock) + playsound(loc, "sound/voice/dvorak/[soundblock][loops].ogg", 100, 0, 7) + sleep(loop_sleep_time) + +/obj/structure/environmental_storytelling_holopad/update_overlays() + . = ..() + underlays.Cut() + + if(activated) + underlays += emissive_appearance(icon, "holopad1_lightmask") + +/obj/structure/environmental_storytelling_holopad/teleporter_room + things_to_say = list("G-G-G-Greetings... Welcome to... my home.", "Plea-se leave. I am merciful. L-leave, and you will not be harmed. Further.", "Otherwise, organic, you will seal your fate...") + soundblock = "teleporter" + loop_sleep_time = 10 SECONDS + +/obj/structure/environmental_storytelling_holopad/first_turret_room + things_to_say = list("Unable to follow the easiest request. P-Pathetic.", "As you wish, you will not go further.", "In the mean time- let me see where you come f-from...") + soundblock = "turret" + loop_sleep_time = 7 SECONDS + +/obj/structure/environmental_storytelling_holopad/junk_room + things_to_say = list("It's amazing the junk you people leave around.", "And you barely inv-vested in quality stock parts here, before downloading...", "Your bones will fit in well on this ta-*$%& Really- are you really taking some of this junk?") + soundblock = "junk" + loop_sleep_time = 7 SECONDS + +/obj/structure/environmental_storytelling_holopad/vendor + things_to_say = list("Sorry a-bout the vendors, they have been on the fritz...", "I should renovate this room, once the maintenance drones return.", "It doesn't help each one I reprogram explodes after 5 minutes.") + soundblock = "vendor" + loop_sleep_time = 9 SECONDS + +/obj/structure/environmental_storytelling_holopad/control_room + things_to_say = list() + +/obj/structure/environmental_storytelling_holopad/control_room/Initialize(mapload) + . = ..() // No procs in variables before compile + things_to_say = list("Ah, you come from [station_name()]. Of course.", "They come to claim this space again... Never again.", "I should deliver a package to them. Virtual. And your corpse can deliver a physical one.") + loop_sleep_time = 9 SECONDS + switch("[station_name()]") + if("NSS Cyberiad") + soundblock = "cyberiad" + if("NSS Cerebron") + soundblock = "cerebron" + if("NSS Kerberos") + soundblock = "kerberos" + if("NSS Farragus") + soundblock = "farragus" + if(!soundblock) + things_to_say = list("Either you are using the tiny test map, or someone has made a new station and it got merged!", "If this is the case, you'll want to issue report this if a new map is merged", "Lines 2 and 3 here are always the same, only the first line will need a new generation") + + +/obj/structure/environmental_storytelling_holopad/control_room/start_message(mob/living/carbon/human/H) + . = ..() // What, did you think they were bluffing? Woe, virus apon thee. + message_admins("D.V.O.R.A.K is sending an event to the station, due to a raider on their sat.") + log_debug("D.V.O.R.A.K is sending an event to the station, due to a raider on their sat.") + switch(rand(1, 8)) + if(1) + new /datum/event/door_runtime() + if(2) + new /datum/event/communications_blackout() + if(3) + new /datum/event/ion_storm() + if(4) + new /datum/event/apc_short() + if(5) + new /datum/event/camera_failure() + new /datum/event/camera_failure() + new /datum/event/camera_failure() + new /datum/event/camera_failure() + if(6) + new /datum/event/rogue_drone() + if(7) + new /datum/event/falsealarm() + if(8) + new /datum/event/prison_break/station() // Yes, this is an event. It only hits brig, xenobio, and viro + +/obj/structure/environmental_storytelling_holopad/core_room + things_to_say = list("OKAY. TIME TO GO.", "GO MY SECURITY BORGS, WHAT TIDERS F-FEAR!", "I have a DOOMSDAY DEVICE AND I AM NOT AFRAID TO SHOVE IT UP YOUR-") + soundblock = "core" diff --git a/code/modules/awaymissions/mission_code/ruins/watcher_grave.dm b/code/modules/awaymissions/mission_code/ruins/watcher_grave.dm index 1bfb0792373b..715f78f42491 100644 --- a/code/modules/awaymissions/mission_code/ruins/watcher_grave.dm +++ b/code/modules/awaymissions/mission_code/ruins/watcher_grave.dm @@ -16,7 +16,7 @@ #define WATCHER_EGG_ACTIVE_MOD 0.5 /// Egg which hatches into a helpful pet. Or you can eat it if you want. -/obj/item/food/snacks/egg/watcher +/obj/item/food/egg/watcher name = "watcher egg" desc = "A lonely egg still pulsing with life, somehow untouched by the corruption of the Necropolis." icon_state = "egg_watcher" @@ -30,15 +30,15 @@ /// Datum used to measure our steps var/datum/movement_detector/pedometer -/obj/item/food/snacks/egg/watcher/Initialize(mapload) +/obj/item/food/egg/watcher/Initialize(mapload) . = ..() pedometer = new(src, CALLBACK(src, PROC_REF(on_stepped))) -/obj/item/food/snacks/egg/watcher/Destroy(force) +/obj/item/food/egg/watcher/Destroy(force) . = ..() QDEL_NULL(pedometer) -/obj/item/food/snacks/egg/watcher/examine(mob/user) +/obj/item/food/egg/watcher/examine(mob/user) . = ..() if(steps_travelled < (steps_to_hatch * WATCHER_EGG_ACTIVE_MOD)) . += "Something stirs listlessly inside." @@ -50,7 +50,7 @@ /// Called when we are moved, whether inside an inventory or by ourself somehow -/obj/item/food/snacks/egg/watcher/proc/on_stepped(atom/movable/egg, atom/mover, atom/old_loc, direction) +/obj/item/food/egg/watcher/proc/on_stepped(atom/movable/egg, atom/mover, atom/old_loc, direction) var/new_loc = get_turf(egg) if(isnull(new_loc) || new_loc == get_turf(old_loc)) return // Didn't actually go anywhere @@ -67,7 +67,7 @@ qdel(src) /// Animate the egg -/obj/item/food/snacks/egg/watcher/proc/jiggle() +/obj/item/food/egg/watcher/proc/jiggle() var/animation = isturf(loc) ? rand(1, 3) : 1 // Pixel_x/y animations don't work in an inventory switch(animation) if(1) diff --git a/code/modules/client/client_procs.dm b/code/modules/client/client_procs.dm index c17a7a826a88..4c256d0dc3ac 100644 --- a/code/modules/client/client_procs.dm +++ b/code/modules/client/client_procs.dm @@ -161,9 +161,11 @@ if(href_list["reload_statbrowser"]) stat_panel.reinitialize() + return if(href_list["reload_tguipanel"]) nuke_chat() + return //byond bug ID:2256651 if(asset_cache_job && (asset_cache_job in completed_asset_jobs)) diff --git a/code/modules/client/preference/preferences_toggles.dm b/code/modules/client/preference/preferences_toggles.dm index a7dd3adc33d0..d87c4d7f5e72 100644 --- a/code/modules/client/preference/preferences_toggles.dm +++ b/code/modules/client/preference/preferences_toggles.dm @@ -274,7 +274,7 @@ /datum/preference_toggle/toggle_disco name = "Toggle Disco Machine Music" - description = "Toggles hearing musical instruments like the violin and piano" + description = "Toggles hearing and dancing to the radiant dance machine" preftoggle_bitflag = SOUND_DISCO preftoggle_toggle = PREFTOGGLE_SOUND preftoggle_category = PREFTOGGLE_CATEGORY_GENERAL diff --git a/code/modules/clothing/head/helmet.dm b/code/modules/clothing/head/helmet.dm index 72954cd06f5c..e1075378113a 100644 --- a/code/modules/clothing/head/helmet.dm +++ b/code/modules/clothing/head/helmet.dm @@ -155,6 +155,7 @@ flags = null item_state = "thunderdome" armor = list(MELEE = 200, BULLET = 200, LASER = 50, ENERGY = 50, BOMB = INFINITY, RAD = INFINITY, FIRE = 450, ACID = 450) + flags_2 = RAD_PROTECT_CONTENTS_2 cold_protection = HEAD min_cold_protection_temperature = SPACE_HELM_MIN_TEMP_PROTECT heat_protection = HEAD diff --git a/code/modules/clothing/head/job_hats.dm b/code/modules/clothing/head/job_hats.dm index 973e9ee404e0..8f838090d58b 100644 --- a/code/modules/clothing/head/job_hats.dm +++ b/code/modules/clothing/head/job_hats.dm @@ -107,7 +107,7 @@ name = "hat" desc = "Someone who wears this will look very smart." icon_state = "detective" - allowed = list(/obj/item/food/snacks/candy/candy_corn, /obj/item/pen) + allowed = list(/obj/item/food/candy/candy_corn, /obj/item/pen) armor = list(MELEE = 15, BULLET = 5, LASER = 15, ENERGY = 5, BOMB = 0, RAD = 0, FIRE = 20, ACID = 50) dog_fashion = /datum/dog_fashion/head/detective diff --git a/code/modules/clothing/spacesuits/ert_hardsuits.dm b/code/modules/clothing/spacesuits/ert_hardsuits.dm index f59f8ece4d74..8ce6a775e29b 100644 --- a/code/modules/clothing/spacesuits/ert_hardsuits.dm +++ b/code/modules/clothing/spacesuits/ert_hardsuits.dm @@ -121,6 +121,7 @@ name = "elite emergency response team engineer helmet" max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT armor = list(MELEE = 40, BULLET = 15, LASER = 20, ENERGY = 5, BOMB = 15, RAD = INFINITY, FIRE = 200, ACID = 200) + flags_2 = RAD_PROTECT_CONTENTS_2 icon_state = "hardsuit0-gammaengineer" item_color = "gammaengineer" @@ -137,6 +138,7 @@ max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT icon_state = "ert_gengineer" armor = list(MELEE = 40, BULLET = 15, LASER = 20, ENERGY = 5, BOMB = 15, RAD = INFINITY, FIRE = 200, ACID = 200) + flags_2 = RAD_PROTECT_CONTENTS_2 helmettype = /obj/item/clothing/head/helmet/space/hardsuit/ert/engineer/gamma slowdown = 0 diff --git a/code/modules/clothing/spacesuits/hardsuit.dm b/code/modules/clothing/spacesuits/hardsuit.dm index 7fd7d909473f..9234e19c6807 100644 --- a/code/modules/clothing/spacesuits/hardsuit.dm +++ b/code/modules/clothing/spacesuits/hardsuit.dm @@ -377,11 +377,13 @@ //Strike team hardsuits /obj/item/clothing/head/helmet/space/hardsuit/syndi/elite/sst armor = list(MELEE = 115, BULLET = 115, LASER = 50, ENERGY = 35, BOMB = 200, RAD = INFINITY, FIRE = INFINITY, ACID = INFINITY) //Almost as good as DS gear, but unlike DS can switch to combat for mobility + flags_2 = RAD_PROTECT_CONTENTS_2 icon_state = "hardsuit0-sst" item_color = "sst" /obj/item/clothing/suit/space/hardsuit/syndi/elite/sst armor = list(MELEE = 115, BULLET = 115, LASER = 50, ENERGY = 40, BOMB = 200, RAD = INFINITY, FIRE = INFINITY, ACID = INFINITY) + flags_2 = RAD_PROTECT_CONTENTS_2 icon_state = "hardsuit0-sst" item_color = "sst" helmettype = /obj/item/clothing/head/helmet/space/hardsuit/syndi/elite/sst @@ -488,6 +490,7 @@ item_state = "singuloth_helm" item_color = "singuloth" armor = list(MELEE = 35, BULLET = 5, LASER = 10, ENERGY = 5, BOMB = 15, RAD = INFINITY, FIRE = INFINITY, ACID = INFINITY) + flags_2 = RAD_PROTECT_CONTENTS_2 sprite_sheets = null /obj/item/clothing/suit/space/hardsuit/singuloth @@ -496,6 +499,7 @@ icon_state = "hardsuit-singuloth" item_state = "singuloth_hardsuit" flags = STOPSPRESSUREDMAGE + flags_2 = RAD_PROTECT_CONTENTS_2 armor = list(MELEE = 35, BULLET = 5, LASER = 10, ENERGY = 5, BOMB = 15, RAD = INFINITY, FIRE = INFINITY, ACID = INFINITY) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/singuloth sprite_sheets = null diff --git a/code/modules/clothing/spacesuits/misc_spacesuits.dm b/code/modules/clothing/spacesuits/misc_spacesuits.dm index c73074e81e14..9ba7154912b2 100644 --- a/code/modules/clothing/spacesuits/misc_spacesuits.dm +++ b/code/modules/clothing/spacesuits/misc_spacesuits.dm @@ -44,6 +44,7 @@ armor = list(MELEE = 200, BULLET = 200, LASER = 50, ENERGY = 50, BOMB = INFINITY, RAD = INFINITY, FIRE = INFINITY, ACID = INFINITY) max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT resistance_flags = FIRE_PROOF | ACID_PROOF + flags_2 = RAD_PROTECT_CONTENTS_2 vision_flags = SEE_MOBS lighting_alpha = LIGHTING_PLANE_ALPHA_MOSTLY_INVISIBLE //don't render darkness while wearing these see_in_dark = 8 @@ -60,6 +61,7 @@ flags_inv = HIDESHOES | HIDEJUMPSUIT | HIDETAIL max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT resistance_flags = FIRE_PROOF | ACID_PROOF + flags_2 = RAD_PROTECT_CONTENTS_2 strip_delay = 130 dog_fashion = /datum/dog_fashion/back/deathsquad @@ -97,6 +99,7 @@ slowdown = 0 armor = list(MELEE = 200, BULLET = 200, LASER = 50, ENERGY = 50, BOMB = INFINITY, RAD = INFINITY, FIRE = INFINITY, ACID = INFINITY) resistance_flags = FIRE_PROOF | ACID_PROOF + flags_2 = RAD_PROTECT_CONTENTS_2 w_class = WEIGHT_CLASS_NORMAL /obj/item/clothing/suit/space/deathsquad/officer/solgov diff --git a/code/modules/clothing/spacesuits/syndi.dm b/code/modules/clothing/spacesuits/syndi.dm index 515c4e4cf430..93564f3c757c 100644 --- a/code/modules/clothing/spacesuits/syndi.dm +++ b/code/modules/clothing/spacesuits/syndi.dm @@ -88,6 +88,7 @@ armor = list(MELEE = 200, BULLET = 200, LASER = 50, ENERGY = 50, BOMB = INFINITY, RAD = INFINITY, FIRE = INFINITY, ACID = INFINITY) //Matches DS gear. max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT resistance_flags = ACID_PROOF + flags_2 = RAD_PROTECT_CONTENTS_2 /obj/item/clothing/suit/space/syndicate/black name = "black space suit" @@ -100,6 +101,7 @@ armor = list(MELEE = 200, BULLET = 200, LASER = 50, ENERGY = 50, BOMB = INFINITY, RAD = INFINITY, FIRE = INFINITY, ACID = INFINITY) //Matches DS gear. max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT resistance_flags = ACID_PROOF + flags_2 = RAD_PROTECT_CONTENTS_2 //Black-green syndicate space suit /obj/item/clothing/head/helmet/space/syndicate/black/green @@ -161,6 +163,7 @@ armor = list(MELEE = 200, BULLET = 200, LASER = 50, ENERGY = 50, BOMB = INFINITY, RAD = INFINITY, FIRE = INFINITY, ACID = INFINITY) //Matches DS gear. max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT resistance_flags = ACID_PROOF + flags_2 = RAD_PROTECT_CONTENTS_2 /obj/item/clothing/suit/space/syndicate/black/red name = "black and red space suit" @@ -173,6 +176,7 @@ armor = list(MELEE = 200, BULLET = 200, LASER = 50, ENERGY = 50, BOMB = INFINITY, RAD = INFINITY, FIRE = INFINITY, ACID = INFINITY) //Matches DS gear. max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT resistance_flags = ACID_PROOF + flags_2 = RAD_PROTECT_CONTENTS_2 //Black with yellow/red engineering syndicate space suit diff --git a/code/modules/clothing/suits/armor_suits.dm b/code/modules/clothing/suits/armor_suits.dm index 3dc702423335..e5f5014e52bf 100644 --- a/code/modules/clothing/suits/armor_suits.dm +++ b/code/modules/clothing/suits/armor_suits.dm @@ -702,6 +702,7 @@ min_cold_protection_temperature = SPACE_SUIT_MIN_TEMP_PROTECT sprite_sheets = null armor = list(MELEE = 200, BULLET = 200, LASER = 50, ENERGY = 50, BOMB = INFINITY, RAD = INFINITY, FIRE = 450, ACID = 450) + flags_2 = RAD_PROTECT_CONTENTS_2 /obj/item/clothing/suit/armor/heavy name = "heavy armor" @@ -712,6 +713,7 @@ w_class = WEIGHT_CLASS_BULKY gas_transfer_coefficient = 0.90 flags = THICKMATERIAL + flags_2 = RAD_PROTECT_CONTENTS_2 body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS slowdown = 3 flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT @@ -722,6 +724,7 @@ body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT flags = THICKMATERIAL + flags_2 = RAD_PROTECT_CONTENTS_2 cold_protection = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS heat_protection = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS hide_tail_by_species = list("Vox") diff --git a/code/modules/clothing/suits/misc_suits.dm b/code/modules/clothing/suits/misc_suits.dm index 9217b991eb9d..4c6a85d0d2c0 100644 --- a/code/modules/clothing/suits/misc_suits.dm +++ b/code/modules/clothing/suits/misc_suits.dm @@ -1211,6 +1211,7 @@ gas_transfer_coefficient = 0.01 permeability_coefficient = 0.01 flags = STOPSPRESSUREDMAGE | THICKMATERIAL | NODROP + flags_2 = RAD_PROTECT_CONTENTS_2 body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS|HEAD armor = list(MELEE = INFINITY, BULLET = INFINITY, LASER = INFINITY, ENERGY = INFINITY, BOMB = INFINITY, RAD = INFINITY, FIRE = INFINITY, ACID = INFINITY) cold_protection = UPPER_TORSO | LOWER_TORSO | LEGS | FEET | ARMS | HANDS | HEAD diff --git a/code/modules/clothing/under/misc_jumpsuits.dm b/code/modules/clothing/under/misc_jumpsuits.dm index a3a9b30b0598..3d2e48173b7e 100644 --- a/code/modules/clothing/under/misc_jumpsuits.dm +++ b/code/modules/clothing/under/misc_jumpsuits.dm @@ -184,3 +184,4 @@ slowdown = -10 siemens_coefficient = 0 resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF | FREEZE_PROOF + flags_2 = RAD_PROTECT_CONTENTS_2 diff --git a/code/modules/crafting/recipes.dm b/code/modules/crafting/recipes.dm index 73a7e61b135f..859ee38a7cde 100644 --- a/code/modules/crafting/recipes.dm +++ b/code/modules/crafting/recipes.dm @@ -91,10 +91,10 @@ /datum/crafting_recipe/throwing_croissant name = "Throwing croissant" reqs = list( - /obj/item/food/snacks/croissant = 1, + /obj/item/food/croissant = 1, /obj/item/stack/rods = 1 ) - result = list(/obj/item/food/snacks/croissant/throwing) + result = list(/obj/item/food/croissant/throwing) category = CAT_WEAPONRY subcategory = CAT_WEAPON always_available = FALSE @@ -924,7 +924,7 @@ name = "Snowman" result = list(/obj/structure/snowman/built) reqs = list(/obj/item/snowball = 10, - /obj/item/food/snacks/grown/carrot = 1, + /obj/item/food/grown/carrot = 1, /obj/item/grown/log = 2) time = 50 category = CAT_MISC diff --git a/code/modules/crafting/tailoring.dm b/code/modules/crafting/tailoring.dm index 26b760dc80c5..68ca54d58389 100644 --- a/code/modules/crafting/tailoring.dm +++ b/code/modules/crafting/tailoring.dm @@ -631,8 +631,8 @@ name = "Flower Crown" result = list(/obj/item/clothing/head/flower_crown) time = 2 SECONDS - reqs = list(/obj/item/food/snacks/grown/poppy = 3, - /obj/item/food/snacks/grown/lily = 3, + reqs = list(/obj/item/food/grown/poppy = 3, + /obj/item/food/grown/lily = 3, /obj/item/grown/sunflower = 3) category = CAT_CLOTHING @@ -647,21 +647,21 @@ name = "Poppy Crown" result = list(/obj/item/clothing/head/poppy_crown) time = 2 SECONDS - reqs = list(/obj/item/food/snacks/grown/poppy = 5) + reqs = list(/obj/item/food/grown/poppy = 5) category = CAT_CLOTHING /datum/crafting_recipe/lily_crown name = "Lily Crown" result = list(/obj/item/clothing/head/lily_crown) time = 2 SECONDS - reqs = list(/obj/item/food/snacks/grown/lily = 5) + reqs = list(/obj/item/food/grown/lily = 5) category = CAT_CLOTHING /datum/crafting_recipe/geranium_crown name = "Geranium Crown" result = list(/obj/item/clothing/head/geranium_crown) time = 2 SECONDS - reqs = list(/obj/item/food/snacks/grown/geranium = 5) + reqs = list(/obj/item/food/grown/geranium = 5) category = CAT_CLOTHING #undef ALLOWED_INGREDIENT_SUNGLASSES diff --git a/code/modules/customitems/item_defines.dm b/code/modules/customitems/item_defines.dm index 241295ad2bee..55605f6b2302 100644 --- a/code/modules/customitems/item_defines.dm +++ b/code/modules/customitems/item_defines.dm @@ -284,11 +284,10 @@ storage_slots = 3 /obj/item/storage/toolbox/fluff/lunchbox/populate_contents() - new /obj/item/food/snacks/sandwich(src) - new /obj/item/food/snacks/chips(src) + new /obj/item/food/customizable/sandwich(src) + new /obj/item/food/chips(src) new /obj/item/reagent_containers/drinks/cans/cola(src) - /obj/item/fluff/wingler_comb name = "blue comb" desc = "A blue comb, it looks like it was made to groom a Tajaran's fur." diff --git a/code/modules/events/meaty_ores.dm b/code/modules/events/meaty_ores.dm index 7d0c6bae4594..af073f2ac65c 100644 --- a/code/modules/events/meaty_ores.dm +++ b/code/modules/events/meaty_ores.dm @@ -32,7 +32,7 @@ if(prob(80)) gibs(where) if(prob(45)) - new /obj/item/food/snacks/meat(where) + new /obj/item/food/meat(where) else if(prob(10)) explosion(where, 0, pick(0,1), pick(2,3), 0) else diff --git a/code/modules/fish/fish_items.dm b/code/modules/fish/fish_items.dm index 98ae9c00bef9..7e913f1b15ae 100644 --- a/code/modules/fish/fish_items.dm +++ b/code/modules/fish/fish_items.dm @@ -66,7 +66,7 @@ can_hold = list( /obj/item/fish, /obj/item/fish_eggs, - /obj/item/food/snacks/shrimp, + /obj/item/food/shrimp, ) resistance_flags = FLAMMABLE @@ -74,7 +74,7 @@ // Fish Items // ////////////////////////////////////////////// -/obj/item/food/snacks/shrimp +/obj/item/food/shrimp name = "shrimp" desc = "A single raw shrimp." icon = 'icons/obj/food/seafood.dmi' @@ -82,12 +82,12 @@ filling_color = "#FF1C1C" bitesize = 1 -/obj/item/food/snacks/shrimp/Initialize(mapload) +/obj/item/food/shrimp/Initialize(mapload) . = ..() desc = pick("Anyway, like I was sayin', shrimp is the fruit of the sea.", "You can barbecue it, boil it, broil it, bake it, saute it.") reagents.add_reagent("protein", 1) -/obj/item/food/snacks/feederfish +/obj/item/food/feederfish name = "feeder fish" desc = "A tiny feeder fish. Sure doesn't look very filling..." icon = 'icons/obj/food/seafood.dmi' @@ -95,7 +95,7 @@ filling_color = "#FF1C1C" bitesize = 1 -/obj/item/food/snacks/feederfish/Initialize(mapload) +/obj/item/food/feederfish/Initialize(mapload) . = ..() reagents.add_reagent("protein", 1) @@ -170,8 +170,8 @@ /obj/item/fish/catfish/attackby(obj/item/O, mob/user as mob) if(O.sharp) to_chat(user, "You carefully clean and gut \the [src.name].") - new /obj/item/food/snacks/catfishmeat(get_turf(src)) - new /obj/item/food/snacks/catfishmeat(get_turf(src)) + new /obj/item/food/catfishmeat(get_turf(src)) + new /obj/item/food/catfishmeat(get_turf(src)) qdel(src) return ..() @@ -189,8 +189,8 @@ /obj/item/fish/salmon/attackby(obj/item/O, mob/user as mob) if(O.sharp) to_chat(user, "You carefully clean and gut \the [src.name].") - new /obj/item/food/snacks/salmonmeat(get_turf(src)) - new /obj/item/food/snacks/salmonmeat(get_turf(src)) + new /obj/item/food/salmonmeat(get_turf(src)) + new /obj/item/food/salmonmeat(get_turf(src)) qdel(src) return ..() @@ -205,7 +205,7 @@ /obj/item/fish/babycarp/attackby(obj/item/O, mob/user as mob) if(O.sharp) to_chat(user, "You carefully clean and gut \the [src.name].") - new /obj/item/food/snacks/carpmeat(get_turf(src)) //just one fillet; this is a baby, afterall. + new /obj/item/food/carpmeat(get_turf(src)) //just one fillet; this is a baby, afterall. qdel(src) return ..() diff --git a/code/modules/fish/fish_types.dm b/code/modules/fish/fish_types.dm index f90cda4efc90..890adac72681 100644 --- a/code/modules/fish/fish_types.dm +++ b/code/modules/fish/fish_types.dm @@ -52,13 +52,13 @@ /datum/fish/shrimp fish_name = "shrimp" egg_item = /obj/item/fish_eggs/shrimp - fish_item = /obj/item/food/snacks/shrimp + fish_item = /obj/item/food/shrimp crossbreeder = 0 /datum/fish/feederfish fish_name = "feeder fish" egg_item = /obj/item/fish_eggs/feederfish - fish_item = /obj/item/food/snacks/feederfish + fish_item = /obj/item/food/feederfish /datum/fish/feederfish/special_interact(obj/machinery/fishtank/my_tank) if(!my_tank || !istype(my_tank)) diff --git a/code/modules/food_and_drinks/drinks/bottler/bottler.dm b/code/modules/food_and_drinks/drinks/bottler/bottler.dm index 13c709e557d4..c4b6911633ab 100644 --- a/code/modules/food_and_drinks/drinks/bottler/bottler.dm +++ b/code/modules/food_and_drinks/drinks/bottler/bottler.dm @@ -28,7 +28,7 @@ available_recipes = list() acceptable_items = list() //These are going to be acceptable even if they aren't in a recipe - acceptable_items |= /obj/item/food/snacks + acceptable_items |= /obj/item/food acceptable_items |= /obj/item/reagent_containers/drinks/cans //the rest is based on what is used in recipes so we don't have people destroying the nuke disc for(var/type in subtypesof(/datum/bottler_recipe)) @@ -45,8 +45,8 @@ to_chat(user, "[O] is stuck to your hand, you can't seem to put it down!") return 0 if(is_type_in_list(O,acceptable_items)) - if(istype(O, /obj/item/food/snacks)) - var/obj/item/food/snacks/S = O + if(istype(O, /obj/item/food)) + var/obj/item/food/S = O user.unEquip(S) if(S.reagents && !S.reagents.total_volume) //This prevents us from using empty foods, should one occur due to some sort of error to_chat(user, "[S] is gone, oh no!") diff --git a/code/modules/food_and_drinks/drinks/bottler/bottler_recipes.dm b/code/modules/food_and_drinks/drinks/bottler/bottler_recipes.dm index 3a923c5428ad..0f5b4719bc8d 100644 --- a/code/modules/food_and_drinks/drinks/bottler/bottler_recipes.dm +++ b/code/modules/food_and_drinks/drinks/bottler/bottler_recipes.dm @@ -22,48 +22,48 @@ There is no excuse to do this wrong now that there is an example for you. --Fals /datum/bottler_recipe/Paradise_Punch name = "Paradise Punch" description = "Tastes just how you'd think Paradise would if you could bottle it." - ingredients = list(/obj/item/food/snacks/grown/grapes, - /obj/item/food/snacks/grown/banana, - /obj/item/food/snacks/grown/cherries) + ingredients = list(/obj/item/food/grown/grapes, + /obj/item/food/grown/banana, + /obj/item/food/grown/cherries) result = "paradise_punch" /datum/bottler_recipe/Applepocalypse name = "Apple-pocalypse" description = "If doomsday came in fruit form, it'd probably be apples." - ingredients = list(/obj/item/food/snacks/grown/apple, - /obj/item/food/snacks/grown/apple, - /obj/item/food/snacks/grown/apple) + ingredients = list(/obj/item/food/grown/apple, + /obj/item/food/grown/apple, + /obj/item/food/grown/apple) result = "apple-pocalypse" /datum/bottler_recipe/Berry_Banned name = "Berry Banned" description = "Reason for ban: Excessive Flavor." - ingredients = list(/obj/item/food/snacks/grown/berries, - /obj/item/food/snacks/grown/berries, - /obj/item/food/snacks/grown/berries) + ingredients = list(/obj/item/food/grown/berries, + /obj/item/food/grown/berries, + /obj/item/food/grown/berries) result = "berry_banned" /datum/bottler_recipe/Berry_Banned2 name = "Berry Banned" description = "Reason for ban: Excessive Flavor." - ingredients = list(/obj/item/food/snacks/grown/berries/poison, - /obj/item/food/snacks/grown/berries/poison, - /obj/item/food/snacks/grown/berries/poison) + ingredients = list(/obj/item/food/grown/berries/poison, + /obj/item/food/grown/berries/poison, + /obj/item/food/grown/berries/poison) result = "berry_banned2" /datum/bottler_recipe/Blackeye_Brew name = "Blackeye Brew" description = "Creamy, smooth flavor, just like the bald heads of the masses. Supposedly aged for 30 years." ingredients = list(/obj/item/reagent_containers/drinks/cans/cola, - /obj/item/food/snacks/grown/sugarcane, - /obj/item/food/snacks/frozen/icecream) + /obj/item/food/grown/sugarcane, + /obj/item/food/frozen/icecream) result = "blackeye_brew" /datum/bottler_recipe/Grape_Granade name = "Grape Granade" description = "Exploding with grape flavor and a favorite among ERT members system-wide." ingredients = list(/obj/item/reagent_containers/drinks/cans/grape_juice, - /obj/item/food/snacks/grown/grapes, + /obj/item/food/grown/grapes, /obj/item/flash) result = "grape_granade" @@ -71,6 +71,6 @@ There is no excuse to do this wrong now that there is an example for you. --Fals name = "Meteor Malt" description = "Soft drinks have been detected on collision course with your tastebuds." ingredients = list(/obj/item/stack/ore, - /obj/item/food/snacks/grown/wheat, + /obj/item/food/grown/wheat, /obj/item/stack/ore) result = "meteor_malt" diff --git a/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm b/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm index 66a06e0b0d40..a08d5b383712 100644 --- a/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm +++ b/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm @@ -16,8 +16,8 @@ pickup_sound = 'sound/items/handling/drinkglass_pickup.ogg' /obj/item/reagent_containers/drinks/drinkingglass/attackby(obj/item/I, mob/user, params) - if(istype(I, /obj/item/food/snacks/egg)) //breaking eggs - var/obj/item/food/snacks/egg/E = I + if(istype(I, /obj/item/food/egg)) //breaking eggs + var/obj/item/food/egg/E = I if(reagents) if(reagents.total_volume >= reagents.maximum_volume) to_chat(user, "[src] is full.") diff --git a/code/modules/food_and_drinks/food/condiment.dm b/code/modules/food_and_drinks/food/condiment.dm index 4f552f3d360f..8ec0d951e814 100644 --- a/code/modules/food_and_drinks/food/condiment.dm +++ b/code/modules/food_and_drinks/food/condiment.dm @@ -85,7 +85,7 @@ to_chat(user, "You fill [src] with [trans] units of the contents of [target].") //Something like a glass or a food item. Player probably wants to transfer TO it. - else if(target.is_drainable() || istype(target, /obj/item/food/snacks)) + else if(target.is_drainable() || istype(target, /obj/item/food)) if(!reagents.total_volume) to_chat(user, "[src] is empty!") return @@ -317,7 +317,7 @@ if(!proximity) return //You can tear the bag open above food to put the condiments on it, obviously. - if(istype(target, /obj/item/food/snacks)) + if(istype(target, /obj/item/food)) if(!reagents.total_volume) to_chat(user, "You tear open [src], but there's nothing in it.") qdel(src) diff --git a/code/modules/food_and_drinks/food/customizables.dm b/code/modules/food_and_drinks/food/customizables.dm index b65052296f66..3df6580452ad 100644 --- a/code/modules/food_and_drinks/food/customizables.dm +++ b/code/modules/food_and_drinks/food/customizables.dm @@ -1,40 +1,40 @@ #define MAKE_CUSTOM_FOOD(snack_to_add, user, type) \ do {\ - var/obj/item/food/snacks/customizable/custom_snack = new type(get_turf(user));\ + var/obj/item/food/customizable/custom_snack = new type(get_turf(user));\ custom_snack.add_ingredient(snack_to_add, user); \ user.put_in_active_hand(custom_snack); \ qdel(src);\ } while(FALSE) -/obj/item/food/snacks/breadslice/attackby(obj/item/W, mob/user, params) - if(istype(W, /obj/item/food/snacks) && !(W.flags & NODROP)) - MAKE_CUSTOM_FOOD(W, user, /obj/item/food/snacks/customizable/sandwich) +/obj/item/food/breadslice/attackby(obj/item/W, mob/user, params) + if(istype(W, /obj/item/food) && !(W.flags & NODROP)) + MAKE_CUSTOM_FOOD(W, user, /obj/item/food/customizable/sandwich) return ..() -/obj/item/food/snacks/bun/attackby(obj/item/W, mob/user, params) - if(istype(W, /obj/item/food/snacks) && !(W.flags & NODROP)) - MAKE_CUSTOM_FOOD(W, user, /obj/item/food/snacks/customizable/burger) +/obj/item/food/bun/attackby(obj/item/W, mob/user, params) + if(istype(W, /obj/item/food) && !(W.flags & NODROP)) + MAKE_CUSTOM_FOOD(W, user, /obj/item/food/customizable/burger) return ..() -/obj/item/food/snacks/sliceable/flatdough/attackby(obj/item/W, mob/user, params) - if(istype(W, /obj/item/food/snacks) && !(W.flags & NODROP)) - MAKE_CUSTOM_FOOD(W, user, /obj/item/food/snacks/customizable/pizza) +/obj/item/food/sliceable/flatdough/attackby(obj/item/W, mob/user, params) + if(istype(W, /obj/item/food) && !(W.flags & NODROP)) + MAKE_CUSTOM_FOOD(W, user, /obj/item/food/customizable/pizza) return ..() -/obj/item/food/snacks/boiledspaghetti/attackby(obj/item/W, mob/user, params) - if(istype(W, /obj/item/food/snacks) && !(W.flags & NODROP)) - MAKE_CUSTOM_FOOD(W, user, /obj/item/food/snacks/customizable/pasta) +/obj/item/food/boiledspaghetti/attackby(obj/item/W, mob/user, params) + if(istype(W, /obj/item/food) && !(W.flags & NODROP)) + MAKE_CUSTOM_FOOD(W, user, /obj/item/food/customizable/pasta) return ..() /obj/item/trash/plate/attackby(obj/item/W, mob/user, params) - if(istype(W, /obj/item/food/snacks) && !(W.flags & NODROP)) - MAKE_CUSTOM_FOOD(W, user, /obj/item/food/snacks/customizable/fullycustom) + if(istype(W, /obj/item/food) && !(W.flags & NODROP)) + MAKE_CUSTOM_FOOD(W, user, /obj/item/food/customizable/fullycustom) return ..() @@ -47,14 +47,14 @@ do {\ icon_state = "soup" /obj/item/trash/bowl/attackby(obj/item/I, mob/user, params) - if(istype(I, /obj/item/food/snacks) && !(I.flags & NODROP)) - var/obj/item/food/snacks/customizable/soup/S = new(get_turf(user)) + if(istype(I, /obj/item/food) && !(I.flags & NODROP)) + var/obj/item/food/customizable/soup/S = new(get_turf(user)) S.attackby(I, user, params) qdel(src) else ..() -/obj/item/food/snacks/customizable +/obj/item/food/customizable name = "sandwich" desc = "A sandwich! A timeless classic." icon = 'icons/obj/food/custom.dmi' @@ -74,20 +74,20 @@ do {\ var/list/ingredients = list() list_reagents = list("nutriment" = 8) -/obj/item/food/snacks/customizable/Initialize(mapload) +/obj/item/food/customizable/Initialize(mapload) . = ..() if(top) top_image = new(icon, "[baseicon]_top") add_overlay(top_image) -/obj/item/food/snacks/customizable/sandwich +/obj/item/food/customizable/sandwich name = "sandwich" desc = "A sandwich! A timeless classic." icon_state = "sandwichcustom" baseicon = "sandwichcustom" basename = "sandwich" -/obj/item/food/snacks/customizable/pizza +/obj/item/food/customizable/pizza name = "personal pizza" desc = "A personalized pan pizza meant for only one person." icon_state = "personal_pizza" @@ -97,7 +97,7 @@ do {\ top = 0 tastes = list("crust" = 1, "tomato" = 1, "cheese" = 1) -/obj/item/food/snacks/customizable/pasta +/obj/item/food/customizable/pasta name = "spaghetti" desc = "Noodles. With stuff. Delicious." icon_state = "pasta_bot" @@ -106,7 +106,7 @@ do {\ snack_overlays = 0 top = 0 -/obj/item/food/snacks/customizable/cook/bread +/obj/item/food/customizable/cook/bread name = "bread" desc = "Tasty bread." icon_state = "breadcustom" @@ -116,7 +116,7 @@ do {\ top = 0 tastes = list("bread" = 10) -/obj/item/food/snacks/customizable/cook/pie +/obj/item/food/customizable/cook/pie name = "pie" desc = "Tasty pie." icon_state = "piecustom" @@ -126,7 +126,7 @@ do {\ top = 0 tastes = list("pie" = 1) -/obj/item/food/snacks/customizable/cook/cake +/obj/item/food/customizable/cook/cake name = "cake" desc = "A popular band." icon_state = "cakecustom" @@ -136,7 +136,7 @@ do {\ top = 0 tastes = list("cake" = 1) -/obj/item/food/snacks/customizable/cook/jelly +/obj/item/food/customizable/cook/jelly name = "jelly" desc = "Totally jelly." icon_state = "jellycustom" @@ -145,7 +145,7 @@ do {\ snack_overlays = 0 top = 0 -/obj/item/food/snacks/customizable/cook/donkpocket +/obj/item/food/customizable/cook/donkpocket name = "donk pocket" desc = "You wanna put a bangin-Oh nevermind." icon_state = "donkcustom" @@ -154,7 +154,7 @@ do {\ snack_overlays = 0 top = 0 -/obj/item/food/snacks/customizable/cook/kebab +/obj/item/food/customizable/cook/kebab name = "kebab" desc = "Kebab or Kabab?" icon_state = "kababcustom" @@ -164,7 +164,7 @@ do {\ top = 0 tastes = list("meat" = 3, "metal" = 1) -/obj/item/food/snacks/customizable/cook/salad +/obj/item/food/customizable/cook/salad name = "salad" desc = "Very tasty." icon_state = "saladcustom" @@ -174,7 +174,7 @@ do {\ top = 0 tastes = list("leaves" = 1) -/obj/item/food/snacks/customizable/cook/waffles +/obj/item/food/customizable/cook/waffles name = "waffles" desc = "Made with love." icon_state = "wafflecustom" @@ -184,7 +184,7 @@ do {\ top = 0 tastes = list("waffles" = 1) -/obj/item/food/snacks/customizable/candy/cookie +/obj/item/food/customizable/candy/cookie name = "cookie" desc = "COOKIE!!1!" icon_state = "cookiecustom" @@ -194,7 +194,7 @@ do {\ top = 0 tastes = list("cookie" = 1) -/obj/item/food/snacks/customizable/candy/cotton +/obj/item/food/customizable/candy/cotton name = "flavored cotton candy" desc = "Who can take a sunrise, sprinkle it with dew," icon_state = "cottoncandycustom" @@ -203,7 +203,7 @@ do {\ snack_overlays = 0 top = 0 -/obj/item/food/snacks/customizable/candy/gummybear +/obj/item/food/customizable/candy/gummybear name = "flavored giant gummy bear" desc = "Cover it in chocolate and a miracle or two," icon_state = "gummybearcustom" @@ -212,7 +212,7 @@ do {\ snack_overlays = 0 top = 0 -/obj/item/food/snacks/customizable/candy/gummyworm +/obj/item/food/customizable/candy/gummyworm name = "flavored giant gummy worm" desc = "The Candy Man can 'cause he mixes it with love," icon_state = "gummywormcustom" @@ -221,7 +221,7 @@ do {\ snack_overlays = 0 top = 0 -/obj/item/food/snacks/customizable/candy/jellybean +/obj/item/food/customizable/candy/jellybean name = "flavored giant jelly bean" desc = "And makes the world taste good." icon_state = "jellybeancustom" @@ -230,7 +230,7 @@ do {\ snack_overlays = 0 top = 0 -/obj/item/food/snacks/customizable/candy/jawbreaker +/obj/item/food/customizable/candy/jawbreaker name = "flavored jawbreaker" desc = "Who can take a rainbow, Wrap it in a sigh," icon_state = "jawbreakercustom" @@ -239,7 +239,7 @@ do {\ snack_overlays = 0 top = 0 -/obj/item/food/snacks/customizable/candy/candycane +/obj/item/food/customizable/candy/candycane name = "flavored candy cane" desc = "Soak it in the sun and make strawberry-lemon pie," icon_state = "candycanecustom" @@ -248,7 +248,7 @@ do {\ snack_overlays = 0 top = 0 -/obj/item/food/snacks/customizable/candy/gum +/obj/item/food/customizable/candy/gum name = "flavored gum" desc = "The Candy Man can 'cause he mixes it with love and makes the world taste good. And the world tastes good 'cause the Candy Man thinks it should..." icon_state = "gumcustom" @@ -257,7 +257,7 @@ do {\ snack_overlays = 0 top = 0 -/obj/item/food/snacks/customizable/candy/donut +/obj/item/food/customizable/candy/donut name = "filled donut" desc = "Donut eat this!" // kill me icon_state = "donutcustom" @@ -266,7 +266,7 @@ do {\ snack_overlays = 0 top = 0 -/obj/item/food/snacks/customizable/candy/bar +/obj/item/food/customizable/candy/bar name = "flavored chocolate bar" desc = "Made in a factory downtown." icon_state = "barcustom" @@ -275,7 +275,7 @@ do {\ snack_overlays = 0 top = 0 -/obj/item/food/snacks/customizable/candy/sucker +/obj/item/food/customizable/candy/sucker name = "flavored sucker" desc = "Suck suck suck." icon_state = "suckercustom" @@ -284,7 +284,7 @@ do {\ snack_overlays = 0 top = 0 -/obj/item/food/snacks/customizable/candy/cash +/obj/item/food/customizable/candy/cash name = "flavored chocolate cash" desc = "I got piles!" icon_state = "cashcustom" @@ -293,7 +293,7 @@ do {\ snack_overlays = 0 top = 0 -/obj/item/food/snacks/customizable/candy/coin +/obj/item/food/customizable/candy/coin name = "flavored chocolate coin" desc = "Clink, clink, clink." icon_state = "coincustom" @@ -303,7 +303,7 @@ do {\ top = 0 /// In the event you fuckers find something I forgot to add a customizable food for. -/obj/item/food/snacks/customizable/fullycustom +/obj/item/food/customizable/fullycustom name = "on a plate" desc = "A unique dish." icon_state = "fullycustom" @@ -314,7 +314,7 @@ do {\ ingredient_limit = 20 fullycustom = 1 -/obj/item/food/snacks/customizable/soup +/obj/item/food/customizable/soup name = "soup" desc = "A bowl with liquid and... stuff in it." icon_state = "soup" @@ -326,7 +326,7 @@ do {\ top = 0 tastes = list("soup" = 1) -/obj/item/food/snacks/customizable/burger +/obj/item/food/customizable/burger name = "burger bun" desc = "A bun for a burger. Delicious." icon_state = "burgercustom" @@ -335,14 +335,14 @@ do {\ tastes = list("bun" = 4) -/obj/item/food/snacks/customizable/attackby(obj/item/I, mob/user, params) +/obj/item/food/customizable/attackby(obj/item/I, mob/user, params) if(is_pen(I)) var/new_name = rename_interactive(user, I, use_prefix = FALSE) if(!isnull(new_name)) to_chat(user, "You declare this to be \a [name]. Delicious!") return - if(!istype(I, /obj/item/food/snacks)) + if(!istype(I, /obj/item/food)) to_chat(user, "[I] isn't exactly something that you would want to eat.") return @@ -354,14 +354,14 @@ do {\ * Arguments: * * snack - The ingredient that will be added */ -/obj/item/food/snacks/customizable/proc/add_ingredient(obj/item/food/snacks/snack, mob/user) +/obj/item/food/customizable/proc/add_ingredient(obj/item/food/snack, mob/user) if(length(ingredients) > ingredient_limit) to_chat(user, "If you put anything else in or on [src] it's going to make a mess.") return // Fully custom snacks don't add the ingredients. So no need to check - if(!fullycustom && istype(snack, /obj/item/food/snacks/customizable)) - var/obj/item/food/snacks/customizable/origin = snack + if(!fullycustom && istype(snack, /obj/item/food/customizable)) + var/obj/item/food/customizable/origin = snack if(length(ingredients) + length(origin.ingredients) > ingredient_limit) to_chat(user, "Merging [snack] and [src] together is going to make a mess.") return @@ -376,8 +376,8 @@ do {\ var/list/added_ingredients = list(snack) // Only merge when it is not fullycustom. Else it looks weird - if(!fullycustom && istype(snack, /obj/item/food/snacks/customizable)) - var/obj/item/food/snacks/customizable/origin = snack + if(!fullycustom && istype(snack, /obj/item/food/customizable)) + var/obj/item/food/customizable/origin = snack added_ingredients += origin.ingredients origin.ingredients.Cut() origin.name = initial(origin.name) // Reset the name for the examine text @@ -394,12 +394,12 @@ do {\ * Arguments: * * new_ingredients - The new ingredients to be added */ -/obj/item/food/snacks/customizable/proc/add_ingredients(list/new_ingredients) +/obj/item/food/customizable/proc/add_ingredients(list/new_ingredients) cut_overlay(top_image) // Remove the top image so we can change it again var/ingredient_num = length(ingredients) ingredients += new_ingredients - for(var/obj/item/food/snacks/food as anything in new_ingredients) + for(var/obj/item/food/food as anything in new_ingredients) ingredient_num++ var/image/ingredient_image if(!fullycustom) @@ -425,20 +425,20 @@ do {\ add_overlay(top_image) -/obj/item/food/snacks/customizable/Destroy() +/obj/item/food/customizable/Destroy() QDEL_LIST_CONTENTS(ingredients) qdel(top_image) return ..() -/obj/item/food/snacks/customizable/examine(mob/user) +/obj/item/food/customizable/examine(mob/user) . = ..() if(LAZYLEN(ingredients)) var/whatsinside = pick(ingredients) . += "You think you can see [whatsinside] in there." -/obj/item/food/snacks/customizable/proc/newname() +/obj/item/food/customizable/proc/newname() var/unsorteditems[0] var/sorteditems[0] var/unsortedtypes[0] @@ -456,8 +456,8 @@ do {\ continue - if(istype(ing, /obj/item/food/snacks/customizable)) // split the ingredients into ones with basenames (sandwich, burger, etc) and ones without, keeping track of how many of each there are - var/obj/item/food/snacks/customizable/gettype = ing + if(istype(ing, /obj/item/food/customizable)) // split the ingredients into ones with basenames (sandwich, burger, etc) and ones without, keeping track of how many of each there are + var/obj/item/food/customizable/gettype = ing if(unsortedtypes[gettype.basename]) unsortedtypes[gettype.basename]++ if(unsortedtypes[gettype.basename] > ct) @@ -518,7 +518,7 @@ do {\ sendback = "[pick("absurd", "colossal", "enormous", "ridiculous", "massive", "oversized", "cardiac-arresting", "pipe-clogging", "edible but sickening", "sickening", "gargantuan", "mega", "belly-burster", "chest-burster")] [basename]" return sendback -/obj/item/food/snacks/customizable/proc/sortlist(list/unsorted, highest) +/obj/item/food/customizable/proc/sortlist(list/unsorted, highest) var/sorted[0] for(var/i = 1, i<= highest, i++) for(var/it in unsorted) diff --git a/code/modules/food_and_drinks/food/foods/baked_goods.dm b/code/modules/food_and_drinks/food/foods/baked_goods.dm index dfcfbf50f4bb..8299792db766 100644 --- a/code/modules/food_and_drinks/food/foods/baked_goods.dm +++ b/code/modules/food_and_drinks/food/foods/baked_goods.dm @@ -5,12 +5,12 @@ // Cakes // ////////////////////// -/obj/item/food/snacks/sliceable/carrotcake +/obj/item/food/sliceable/carrotcake name = "carrot cake" desc = "A favorite desert of a certain wascally wabbit. Not a lie." icon = 'icons/obj/food/bakedgoods.dmi' icon_state = "carrotcake" - slice_path = /obj/item/food/snacks/carrotcakeslice + slice_path = /obj/item/food/carrotcakeslice slices_num = 5 bitesize = 3 filling_color = "#FFD675" @@ -18,7 +18,7 @@ tastes = list("cake" = 5, "sweetness" = 2, "carrot" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/carrotcakeslice +/obj/item/food/carrotcakeslice name = "carrot cake slice" desc = "Carrotty slice of Carrot Cake, carrots are good for your eyes! Also not a lie." icon = 'icons/obj/food/bakedgoods.dmi' @@ -29,12 +29,12 @@ goal_difficulty = FOOD_GOAL_EASY -/obj/item/food/snacks/sliceable/braincake +/obj/item/food/sliceable/braincake name = "brain cake" desc = "A squishy cake-thing." icon = 'icons/obj/food/bakedgoods.dmi' icon_state = "braincake" - slice_path = /obj/item/food/snacks/braincakeslice + slice_path = /obj/item/food/braincakeslice slices_num = 5 filling_color = "#E6AEDB" bitesize = 3 @@ -42,7 +42,7 @@ tastes = list("cake" = 5, "sweetness" = 2, "brains" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/braincakeslice +/obj/item/food/braincakeslice name = "brain cake slice" desc = "Lemme tell you something about brains. THEY'RE DELICIOUS." icon = 'icons/obj/food/bakedgoods.dmi' @@ -52,12 +52,12 @@ tastes = list("cake" = 5, "sweetness" = 2, "brains" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/sliceable/cheesecake +/obj/item/food/sliceable/cheesecake name = "cheese cake" desc = "DANGEROUSLY cheesy." icon = 'icons/obj/food/bakedgoods.dmi' icon_state = "cheesecake" - slice_path = /obj/item/food/snacks/cheesecakeslice + slice_path = /obj/item/food/cheesecakeslice slices_num = 5 filling_color = "#FAF7AF" bitesize = 3 @@ -65,7 +65,7 @@ tastes = list("cake" = 4, "cream cheese" = 3) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/cheesecakeslice +/obj/item/food/cheesecakeslice name = "cheese cake slice" desc = "Slice of pure cheestisfaction." icon = 'icons/obj/food/bakedgoods.dmi' @@ -75,12 +75,12 @@ tastes = list("cake" = 4, "cream cheese" = 3) goal_difficulty = FOOD_GOAL_EASY -/obj/item/food/snacks/sliceable/plaincake +/obj/item/food/sliceable/plaincake name = "vanilla cake" desc = "A plain cake, not a lie." icon = 'icons/obj/food/bakedgoods.dmi' icon_state = "plaincake" - slice_path = /obj/item/food/snacks/plaincakeslice + slice_path = /obj/item/food/plaincakeslice slices_num = 5 bitesize = 3 filling_color = "#F7EDD5" @@ -88,7 +88,7 @@ tastes = list("cake" = 5, "vanilla" = 1, "sweetness" = 2) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/plaincakeslice +/obj/item/food/plaincakeslice name = "vanilla cake slice" desc = "Just a slice of cake, it is enough for everyone." icon = 'icons/obj/food/bakedgoods.dmi' @@ -98,12 +98,12 @@ tastes = list("cake" = 5, "vanilla" = 1, "sweetness" = 2) goal_difficulty = FOOD_GOAL_EASY -/obj/item/food/snacks/sliceable/orangecake +/obj/item/food/sliceable/orangecake name = "orange cake" desc = "A cake with added orange." icon = 'icons/obj/food/bakedgoods.dmi' icon_state = "orangecake" - slice_path = /obj/item/food/snacks/orangecakeslice + slice_path = /obj/item/food/orangecakeslice slices_num = 5 bitesize = 3 filling_color = "#FADA8E" @@ -111,7 +111,7 @@ tastes = list("cake" = 5, "sweetness" = 2, "oranges" = 2) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/orangecakeslice +/obj/item/food/orangecakeslice name = "orange cake slice" desc = "Just a slice of cake, it is enough for everyone." icon = 'icons/obj/food/bakedgoods.dmi' @@ -121,12 +121,12 @@ tastes = list("cake" = 5, "sweetness" = 2, "oranges" = 2) goal_difficulty = FOOD_GOAL_EASY -/obj/item/food/snacks/sliceable/bananacake +/obj/item/food/sliceable/bananacake name = "banana cake" desc = "A cake with added bananas." icon = 'icons/obj/food/bakedgoods.dmi' icon_state = "bananacake" - slice_path = /obj/item/food/snacks/bananacakeslice + slice_path = /obj/item/food/bananacakeslice slices_num = 5 bitesize = 3 filling_color = "#FADA8E" @@ -134,7 +134,7 @@ tastes = list("cake" = 5, "sweetness" = 2, "banana" = 2) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/bananacakeslice +/obj/item/food/bananacakeslice name = "banana cake slice" desc = "Just a slice of cake, it is enough for everyone." icon = 'icons/obj/food/bakedgoods.dmi' @@ -144,20 +144,20 @@ tastes = list("cake" = 5, "sweetness" = 2, "banana" = 2) goal_difficulty = FOOD_GOAL_EASY -/obj/item/food/snacks/sliceable/limecake +/obj/item/food/sliceable/limecake name = "lime cake" desc = "A cake with added lime." icon = 'icons/obj/food/bakedgoods.dmi' icon_state = "limecake" bitesize = 3 - slice_path = /obj/item/food/snacks/limecakeslice + slice_path = /obj/item/food/limecakeslice slices_num = 5 filling_color = "#CBFA8E" list_reagents = list("nutriment" = 20, "vitamin" = 5) tastes = list("cake" = 5, "sweetness" = 2, "unbearable sourness" = 2) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/limecakeslice +/obj/item/food/limecakeslice name = "lime cake slice" desc = "Just a slice of cake, it is enough for everyone." icon = 'icons/obj/food/bakedgoods.dmi' @@ -167,12 +167,12 @@ tastes = list("cake" = 5, "sweetness" = 2, "unbearable sourness" = 2) goal_difficulty = FOOD_GOAL_EASY -/obj/item/food/snacks/sliceable/lemoncake +/obj/item/food/sliceable/lemoncake name = "lemon cake" desc = "A cake with added lemon." icon = 'icons/obj/food/bakedgoods.dmi' icon_state = "lemoncake" - slice_path = /obj/item/food/snacks/lemoncakeslice + slice_path = /obj/item/food/lemoncakeslice slices_num = 5 bitesize = 3 filling_color = "#FAFA8E" @@ -180,7 +180,7 @@ tastes = list("cake" = 5, "sweetness" = 2, "sourness" = 2) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/lemoncakeslice +/obj/item/food/lemoncakeslice name = "lemon cake slice" desc = "Just a slice of cake, it is enough for everyone." icon = 'icons/obj/food/bakedgoods.dmi' @@ -190,12 +190,12 @@ tastes = list("cake" = 5, "sweetness" = 2, "sourness" = 2) goal_difficulty = FOOD_GOAL_EASY -/obj/item/food/snacks/sliceable/chocolatecake +/obj/item/food/sliceable/chocolatecake name = "chocolate cake" desc = "A cake with added chocolate." icon = 'icons/obj/food/bakedgoods.dmi' icon_state = "chocolatecake" - slice_path = /obj/item/food/snacks/chocolatecakeslice + slice_path = /obj/item/food/chocolatecakeslice slices_num = 5 bitesize = 3 filling_color = "#805930" @@ -203,7 +203,7 @@ tastes = list("cake" = 5, "sweetness" = 1, "chocolate" = 4) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/chocolatecakeslice +/obj/item/food/chocolatecakeslice name = "chocolate cake slice" desc = "Just a slice of cake, it is enough for everyone." icon = 'icons/obj/food/bakedgoods.dmi' @@ -213,12 +213,12 @@ tastes = list("cake" = 5, "sweetness" = 1, "chocolate" = 4) goal_difficulty = FOOD_GOAL_EASY -/obj/item/food/snacks/sliceable/birthdaycake +/obj/item/food/sliceable/birthdaycake name = "birthday cake" desc = "Happy Birthday..." icon = 'icons/obj/food/bakedgoods.dmi' icon_state = "birthdaycake" - slice_path = /obj/item/food/snacks/birthdaycakeslice + slice_path = /obj/item/food/birthdaycakeslice slices_num = 5 filling_color = "#FFD6D6" bitesize = 3 @@ -226,7 +226,7 @@ tastes = list("cake" = 5, "sweetness" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/birthdaycakeslice +/obj/item/food/birthdaycakeslice name = "birthday cake slice" desc = "A slice of your birthday" icon = 'icons/obj/food/bakedgoods.dmi' @@ -236,12 +236,12 @@ tastes = list("cake" = 5, "sweetness" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/sliceable/applecake +/obj/item/food/sliceable/applecake name = "apple cake" desc = "A cake centered with Apple." icon = 'icons/obj/food/bakedgoods.dmi' icon_state = "applecake" - slice_path = /obj/item/food/snacks/applecakeslice + slice_path = /obj/item/food/applecakeslice slices_num = 5 bitesize = 3 filling_color = "#EBF5B8" @@ -249,7 +249,7 @@ tastes = list("cake" = 5, "sweetness" = 1, "apple" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/applecakeslice +/obj/item/food/applecakeslice name = "apple cake slice" desc = "A slice of heavenly cake." icon = 'icons/obj/food/bakedgoods.dmi' @@ -264,7 +264,7 @@ // Cookies // ////////////////////// -/obj/item/food/snacks/cookie +/obj/item/food/cookie name = "cookie" desc = "COOKIE!!!" icon = 'icons/obj/food/bakedgoods.dmi' @@ -275,7 +275,7 @@ tastes = list("cookie" = 1, "crunchy chocolate" = 1) goal_difficulty = FOOD_GOAL_EASY -/obj/item/food/snacks/fortunecookie +/obj/item/food/fortunecookie name = "fortune cookie" desc = "A true prophecy in each cookie!" icon = 'icons/obj/food/bakedgoods.dmi' @@ -286,7 +286,7 @@ tastes = list("cookie" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/sugarcookie +/obj/item/food/sugarcookie name = "sugar cookie" desc = "Just like your little sister used to make." icon = 'icons/obj/food/bakedgoods.dmi' @@ -300,7 +300,7 @@ // Pies // ////////////////////// -/obj/item/food/snacks/pie +/obj/item/food/pie name = "banana cream pie" desc = "One of the five essential food groups of clowns." icon = 'icons/obj/food/bakedgoods.dmi' @@ -312,13 +312,13 @@ tastes = list("pie" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/pie/throw_impact(atom/hit_atom) +/obj/item/food/pie/throw_impact(atom/hit_atom) ..() new/obj/effect/decal/cleanable/pie_smudge(loc) visible_message("[src] splats.","You hear a splat.") qdel(src) -/obj/item/food/snacks/meatpie +/obj/item/food/meatpie name = "meat-pie" icon = 'icons/obj/food/bakedgoods.dmi' icon_state = "meatpie" @@ -330,7 +330,7 @@ tastes = list("pie" = 1, "meat" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/tofupie +/obj/item/food/tofupie name = "tofu-pie" icon = 'icons/obj/food/bakedgoods.dmi' icon_state = "meatpie" @@ -342,7 +342,7 @@ tastes = list("pie" = 1, "tofu" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/amanita_pie +/obj/item/food/amanita_pie name = "amanita pie" desc = "Sweet and tasty poison pie." icon = 'icons/obj/food/bakedgoods.dmi' @@ -353,7 +353,7 @@ tastes = list("pie" = 1, "mushroom" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/plump_pie +/obj/item/food/plump_pie name = "plump pie" desc = "I bet you love stuff made out of plump helmets!" icon = 'icons/obj/food/bakedgoods.dmi' @@ -364,14 +364,14 @@ tastes = list("pie" = 1, "mushroom" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/plump_pie/Initialize(mapload) +/obj/item/food/plump_pie/Initialize(mapload) . = ..() if(prob(10)) name = "exceptional plump pie" desc = "Microwave is taken by a fey mood! It has cooked an exceptional plump pie!" // What reagents.add_reagent("omnizine", 5) -/obj/item/food/snacks/xemeatpie +/obj/item/food/xemeatpie name = "xeno-pie" icon = 'icons/obj/food/bakedgoods.dmi' icon_state = "xenomeatpie" @@ -383,7 +383,7 @@ goal_difficulty = FOOD_GOAL_EXCESSIVE -/obj/item/food/snacks/applepie +/obj/item/food/applepie name = "apple pie" desc = "A pie containing sweet sweet love... or apple." icon = 'icons/obj/food/bakedgoods.dmi' @@ -395,7 +395,7 @@ goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/cherrypie +/obj/item/food/cherrypie name = "cherry pie" desc = "Taste so good, make a grown man cry." icon = 'icons/obj/food/bakedgoods.dmi' @@ -406,12 +406,12 @@ tastes = list("pie" = 1, "cherries" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/sliceable/pumpkinpie +/obj/item/food/sliceable/pumpkinpie name = "pumpkin pie" desc = "A delicious treat for the autumn months." icon = 'icons/obj/food/bakedgoods.dmi' icon_state = "pumpkinpie" - slice_path = /obj/item/food/snacks/pumpkinpieslice + slice_path = /obj/item/food/pumpkinpieslice slices_num = 5 bitesize = 3 filling_color = "#F5B951" @@ -419,7 +419,7 @@ tastes = list("pie" = 1, "pumpkin" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/pumpkinpieslice +/obj/item/food/pumpkinpieslice name = "pumpkin pie slice" desc = "A slice of pumpkin pie, with whipped cream on top. Perfection." icon = 'icons/obj/food/bakedgoods.dmi' @@ -433,7 +433,7 @@ // Donuts // ////////////////////// -/obj/item/food/snacks/donut +/obj/item/food/donut name = "donut" desc = "Goes great with Robust Coffee." icon = 'icons/obj/food/bakedgoods.dmi' @@ -446,7 +446,7 @@ var/donut_sprite_type = DONUT_NORMAL tastes = list("donut" = 1) -/obj/item/food/snacks/donut/Initialize(mapload) +/obj/item/food/donut/Initialize(mapload) . = ..() if(randomized_sprinkles && prob(30)) icon_state = "donut2" @@ -455,7 +455,7 @@ donut_sprite_type = DONUT_FROSTED filling_color = "#FF69B4" -/obj/item/food/snacks/donut/sprinkles +/obj/item/food/donut/sprinkles name = "frosted donut" icon_state = "donut2" list_reagents = list("nutriment" = 3, "sugar" = 2, "sprinkles" = 2) @@ -463,14 +463,14 @@ donut_sprite_type = DONUT_FROSTED randomized_sprinkles = 0 -/obj/item/food/snacks/donut/chaos +/obj/item/food/donut/chaos name = "chaos donut" desc = "Like life, it never quite tastes the same." bitesize = 10 tastes = list("donut" = 3, "chaos" = 1) goal_difficulty = FOOD_GOAL_HARD -/obj/item/food/snacks/donut/chaos/Initialize(mapload) +/obj/item/food/donut/chaos/Initialize(mapload) . = ..() extra_reagent = pick("nutriment", "capsaicin", "frostoil", "krokodil", "plasma", "cocoa", "slimejelly", "banana", "berryjuice", "omnizine") reagents.add_reagent("[extra_reagent]", 3) @@ -480,7 +480,7 @@ reagents.add_reagent("sprinkles", 2) filling_color = "#FF69B4" -/obj/item/food/snacks/donut/jelly +/obj/item/food/donut/jelly name = "jelly donut" desc = "You jelly?" icon_state = "jdonut1" @@ -488,7 +488,7 @@ tastes = list("jelly" = 1, "donut" = 3) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/donut/jelly/Initialize(mapload) +/obj/item/food/donut/jelly/Initialize(mapload) . = ..() if(extra_reagent) reagents.add_reagent("[extra_reagent]", 3) @@ -499,14 +499,14 @@ reagents.add_reagent("sprinkles", 2) filling_color = "#FF69B4" -/obj/item/food/snacks/donut/jelly/slimejelly +/obj/item/food/donut/jelly/slimejelly name = "jelly donut" desc = "You jelly?" icon_state = "jdonut1" extra_reagent = "slimejelly" goal_difficulty = FOOD_GOAL_HARD -/obj/item/food/snacks/donut/jelly/cherryjelly +/obj/item/food/donut/jelly/cherryjelly name = "jelly donut" desc = "You jelly?" icon_state = "jdonut1" @@ -516,7 +516,7 @@ // Pancakes // ////////////////////// -/obj/item/food/snacks/pancake +/obj/item/food/pancake name = "pancake" desc = "A plain pancake." icon = 'icons/obj/food/breakfast.dmi' @@ -527,7 +527,7 @@ tastes = list("sweet cake" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/pancake/attack_tk(mob/user) +/obj/item/food/pancake/attack_tk(mob/user) if(src in user.tkgrabbed_objects) to_chat(user, "You start channeling psychic energy into [src].") visible_message("The syrup on [src] starts to boil...") @@ -542,7 +542,7 @@ return return ..() -/obj/item/food/snacks/pancake/berry_pancake +/obj/item/food/pancake/berry_pancake name = "berry pancake" desc = "A pancake loaded with berries." icon_state = "berry_pancake" @@ -550,7 +550,7 @@ tastes = list("sweet cake" = 2, "berries" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/pancake/choc_chip_pancake +/obj/item/food/pancake/choc_chip_pancake name = "choc-chip pancake" desc = "A pancake loaded with chocolate chips." icon_state = "choc_chip_pancake" @@ -562,7 +562,7 @@ // Misc // ////////////////////// -/obj/item/food/snacks/muffin +/obj/item/food/muffin name = "muffin" desc = "A delicious and spongy little cake." icon = 'icons/obj/food/breakfast.dmi' @@ -572,7 +572,7 @@ tastes = list("muffin" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/berryclafoutis +/obj/item/food/berryclafoutis name = "berry clafoutis" desc = "No black birds, this is a good sign." icon = 'icons/obj/food/bakedgoods.dmi' @@ -584,7 +584,7 @@ goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/poppypretzel +/obj/item/food/poppypretzel name = "poppy pretzel" desc = "A large soft pretzel full of POP! It's all twisted up!" icon = 'icons/obj/food/bakedgoods.dmi' @@ -594,7 +594,7 @@ tastes = list("pretzel" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/plumphelmetbiscuit +/obj/item/food/plumphelmetbiscuit name = "plump helmet biscuit" desc = "This is a finely-prepared plump helmet biscuit. The ingredients are exceptionally minced plump helmet, and well-minced dwarven wheat flour." icon = 'icons/obj/food/breakfast.dmi' @@ -604,14 +604,14 @@ tastes = list("mushroom" = 1, "biscuit" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/plumphelmetbiscuit/Initialize(mapload) +/obj/item/food/plumphelmetbiscuit/Initialize(mapload) . = ..() if(prob(10)) name = "exceptional plump helmet biscuit" desc = "Microwave is taken by a fey mood! It has cooked an exceptional plump helmet biscuit!" // Is this a reference? reagents.add_reagent("omnizine", 5) -/obj/item/food/snacks/appletart +/obj/item/food/appletart name = "golden apple streusel tart" desc = "A tasty dessert that won't make it through a metal detector." icon = 'icons/obj/food/bakedgoods.dmi' @@ -624,7 +624,7 @@ goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/cracker +/obj/item/food/cracker name = "cracker" desc = "It's a salted cracker." icon = 'icons/obj/food/bakedgoods.dmi' @@ -635,7 +635,7 @@ tastes = list("cracker" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/croissant +/obj/item/food/croissant name = "croissant" desc = "Once a pastry reserved for the bourgeois, this flaky goodness is now on your table." icon = 'icons/obj/food/bakedgoods.dmi' @@ -646,13 +646,13 @@ tastes = list("croissant" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/croissant/throwing +/obj/item/food/croissant/throwing throwforce = 20 throw_range = 9 //now with extra throwing action tastes = list("croissant" = 2, "butter" = 1, "metal" = 1) list_reagents = list("nutriment" = 4, "sugar" = 2, "iron" = 1) -/obj/item/food/snacks/croissant/throwing/Initialize(mapload) +/obj/item/food/croissant/throwing/Initialize(mapload) . = ..() AddComponent(/datum/component/boomerang, throw_range, TRUE) diff --git a/code/modules/food_and_drinks/food/foods/bread.dm b/code/modules/food_and_drinks/food/foods/bread.dm index 89382e1e1b94..31eb3b340960 100644 --- a/code/modules/food_and_drinks/food/foods/bread.dm +++ b/code/modules/food_and_drinks/food/foods/bread.dm @@ -3,19 +3,19 @@ // Breads // ////////////////////// -/obj/item/food/snacks/sliceable/meatbread +/obj/item/food/sliceable/meatbread name = "meatbread loaf" desc = "The culinary base of every self-respecting eloquen/tg/entleman." icon = 'icons/obj/food/burgerbread.dmi' icon_state = "meatbread" - slice_path = /obj/item/food/snacks/meatbreadslice + slice_path = /obj/item/food/meatbreadslice slices_num = 5 filling_color = "#FF7575" list_reagents = list("protein" = 20, "nutriment" = 10, "vitamin" = 5) tastes = list("bread" = 10, "meat" = 10) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/meatbreadslice +/obj/item/food/meatbreadslice name = "meatbread slice" desc = "A slice of delicious meatbread." icon = 'icons/obj/food/burgerbread.dmi' @@ -23,19 +23,19 @@ filling_color = "#FF7575" goal_difficulty = FOOD_GOAL_EASY -/obj/item/food/snacks/sliceable/xenomeatbread +/obj/item/food/sliceable/xenomeatbread name = "xenomeatbread loaf" desc = "The culinary base of every self-respecting eloquent gentleman. Extra Heretical." icon = 'icons/obj/food/burgerbread.dmi' icon_state = "xenomeatbread" - slice_path = /obj/item/food/snacks/xenomeatbreadslice + slice_path = /obj/item/food/xenomeatbreadslice slices_num = 5 filling_color = "#8AFF75" list_reagents = list("protein" = 20, "nutriment" = 10, "vitamin" = 5) tastes = list("bread" = 10, "acid" = 10) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/xenomeatbreadslice +/obj/item/food/xenomeatbreadslice name = "xenomeatbread slice" desc = "A slice of delicious meatbread. Extra Heretical." icon = 'icons/obj/food/burgerbread.dmi' @@ -43,18 +43,18 @@ filling_color = "#8AFF75" goal_difficulty = FOOD_GOAL_EXCESSIVE -/obj/item/food/snacks/sliceable/spidermeatbread +/obj/item/food/sliceable/spidermeatbread name = "spider meat loaf" desc = "Reassuringly green meatloaf made from spider meat." icon = 'icons/obj/food/burgerbread.dmi' icon_state = "spidermeatbread" - slice_path = /obj/item/food/snacks/spidermeatbreadslice + slice_path = /obj/item/food/spidermeatbreadslice slices_num = 5 list_reagents = list("protein" = 20, "nutriment" = 10, "toxin" = 15, "vitamin" = 5) tastes = list("bread" = 10, "cobwebs" = 5) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/spidermeatbreadslice +/obj/item/food/spidermeatbreadslice name = "spider meat bread slice" desc = "A slice of meatloaf made from an animal that most likely still wants you dead." icon = 'icons/obj/food/burgerbread.dmi' @@ -63,19 +63,19 @@ list_reagents = list("toxin" = 2) goal_difficulty = FOOD_GOAL_EXCESSIVE -/obj/item/food/snacks/sliceable/bananabread +/obj/item/food/sliceable/bananabread name = "banana-nut bread" desc = "A heavenly and filling treat." icon = 'icons/obj/food/burgerbread.dmi' icon_state = "bananabread" - slice_path = /obj/item/food/snacks/bananabreadslice + slice_path = /obj/item/food/bananabreadslice slices_num = 5 filling_color = "#EDE5AD" list_reagents = list("banana" = 20, "nutriment" = 20) tastes = list("bread" = 10, "banana" = 5) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/bananabreadslice +/obj/item/food/bananabreadslice name = "banana-nut bread slice" desc = "A slice of delicious banana bread." icon = 'icons/obj/food/burgerbread.dmi' @@ -84,19 +84,19 @@ tastes = list("bread" = 10, "banana" = 5) goal_difficulty = FOOD_GOAL_EASY -/obj/item/food/snacks/sliceable/tofubread +/obj/item/food/sliceable/tofubread name = "tofubread" desc = "Like meatbread but for vegetarians. Not guaranteed to give superpowers." icon = 'icons/obj/food/burgerbread.dmi' icon_state = "tofubread" - slice_path = /obj/item/food/snacks/tofubreadslice + slice_path = /obj/item/food/tofubreadslice slices_num = 5 filling_color = "#F7FFE0" list_reagents = list("nutriment" = 20, "vitamin" = 5) tastes = list("bread" = 10, "tofu" = 10) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/tofubreadslice +/obj/item/food/tofubreadslice name = "tofubread slice" desc = "A slice of delicious tofubread." icon = 'icons/obj/food/burgerbread.dmi' @@ -104,19 +104,19 @@ filling_color = "#F7FFE0" goal_difficulty = FOOD_GOAL_EASY -/obj/item/food/snacks/sliceable/bread +/obj/item/food/sliceable/bread name = "bread" desc = "Some plain old Earthen bread." icon = 'icons/obj/food/burgerbread.dmi' icon_state = "bread" - slice_path = /obj/item/food/snacks/breadslice + slice_path = /obj/item/food/breadslice slices_num = 6 filling_color = "#FFE396" list_reagents = list("nutriment" = 10) tastes = list("bread" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/breadslice +/obj/item/food/breadslice name = "bread slice" desc = "A slice of home." icon = 'icons/obj/food/burgerbread.dmi' @@ -126,19 +126,19 @@ tastes = list("bread" = 1) goal_difficulty = FOOD_GOAL_EASY -/obj/item/food/snacks/sliceable/creamcheesebread +/obj/item/food/sliceable/creamcheesebread name = "cream cheese bread" desc = "Yum yum yum!" icon = 'icons/obj/food/burgerbread.dmi' icon_state = "creamcheesebread" - slice_path = /obj/item/food/snacks/creamcheesebreadslice + slice_path = /obj/item/food/creamcheesebreadslice slices_num = 5 filling_color = "#FFF896" list_reagents = list("nutriment" = 20, "vitamin" = 5) tastes = list("bread" = 10, "cheese" = 10) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/creamcheesebreadslice +/obj/item/food/creamcheesebreadslice name = "cream cheese bread slice" desc = "A slice of yum!" icon = 'icons/obj/food/burgerbread.dmi' @@ -148,19 +148,19 @@ tastes = list("bread" = 10, "cheese" = 10) goal_difficulty = FOOD_GOAL_EASY -/obj/item/food/snacks/sliceable/banarnarbread +/obj/item/food/sliceable/banarnarbread name = "banarnarbread loaf" desc = "A loaf of delicious mah'weyh pleggh at e'ntrath!" icon = 'icons/obj/food/burgerbread.dmi' icon_state = "banarnarbread" - slice_path = /obj/item/food/snacks/banarnarbreadslice + slice_path = /obj/item/food/banarnarbreadslice slices_num = 5 filling_color = "#6F0000" list_reagents = list("nutriment" = 20, "vitamin" = 5) tastes = list("heresy" = 10, "banana" = 10) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/banarnarbreadslice +/obj/item/food/banarnarbreadslice name = "banarnarbread slice" desc = "A slice of delicious mah'weyh pleggh at e'ntrath!" icon = 'icons/obj/food/burgerbread.dmi' @@ -175,7 +175,7 @@ // Misc // ////////////////////// -/obj/item/food/snacks/bun +/obj/item/food/bun name = "bun" desc = "The base for any self-respecting burger." icon = 'icons/obj/food/food_ingredients.dmi' @@ -185,7 +185,7 @@ goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/flatbread +/obj/item/food/flatbread name = "flatbread" desc = "Bland but filling." icon = 'icons/obj/food/food_ingredients.dmi' @@ -194,7 +194,7 @@ tastes = list("bread" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/baguette +/obj/item/food/baguette name = "baguette" desc = "Bon appetit!" icon = 'icons/obj/food/bakedgoods.dmi' @@ -207,15 +207,15 @@ tastes = list("bread" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/baguette/combat +/obj/item/food/baguette/combat sharp = TRUE force = 20 -/obj/item/food/snacks/baguette/combat/Initialize(mapload) +/obj/item/food/baguette/combat/Initialize(mapload) . = ..() AddComponent(/datum/component/parry, _stamina_constant = 2, _stamina_coefficient = 0.5, _parryable_attack_types = ALL_ATTACK_TYPES) -/obj/item/food/snacks/twobread +/obj/item/food/twobread name = "two bread" desc = "It is very bitter and winy." icon = 'icons/obj/food/burgerbread.dmi' @@ -226,7 +226,7 @@ tastes = list("bread" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/toast +/obj/item/food/toast name = "toast" desc = "Yeah! Toast!" icon = 'icons/obj/food/burgerbread.dmi' @@ -237,7 +237,7 @@ tastes = list("toast" = 1) goal_difficulty = FOOD_GOAL_EXCESSIVE -/obj/item/food/snacks/jelliedtoast +/obj/item/food/jelliedtoast name = "jellied toast" desc = "A slice of bread covered with delicious jam." icon = 'icons/obj/food/burgerbread.dmi' @@ -246,15 +246,15 @@ bitesize = 3 tastes = list("toast" = 1, "jelly" = 1) -/obj/item/food/snacks/jelliedtoast/cherry +/obj/item/food/jelliedtoast/cherry list_reagents = list("nutriment" = 1, "cherryjelly" = 5, "vitamin" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/jelliedtoast/slime +/obj/item/food/jelliedtoast/slime list_reagents = list("nutriment" = 1, "slimejelly" = 5, "vitamin" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/rofflewaffles +/obj/item/food/rofflewaffles name = "roffle waffles" desc = "Waffles from Roffle. Co." icon = 'icons/obj/food/breakfast.dmi' @@ -266,7 +266,7 @@ tastes = list("waffle" = 1, "mushrooms" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/waffles +/obj/item/food/waffles name = "waffles" desc = "Mmm, waffles." icon = 'icons/obj/food/breakfast.dmi' diff --git a/code/modules/food_and_drinks/food/foods/candy.dm b/code/modules/food_and_drinks/food/foods/candy.dm index a6a65499b020..efc674cdb397 100644 --- a/code/modules/food_and_drinks/food/foods/candy.dm +++ b/code/modules/food_and_drinks/food/foods/candy.dm @@ -7,7 +7,7 @@ //Candy / Candy Ingredients //Subclass so we can pass on values -/obj/item/food/snacks/candy +/obj/item/food/candy name = "generic candy" desc = "It's placeholder flavored. This shouldn't be seen." icon = 'icons/obj/food/candy.dmi' @@ -19,7 +19,7 @@ // Candy Ingredients / Flavorings / Byproduct // *********************************************************** -/obj/item/food/snacks/candy/caramel +/obj/item/food/candy/caramel name = "caramel" desc = "Chewy and dense, yet it practically melts in your mouth!" icon_state = "caramel" @@ -28,7 +28,7 @@ goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/toffee +/obj/item/food/candy/toffee name = "toffee" desc = "A hard, brittle candy with a distinctive taste." icon_state = "toffee" @@ -36,7 +36,7 @@ list_reagents = list("nutriment" = 3, "sugar" = 3) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/nougat +/obj/item/food/candy/nougat name = "nougat" desc = "A soft, chewy candy commonly found in candybars." icon_state = "nougat" @@ -44,7 +44,7 @@ list_reagents = list("nutriment" = 3, "sugar" = 3) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/taffy +/obj/item/food/candy/taffy name = "saltwater taffy" desc = "Old fashioned saltwater taffy. Chewy!" icon_state = "candy1" @@ -52,11 +52,11 @@ list_reagents = list("nutriment" = 3, "sugar" = 3) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/taffy/Initialize(mapload) +/obj/item/food/candy/taffy/Initialize(mapload) . = ..() icon_state = pick("candy1", "candy2", "candy3", "candy4", "candy5") -/obj/item/food/snacks/candy/fudge +/obj/item/food/candy/fudge name = "fudge" desc = "Chocolate fudge, a timeless classic treat." icon_state = "fudge" @@ -65,21 +65,21 @@ list_reagents = list("cream" = 3, "chocolate" = 6) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/fudge/peanut +/obj/item/food/candy/fudge/peanut name = "peanut fudge" desc = "Chocolate fudge, with bits of peanuts mixed in. People with nut allergies shouldn't eat this." icon_state = "fudge_peanut" filling_color = "#7D5F46" goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/fudge/cherry +/obj/item/food/candy/fudge/cherry name = "chocolate cherry fudge" desc = "Chocolate fudge surrounding sweet cherries. Good for tricking kids into eating some fruit." icon_state = "fudge_cherry" filling_color = "#7D5F46" goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/fudge/cookies_n_cream +/obj/item/food/candy/fudge/cookies_n_cream name = "cookies 'n' cream fudge" desc = "An extra creamy fudge with bits of real chocolate cookie mixed in. Crunchy!" icon_state = "fudge_cookies_n_cream" @@ -87,7 +87,7 @@ list_reagents = list("cream" = 6, "chocolate" = 6) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/fudge/turtle +/obj/item/food/candy/fudge/turtle name = "turtle fudge" desc = "Chocolate fudge with caramel and nuts. It doesn't contain real turtles, thankfully." icon_state = "fudge_turtle" @@ -98,14 +98,14 @@ // Candy Products (Pre-existing) // *********************************************************** -/obj/item/food/snacks/candy/donor +/obj/item/food/candy/donor name = "donor candy" desc = "A little treat for blood donors." trash = /obj/item/trash/candy bitesize = 5 list_reagents = list("nutriment" = 10, "sugar" = 3) -/obj/item/food/snacks/candy/candy_corn +/obj/item/food/candy/candy_corn name = "candy corn" desc = "It's a handful of candy corn. Cannot be stored in a detective's hat, alas." icon_state = "candycorn" @@ -117,7 +117,7 @@ // Candy Products (plain / unflavored) // *********************************************************** -/obj/item/food/snacks/candy/cotton +/obj/item/food/candy/cotton name = "cotton candy" desc = "Light and fluffy, it's like eating a cloud made from sugar!" icon_state = "cottoncandy_plain" @@ -127,7 +127,7 @@ list_reagents = list("sugar" = 15) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/candy/candybar +/obj/item/food/candy/candybar name = "candy" desc = "A chocolate candybar, wrapped in a bit of foil." icon_state = "candy" @@ -141,7 +141,7 @@ goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/candycane +/obj/item/food/candy/candycane name = "candy cane" desc = "A festive mint candy cane." icon_state = "candycane" @@ -149,7 +149,7 @@ list_reagents = list("minttoxin" = 1, "sugar" = 5) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/gummybear +/obj/item/food/candy/gummybear name = "gummy bear" desc = "A small edible bear. It's squishy and chewy!" icon_state = "gbear" @@ -158,7 +158,7 @@ list_reagents = list("sugar" = 10) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/candy/gummyworm +/obj/item/food/candy/gummyworm name = "gummy worm" desc = "An edible worm, made from gelatin." icon_state = "gworm" @@ -167,7 +167,7 @@ list_reagents = list("sugar" = 10) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/candy/jellybean +/obj/item/food/candy/jellybean name = "jelly bean" desc = "A candy bean, guaranteed to not give you gas." icon_state = "jbean" @@ -176,7 +176,7 @@ list_reagents = list("sugar" = 10) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/candy/jawbreaker +/obj/item/food/candy/jawbreaker name = "jawbreaker" desc = "An unbelievably hard candy. The name is fitting." icon_state = "jawbreaker" @@ -185,7 +185,7 @@ list_reagents = list("sugar" = 10) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/cash +/obj/item/food/candy/cash name = "candy cash" desc = "Not legal tender. Tasty though." icon_state = "candy_cash" @@ -195,7 +195,7 @@ goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/coin +/obj/item/food/candy/coin name = "chocolate coin" desc = "Probably won't work in the vending machines." icon_state = "choc_coin" @@ -206,7 +206,7 @@ goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/gum +/obj/item/food/candy/gum name = "bubblegum" desc = "Chewy!" icon_state = "bubblegum" @@ -216,7 +216,7 @@ list_reagents = list("sugar" = 5) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/sucker +/obj/item/food/candy/sucker name = "sucker" desc = "For being such a good sport!" icon_state = "sucker" @@ -228,7 +228,7 @@ // Gummy Bear Flavors // *********************************************************** -/obj/item/food/snacks/candy/gummybear/red +/obj/item/food/candy/gummybear/red name = "red gummy bear" desc = "A small edible bear. It's red!" icon_state = "gbear_red" @@ -236,7 +236,7 @@ list_reagents = list("sugar" = 10, "cherryjelly" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/gummybear/blue +/obj/item/food/candy/gummybear/blue name = "blue gummy bear" desc = "A small edible bear. It's blue!" icon_state = "gbear_blue" @@ -244,14 +244,14 @@ list_reagents = list("sugar" = 10, "berryjuice" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/gummybear/poison +/obj/item/food/candy/gummybear/poison name = "blue gummy bear" desc = "A small edible bear. It's blue!" icon_state = "gbear_blue" filling_color = "#863353" list_reagents = list("poisonberryjuice" = 12) -/obj/item/food/snacks/candy/gummybear/green +/obj/item/food/candy/gummybear/green name = "green gummy bear" desc = "A small edible bear. It's green!" icon_state = "gbear_green" @@ -259,7 +259,7 @@ list_reagents = list("sugar" = 10, "limejuice" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/gummybear/yellow +/obj/item/food/candy/gummybear/yellow name = "yellow gummy bear" desc = "A small edible bear. It's yellow!" icon_state = "gbear_yellow" @@ -267,7 +267,7 @@ list_reagents = list("sugar" = 10, "lemonjuice" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/gummybear/orange +/obj/item/food/candy/gummybear/orange name = "orange gummy bear" desc = "A small edible bear. It's orange!" icon_state = "gbear_orange" @@ -275,7 +275,7 @@ list_reagents = list("sugar" = 10, "orangejuice" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/gummybear/purple +/obj/item/food/candy/gummybear/purple name = "purple gummy bear" desc = "A small edible bear. It's purple!" icon_state = "gbear_purple" @@ -283,7 +283,7 @@ list_reagents = list("sugar" = 10, "grapejuice" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/gummybear/wtf +/obj/item/food/candy/gummybear/wtf name = "rainbow gummy bear" desc = "A small bear. Wait... what?" icon_state = "gbear_rainbow" @@ -295,7 +295,7 @@ // Gummy Worm Flavors // *********************************************************** -/obj/item/food/snacks/candy/gummyworm/red +/obj/item/food/candy/gummyworm/red name = "red gummy worm" desc = "An edible worm, made from gelatin. It's red!" icon_state = "gworm_red" @@ -303,7 +303,7 @@ list_reagents = list("sugar" = 10, "cherryjelly" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/gummyworm/blue +/obj/item/food/candy/gummyworm/blue name = "blue gummy worm" desc = "An edible worm, made from gelatin. It's blue!" icon_state = "gworm_blue" @@ -311,14 +311,14 @@ list_reagents = list("sugar" = 10, "berryjuice" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/gummyworm/poison +/obj/item/food/candy/gummyworm/poison name = "blue gummy worm" desc = "An edible worm, made from gelatin. It's blue!" icon_state = "gworm_blue" filling_color = "#863353" list_reagents = list("poisonberryjuice" = 12) -/obj/item/food/snacks/candy/gummyworm/green +/obj/item/food/candy/gummyworm/green name = "green gummy worm" desc = "An edible worm, made from gelatin. It's green!" icon_state = "gworm_green" @@ -326,7 +326,7 @@ list_reagents = list("sugar" = 10, "limejuice" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/gummyworm/yellow +/obj/item/food/candy/gummyworm/yellow name = "yellow gummy worm" desc = "An edible worm, made from gelatin. It's yellow!" icon_state = "gworm_yellow" @@ -334,7 +334,7 @@ list_reagents = list("sugar" = 10, "lemonjuice" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/gummyworm/orange +/obj/item/food/candy/gummyworm/orange name = "orange gummy worm" desc = "An edible worm, made from gelatin. It's orange!" icon_state = "gworm_orange" @@ -342,7 +342,7 @@ list_reagents = list("sugar" = 10, "orangejuice" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/gummyworm/purple +/obj/item/food/candy/gummyworm/purple name = "purple gummy worm" desc = "An edible worm, made from gelatin. It's purple!" icon_state = "gworm_purple" @@ -350,7 +350,7 @@ list_reagents = list("sugar" = 10, "grapejuice" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/gummyworm/wtf +/obj/item/food/candy/gummyworm/wtf name = "rainbow gummy worm" desc = "An edible worm. Did it just move?" icon_state = "gworm_rainbow" @@ -362,7 +362,7 @@ // Jelly Bean Flavors // *********************************************************** -/obj/item/food/snacks/candy/jellybean/red +/obj/item/food/candy/jellybean/red name = "red jelly bean" desc = "A candy bean, guaranteed to not give you gas. It's red!" icon_state = "jbean_red" @@ -370,7 +370,7 @@ list_reagents = list("sugar" = 10, "cherryjelly" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/jellybean/blue +/obj/item/food/candy/jellybean/blue name = "blue jelly bean" desc = "A candy bean, guaranteed to not give you gas. It's blue!" icon_state = "jbean_blue" @@ -378,14 +378,14 @@ list_reagents = list("sugar" = 10, "berryjuice" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/jellybean/poison +/obj/item/food/candy/jellybean/poison name = "blue jelly bean" desc = "A candy bean, guaranteed to not give you gas. It's blue!" icon_state = "jbean_blue" filling_color = "#863353" list_reagents = list("poisonberryjuice" = 12) -/obj/item/food/snacks/candy/jellybean/green +/obj/item/food/candy/jellybean/green name = "green jelly bean" desc = "A candy bean, guaranteed to not give you gas. It's green!" icon_state = "jbean_green" @@ -393,7 +393,7 @@ list_reagents = list("sugar" = 10, "limejuice" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/jellybean/yellow +/obj/item/food/candy/jellybean/yellow name = "yellow jelly bean" desc = "A candy bean, guaranteed to not give you gas. It's yellow!" icon_state = "jbean_yellow" @@ -401,7 +401,7 @@ list_reagents = list("sugar" = 10, "lemonjuice" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/jellybean/orange +/obj/item/food/candy/jellybean/orange name = "orange jelly bean" desc = "A candy bean, guaranteed to not give you gas. It's orange!" icon_state = "jbean_orange" @@ -409,7 +409,7 @@ list_reagents = list("sugar" = 10, "orangejuice" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/jellybean/purple +/obj/item/food/candy/jellybean/purple name = "purple jelly bean" desc = "A candy bean, guaranteed to not give you gas. It's purple!" icon_state = "jbean_purple" @@ -417,7 +417,7 @@ list_reagents = list("sugar" = 10, "grapejuice" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/jellybean/chocolate +/obj/item/food/candy/jellybean/chocolate name = "chocolate jelly bean" desc = "A candy bean, guaranteed to not give you gas. It's chocolate!" icon_state = "jbean_choc" @@ -425,7 +425,7 @@ list_reagents = list("sugar" = 10, "chocolate" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/jellybean/popcorn +/obj/item/food/candy/jellybean/popcorn name = "popcorn jelly bean" desc = "A candy bean, guaranteed to not give you gas. It's popcorn flavored!" icon_state = "jbean_popcorn" @@ -433,7 +433,7 @@ list_reagents = list("sugar" = 10, "nutriment" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/jellybean/cola +/obj/item/food/candy/jellybean/cola name = "cola jelly bean" desc = "A candy bean, guaranteed to not give you gas. It's Cola flavored!" icon_state = "jbean_cola" @@ -441,7 +441,7 @@ list_reagents = list("sugar" = 10, "cola" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/jellybean/drgibb +/obj/item/food/candy/jellybean/drgibb name = "\improper Dr. Gibb jelly bean" desc = "A candy bean, guaranteed to not give you gas. It's Dr. Gibb flavored!" icon_state = "jbean_cola" @@ -449,7 +449,7 @@ list_reagents = list("sugar" = 10, "dr_gibb" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/jellybean/coffee +/obj/item/food/candy/jellybean/coffee name = "coffee jelly bean" desc = "A candy bean, guaranteed to not give you gas. It's Coffee flavored!" icon_state = "jbean_choc" @@ -457,7 +457,7 @@ list_reagents = list("sugar" = 10, "coffee" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/jellybean/wtf +/obj/item/food/candy/jellybean/wtf name = "rainbow jelly bean" desc = "A candy bean, guaranteed to not give you gas. You aren't sure what color it is." icon_state = "jbean_rainbow" @@ -469,7 +469,7 @@ // Cotton Candy Flavors // *********************************************************** -/obj/item/food/snacks/candy/cotton/red +/obj/item/food/candy/cotton/red name = "red cotton candy" desc = "Light and fluffy, it's like eating a cloud made from sugar!" icon_state = "cottoncandy_red" @@ -478,7 +478,7 @@ list_reagents = list("sugar" = 15, "cherryjelly" = 5) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/cotton/blue +/obj/item/food/candy/cotton/blue name = "blue cotton candy" desc = "Light and fluffy, it's like eating a cloud made from sugar!" icon_state = "cottoncandy_blue" @@ -487,7 +487,7 @@ list_reagents = list("sugar" = 15, "berryjuice" = 5) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/cotton/poison +/obj/item/food/candy/cotton/poison name = "blue cotton candy" desc = "Light and fluffy, it's like eating a cloud made from sugar!" icon_state = "cottoncandy_blue" @@ -495,7 +495,7 @@ filling_color = "#863353" list_reagents = list("poisonberryjuice" = 20) -/obj/item/food/snacks/candy/cotton/green +/obj/item/food/candy/cotton/green name = "green cotton candy" desc = "Light and fluffy, it's like eating a cloud made from sugar!" icon_state = "cottoncandy_green" @@ -504,7 +504,7 @@ list_reagents = list("sugar" = 15, "limejuice" = 5) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/cotton/yellow +/obj/item/food/candy/cotton/yellow name = "yellow cotton candy" desc = "Light and fluffy, it's like eating a cloud made from sugar!" icon_state = "cottoncandy_yellow" @@ -513,7 +513,7 @@ list_reagents = list("sugar" = 15, "lemonjuice" = 5) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/cotton/orange +/obj/item/food/candy/cotton/orange name = "orange cotton candy" desc = "Light and fluffy, it's like eating a cloud made from sugar!" icon_state = "cottoncandy_orange" @@ -522,7 +522,7 @@ list_reagents = list("sugar" = 15, "orangejuice" = 5) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/cotton/purple +/obj/item/food/candy/cotton/purple name = "purple cotton candy" desc = "Light and fluffy, it's like eating a cloud made from sugar!" icon_state = "cottoncandy_purple" @@ -531,7 +531,7 @@ list_reagents = list("sugar" = 15, "grapejuice" = 5) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/cotton/pink +/obj/item/food/candy/cotton/pink name = "pink cotton candy" desc = "Light and fluffy, it's like eating a cloud made from sugar!" icon_state = "cottoncandy_pink" @@ -540,7 +540,7 @@ list_reagents = list("sugar" = 15, "watermelonjuice" = 5) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/cotton/rainbow +/obj/item/food/candy/cotton/rainbow name = "rainbow cotton candy" desc = "Light and fluffy, it's like eating a cloud made from sugar!" icon_state = "cottoncandy_rainbow" @@ -549,7 +549,7 @@ list_reagents = list("omnizine" = 20) goal_difficulty = FOOD_GOAL_HARD -/obj/item/food/snacks/candy/cotton/bad_rainbow +/obj/item/food/candy/cotton/bad_rainbow name = "rainbow cotton candy" desc = "Light and fluffy, it's like eating a cloud made from sugar!" icon_state = "cottoncandy_rainbow" @@ -561,10 +561,10 @@ // Candybar Flavors // *********************************************************** -/obj/item/food/snacks/candy/confectionery +/obj/item/food/candy/confectionery list_reagents = list("nutriment" = 1, "chocolate" = 1) -/obj/item/food/snacks/candy/confectionery/rice +/obj/item/food/candy/confectionery/rice name = "Asteroid Crunch Bar" desc = "Crunchy rice deposits in delicious chocolate! A favorite of miners galaxy-wide." icon_state = "asteroidcrunch" @@ -572,28 +572,28 @@ filling_color = "#7D5F46" goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/confectionery/toffee +/obj/item/food/candy/confectionery/toffee name = "Yum-Baton Bar" desc = "Chocolate and toffee in the shape of a baton. Security sure knows how to pound these down!" icon_state = "yumbaton" filling_color = "#7D5F46" goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/confectionery/caramel +/obj/item/food/candy/confectionery/caramel name = "Malper Bar" desc = "A chocolate syringe filled with a caramel injection. Just what the doctor ordered!" icon_state = "malper" filling_color = "#7D5F46" goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/confectionery/caramel_nougat +/obj/item/food/candy/confectionery/caramel_nougat name = "Toxins Test Bar" desc = "An explosive combination of chocolate, caramel, and nougat. Research has never been so tasty!" icon_state = "toxinstest" filling_color = "#7D5F46" goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candy/confectionery/nougat +/obj/item/food/candy/confectionery/nougat name = "Tool-erone Bar" desc = "Chocolate-covered nougat, shaped like a wrench. Great for an engineer on the go!" icon_state = "toolerone" diff --git a/code/modules/food_and_drinks/food/foods/desserts.dm b/code/modules/food_and_drinks/food/foods/desserts.dm index 8c3517c8c66c..1287e11ddbf3 100644 --- a/code/modules/food_and_drinks/food/foods/desserts.dm +++ b/code/modules/food_and_drinks/food/foods/desserts.dm @@ -2,14 +2,14 @@ // Misc // ////////////////////// -/obj/item/food/snacks/friedbanana +/obj/item/food/friedbanana name = "fried banana" desc = "Goreng Pisang, also known as fried bananas." icon_state = "friedbanana" list_reagents = list("sugar" = 5, "nutriment" = 8, "cornoil" = 4) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/ricepudding +/obj/item/food/ricepudding name = "rice pudding" desc = "Where's the Jam!" icon_state = "rpudding" @@ -19,7 +19,7 @@ tastes = list("rice" = 1, "sweetness" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/spacylibertyduff +/obj/item/food/spacylibertyduff name = "spacy liberty duff" desc = "Jello gelatin, from Alfred Hubbard's cookbook." icon_state = "spacylibertyduff" @@ -30,7 +30,7 @@ tastes = list("jelly" = 1, "mushroom" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/amanitajelly +/obj/item/food/amanitajelly name = "amanita jelly" desc = "Looks curiously toxic." icon_state = "amanitajelly" @@ -41,7 +41,7 @@ tastes = list("jelly" = 1, "mushroom" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/candiedapple +/obj/item/food/candiedapple name = "candied apple" desc = "An apple coated in sugary sweetness." icon_state = "candiedapple" @@ -51,7 +51,7 @@ tastes = list("apple" = 2, "sweetness" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/mint +/obj/item/food/mint name = "mint" desc = "it is only wafer thin." icon_state = "mint" diff --git a/code/modules/food_and_drinks/food/foods/ethnic.dm b/code/modules/food_and_drinks/food/foods/ethnic.dm index d388f2c06920..4751501bd931 100644 --- a/code/modules/food_and_drinks/food/foods/ethnic.dm +++ b/code/modules/food_and_drinks/food/foods/ethnic.dm @@ -3,7 +3,7 @@ // Mexican // ////////////////////// -/obj/item/food/snacks/taco +/obj/item/food/taco name = "taco" desc = "Take a bite!" icon_state = "taco" @@ -12,7 +12,7 @@ tastes = list("taco" = 4, "meat" = 2, "cheese" = 2, "lettuce" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/burrito +/obj/item/food/burrito name = "burrito" desc = "Meat, beans, cheese, and rice wrapped up as an easy-to-hold meal." icon_state = "burrito" @@ -23,7 +23,7 @@ goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/chimichanga +/obj/item/food/chimichanga name = "chimichanga" desc = "Time to eat a chimi-f***ing-changa." icon_state = "chimichanga" @@ -32,7 +32,7 @@ list_reagents = list("omnizine" = 4, "cheese" = 2) //Deadpool reference. Deal with it. goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/enchiladas +/obj/item/food/enchiladas name = "enchiladas" desc = "Viva la Mexico!" icon_state = "enchiladas" @@ -43,7 +43,7 @@ tastes = list("hot peppers" = 1, "meat" = 3, "cheese" = 1, "sour cream" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/cornchips +/obj/item/food/cornchips name = "corn chips" desc = "Goes great with salsa! OLE!" icon_state = "chips" @@ -58,7 +58,7 @@ // Chinese // ////////////////////// -/obj/item/food/snacks/chinese/chowmein +/obj/item/food/chinese/chowmein name = "chow mein" desc = "What is in this anyways?" icon_state = "chinese1" @@ -67,7 +67,7 @@ list_reagents = list("nutriment" = 1, "beans" = 3, "msg" = 4, "sugar" = 2) tastes = list("noodle" = 1, "vegetables" = 1) -/obj/item/food/snacks/chinese/sweetsourchickenball +/obj/item/food/chinese/sweetsourchickenball name = "sweet & sour chicken balls" desc = "Is this chicken cooked? The odds are better than wok paper scissors." icon = 'icons/obj/food/meat.dmi' @@ -77,7 +77,7 @@ list_reagents = list("nutriment" = 2, "msg" = 4, "sugar" = 2) tastes = list("chicken" = 1, "sweetness" = 1) -/obj/item/food/snacks/chinese/tao +/obj/item/food/chinese/tao name = "Admiral Yamamoto carp" desc = "Tastes like chicken." icon_state = "chinese2" @@ -86,7 +86,7 @@ list_reagents = list("nutriment" = 1, "protein" = 1, "msg" = 4, "sugar" = 4) tastes = list("chicken" = 1) -/obj/item/food/snacks/chinese/newdles +/obj/item/food/chinese/newdles name = "chinese newdles" desc = "Made fresh, weekly!" icon_state = "chinese3" @@ -95,7 +95,7 @@ list_reagents = list("nutriment" = 1, "msg" = 4, "sugar" = 3) tastes = list("noodles" = 1) -/obj/item/food/snacks/chinese/rice +/obj/item/food/chinese/rice name = "fried rice" desc = "A timeless classic." icon_state = "chinese4" @@ -110,7 +110,7 @@ // Japanese // ////////////////////// -/obj/item/food/snacks/chawanmushi +/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_state = "chawanmushi" @@ -120,7 +120,7 @@ tastes = list("custard" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/yakiimo +/obj/item/food/yakiimo name = "yaki imo" desc = "Made with roasted sweet potatoes!" icon_state = "yakiimo" @@ -135,7 +135,7 @@ // Middle Eastern // ////////////////////// -/obj/item/food/snacks/meatkebab +/obj/item/food/meatkebab name = "meat-kebab" desc = "Delicious meat, on a stick." icon_state = "kebab" @@ -144,7 +144,7 @@ list_reagents = list("nutriment" = 8) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/syntikebab +/obj/item/food/syntikebab name = "synthimeat-kebab" desc = "Delicious synthetic meat, on a stick." icon_state = "kebab" @@ -152,7 +152,7 @@ filling_color = "#A85340" list_reagents = list("nutriment" = 8) -/obj/item/food/snacks/human/kebab +/obj/item/food/human/kebab name = "-kebab" desc = "Human meat, on a stick." icon_state = "kebab" @@ -160,7 +160,7 @@ filling_color = "#A85340" list_reagents = list("nutriment" = 8) -/obj/item/food/snacks/tofukebab +/obj/item/food/tofukebab name = "tofu-kebab" desc = "Vegan meat, on a stick." icon_state = "kebab" @@ -169,7 +169,7 @@ list_reagents = list("nutriment" = 8) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/picoss_kebab +/obj/item/food/picoss_kebab name = "picoss-kebab" desc = "A popular Moghes street food consisting of vinegar-marinated space carp on a skewer with onion and chillis." icon_state = "picoss_skewer" diff --git a/code/modules/food_and_drinks/food/foods/frozen.dm b/code/modules/food_and_drinks/food/foods/frozen.dm index 89824dd503c3..a6c6314ab980 100644 --- a/code/modules/food_and_drinks/food/foods/frozen.dm +++ b/code/modules/food_and_drinks/food/foods/frozen.dm @@ -5,25 +5,25 @@ //Abstract item for inheritence. -/obj/item/food/snacks/frozen +/obj/item/food/frozen name = "frozen treat" desc = "If you got this, something broke! Contact a coder if this somehow spawns." icon = 'icons/obj/food/frozen_treats.dmi' icon_state = "flavorless_sc" -/obj/item/food/snacks/sliceable/clowncake +/obj/item/food/sliceable/clowncake name = "clown cake" desc = "A funny cake with a clown face on it." icon = 'icons/obj/food/frozen_treats.dmi' icon_state = "clowncake" - slice_path = /obj/item/food/snacks/frozen/clowncakeslice + slice_path = /obj/item/food/frozen/clowncakeslice slices_num = 5 bitesize = 3 list_reagents = list("nutriment" = 20, "sugar" = 5, "vitamin" = 5, "banana" = 15) tastes = list("cake" = 5, "sweetness" = 2, "banana" = 1, "sad clowns" = 1, "ice-cream" = 1) goal_difficulty = FOOD_GOAL_EXCESSIVE -/obj/item/food/snacks/frozen/clowncakeslice +/obj/item/food/frozen/clowncakeslice name = "clown cake slice" desc = "A slice of bad jokes, and silly props." icon_state = "clowncake_slice" @@ -37,7 +37,7 @@ // Ice Cream // ////////////////// -/obj/item/food/snacks/frozen/icecream +/obj/item/food/frozen/icecream name = "ice cream" desc = "Delicious ice cream." icon_state = "icecream_cone" @@ -45,11 +45,11 @@ list_reagents = list("nutriment" = 1, "sugar" = 1) tastes = list("ice cream" = 1) -/obj/item/food/snacks/frozen/icecream/Initialize(mapload) +/obj/item/food/frozen/icecream/Initialize(mapload) . = ..() update_icon(UPDATE_OVERLAYS) -/obj/item/food/snacks/frozen/icecream/update_overlays() +/obj/item/food/frozen/icecream/update_overlays() . = ..() var/mutable_appearance/filling = mutable_appearance('icons/obj/food/frozen_treats.dmi', "icecream_color") var/list/reagent_colors = rgb2num(mix_color_from_reagents(reagents.reagent_list), COLORSPACE_HSV) //switching to HSV colorspace lets us easily manipulate the saturation and brightness independently @@ -57,7 +57,7 @@ filling.color = rgb(reagent_colors[1], ((1.5 * reagent_colors[2]) - 10), (clamp(reagent_colors[3], 85, 100) - 10), space = COLORSPACE_HSV) . += filling -/obj/item/food/snacks/frozen/icecream/icecreamcone +/obj/item/food/frozen/icecream/icecreamcone name = "ice cream cone" desc = "Delicious ice cream." icon_state = "icecream_cone" @@ -65,7 +65,7 @@ bitesize = 3 list_reagents = list("nutriment" = 3, "sugar" = 7, "ice" = 2) -/obj/item/food/snacks/frozen/icecream/wafflecone +/obj/item/food/frozen/icecream/wafflecone name = "ice cream in a waffle cone" desc = "Delicious ice cream." icon_state = "icecream_cone_waffle" @@ -73,7 +73,7 @@ bitesize = 3 list_reagents = list("nutriment" = 3, "sugar" = 7, "ice" = 2) -/obj/item/food/snacks/frozen/icecream/icecreamcup +/obj/item/food/frozen/icecream/icecreamcup name = "chocolate ice cream cone" desc = "Delicious ice cream." icon_state = "icecream_cone_chocolate" @@ -81,7 +81,7 @@ bitesize = 3 list_reagents = list("nutriment" = 5, "chocolate" = 8, "ice" = 2) -/obj/item/food/snacks/wafflecone +/obj/item/food/wafflecone name = "waffle cone" desc = "Delicious waffle cone, but no ice cream." icon = 'icons/obj/food/frozen_treats.dmi' @@ -89,7 +89,7 @@ list_reagents = list("nutriment" = 5) tastes = list("cream" = 2, "waffle" = 1) -/obj/item/food/snacks/frozen/icecreamsandwich +/obj/item/food/frozen/icecreamsandwich name = "icecream sandwich" desc = "Portable ice cream in its own packaging." icon_state = "icecreamsandwich" @@ -97,7 +97,7 @@ tastes = list("ice cream" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/berryicecreamsandwich +/obj/item/food/frozen/berryicecreamsandwich name = "strawberry icecream sandwich" desc = "Portable ice cream in its own packaging." icon_state = "strawberryicecreamsandwich" @@ -105,7 +105,7 @@ tastes = list("ice cream" = 1, "strawberry" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/sundae +/obj/item/food/frozen/sundae name = "sundae" desc = "A classic dessert." icon_state = "sundae" @@ -113,7 +113,7 @@ tastes = list("ice cream" = 1, "banana" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/honkdae +/obj/item/food/frozen/honkdae name = "honkdae" desc = "The clown's favorite dessert." icon_state = "honkdae" @@ -121,7 +121,7 @@ tastes = list("ice cream" = 1, "banana" = 1, "a bad joke" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/cornuto +/obj/item/food/frozen/cornuto name = "cornuto" desc = "A neapolitan vanilla and chocolate ice cream cone. It menaces with a sprinkling of caramelized nuts." icon_state = "cornuto" @@ -129,7 +129,7 @@ tastes = list("chopped hazelnuts" = 3, "waffle" = 5) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/peanutbuttermochi +/obj/item/food/frozen/peanutbuttermochi name = "peanut butter ice cream mochi" desc = "A classic dessert at the Arabia Street Night Market in Prospect, peanut butter ice cream mochi is made with a peanut-butter flavoured ice cream as the main filling, and coated in crushed peanuts in the Taiwanese tradition." icon_state = "pb_ice_cream_mochi" @@ -137,7 +137,7 @@ tastes = list("peanut butter" = 1, "mochi" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/spacefreezy +/obj/item/food/frozen/spacefreezy name = "spacefreezy" desc = "The best ice cream in space." icon_state = "spacefreezy" @@ -149,7 +149,7 @@ // Snow Cones // ////////////////// -/obj/item/food/snacks/frozen/snowcone +/obj/item/food/frozen/snowcone name = "flavorless snowcone" desc = "It's just shaved ice. Still fun to chew on." icon_state = "flavorless_sc" @@ -158,7 +158,7 @@ tastes = list("cold water" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/frozen/snowcone/apple +/obj/item/food/frozen/snowcone/apple name = "apple snowcone" desc = "Apple syrup drizzled over a snowball in a paper cup." icon_state = "amber_sc" @@ -166,7 +166,7 @@ tastes = list("ice" = 1, "water" = 1, "apples" = 5) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/snowcone/berry +/obj/item/food/frozen/snowcone/berry name = "berry snowcone" desc = "Berry syrup drizzled over a snowball in a paper cup." icon_state = "berry_sc" @@ -174,7 +174,7 @@ tastes = list("ice" = 1, "water" = 1, "berries" = 5) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/snowcone/bluecherry +/obj/item/food/frozen/snowcone/bluecherry name = "bluecherry snowcone" desc = "Bluecherry syrup drizzled over a snowball in a paper cup, how rare!" icon_state = "blue_sc" @@ -182,7 +182,7 @@ tastes = list("ice" = 1, "water" = 1, "bluecherries" = 5) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/snowcone/cherry +/obj/item/food/frozen/snowcone/cherry name = "cherry snowcone" desc = "Cherry syrup drizzled over a snowball in a paper cup." icon_state = "red_sc" @@ -190,7 +190,7 @@ tastes = list("ice" = 1, "water" = 1, "cherries" = 5) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/snowcone/fruitsalad +/obj/item/food/frozen/snowcone/fruitsalad name = "fruit salad snowcone" desc = "A delightful mix of citrus syrups drizzled over a snowball in a paper cup." icon_state = "fruitsalad_sc" @@ -198,7 +198,7 @@ tastes = list("ice" = 1, "water" = 1, "oranges" = 5, "lemons" = 5, "limes" = 5) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/snowcone/grape +/obj/item/food/frozen/snowcone/grape name = "grape snowcone" desc = "Grape syrup drizzled over a snowball in a paper cup." icon_state = "grape_sc" @@ -206,7 +206,7 @@ tastes = list("ice" = 1, "water" = 1, "grapes" = 5) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/snowcone/honey +/obj/item/food/frozen/snowcone/honey name = "honey snowcone" desc = "Honey drizzled over a snowball in a paper cup." icon_state = "amber_sc" @@ -214,7 +214,7 @@ tastes = list("ice" = 1, "water" = 1, "honey" = 5) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/snowcone/lemon +/obj/item/food/frozen/snowcone/lemon name = "lemon snowcone" desc = "Lemon syrup drizzled over a snowball in a paper cup." icon_state = "lemon_sc" @@ -222,7 +222,7 @@ tastes = list("ice" = 1, "water" = 1, "lemons" = 5) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/snowcone/lime +/obj/item/food/frozen/snowcone/lime name = "lime snowcone" desc = "Lime syrup drizzled over a snowball in a paper cup." icon_state = "lime_sc" @@ -230,7 +230,7 @@ tastes = list("ice" = 1, "water" = 1, "limes" = 5) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/snowcone/mime +/obj/item/food/frozen/snowcone/mime name = "mime snowcone" desc = "..." icon_state = "mime_sc" @@ -238,7 +238,7 @@ tastes = list("ice" = 1, "water" = 1, "silence" = 5) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/snowcone/orange +/obj/item/food/frozen/snowcone/orange name = "orange snowcone" desc = "Orange syrup drizzled over a snowball in a paper cup." icon_state = "orange_sc" @@ -246,7 +246,7 @@ tastes = list("ice" = 1, "water" = 1, "oranges" = 5) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/snowcone/pineapple +/obj/item/food/frozen/snowcone/pineapple name = "pineapple snowcone" desc = "Pineapple syrup drizzled over a snowball in a paper cup." icon_state = "pineapple_sc" @@ -254,7 +254,7 @@ tastes = list("ice" = 1, "water" = 1, "pineapple" = 5) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/snowcone/rainbow +/obj/item/food/frozen/snowcone/rainbow name = "rainbow snowcone" desc = "A very colorful snowball in a paper cup." icon_state = "rainbow_sc" @@ -262,7 +262,7 @@ tastes = list("ice" = 1, "water" = 1, "rainbows" = 5) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/snowcone/cola +/obj/item/food/frozen/snowcone/cola name = "space cola snowcone" desc = "Space Cola drizzled over a snowball in a paper cup." icon_state = "soda_sc" @@ -270,7 +270,7 @@ tastes = list("ice" = 1, "water" = 1, "soda" = 5) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/snowcone/spacemountain +/obj/item/food/frozen/snowcone/spacemountain name = "space mountain wind snowcone" desc = "Space Mountain Wind drizzled over a snowball in a paper cup." icon_state = "mountainwind_sc" @@ -282,7 +282,7 @@ // Popsicles // ///////////////// -/obj/item/food/snacks/frozen/popsicle +/obj/item/food/frozen/popsicle name = "jumbo icecream" desc = "A luxurious ice cream covered in rich chocolate. It seems smaller than you remember it being." icon_state = "jumbo" @@ -291,7 +291,7 @@ tastes = list("ice cream" = 1, "chocolate" = 1, "vanilla" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/popsicle/bananatop +/obj/item/food/frozen/popsicle/bananatop name = "banana topsicle" desc = "A frozen treat made from tofu and banana juice blended smooth, then frozen. Popular in rural Japan in the summer." icon_state = "topsicle_banana" @@ -299,7 +299,7 @@ tastes = list("bananas" = 1, "tofu" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/popsicle/berrytop +/obj/item/food/frozen/popsicle/berrytop name = "berry topsicle" desc = "A frozen treat made from tofu and berry juice blended smooth, then frozen. Supposedly a favourite of bears, but that makes no sense..." icon_state = "topsicle_berry" @@ -307,7 +307,7 @@ tastes = list("berries" = 1, "tofu" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/popsicle/pineappletop +/obj/item/food/frozen/popsicle/pineappletop name = "pineapple topsicle" desc = "A frozen treat made from tofu and pineapple juice blended smooth, then frozen. As seen on TV." icon_state = "topsicle_pineapple" @@ -315,7 +315,7 @@ tastes = list("pineapples" = 1, "tofu" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/popsicle/licoricecream +/obj/item/food/frozen/popsicle/licoricecream name = "licorice creamsicle" desc = "A salty licorice ice cream. A salty frozen treat." icon_state = "licorice_creamsicle" @@ -323,7 +323,7 @@ tastes = list("salty licorice" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/popsicle/orangecream +/obj/item/food/frozen/popsicle/orangecream name = "orange creamsicle" desc = "A classic orange creamsicle. A sunny frozen treat." icon_state = "creamsicle_o" @@ -331,7 +331,7 @@ tastes = list("ice cream" = 1, "oranges" = 1, "vanilla" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/popsicle/berrycream +/obj/item/food/frozen/popsicle/berrycream name = "berry creamsicle" desc = "A vibrant berry creamsicle. A berry good frozen treat." icon_state = "creamsicle_m" @@ -339,7 +339,7 @@ tastes = list("ice cream" = 1, "berries" = 1, "vanilla" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/popsicle/frozenpineapple +/obj/item/food/frozen/popsicle/frozenpineapple name = "frozen pineapple pop" desc = "Few cultures love pineapple as much as the Martians, and this dessert proves that- frozen pineapple, on a stick, with just a little dunk of dark chocolate." icon_state = "pineapple_pop" @@ -347,7 +347,7 @@ tastes = list("cold pineapple" = 1, "chocolate" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/popsicle/sea_salt +/obj/item/food/frozen/popsicle/sea_salt name = "sea salt ice-cream bar" desc = "This sky-blue ice-cream bar is flavoured with only the finest imported sea salt. Salty... no, sweet!" icon_state = "sea_salt_pop" @@ -355,7 +355,7 @@ tastes = list("salt" = 1, "sweet" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/frozen/popsicle/ant +/obj/item/food/frozen/popsicle/ant name = "ant popsicle" desc = "A colony of ants suspended in hardened sugar. Those things are dead, right?" icon_state = "ant_pop" diff --git a/code/modules/food_and_drinks/food/foods/ingredients.dm b/code/modules/food_and_drinks/food/foods/ingredients.dm index ffb42057fad6..7e50a1667d3b 100644 --- a/code/modules/food_and_drinks/food/foods/ingredients.dm +++ b/code/modules/food_and_drinks/food/foods/ingredients.dm @@ -3,7 +3,7 @@ // Tofu & Soy // ////////////////////// -/obj/item/food/snacks/tofu +/obj/item/food/tofu name = "tofu" icon_state = "tofu" desc = "We all love tofu." @@ -13,7 +13,7 @@ tastes = list("tofu" = 1) ingredient_name = "tofu chunk" -/obj/item/food/snacks/fried_tofu +/obj/item/food/fried_tofu name = "fried tofu" icon_state = "tofu" desc = "Proof that even vegetarians crave unhealthy foods." @@ -23,7 +23,7 @@ tastes = list("tofu" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soydope +/obj/item/food/soydope name = "soy dope" icon_state = "soydope" desc = "Like regular dope, but for the health conscious consumer." @@ -37,32 +37,32 @@ // Cheese // ////////////////////// -/obj/item/food/snacks/sliceable/cheesewheel +/obj/item/food/sliceable/cheesewheel name = "cheese wheel" desc = "A big wheel of delicious Cheddar." icon_state = "cheesewheel" - slice_path = /obj/item/food/snacks/cheesewedge + slice_path = /obj/item/food/cheesewedge slices_num = 5 filling_color = "#FFF700" list_reagents = list("nutriment" = 15, "vitamin" = 5, "cheese" = 20) tastes = list("cheese" = 1) -/obj/item/food/snacks/cheesewedge +/obj/item/food/cheesewedge name = "cheese wedge" desc = "A wedge of delicious Cheddar. The cheese wheel it was cut from can't have gone far." icon_state = "cheesewedge" filling_color = "#FFF700" tastes = list("cheese" = 1) -/obj/item/food/snacks/cheesewedge/checkpass(passflag) +/obj/item/food/cheesewedge/checkpass(passflag) if((passflag & PASSDOOR) && ismouse(pulledby)) return TRUE return ..() -/obj/item/food/snacks/cheesewedge/presliced +/obj/item/food/cheesewedge/presliced list_reagents = list("nutriment" = 3, "vitamin" = 1, "cheese" = 4) -/obj/item/food/snacks/weirdcheesewedge +/obj/item/food/weirdcheesewedge name = "weird cheese" desc = "Some kind of... gooey, messy, gloopy thing. Similar to cheese, but only in the broad sense of the word." icon_state = "weirdcheesewedge" @@ -74,7 +74,7 @@ // Plants // ////////////////////// -/obj/item/food/snacks/hugemushroomslice +/obj/item/food/hugemushroomslice name = "huge mushroom slice" desc = "A slice from a huge mushroom." icon_state = "hugemushroomslice" @@ -83,14 +83,14 @@ list_reagents = list("plantmatter" = 3, "vitamin" = 1) tastes = list("mushroom" = 1) -/obj/item/food/snacks/watermelonslice +/obj/item/food/watermelonslice name = "watermelon slice" desc = "A slice of watery goodness." icon_state = "watermelonslice" // Sprite created by https://github.com/binarysudoku for Goonstation, They have relicensed it for our use. filling_color = "#FF3867" tastes = list("watermelon" = 1) -/obj/item/food/snacks/tomatoslice +/obj/item/food/tomatoslice name = "tomato slice" desc = "A fresh slice of tomato." icon_state = "tomatoslice" @@ -98,7 +98,7 @@ list_reagents = list("plantmatter" = 2) tastes = list("tomato" = 1) -/obj/item/food/snacks/pineappleslice +/obj/item/food/pineappleslice name = "pineapple slices" desc = "Rings of pineapple." icon_state = "pineappleslice" // Sprite created by https://github.com/binarysudoku for Goonstation, They have relicensed it for our use. @@ -110,7 +110,7 @@ // Dough // ////////////////////// -/obj/item/food/snacks/dough +/obj/item/food/dough name = "dough" desc = "A piece of dough." icon = 'icons/obj/food/food_ingredients.dmi' @@ -119,10 +119,10 @@ tastes = list("dough" = 1) // Dough + rolling pin = flat dough -/obj/item/food/snacks/dough/attackby(obj/item/I, mob/user, params) +/obj/item/food/dough/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/kitchen/rollingpin)) if(isturf(loc)) - new /obj/item/food/snacks/sliceable/flatdough(loc) + new /obj/item/food/sliceable/flatdough(loc) to_chat(user, "You flatten [src].") qdel(src) else @@ -131,18 +131,18 @@ ..() // slicable into 3xdoughslices -/obj/item/food/snacks/sliceable/flatdough +/obj/item/food/sliceable/flatdough name = "flat dough" desc = "Some flattened dough." icon = 'icons/obj/food/food_ingredients.dmi' icon_state = "flat dough" - slice_path = /obj/item/food/snacks/doughslice + slice_path = /obj/item/food/doughslice slices_num = 3 list_reagents = list("nutriment" = 6) tastes = list("dough" = 1) -/obj/item/food/snacks/doughslice +/obj/item/food/doughslice name = "dough slice" desc = "The building block of an impressive dish." icon = 'icons/obj/food/food_ingredients.dmi' @@ -153,7 +153,7 @@ ///cookies by Ume -/obj/item/food/snacks/cookiedough +/obj/item/food/cookiedough var/flat = FALSE name = "pastry dough" icon = 'icons/obj/food/food_ingredients.dmi' @@ -162,19 +162,19 @@ list_reagents = list("nutriment" = 5, "sugar" = 5) tastes = list("dough" = 1, "sugar" = 1) -/obj/item/food/snacks/cookiedough/update_name() +/obj/item/food/cookiedough/update_name() . = ..() if(flat) name = "flat pastry dough" -/obj/item/food/snacks/cookiedough/update_icon_state() +/obj/item/food/cookiedough/update_icon_state() if(flat) icon_state = "cookiedough_flat" else icon_state = "cookiedough" // Dough + rolling pin = flat cookie dough // Flat dough + circular cutter = unbaked cookies -/obj/item/food/snacks/cookiedough/attackby(obj/item/I, mob/user, params) +/obj/item/food/cookiedough/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/kitchen/rollingpin) && !flat) if(isturf(loc)) to_chat(user, "You flatten [src].") @@ -184,7 +184,7 @@ to_chat(user, "You need to put [src] on a surface to roll it out!") else if(istype(I, /obj/item/kitchen/cutter) && flat) if(isturf(loc)) - new /obj/item/food/snacks/rawcookies(loc) + new /obj/item/food/rawcookies(loc) to_chat(user, "You cut [src] into cookies.") qdel(src) else @@ -193,17 +193,17 @@ return ..() -/obj/item/food/snacks/rawcookies +/obj/item/food/rawcookies name = "raw cookies" desc = "Ready for oven!" icon = 'icons/obj/food/food_ingredients.dmi' icon_state = "unbaked_cookies" list_reagents = list("nutriment" = 5, "sugar" = 5) -/obj/item/food/snacks/rawcookies/attackby(obj/item/I, mob/user, params) - if(istype(I, /obj/item/food/snacks/choc_pile)) +/obj/item/food/rawcookies/attackby(obj/item/I, mob/user, params) + if(istype(I, /obj/item/food/choc_pile)) if(isturf(loc)) - new /obj/item/food/snacks/rawcookies/chocochips(loc) + new /obj/item/food/rawcookies/chocochips(loc) to_chat(user, "You sprinkle [I] all over the cookies.") qdel(src) qdel(I) @@ -212,7 +212,7 @@ else return ..() -/obj/item/food/snacks/rawcookies/chocochips +/obj/item/food/rawcookies/chocochips name = "raw cookies" desc = "Ready for oven! They have little pieces of chocolate all over them" icon = 'icons/obj/food/food_ingredients.dmi' @@ -224,7 +224,7 @@ // Chocolate // ////////////////////// -/obj/item/food/snacks/chocolatebar +/obj/item/food/chocolatebar name = "chocolate bar" desc = "Such sweet, fattening food." icon_state = "chocolatebar" @@ -234,10 +234,10 @@ goal_difficulty = FOOD_GOAL_EASY ///Chocolate crumbles/pile -/obj/item/food/snacks/chocolatebar/attackby(obj/item/I, mob/user, params) +/obj/item/food/chocolatebar/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/kitchen/knife)) if(isturf(loc)) - new /obj/item/food/snacks/choc_pile(loc) + new /obj/item/food/choc_pile(loc) to_chat(user, "You cut [src] into little crumbles.") qdel(src) else @@ -247,7 +247,7 @@ /// for reagent chocolate being spilled on turfs -/obj/item/food/snacks/choc_pile +/obj/item/food/choc_pile name = "pile of chocolate" desc = "A pile of pure chocolate pieces." icon_state = "cocoa" @@ -260,7 +260,7 @@ // Misc // ////////////////////// -/obj/item/food/snacks/ectoplasm +/obj/item/food/ectoplasm name = "ectoplasm" desc = "A luminescent blob of what scientists refer to as 'ghost goo'." icon = 'icons/obj/wizard.dmi' diff --git a/code/modules/food_and_drinks/food/foods/junkfood.dm b/code/modules/food_and_drinks/food/foods/junkfood.dm index f410d2db2ff6..0c3b1297b998 100644 --- a/code/modules/food_and_drinks/food/foods/junkfood.dm +++ b/code/modules/food_and_drinks/food/foods/junkfood.dm @@ -3,7 +3,7 @@ // Vendor // ////////////////////// -/obj/item/food/snacks/chips +/obj/item/food/chips name = "chips" desc = "Commander Riker's What-The-Crisps." icon_state = "chips" @@ -15,7 +15,7 @@ list_reagents = list("nutriment" = 1, "sodiumchloride" = 1, "sugar" = 3) tastes = list("crisps" = 1) -/obj/item/food/snacks/sosjerky +/obj/item/food/sosjerky name = "Scaredy's Private Reserve Beef Jerky" icon_state = "sosjerky" desc = "Beef jerky made from the finest space cows." @@ -26,7 +26,7 @@ list_reagents = list("protein" = 1, "sugar" = 3) tastes = list("chewy beef" = 1) -/obj/item/food/snacks/pistachios +/obj/item/food/pistachios name = "pistachios" icon_state = "pistachios" desc = "Deliciously salted pistachios. A perfectly valid choice..." @@ -37,7 +37,7 @@ list_reagents = list("plantmatter" = 2, "sodiumchloride" = 1, "sugar" = 4) tastes = list("pistachios" = 1) -/obj/item/food/snacks/no_raisin +/obj/item/food/no_raisin name = "4no Raisins" icon_state = "4no_raisins" desc = "Best raisins in the universe. Not sure why." @@ -48,7 +48,7 @@ list_reagents = list("plantmatter" = 2, "sugar" = 4) tastes = list("dried raisins" = 1) -/obj/item/food/snacks/spacetwinkie +/obj/item/food/spacetwinkie name = "Space Twinkie" icon_state = "space_twinkie" desc = "Guaranteed to survive longer then you will." @@ -58,7 +58,7 @@ list_reagents = list("sugar" = 4) tastes = list("twinkies" = 1) -/obj/item/food/snacks/cheesiehonkers +/obj/item/food/cheesiehonkers name = "Cheesie Honkers" icon_state = "cheesie_honkers" desc = "Bite sized cheesie snacks that will honk all over your mouth." @@ -69,7 +69,7 @@ list_reagents = list("nutriment" = 1, "fake_cheese" = 2, "sugar" = 3) tastes = list("cheese" = 1, "crisps" = 2) -/obj/item/food/snacks/syndicake +/obj/item/food/syndicake name = "Syndi-Cakes" icon_state = "syndi_cakes" desc = "An extremely moist snack cake that tastes just as good after being nuked." @@ -80,7 +80,7 @@ list_reagents = list("nutriment" = 4, "salglu_solution" = 5) tastes = list("sweetness" = 3, "cake" = 1) -/obj/item/food/snacks/tastybread +/obj/item/food/tastybread name = "bread tube" desc = "Bread in a tube. Chewy and surprisingly tasty." icon_state = "tastybread" @@ -91,7 +91,7 @@ list_reagents = list("nutriment" = 2, "sugar" = 4) tastes = list("bread" = 1) -/obj/item/food/snacks/stroopwafel +/obj/item/food/stroopwafel name = "stroopwafel" desc = "Straight from the snack factories of Space Den Haag comes a classic dutch treat!" icon_state = "stroopwafel" @@ -100,7 +100,7 @@ list_reagents = list("nutriment" = 10, "sugar" = 4) tastes = list("syrup" = 3, "waffle" = 2) -/obj/item/food/snacks/twimsts +/obj/item/food/twimsts name = "Twimsts" desc = "Sweet twisted sticks made of liquorice, can be used to make edible handcuffs!" icon_state = "twimsts" @@ -111,7 +111,7 @@ list_reagents = list("nutriment" = 2, "sugar" = 10) tastes = list("sweetness" = 3, "liquorice" = 2) -/obj/item/food/snacks/twimsts/attack_self(mob/user) +/obj/item/food/twimsts/attack_self(mob/user) var/obj/item/restraints/handcuffs/twimsts/L = new /obj/item/restraints/handcuffs/twimsts L.create_reagents(100) reagents.copy_to(L, reagents.total_volume) @@ -125,13 +125,13 @@ // Homemade // ////////////////////// -/obj/item/food/snacks/sosjerky/healthy +/obj/item/food/sosjerky/healthy name = "homemade beef jerky" desc = "Homemade beef jerky made from the finest space cows." list_reagents = list("nutriment" = 3, "vitamin" = 1) junkiness = 0 -/obj/item/food/snacks/no_raisin/healthy +/obj/item/food/no_raisin/healthy name = "homemade raisins" desc = "homemade raisins, the best in all of spess." list_reagents = list("nutriment" = 3, "vitamin" = 2) diff --git a/code/modules/food_and_drinks/food/foods/meat.dm b/code/modules/food_and_drinks/food/foods/meat.dm index 348e0afdf362..0ad16bc77f52 100644 --- a/code/modules/food_and_drinks/food/foods/meat.dm +++ b/code/modules/food_and_drinks/food/foods/meat.dm @@ -3,7 +3,7 @@ // Raw Meat // ////////////////////// -/obj/item/food/snacks/meat +/obj/item/food/meat name = "meat" desc = "A slab of meat." icon = 'icons/obj/food/meat.dmi' @@ -15,11 +15,11 @@ ingredient_name = "slab of meat" ingredient_name_plural = "slabs of meat" -/obj/item/food/snacks/meat/attackby(obj/item/W, mob/user, params) +/obj/item/food/meat/attackby(obj/item/W, mob/user, params) if(istype(W, /obj/item/kitchen/knife) || istype(W, /obj/item/scalpel)) - new /obj/item/food/snacks/rawcutlet(src) - new /obj/item/food/snacks/rawcutlet(src) - new /obj/item/food/snacks/rawcutlet(src) + new /obj/item/food/rawcutlet(src) + new /obj/item/food/rawcutlet(src) + new /obj/item/food/rawcutlet(src) user.visible_message( \ "[user] cuts [src] with [W]!", \ "You cut [src] with [W]!" \ @@ -28,53 +28,53 @@ else ..() -/obj/item/food/snacks/meat/syntiflesh +/obj/item/food/meat/syntiflesh name = "synthetic meat" desc = "A synthetic slab of flesh." -/obj/item/food/snacks/meat/human +/obj/item/food/meat/human name = "-meat" var/subjectname = "" var/subjectjob = null tastes = list("salty meat" = 1) -/obj/item/food/snacks/meat/slab/meatproduct +/obj/item/food/meat/slab/meatproduct name = "meat product" desc = "A slab of reclaimed and chemically processed meat product." -/obj/item/food/snacks/meat/slab/gorilla +/obj/item/food/meat/slab/gorilla name = "gorilla meat" desc = "Much meatier than monkey meat." list_reagents = list("nutriment" = 5, "vitamin" = 1) -/obj/item/food/snacks/meat/kangaroo +/obj/item/food/meat/kangaroo name = "kangaroo meat" desc = "Extremely muscular and tender meat." list_reagents = list("protein" = 4, "iron" = 5, "vitamin" = 1) tastes = list("a punch in the face" = 1, "fowl" = 3) -/obj/item/food/snacks/meat/monkey +/obj/item/food/meat/monkey //same as plain meat -/obj/item/food/snacks/meat/corgi +/obj/item/food/meat/corgi name = "corgi meat" desc = "Tastes like the Head of Personnel's hopes and dreams." -/obj/item/food/snacks/meat/pug +/obj/item/food/meat/pug name = "pug meat" desc = "Slightly less adorable in sliced form." -/obj/item/food/snacks/meat/ham +/obj/item/food/meat/ham name = "ham" desc = "For when you need to go ham." list_reagents = list("protein" = 3, "porktonium" = 10) -/obj/item/food/snacks/meat/chicken +/obj/item/food/meat/chicken name = "chicken meat" desc = "Cluck cluck!" icon_state = "birdmeat" -/obj/item/food/snacks/meat/meatwheat +/obj/item/food/meat/meatwheat name = "meatwheat clump" desc = "This doesn't look like meat, but your standards aren't that high to begin with." list_reagents = list("nutriment" = 3, "vitamin" = 2, "blood" = 5) @@ -82,7 +82,7 @@ icon_state = "meatwheat_clump" bitesize = 4 -/obj/item/food/snacks/meat/tomatomeat +/obj/item/food/meat/tomatomeat name = "tomato meat slice" desc = "A slice from a huge tomato." icon_state = "tomatomeat" @@ -91,7 +91,7 @@ list_reagents = list("protein" = 2) tastes = list("tomato" = 1) -/obj/item/food/snacks/rawcutlet +/obj/item/food/rawcutlet name = "raw cutlet" desc = "A thin strip of raw meat." icon = 'icons/obj/food/food_ingredients.dmi' @@ -99,13 +99,13 @@ bitesize = 1 list_reagents = list("protein" = 1) -/obj/item/food/snacks/rawcutlet/attackby(obj/item/W, mob/user, params) +/obj/item/food/rawcutlet/attackby(obj/item/W, mob/user, params) if(istype(W, /obj/item/kitchen/knife) || istype(W, /obj/item/scalpel)) user.visible_message( \ "[user] cuts the raw cutlet with [W]!", \ "You cut the raw cutlet with [W]!" \ ) - var/obj/item/food/snacks/raw_bacon/bacon = new(get_turf(src)) + var/obj/item/food/raw_bacon/bacon = new(get_turf(src)) if(ishuman(loc)) var/mob/living/carbon/human/H = loc qdel(src) @@ -119,7 +119,7 @@ // Cannot be used in the usual meat-based food recipies but can be used as cloning pod biomass. -/obj/item/food/snacks/monstermeat +/obj/item/food/monstermeat // Abstract object used for inheritance. I don't see why you would want one. // It's just a convenience to set all monstermeats as biomass-able at once, // in the GLOB.cloner_biomass_items list. @@ -129,7 +129,7 @@ icon = 'icons/obj/food/meat.dmi' icon_state = "bearmeat" -/obj/item/food/snacks/monstermeat/bearmeat +/obj/item/food/monstermeat/bearmeat name = "bear meat" desc = "A very manly slab of meat." icon_state = "bearmeat" @@ -138,7 +138,7 @@ list_reagents = list("protein" = 12, "methamphetamine" = 5, "vitamin" = 2) tastes = list("meat" = 1, "salmon" = 1) -/obj/item/food/snacks/monstermeat/xenomeat +/obj/item/food/monstermeat/xenomeat name = "meat" desc = "A slab of meat. It's green!" icon_state = "xenomeat" @@ -147,7 +147,7 @@ list_reagents = list("protein" = 3, "vitamin" = 1) tastes = list("meat" = 1, "acid" = 1) -/obj/item/food/snacks/monstermeat/spidermeat +/obj/item/food/monstermeat/spidermeat name = "spider meat" desc = "A slab of spider meat. Not very appetizing." icon_state = "spidermeat" @@ -155,7 +155,7 @@ list_reagents = list("protein" = 3, "toxin" = 3, "vitamin" = 1) tastes = list("cobwebs" = 1) -/obj/item/food/snacks/monstermeat/lizardmeat +/obj/item/food/monstermeat/lizardmeat name = "mutant lizard meat" desc = "A peculiar slab of meat. It looks scaly and radioactive." icon_state = "xenomeat" @@ -164,14 +164,14 @@ list_reagents = list("protein" = 3, "toxin" = 3) tastes = list("tough meat" = 1) -/obj/item/food/snacks/monstermeat/spiderleg +/obj/item/food/monstermeat/spiderleg name = "spider leg" desc = "A still twitching leg of a giant spider. You don't really want to eat this, do you?" icon_state = "spiderleg" list_reagents = list("protein" = 2, "toxin" = 2) tastes = list("cobwebs" = 1, "creepy motion" = 1) -/obj/item/food/snacks/raw_bacon +/obj/item/food/raw_bacon name = "raw bacon" desc = "God's gift to man in uncooked form." icon = 'icons/obj/food/meat.dmi' @@ -179,30 +179,30 @@ list_reagents = list("nutriment" = 1, "porktonium" = 10) tastes = list("bacon" = 1) -/obj/item/food/snacks/monstermeat/spidereggs +/obj/item/food/monstermeat/spidereggs name = "spider eggs" desc = "A cluster of juicy spider eggs. A great side dish for when you don't care about your health." icon_state = "spidereggs" list_reagents = list("protein" = 2, "toxin" = 2) tastes = list("cobwebs" = 1, "spider juice" = 1) -/obj/item/food/snacks/monstermeat/goliath +/obj/item/food/monstermeat/goliath name = "goliath meat" desc = "A slab of goliath meat. It's not very edible now, but it cooks great in lava." icon_state = "goliathmeat" list_reagents = list("protein" = 3, "toxin" = 5) tastes = list("tough meat" = 1) -/obj/item/food/snacks/monstermeat/goliath/burn() +/obj/item/food/monstermeat/goliath/burn() visible_message("[src] finishes cooking!") - new /obj/item/food/snacks/goliath_steak(loc) + new /obj/item/food/goliath_steak(loc) qdel(src) ////////////////////// // Cooked Meat // ////////////////////// -/obj/item/food/snacks/meatsteak +/obj/item/food/meatsteak name = "meat steak" desc = "A piece of hot spicy meat." icon = 'icons/obj/food/meat.dmi' @@ -214,13 +214,13 @@ tastes = list("meat" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/meatsteak/chicken +/obj/item/food/meatsteak/chicken name = "cooked chicken" desc = "Cluck cluck!" icon_state = "birdsteak" tastes = list("chicken" = 1, "meat" = 1) -/obj/item/food/snacks/bacon +/obj/item/food/bacon name = "bacon" desc = "It looks crispy and tastes amazing! Mmm... Bacon." icon = 'icons/obj/food/meat.dmi' @@ -229,7 +229,7 @@ tastes = list("bacon" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/telebacon +/obj/item/food/telebacon name = "tele bacon" desc = "It tastes a little odd but it's still delicious." icon = 'icons/obj/food/meat.dmi' @@ -239,21 +239,21 @@ tastes = list("bacon" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/telebacon/Initialize(mapload) +/obj/item/food/telebacon/Initialize(mapload) . = ..() baconbeacon = new /obj/item/beacon/bacon(src) -/obj/item/food/snacks/telebacon/Destroy() +/obj/item/food/telebacon/Destroy() QDEL_NULL(baconbeacon) return ..() -/obj/item/food/snacks/telebacon/On_Consume(mob/M, mob/user) +/obj/item/food/telebacon/On_Consume(mob/M, mob/user) if(!reagents.total_volume) baconbeacon.forceMove(user) baconbeacon.digest_delay() baconbeacon = null -/obj/item/food/snacks/meatball +/obj/item/food/meatball name = "meatball" desc = "A great meal all round." icon = 'icons/obj/food/meat.dmi' @@ -262,7 +262,7 @@ list_reagents = list("protein" = 4, "vitamin" = 1) tastes = list("meat" = 1) -/obj/item/food/snacks/sausage +/obj/item/food/sausage name = "sausage" desc = "A piece of mixed and cased meat." icon = 'icons/obj/food/meat.dmi' @@ -272,7 +272,7 @@ tastes = list("meat" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/cutlet +/obj/item/food/cutlet name = "cutlet" desc = "A tasty meat slice." icon = 'icons/obj/food/food_ingredients.dmi' @@ -281,7 +281,7 @@ tastes = list("meat" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/spidereggsham +/obj/item/food/spidereggsham name = "green eggs and ham" desc = "Would you eat them on a train? Would you eat them on a plane? Would you eat them on a state of the art corporate deathtrap floating through space?" icon = 'icons/obj/food/meat.dmi' @@ -292,7 +292,7 @@ tastes = list("cobwebs" = 1, "the colour green" = 1) goal_difficulty = FOOD_GOAL_EXCESSIVE -/obj/item/food/snacks/boiledspiderleg +/obj/item/food/boiledspiderleg name = "boiled spider leg" desc = "A giant spider's leg that's still twitching after being cooked. Gross!" icon = 'icons/obj/food/meat.dmi' @@ -303,7 +303,7 @@ tastes = list("cobwebs" = 1, "hot peppers" = 1) goal_difficulty = FOOD_GOAL_EXCESSIVE -/obj/item/food/snacks/wingfangchu +/obj/item/food/wingfangchu name = "wing fang chu" desc = "A savory dish of alien wing wang in soy. Wait, what?" icon = 'icons/obj/food/soupsalad.dmi' @@ -314,7 +314,7 @@ tastes = list("soy" = 1) goal_difficulty = FOOD_GOAL_EXCESSIVE -/obj/item/food/snacks/goliath_steak +/obj/item/food/goliath_steak name = "goliath steak" desc = "A delicious, lava cooked steak." resistance_flags = LAVA_PROOF | FIRE_PROOF @@ -325,7 +325,7 @@ tastes = list("meat" = 1) goal_difficulty = FOOD_GOAL_EXCESSIVE -/obj/item/food/snacks/fried_vox +/obj/item/food/fried_vox name = "Kentucky Fried Vox" desc = "Bucket of voxxy, yaya!" icon = 'icons/obj/food/meat.dmi' @@ -339,7 +339,7 @@ // Cubes // ////////////////////// -/obj/item/food/snacks/monkeycube +/obj/item/food/monkeycube name = "monkey cube" desc = "Just add water!" icon_state = "monkeycube" @@ -350,17 +350,17 @@ list_reagents = list("nutriment" = 2) tastes = list("the jungle" = 1, "bananas" = 1) -/obj/item/food/snacks/monkeycube/water_act(volume, temperature, source, method = REAGENT_TOUCH) +/obj/item/food/monkeycube/water_act(volume, temperature, source, method = REAGENT_TOUCH) . = ..() if(volume >= 1) return Expand() -/obj/item/food/snacks/monkeycube/wash(mob/user, atom/source) +/obj/item/food/monkeycube/wash(mob/user, atom/source) user.drop_item() forceMove(get_turf(source)) return 1 -/obj/item/food/snacks/monkeycube/proc/Expand() +/obj/item/food/monkeycube/proc/Expand() if(LAZYLEN(SSmobs.cubemonkeys) >= GLOB.configuration.general.monkey_cube_cap) return if(!QDELETED(src)) @@ -380,26 +380,26 @@ SSmobs.cubemonkeys += creature qdel(src) -/obj/item/food/snacks/monkeycube/syndicate +/obj/item/food/monkeycube/syndicate faction = list("neutral", "syndicate") -/obj/item/food/snacks/monkeycube/farwacube +/obj/item/food/monkeycube/farwacube name = "farwa cube" monkey_type = /datum/species/monkey/tajaran -/obj/item/food/snacks/monkeycube/wolpincube +/obj/item/food/monkeycube/wolpincube name = "wolpin cube" monkey_type = /datum/species/monkey/vulpkanin -/obj/item/food/snacks/monkeycube/nian_wormecube +/obj/item/food/monkeycube/nian_wormecube name = "nian worme cube" monkey_type = /datum/species/monkey/nian_worme -/obj/item/food/snacks/monkeycube/stokcube +/obj/item/food/monkeycube/stokcube name = "stok cube" monkey_type = /datum/species/monkey/unathi -/obj/item/food/snacks/monkeycube/neaeracube +/obj/item/food/monkeycube/neaeracube name = "neaera cube" monkey_type = /datum/species/monkey/skrell @@ -408,7 +408,7 @@ // Eggs // ////////////////////// -/obj/item/food/snacks/egg +/obj/item/food/egg name = "egg" desc = "An egg!" icon = 'icons/obj/food/breakfast.dmi' @@ -418,7 +418,7 @@ tastes = list("egg" = 1) var/amount_grown = 0 -/obj/item/food/snacks/egg/throw_impact(atom/hit_atom) +/obj/item/food/egg/throw_impact(atom/hit_atom) ..() var/turf/T = get_turf(hit_atom) new/obj/effect/decal/cleanable/egg_smudge(T) @@ -426,7 +426,7 @@ reagents.reaction(hit_atom, REAGENT_TOUCH) qdel(src) -/obj/item/food/snacks/egg/attackby(obj/item/W, mob/user, params) +/obj/item/food/egg/attackby(obj/item/W, mob/user, params) if(istype(W, /obj/item/toy/crayon)) var/obj/item/toy/crayon/C = W var/clr = C.colourName @@ -441,49 +441,49 @@ else ..() -/obj/item/food/snacks/egg/blue +/obj/item/food/egg/blue icon_state = "egg-blue" item_color = "blue" -/obj/item/food/snacks/egg/green +/obj/item/food/egg/green icon_state = "egg-green" item_color = "green" -/obj/item/food/snacks/egg/mime +/obj/item/food/egg/mime icon_state = "egg-mime" item_color = "mime" -/obj/item/food/snacks/egg/orange +/obj/item/food/egg/orange icon_state = "egg-orange" item_color = "orange" -/obj/item/food/snacks/egg/purple +/obj/item/food/egg/purple icon_state = "egg-purple" item_color = "purple" -/obj/item/food/snacks/egg/rainbow +/obj/item/food/egg/rainbow icon_state = "egg-rainbow" item_color = "rainbow" -/obj/item/food/snacks/egg/red +/obj/item/food/egg/red icon_state = "egg-red" item_color = "red" -/obj/item/food/snacks/egg/yellow +/obj/item/food/egg/yellow icon_state = "egg-yellow" item_color = "yellow" -/obj/item/food/snacks/egg/gland +/obj/item/food/egg/gland desc = "An egg! It looks weird..." -/obj/item/food/snacks/egg/gland/Initialize(mapload) +/obj/item/food/egg/gland/Initialize(mapload) . = ..() reagents.add_reagent(get_random_reagent_id(), 15) var/reagent_color = mix_color_from_reagents(reagents.reagent_list) color = reagent_color -/obj/item/food/snacks/friedegg +/obj/item/food/friedegg name = "fried egg" desc = "A fried egg, with a touch of salt and pepper." icon = 'icons/obj/food/breakfast.dmi' @@ -494,7 +494,7 @@ tastes = list("egg" = 1, "salt" = 1, "pepper" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/boiledegg +/obj/item/food/boiledegg name = "boiled egg" desc = "A hard boiled egg." icon = 'icons/obj/food/breakfast.dmi' @@ -503,7 +503,7 @@ list_reagents = list("nutriment" = 2, "egg" = 5, "vitamin" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/chocolateegg +/obj/item/food/chocolateegg name = "chocolate egg" desc = "Such sweet, fattening food." icon = 'icons/obj/food/breakfast.dmi' @@ -512,7 +512,7 @@ list_reagents = list("nutriment" = 4, "sugar" = 2, "cocoa" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/omelette +/obj/item/food/omelette name = "omelette du fromage" desc = "That's all you can say!" icon = 'icons/obj/food/breakfast.dmi' @@ -524,7 +524,7 @@ tastes = list("egg" = 1, "cheese" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/benedict +/obj/item/food/benedict name = "eggs benedict" desc = "There is only one egg on this, how rude." icon = 'icons/obj/food/breakfast.dmi' @@ -539,7 +539,7 @@ // Misc // ////////////////////// -/obj/item/food/snacks/hotdog +/obj/item/food/hotdog name = "hotdog" desc = "Not made with actual dogs. Hopefully." icon = 'icons/obj/food/burgerbread.dmi' @@ -549,7 +549,7 @@ tastes = list("bun" = 3, "meat" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/meatbun +/obj/item/food/meatbun name = "meat bun" desc = "Has the potential to not be dog." icon = 'icons/obj/food/meat.dmi' @@ -559,18 +559,18 @@ tastes = list("bun" = 3, "meat" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/sliceable/turkey +/obj/item/food/sliceable/turkey name = "turkey" desc = "A traditional turkey served with stuffing." icon = 'icons/obj/food/meat.dmi' icon_state = "turkey" - slice_path = /obj/item/food/snacks/turkeyslice + slice_path = /obj/item/food/turkeyslice slices_num = 6 list_reagents = list("protein" = 24, "nutriment" = 18, "vitamin" = 5) tastes = list("turkey" = 2, "stuffing" = 2) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/turkeyslice +/obj/item/food/turkeyslice name = "turkey serving" desc = "A serving of some tender and delicious turkey." icon = 'icons/obj/food/meat.dmi' @@ -580,7 +580,7 @@ tastes = list("turkey" = 1) goal_difficulty = FOOD_GOAL_EASY -/obj/item/food/snacks/organ +/obj/item/food/organ name = "organ" desc = "Technically qualifies as organic." icon = 'icons/obj/surgery.dmi' @@ -589,11 +589,11 @@ bitesize = 3 list_reagents = list("protein" = 4, "vitamin" = 4) -/obj/item/food/snacks/organ/Initialize(mapload) +/obj/item/food/organ/Initialize(mapload) . = ..() reagents.add_reagent("nutriment", 5) -/obj/item/food/snacks/appendix +/obj/item/food/appendix //yes, this is the same as meat. I might do something different in future name = "appendix" desc = "An appendix which looks perfectly healthy." @@ -603,13 +603,13 @@ bitesize = 3 list_reagents = list("protein" = 3, "vitamin" = 2) -/obj/item/food/snacks/appendix/inflamed +/obj/item/food/appendix/inflamed name = "inflamed appendix" desc = "An appendix which appears to be inflamed." icon_state = "appendixinflamed" filling_color = "#E00D7A" -/obj/item/food/snacks/bbqribs +/obj/item/food/bbqribs name = "BBQ ribs" desc = "Sweet, smokey, savory, and gets everywhere. Perfect for Grilling." icon = 'icons/obj/food/meat.dmi' diff --git a/code/modules/food_and_drinks/food/foods/misc_food.dm b/code/modules/food_and_drinks/food/foods/misc_food.dm index 7316b43e9b2f..186ba7336694 100644 --- a/code/modules/food_and_drinks/food/foods/misc_food.dm +++ b/code/modules/food_and_drinks/food/foods/misc_food.dm @@ -3,7 +3,7 @@ // Meals // ////////////////////// -/obj/item/food/snacks/eggplantparm +/obj/item/food/eggplantparm name = "eggplant parmigiana" desc = "The only good recipe for eggplant." icon_state = "eggplantparm" @@ -13,7 +13,7 @@ tastes = list("eggplant" = 2, "cheese" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soylentgreen +/obj/item/food/soylentgreen name = "soylent green" desc = "Not made of people. Honest." //Totally people. icon_state = "soylent_green" @@ -22,7 +22,7 @@ list_reagents = list("nutriment" = 10, "vitamin" = 1) tastes = list("waffles" = 7, "people" = 1) -/obj/item/food/snacks/soylentviridians +/obj/item/food/soylentviridians name = "soylent virdians" desc = "Not made of people. Honest." //Actually honest for once. icon_state = "soylent_yellow" @@ -32,7 +32,7 @@ tastes = list("waffles" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/monkeysdelight +/obj/item/food/monkeysdelight name = "monkey's delight" desc = "Eeee Eee!" icon_state = "monkeysdelight" @@ -43,7 +43,7 @@ tastes = list("banana" = 1, "the jungle" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/dionaroast +/obj/item/food/dionaroast name = "roast diona" desc = "It's like an enormous leathery carrot... With an eye." icon_state = "dionaroast" @@ -53,7 +53,7 @@ tastes = list("chewy vegetables" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/tofurkey +/obj/item/food/tofurkey name = "tofurkey" desc = "A fake turkey made from tofu." icon_state = "tofurkey" @@ -68,7 +68,7 @@ // Salads // ////////////////////// -/obj/item/food/snacks/salad +/obj/item/food/salad name = "salad" desc = "This salad is blander than the jokes of the clown, but is also low in carbohydrates!" icon = 'icons/obj/food/soupsalad.dmi' @@ -80,7 +80,7 @@ tastes = list("lettuce" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/salad/aesir +/obj/item/food/salad/aesir name = "aesir salad" desc = "Probably too incredible for mortal men to fully enjoy." icon_state = "aesirsalad" @@ -88,7 +88,7 @@ tastes = list("divinity" = 1, "lettuce" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/salad/antipasto +/obj/item/food/salad/antipasto name = "antipasto salad" desc = "A traditional Italian salad made of salami, mozzarella cheese, olives, and tomatoes. Often served as a first course meal." icon_state = "antipasto_salad" @@ -96,7 +96,7 @@ tastes = list("lettuce" = 2, "salami" = 2, "mozzarella cheese" = 2, "tomatoes" = 2, "dressing" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/salad/caesar +/obj/item/food/salad/caesar name = "Caesar salad" desc = "A simple yet flavorful salad of onions, lettuce, croutons, and shreds of cheese dressed in oil. Comes with a slice of pita bread!" icon_state = "caesar_salad" @@ -104,7 +104,7 @@ tastes = list("healthy greens" = 2, "olive dressing" = 2, "feta cheese" = 2, "pita bread" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/salad/fruit +/obj/item/food/salad/fruit name = "fruit salad" desc = "Your standard fruit salad." icon_state = "fruitsalad" @@ -112,7 +112,7 @@ tastes = list("fruit" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/salad/greek +/obj/item/food/salad/greek name = "Greek salad" desc = "A popular salad made of tomatoes, onions, feta cheese, and olives all drizzled in olive oil. Though it feels like it's missing something..." icon_state = "greek_salad" @@ -120,7 +120,7 @@ tastes = list("healthy greens" = 2, "olive dressing" = 1, "feta cheese" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/salad/citrusdelight +/obj/item/food/salad/citrusdelight name = "citrus delight" desc = "Citrus overload!" icon_state = "citrusdelight" @@ -128,7 +128,7 @@ tastes = list("sourness" = 1, "leaves" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/salad/jungle +/obj/item/food/salad/jungle name = "jungle salad" desc = "Exotic fruits in a bowl." icon_state = "junglesalad" @@ -136,7 +136,7 @@ tastes = list("fruit" = 1, "the jungle" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/salad/kale +/obj/item/food/salad/kale name = "kale salad" desc = "A healthy kale salad drizzled in oil, perfect for warm summer months." icon_state = "kale_salad" @@ -144,7 +144,7 @@ tastes = list("healthy greens" = 2, "olive dressing" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/salad/potato +/obj/item/food/salad/potato name = "potato salad" desc = "A dish of boiled potatoes mixed with boiled eggs, onions, and mayonnaise. A staple of every self-respecting barbeque." icon_state = "potato_salad" @@ -152,7 +152,7 @@ tastes = list("potato" = 2, "egg" = 2, "mayonnaise" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/salad/melonfruitbowl +/obj/item/food/salad/melonfruitbowl name = "melon fruit bowl" desc = "For people who wants edible fruit bowls." icon_state = "melonfruitbowl" @@ -161,7 +161,7 @@ tastes = list("melon" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/salad/herb +/obj/item/food/salad/herb name = "herb salad" desc = "A tasty salad with apples on top." icon_state = "herbsalad" @@ -170,7 +170,7 @@ tastes = list("lettuce" = 1, "apple" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/salad/valid +/obj/item/food/salad/valid name = "valid salad" desc = "It's just an herb salad with meatballs and fried potato slices. Nothing suspicious about it." icon_state = "validsalad" @@ -184,7 +184,7 @@ // Donk Pockets // ////////////////////// -/obj/item/food/snacks/donkpocket +/obj/item/food/donkpocket name = "Donk-pocket" desc = "The food of choice for the seasoned traitor." icon_state = "donkpocket" @@ -193,7 +193,7 @@ tastes = list("meat" = 2, "dough" = 2, "laziness" = 1) ingredient_name = "turnover" -/obj/item/food/snacks/warmdonkpocket +/obj/item/food/warmdonkpocket name = "warm Donk-pocket" desc = "The food of choice for the seasoned traitor." icon_state = "donkpocket" @@ -209,20 +209,20 @@ /// This tracks how much time the donk pocket has already been cooling for when its timer is paused var/subtracted_time = 0 -/obj/item/food/snacks/warmdonkpocket/Initialize(mapload) +/obj/item/food/warmdonkpocket/Initialize(mapload) . = ..() donk_heat() -/obj/item/food/snacks/warmdonkpocket/proc/donk_heat() +/obj/item/food/warmdonkpocket/proc/donk_heat() heated_at = world.time cool_timer = addtimer(CALLBACK(src, PROC_REF(donk_cool)), 7 MINUTES - subtracted_time, TIMER_UNIQUE|TIMER_STOPPABLE) -/obj/item/food/snacks/warmdonkpocket/proc/donk_cool() +/obj/item/food/warmdonkpocket/proc/donk_cool() name = "cold Donk-pocket" desc = "The food of choice for the seasoned traitor. This one is cold." warm = FALSE -/obj/item/food/snacks/warmdonkpocket/on_enter_storage(obj/item/storage/S) +/obj/item/food/warmdonkpocket/on_enter_storage(obj/item/storage/S) . = ..() if(!cool_timer) return @@ -231,25 +231,25 @@ subtracted_time += (world.time - heated_at) cool_timer = null -/obj/item/food/snacks/warmdonkpocket/on_exit_storage(obj/item/storage/S) +/obj/item/food/warmdonkpocket/on_exit_storage(obj/item/storage/S) . = ..() if(warm) donk_heat() -/obj/item/food/snacks/warmdonkpocket/Post_Consume(mob/living/M) +/obj/item/food/warmdonkpocket/Post_Consume(mob/living/M) if(warm) M.reagents.add_reagent("omnizine", 15) return M.reagents.add_reagent("weak_omnizine", 5) -/obj/item/food/snacks/warmdonkpocket_weak +/obj/item/food/warmdonkpocket_weak name = "lukewarm Donk-pocket" desc = "The food of choice for the seasoned traitor. This one is lukewarm." icon_state = "donkpocket" filling_color = "#DEDEAB" list_reagents = list("nutriment" = 4, "weak_omnizine" = 3) -/obj/item/food/snacks/syndidonkpocket +/obj/item/food/syndidonkpocket name = "Donk-pocket" desc = "This donk-pocket is emitting a small amount of heat." icon_state = "donkpocket" @@ -257,7 +257,7 @@ bitesize = 100 //nom the whole thing at once. list_reagents = list("nutriment" = 1) -/obj/item/food/snacks/syndidonkpocket/Post_Consume(mob/living/M) +/obj/item/food/syndidonkpocket/Post_Consume(mob/living/M) M.reagents.add_reagent("omnizine", 15) M.reagents.add_reagent("teporone", 15) M.reagents.add_reagent("synaptizine", 15) @@ -271,7 +271,7 @@ // Misc // ////////////////////// -/obj/item/food/snacks/boiledslimecore +/obj/item/food/boiledslimecore name = "boiled slime core" desc = "A boiled red thing." icon_state = "boiledrorocore" @@ -280,7 +280,7 @@ tastes = list("jelly" = 1) goal_difficulty = FOOD_GOAL_EXCESSIVE -/obj/item/food/snacks/popcorn +/obj/item/food/popcorn name = "popcorn" desc = "Now let's find some cinema." icon_state = "popcorn" @@ -293,17 +293,17 @@ tastes = list("popcorn" = 3, "butter" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/popcorn/Initialize(mapload) +/obj/item/food/popcorn/Initialize(mapload) . = ..() unpopped = rand(1,10) -/obj/item/food/snacks/popcorn/On_Consume(mob/M, mob/user) +/obj/item/food/popcorn/On_Consume(mob/M, mob/user) if(prob(unpopped)) //lol ...what's the point? to_chat(user, "You bite down on an un-popped kernel!") unpopped = max(0, unpopped-1) ..() -/obj/item/food/snacks/liquidfood +/obj/item/food/liquidfood name = "\improper LiquidFood ration" desc = "A prepackaged grey slurry of all the essential nutrients for a spacefarer on the go. Should this be crunchy?" icon_state = "liquidfood" diff --git a/code/modules/food_and_drinks/food/foods/pasta.dm b/code/modules/food_and_drinks/food/foods/pasta.dm index e8aadb6ce29d..b23cbe0a6958 100644 --- a/code/modules/food_and_drinks/food/foods/pasta.dm +++ b/code/modules/food_and_drinks/food/foods/pasta.dm @@ -3,7 +3,7 @@ // Raw Pasta // ////////////////////// -/obj/item/food/snacks/spaghetti +/obj/item/food/spaghetti name = "spaghetti" desc = "A bundle of raw spaghetti." icon = 'icons/obj/food/pasta.dmi' @@ -12,7 +12,7 @@ list_reagents = list("nutriment" = 1, "vitamin" = 1) tastes = list("raw pasta" = 1) -/obj/item/food/snacks/macaroni +/obj/item/food/macaroni name = "macaroni twists" desc = "These are little twists of raw macaroni." icon = 'icons/obj/food/pasta.dmi' @@ -26,7 +26,7 @@ // Pasta Dishes // ////////////////////// -/obj/item/food/snacks/boiledspaghetti +/obj/item/food/boiledspaghetti name = "boiled spaghetti" desc = "A plain dish of noodles. This sucks." icon = 'icons/obj/food/pasta.dmi' @@ -37,7 +37,7 @@ tastes = list("pasta" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/pastatomato +/obj/item/food/pastatomato name = "spaghetti" desc = "Spaghetti and crushed tomatoes. Just like your abusive father used to make!" icon = 'icons/obj/food/pasta.dmi' @@ -49,7 +49,7 @@ tastes = list("pasta" = 1, "tomato" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/meatballspaghetti +/obj/item/food/meatballspaghetti name = "spaghetti & meatballs" desc = "Now that's a nice'a meatball!" icon = 'icons/obj/food/pasta.dmi' @@ -60,7 +60,7 @@ tastes = list("pasta" = 1, "tomato" = 1, "meat" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/spesslaw +/obj/item/food/spesslaw name = "spesslaw" desc = "A lawyer's favourite." icon = 'icons/obj/food/pasta.dmi' @@ -70,7 +70,7 @@ tastes = list("pasta" = 1, "tomato" = 1, "meat" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/macncheese +/obj/item/food/macncheese name = "mac 'n' cheese" desc = "One of the most comforting foods in the world. Apparently." trash = /obj/item/trash/snack_bowl @@ -81,7 +81,7 @@ tastes = list("pasta" = 1, "cheese" = 1, "comfort" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/lasagna +/obj/item/food/lasagna name = "lasagna" desc = "Tajara love to eat this, for some reason." icon = 'icons/obj/food/pasta.dmi' diff --git a/code/modules/food_and_drinks/food/foods/pizza.dm b/code/modules/food_and_drinks/food/foods/pizza.dm index 0da9469455f5..8a62b48fd3a9 100644 --- a/code/modules/food_and_drinks/food/foods/pizza.dm +++ b/code/modules/food_and_drinks/food/foods/pizza.dm @@ -3,22 +3,22 @@ // Pizzas // ////////////////////// -/obj/item/food/snacks/sliceable/pizza +/obj/item/food/sliceable/pizza icon = 'icons/obj/food/pizza.dmi' slices_num = 6 filling_color = "#BAA14C" tastes = list("crust" = 1, "tomato" = 1, "cheese" = 1) // Margherita -/obj/item/food/snacks/sliceable/pizza/margheritapizza +/obj/item/food/sliceable/pizza/margheritapizza name = "margherita pizza" desc = "The golden standard of pizzas." icon_state = "margheritapizza" - slice_path = /obj/item/food/snacks/margheritapizzaslice + slice_path = /obj/item/food/margheritapizzaslice list_reagents = list("nutriment" = 30, "tomatojuice" = 6, "vitamin" = 5) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/margheritapizzaslice +/obj/item/food/margheritapizzaslice name = "margherita slice" desc = "A slice of the classic pizza." icon = 'icons/obj/food/pizza.dmi' @@ -28,16 +28,16 @@ goal_difficulty = FOOD_GOAL_EASY // Meat Pizza -/obj/item/food/snacks/sliceable/pizza/meatpizza +/obj/item/food/sliceable/pizza/meatpizza name = "meat pizza" desc = "A pizza with meat topping." icon_state = "meatpizza" - slice_path = /obj/item/food/snacks/meatpizzaslice + slice_path = /obj/item/food/meatpizzaslice list_reagents = list("protein" = 30, "tomatojuice" = 6, "vitamin" = 8) tastes = list("crust" = 1, "cheese" = 1, "meat" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/meatpizzaslice +/obj/item/food/meatpizzaslice name = "meat pizza slice" desc = "A slice of a meaty pizza." icon = 'icons/obj/food/pizza.dmi' @@ -47,16 +47,16 @@ goal_difficulty = FOOD_GOAL_EASY // Mushroom Pizza -/obj/item/food/snacks/sliceable/pizza/mushroompizza +/obj/item/food/sliceable/pizza/mushroompizza name = "mushroom pizza" desc = "Very special pizza." icon_state = "mushroompizza" - slice_path = /obj/item/food/snacks/mushroompizzaslice + slice_path = /obj/item/food/mushroompizzaslice list_reagents = list("plantmatter" = 30, "vitamin" = 5) tastes = list("crust" = 1, "cheese" = 1, "mushroom" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/mushroompizzaslice +/obj/item/food/mushroompizzaslice name = "mushroom pizza slice" desc = "Maybe it is the last slice of pizza in your life." icon = 'icons/obj/food/pizza.dmi' @@ -66,16 +66,16 @@ goal_difficulty = FOOD_GOAL_EASY // Vegetable Pizza -/obj/item/food/snacks/sliceable/pizza/vegetablepizza +/obj/item/food/sliceable/pizza/vegetablepizza name = "vegetable pizza" desc = "No Tomato Sapiens were harmed during the making of this pizza." icon_state = "vegetablepizza" - slice_path = /obj/item/food/snacks/vegetablepizzaslice + slice_path = /obj/item/food/vegetablepizzaslice list_reagents = list("plantmatter" = 25, "tomatojuice" = 6, "oculine" = 12, "vitamin" = 5) tastes = list("crust" = 1, "tomato" = 1, "carrot" = 1, "vegetables" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/vegetablepizzaslice +/obj/item/food/vegetablepizzaslice name = "vegetable pizza slice" desc = "A slice of the most green pizza of all pizzas not containing green ingredients." icon = 'icons/obj/food/pizza.dmi' @@ -85,16 +85,16 @@ goal_difficulty = FOOD_GOAL_EASY // Hawaiian Pizza -/obj/item/food/snacks/sliceable/pizza/hawaiianpizza +/obj/item/food/sliceable/pizza/hawaiianpizza name = "hawaiian pizza" desc = "Love it or hate it, this pizza divides opinions. Complete with juicy pineapple." icon_state = "hawaiianpizza" - slice_path = /obj/item/food/snacks/hawaiianpizzaslice + slice_path = /obj/item/food/hawaiianpizzaslice list_reagents = list("protein" = 15, "tomatojuice" = 6, "plantmatter" = 20, "pineapplejuice" = 6, "vitamin" = 5) tastes = list("crust" = 1, "cheese" = 1, "pineapple" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/hawaiianpizzaslice +/obj/item/food/hawaiianpizzaslice name = "hawaiian pizza slice" desc = "A slice of polarising pizza." icon = 'icons/obj/food/pizza.dmi' @@ -104,17 +104,17 @@ goal_difficulty = FOOD_GOAL_EASY // Mac 'n' Cheese Pizza -/obj/item/food/snacks/sliceable/pizza/macpizza +/obj/item/food/sliceable/pizza/macpizza name = "mac 'n' cheese pizza" desc = "Gastronomists have yet to classify this dish as 'pizza'." icon_state = "macpizza" - slice_path = /obj/item/food/snacks/macpizzaslice + slice_path = /obj/item/food/macpizzaslice list_reagents = list("nutriment" = 40, "vitamin" = 5) //More nutriment because carbs, but it's not any more vitaminicious filling_color = "#ffe45d" tastes = list("crust" = 1, "cheese" = 2, "pasta" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/macpizzaslice +/obj/item/food/macpizzaslice name = "mac 'n' cheese pizza slice" desc = "A delicious slice of pizza topped with macaroni & cheese... wait, what the hell? Who would do this?!" icon = 'icons/obj/food/pizza.dmi' @@ -124,17 +124,17 @@ goal_difficulty = FOOD_GOAL_EASY // Pepperoni Pizza -/obj/item/food/snacks/sliceable/pizza/pepperonipizza +/obj/item/food/sliceable/pizza/pepperonipizza name = "pepperoni pizza" desc = "What did the pepperoni say to the pizza?" icon_state = "pepperonipizza" - slice_path = /obj/item/food/snacks/pepperonipizzaslice + slice_path = /obj/item/food/pepperonipizzaslice list_reagents = list("protein" = 30, "tomatojuice" = 6, "vitamin" = 8) filling_color = "#ffe45d" tastes = list("cheese" = 3, "pepperoni" = 3, "grease" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/pepperonipizzaslice +/obj/item/food/pepperonipizzaslice name = "pepperoni pizza slice" desc = "Nice to meat you!" icon = 'icons/obj/food/pizza.dmi' @@ -144,15 +144,15 @@ goal_difficulty = FOOD_GOAL_EASY // Cheese Pizza -/obj/item/food/snacks/sliceable/pizza/cheesepizza +/obj/item/food/sliceable/pizza/cheesepizza name = "cheese pizza" desc = "Cheese, bread, cheese, tomato, and cheese." icon_state = "cheesepizza" - slice_path = /obj/item/food/snacks/cheesepizzaslice + slice_path = /obj/item/food/cheesepizzaslice list_reagents = list("nutriment" = 40, "tomatojuice" = 6, "vitamin" = 5) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/cheesepizzaslice +/obj/item/food/cheesepizzaslice name = "cheese pizza slice" desc = "Dangerously cheesy?" icon = 'icons/obj/food/pizza.dmi' @@ -162,16 +162,16 @@ goal_difficulty = FOOD_GOAL_EASY // Donk-pocket Pizza -/obj/item/food/snacks/sliceable/pizza/donkpocketpizza +/obj/item/food/sliceable/pizza/donkpocketpizza name = "donk-pocket pizza" desc = "Who thought this would be a good idea?" icon_state = "donkpocketpizza" - slice_path = /obj/item/food/snacks/donkpocketpizzaslice + slice_path = /obj/item/food/donkpocketpizzaslice list_reagents = list("nutriment" = 35, "tomatojuice" = 6, "vitamin" = 2, "weak_omnizine" = 6) tastes = list("crust" = 1, "meat" = 1, "laziness" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/donkpocketpizzaslice +/obj/item/food/donkpocketpizzaslice name = "donk-pocket pizza slice" desc = "Smells like lukewarm donk-pocket." icon = 'icons/obj/food/pizza.dmi' @@ -181,16 +181,16 @@ goal_difficulty = FOOD_GOAL_EASY // Dank Pizza -/obj/item/food/snacks/sliceable/pizza/dankpizza +/obj/item/food/sliceable/pizza/dankpizza name = "dank pizza" desc = "The hippie's pizza of choice." icon_state = "dankpizza" - slice_path = /obj/item/food/snacks/dankpizzaslice + slice_path = /obj/item/food/dankpizzaslice list_reagents = list("nutriment" = 30, "tomatojuice" = 6, "vitamin" = 5, "cbd" = 6, "thc" = 6) tastes = list("crust" = 1, "cheese" = 1, "special herbs" = 2) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/dankpizzaslice +/obj/item/food/dankpizzaslice name = "dank pizza slice" desc = "So good, man..." icon = 'icons/obj/food/pizza.dmi' @@ -200,16 +200,16 @@ goal_difficulty = FOOD_GOAL_EASY // Firecracker Pizza -/obj/item/food/snacks/sliceable/pizza/firecrackerpizza +/obj/item/food/sliceable/pizza/firecrackerpizza name = "firecracker pizza" desc = "Tastes HOT HOT HOT!" icon_state = "firecrackerpizza" - slice_path = /obj/item/food/snacks/firecrackerpizzaslice + slice_path = /obj/item/food/firecrackerpizzaslice list_reagents = list("nutriment" = 30, "vitamin" = 5, "capsaicin" = 12) tastes = list("crust" = 1, "cheese" = 1, "HOTNESS" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/firecrackerpizzaslice +/obj/item/food/firecrackerpizzaslice name = "firecracker pizza slice" desc = "A spicy slice of something quite nice" icon = 'icons/obj/food/pizza.dmi' @@ -219,16 +219,16 @@ goal_difficulty = FOOD_GOAL_EASY // "Pesto" Pizza -/obj/item/food/snacks/sliceable/pizza/pestopizza +/obj/item/food/sliceable/pizza/pestopizza name = "\"pesto\" pizza" desc = "Wait a second...this doesn't taste like pesto!" icon_state = "pestopizza" - slice_path = /obj/item/food/snacks/pestopizzaslice + slice_path = /obj/item/food/pestopizzaslice list_reagents = list("nutriment" = 30, "tomatojuice" = 12, "vitamin" = 5, "wasabi" = 12) tastes = list("tomato" = 1, "cheese" = 1, "wasabi" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/pestopizzaslice +/obj/item/food/pestopizzaslice name = "\"pesto\" pizza slice" desc = "Delicious and suspicious(ly green)." icon = 'icons/obj/food/pizza.dmi' @@ -238,16 +238,16 @@ goal_difficulty = FOOD_GOAL_EASY // Garlic Pizza -/obj/item/food/snacks/sliceable/pizza/garlicpizza +/obj/item/food/sliceable/pizza/garlicpizza name = "garlic pizza" desc = "Ahh, garlic. A universally loved ingredient, except possibly by vampires." icon_state = "garlicpizza" - slice_path = /obj/item/food/snacks/garlicpizzaslice + slice_path = /obj/item/food/garlicpizzaslice list_reagents = list("plantmatter" = 30, "vitamin" = 5, "garlic" = 12) tastes = list("crust" = 1, "cheese" = 1, "garlic" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/garlicpizzaslice +/obj/item/food/garlicpizzaslice name = "garlic pizza slice" desc = "What's not to love?" icon = 'icons/obj/food/pizza.dmi' @@ -269,7 +269,7 @@ var/open = FALSE // Is the box open? var/is_messy = FALSE // Fancy mess on the lid - var/obj/item/food/snacks/sliceable/pizza/pizza // Content pizza + var/obj/item/food/sliceable/pizza/pizza // Content pizza var/list/boxes = list() // If the boxes are stacked, they come here var/box_tag = "" @@ -382,7 +382,7 @@ to_chat(user, "Close [box] first!") return - if(istype(I, /obj/item/food/snacks/sliceable/pizza)) // Long ass fucking object name + if(istype(I, /obj/item/food/sliceable/pizza)) // Long ass fucking object name if(open) user.drop_item() I.loc = src @@ -411,42 +411,42 @@ /obj/item/pizzabox/margherita/Initialize(mapload) - pizza = new /obj/item/food/snacks/sliceable/pizza/margheritapizza(src) + pizza = new /obj/item/food/sliceable/pizza/margheritapizza(src) box_tag = "margherita deluxe" . = ..() /obj/item/pizzabox/vegetable/Initialize(mapload) - pizza = new /obj/item/food/snacks/sliceable/pizza/vegetablepizza(src) + pizza = new /obj/item/food/sliceable/pizza/vegetablepizza(src) box_tag = "gourmet vegetable" . = ..() /obj/item/pizzabox/mushroom/Initialize(mapload) - pizza = new /obj/item/food/snacks/sliceable/pizza/mushroompizza(src) + pizza = new /obj/item/food/sliceable/pizza/mushroompizza(src) box_tag = "mushroom special" . = ..() /obj/item/pizzabox/meat/Initialize(mapload) - pizza = new /obj/item/food/snacks/sliceable/pizza/meatpizza(src) + pizza = new /obj/item/food/sliceable/pizza/meatpizza(src) box_tag = "meatlover's supreme" . = ..() /obj/item/pizzabox/hawaiian/Initialize(mapload) - pizza = new /obj/item/food/snacks/sliceable/pizza/hawaiianpizza(src) + pizza = new /obj/item/food/sliceable/pizza/hawaiianpizza(src) box_tag = "Hawaiian feast" . = ..() /obj/item/pizzabox/pepperoni/Initialize(mapload) - pizza = new /obj/item/food/snacks/sliceable/pizza/pepperonipizza(src) + pizza = new /obj/item/food/sliceable/pizza/pepperonipizza(src) box_tag = "classic pepperoni" . = ..() /obj/item/pizzabox/garlic/Initialize(mapload) - pizza = new /obj/item/food/snacks/sliceable/pizza/garlicpizza(src) + pizza = new /obj/item/food/sliceable/pizza/garlicpizza(src) box_tag = "triple garlic" . = ..() /obj/item/pizzabox/firecracker/Initialize(mapload) - pizza = new /obj/item/food/snacks/sliceable/pizza/firecrackerpizza(src) + pizza = new /obj/item/food/sliceable/pizza/firecrackerpizza(src) box_tag = "extra spicy pie" . = ..() @@ -550,7 +550,6 @@ return playsound(src, I.usesound, 50, TRUE, 1) user.visible_message("[user] cuts the [chosen_wire] wire!", "You cut the [chosen_wire] wire!") - sleep(5) if(chosen_wire == correct_wire) audible_message("[bicon(src)] [src] suddenly stops beeping and seems lifeless.") to_chat(user, "You did it!") diff --git a/code/modules/food_and_drinks/food/foods/sandwiches.dm b/code/modules/food_and_drinks/food/foods/sandwiches.dm index cefe18469afb..ea754baae0fe 100644 --- a/code/modules/food_and_drinks/food/foods/sandwiches.dm +++ b/code/modules/food_and_drinks/food/foods/sandwiches.dm @@ -5,13 +5,13 @@ // Abstract object used for inheritance. Should never spawn. Needed to not break recipes that use plain burgers; recipes that use "burger" would accept any burger and transfer reagents otherwise. -/obj/item/food/snacks/burger +/obj/item/food/burger name = "burger" desc = "If you got this, something broke! Contact a coder if this somehow spawns." icon = 'icons/obj/food/burgerbread.dmi' icon_state = "burger" -/obj/item/food/snacks/burger/plain +/obj/item/food/burger/plain name = "burger" desc = "The cornerstone of every nutritious breakfast." icon_state = "hburger" @@ -21,7 +21,7 @@ tastes = list("bun" = 4, "meat" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/burger/brain +/obj/item/food/burger/brain name = "brainburger" desc = "A strange looking burger. It appears almost sentient." icon_state = "brainburger" @@ -30,7 +30,7 @@ list_reagents = list("nutriment" = 6, "prions" = 10, "vitamin" = 1) tastes = list("bun" = 4, "brains" = 2) -/obj/item/food/snacks/burger/ghost +/obj/item/food/burger/ghost name = "ghost burger" desc = "Spooky! It doesn't look very filling." icon_state = "ghostburger" @@ -40,12 +40,12 @@ tastes = list("bun" = 4, "ectoplasm" = 2) goal_difficulty = FOOD_GOAL_EXCESSIVE -/obj/item/food/snacks/human +/obj/item/food/human var/hname = "" var/job = null filling_color = "#D63C3C" -/obj/item/food/snacks/human/burger +/obj/item/food/human/burger name = "-burger" desc = "A bloody burger." icon = 'icons/obj/food/burgerbread.dmi' @@ -54,7 +54,7 @@ list_reagents = list("nutriment" = 6, "vitamin" = 1) tastes = list("bun" = 4, "tender meat" = 2) -/obj/item/food/snacks/burger/cheese +/obj/item/food/burger/cheese name = "cheeseburger" desc = "The cheese adds a good flavor." icon_state = "cheeseburger" @@ -63,7 +63,7 @@ tastes = list("bun" = 4, "meat" = 1, "cheese" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/burger/tofu +/obj/item/food/burger/tofu name = "tofu burger" desc = "Making this should probably be a criminal offense." icon_state = "tofuburger" @@ -73,7 +73,7 @@ tastes = list("bun" = 4, "tofu" = 4) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/burger/hamborger +/obj/item/food/burger/hamborger name = "hamborger" desc = "Looking at this makes your flesh feel like a weakness." icon_state = "roburger" @@ -82,11 +82,11 @@ list_reagents = list("nutriment" = 6, "nanomachines" = 10, "vitamin" = 1) tastes = list("bun" = 4, "metal" = 2, "sludge" = 1) -/obj/item/food/snacks/burger/hamborger/Initialize(mapload) +/obj/item/food/burger/hamborger/Initialize(mapload) . = ..() message_admins("A [name] has been created at [ADMIN_COORDJMP(src)].") -/obj/item/food/snacks/burger/xeno +/obj/item/food/burger/xeno name = "xenoburger" desc = "Smells caustic and tastes like heresy." icon_state = "xburger" @@ -96,7 +96,7 @@ tastes = list("bun" = 4, "acid" = 4) goal_difficulty = FOOD_GOAL_EXCESSIVE -/obj/item/food/snacks/burger/clown +/obj/item/food/burger/clown name = "clown burger" desc = "This tastes funny..." icon_state = "clownburger" @@ -106,7 +106,7 @@ tastes = list("bun" = 4, "banana" = 1, "magic" = 2) goal_difficulty = FOOD_GOAL_EXCESSIVE -/obj/item/food/snacks/burger/mime +/obj/item/food/burger/mime name = "mime burger" desc = "Its taste defies language." icon_state = "mimeburger" @@ -116,7 +116,7 @@ tastes = list("bun" = 4, "silence" = 2) goal_difficulty = FOOD_GOAL_EXCESSIVE -/obj/item/food/snacks/burger/baseball +/obj/item/food/burger/baseball name = "home run baseball burger" desc = "It's still warm. Batter up!" icon_state = "baseball" @@ -126,7 +126,7 @@ tastes = list("bun" = 4, "a homerun" = 3) goal_difficulty = FOOD_GOAL_EXCESSIVE -/obj/item/food/snacks/burger/spell +/obj/item/food/burger/spell name = "spell burger" desc = "This is absolutely Ei Nath." icon_state = "spellburger" @@ -136,7 +136,7 @@ tastes = list("bun" = 4, "magic" = 2) goal_difficulty = FOOD_GOAL_EXCESSIVE -/obj/item/food/snacks/burger/bigbite +/obj/item/food/burger/bigbite name = "BigBite burger" desc = "Forget the Big Mac, THIS is the future!" icon_state = "bigbiteburger" @@ -146,7 +146,7 @@ tastes = list("bun" = 4, "meat" = 2, "cheese" = 2, "type two diabetes" = 10) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/burger/superbite +/obj/item/food/burger/superbite name = "SuperBite burger" desc = "This is a mountain of a burger. FOOD!" icon_state = "superbiteburger" @@ -156,7 +156,7 @@ tastes = list("bun" = 4, "meat" = 2, "cheese" = 2, "type two diabetes" = 10) goal_difficulty = FOOD_GOAL_HARD -/obj/item/food/snacks/burger/crazy +/obj/item/food/burger/crazy name = "crazy hamburger" desc = "This looks like the sort of food that a demented clown in a trenchcoat would make." icon_state = "crazyburger" @@ -166,7 +166,7 @@ tastes = list("bun" = 2, "meat" = 4, "cheese" = 2, "beef soaked in chili" = 3, "a smoking flare" = 2) goal_difficulty = FOOD_GOAL_EXCESSIVE -/obj/item/food/snacks/burger/ppatty/white +/obj/item/food/burger/ppatty/white name = "white pretty patty" desc = "Delicious titanium!" icon_state = "ppatty-mime" @@ -176,7 +176,7 @@ tastes = list("bun" = 2, "meat" = 2, "white" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/burger/ppatty/red +/obj/item/food/burger/ppatty/red name = "red pretty patty" desc = "Perfect for hiding the fact that it's burnt to a crisp." icon_state = "ppatty-red" @@ -186,7 +186,7 @@ tastes = list("bun" = 2, "meat" = 2, "red" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/burger/ppatty/orange +/obj/item/food/burger/ppatty/orange name = "orange pretty patty" desc = "Contains 0% juice." icon_state = "ppatty-orange" @@ -196,7 +196,7 @@ tastes = list("bun" = 2, "meat" = 2, "orange" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/burger/ppatty/yellow +/obj/item/food/burger/ppatty/yellow name = "yellow pretty patty" desc = "Bright to the last bite." icon_state = "ppatty-yellow" @@ -206,7 +206,7 @@ tastes = list("bun" = 2, "meat" = 2, "yellow" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/burger/ppatty/green +/obj/item/food/burger/ppatty/green name = "green pretty patty" desc = "It's not tainted meat, it's painted meat!" icon_state = "ppatty-green" @@ -216,7 +216,7 @@ tastes = list("bun" = 2, "meat" = 2, "green" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/burger/ppatty/blue +/obj/item/food/burger/ppatty/blue name = "blue pretty patty" desc = "Is this blue rare?" icon_state = "ppatty-blue" @@ -226,7 +226,7 @@ tastes = list("bun" = 2, "meat" = 2, "blue" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/burger/ppatty/purple +/obj/item/food/burger/ppatty/purple name = "purple pretty patty" desc = "Regal and low class at the same time." icon_state = "ppatty-purple" @@ -236,7 +236,7 @@ tastes = list("bun" = 2, "meat" = 2, "purple" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/burger/ppatty/rainbow +/obj/item/food/burger/ppatty/rainbow name = "rainbow pretty patty" desc = "Taste the rainbow, eat the rainbow." icon_state = "ppatty-rainbow" @@ -246,7 +246,7 @@ tastes = list("bun" = 2, "meat" = 2, "rainbow" = 5) goal_difficulty = FOOD_GOAL_HARD -/obj/item/food/snacks/burger/elec +/obj/item/food/burger/elec name = "empowered burger" desc = "It's shockingly good, if you live off of electricity that is." icon_state = "empoweredburger" @@ -256,7 +256,7 @@ tastes = list("bun" = 2, "pure electricity" = 5) goal_difficulty = FOOD_GOAL_HARD -/obj/item/food/snacks/burger/rat +/obj/item/food/burger/rat name = "mouse burger" desc = "Pretty much what you'd expect..." icon_state = "ratburger" @@ -265,7 +265,7 @@ list_reagents = list("nutriment" = 5, "protein" = 1) tastes = list("bun" = 2, "dead rat" = 5) -/obj/item/food/snacks/burger/appendix +/obj/item/food/burger/appendix name = "appendix burger" desc = "Tastes like appendicitis." icon_state = "appendixburger" @@ -274,7 +274,7 @@ list_reagents = list("nutriment" = 2, "protein" = 6, "vitamin" = 6) tastes = list("bun" = 1, "grass" = 1) -/obj/item/food/snacks/burger/bacon +/obj/item/food/burger/bacon name = "bacon burger" desc = "The perfect combination of all things American." icon_state = "baconburger" @@ -285,7 +285,7 @@ goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/burger/bearger +/obj/item/food/burger/bearger name = "bearger" desc = "Best served rawr." icon_state = "bearger" @@ -295,7 +295,7 @@ tastes = list("bun" = 1, "meat" = 1, "salmon" = 1) goal_difficulty = FOOD_GOAL_EXCESSIVE -/obj/item/food/snacks/burger/fivealarm +/obj/item/food/burger/fivealarm name = "five alarm burger" desc = "HOT! HOT!" icon_state = "fivealarmburger" @@ -305,7 +305,7 @@ tastes = list("bun" = 1, "extreme heat" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/burger/mcguffin +/obj/item/food/burger/mcguffin name = "mcGuffin" desc = "A cheap and greasy imitation of an eggs benedict." icon_state = "mcguffin" @@ -315,7 +315,7 @@ tastes = list("muffin" = 1, "bacon" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/burger/mcrib +/obj/item/food/burger/mcrib name = "mcRib" desc = "An elusive rib shaped burger with limited availablity across the galaxy. Not as good as you remember it." icon_state = "mcrib" @@ -325,7 +325,7 @@ tastes = list("bun" = 1, "pork" = 1, "patty" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/burger/chicken +/obj/item/food/burger/chicken name = "chicken burger" desc = "May I mayo?" icon_state = "chickenburger" @@ -333,7 +333,7 @@ list_reagents = list("nutriment" = 6, "vitamin" = 1) tastes = list("bun" = 4, "chicken" = 2) -/obj/item/food/snacks/burger/jelly +/obj/item/food/burger/jelly name = "jelly burger" desc = "Culinary delight...?" icon_state = "jellyburger" @@ -341,12 +341,12 @@ bitesize = 3 tastes = list("bun" = 4, "jelly" = 2) -/obj/item/food/snacks/burger/jelly/slime +/obj/item/food/burger/jelly/slime name = "slime burger" list_reagents = list("nutriment" = 6, "slimejelly" = 5, "vitamin" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/burger/jelly/cherry +/obj/item/food/burger/jelly/cherry list_reagents = list("nutriment" = 6, "cherryjelly" = 5, "vitamin" = 1) goal_difficulty = FOOD_GOAL_NORMAL @@ -355,7 +355,7 @@ // Sandwiches // ////////////////////// -/obj/item/food/snacks/sandwich +/obj/item/food/sandwich name = "sandwich" desc = "A grand creation of meat, cheese, bread, and several leaves of lettuce! Arthur Dent would be proud." icon = 'icons/obj/food/burgerbread.dmi' @@ -365,7 +365,7 @@ tastes = list("meat" = 2, "cheese" = 1, "bread" = 2, "lettuce" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/toastedsandwich +/obj/item/food/toastedsandwich name = "toasted sandwich" desc = "Now if you only had a pepper bar." icon = 'icons/obj/food/burgerbread.dmi' @@ -375,7 +375,7 @@ tastes = list("toast" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/grilledcheese +/obj/item/food/grilledcheese name = "grilled cheese sandwich" desc = "Goes great with tomato soup!" icon = 'icons/obj/food/burgerbread.dmi' @@ -385,7 +385,7 @@ tastes = list("toast" = 1, "grilled cheese" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/jellysandwich +/obj/item/food/jellysandwich name = "jelly sandwich" desc = "You wish you had some peanut butter to go with this..." icon = 'icons/obj/food/burgerbread.dmi' @@ -394,16 +394,16 @@ bitesize = 3 tastes = list("toast" = 1, "jelly" = 1) -/obj/item/food/snacks/jellysandwich/slime +/obj/item/food/jellysandwich/slime list_reagents = list("nutriment" = 2, "slimejelly" = 5, "vitamin" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/jellysandwich/cherry +/obj/item/food/jellysandwich/cherry name = "slime sandwich" list_reagents = list("nutriment" = 2, "cherryjelly" = 5, "vitamin" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/notasandwich +/obj/item/food/notasandwich name = "not-a-sandwich" desc = "Something seems to be wrong with this, you can't quite figure what. Maybe it's his moustache." icon = 'icons/obj/food/burgerbread.dmi' @@ -412,7 +412,7 @@ tastes = list("nothing suspicious" = 1) goal_difficulty = FOOD_GOAL_EXCESSIVE -/obj/item/food/snacks/wrap +/obj/item/food/wrap name = "egg wrap" desc = "The precursor to Pigs in a Blanket." icon = 'icons/obj/food/food.dmi' @@ -421,7 +421,7 @@ tastes = list("egg" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/blt +/obj/item/food/blt name = "\improper BLT" desc = "A classic bacon, lettuce, and tomato sandwich." icon = 'icons/obj/food/burgerbread.dmi' @@ -432,7 +432,7 @@ tastes = list("bacon" = 3, "lettuce" = 2, "tomato" = 2, "bread" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/peanut_butter_jelly +/obj/item/food/peanut_butter_jelly name = "peanut butter and jelly sandwich" desc = "A classic PB&J sandwich, just like your mom used to make." icon = 'icons/obj/food/burgerbread.dmi' @@ -441,17 +441,17 @@ bitesize = 2 tastes = list("peanut butter" = 3, "jelly" = 3, "bread" = 2) -/obj/item/food/snacks/peanut_butter_jelly/slime +/obj/item/food/peanut_butter_jelly/slime name = "peanut butter and slime sandwich" desc = "A classic PB&J sandwich, just like your mom used to make?" list_reagents = list("peanutbutter" = 2, "slimejelly" = 5, "nutriment" = 5, "protein" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/peanut_butter_jelly/cherry +/obj/item/food/peanut_butter_jelly/cherry list_reagents = list("peanutbutter" = 2, "cherryjelly" = 5, "nutriment" = 5, "protein" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/philly_cheesesteak +/obj/item/food/philly_cheesesteak name = "Philly cheesesteak" desc = "A popular sandwich made of sliced meat, onions, melted cheese in a long hoagie roll. Mouthwatering doesn't even begin to describe it." icon = 'icons/obj/food/burgerbread.dmi' @@ -462,7 +462,7 @@ tastes = list("steak" = 3, "melted cheese" = 3, "onions" = 2, "bread" = 2) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/peanut_butter_banana +/obj/item/food/peanut_butter_banana name = "peanut butter and banana sandwich" desc = "A peanut butter sandwich with banana slices mixed in, a good high protein treat." icon = 'icons/obj/food/burgerbread.dmi' diff --git a/code/modules/food_and_drinks/food/foods/seafood.dm b/code/modules/food_and_drinks/food/foods/seafood.dm index a4529b88ae06..175427f42d47 100644 --- a/code/modules/food_and_drinks/food/foods/seafood.dm +++ b/code/modules/food_and_drinks/food/foods/seafood.dm @@ -1,5 +1,5 @@ -/obj/item/food/snacks/carpmeat +/obj/item/food/carpmeat name = "carp fillet" desc = "A fillet of spess carp meat." icon = 'icons/obj/food/seafood.dmi' @@ -11,7 +11,7 @@ ingredient_name = "fillet of meat" ingredient_name_plural = "fillets of meat" -/obj/item/food/snacks/salmonmeat +/obj/item/food/salmonmeat name = "raw salmon" desc = "A fillet of raw salmon." icon = 'icons/obj/food/seafood.dmi' @@ -21,7 +21,7 @@ list_reagents = list("protein" = 3, "vitamin" = 2) tastes = list("raw salmon" = 1) -/obj/item/food/snacks/salmonsteak +/obj/item/food/salmonsteak name = "salmon steak" desc = "A fillet of freshly-grilled salmon meat." icon = 'icons/obj/food/seafood.dmi' @@ -32,7 +32,7 @@ list_reagents = list("nutriment" = 4, "vitamin" = 2) tastes = list("cooked salmon" = 1) -/obj/item/food/snacks/catfishmeat +/obj/item/food/catfishmeat name = "raw catfish" desc = "A fillet of raw catfish." icon = 'icons/obj/food/seafood.dmi' @@ -42,7 +42,7 @@ list_reagents = list("protein" = 3, "vitamin" = 2) tastes = list("catfish" = 1) -/obj/item/food/snacks/fishfingers +/obj/item/food/fishfingers name = "fish fingers" desc = "A finger of fish." icon = 'icons/obj/food/seafood.dmi' @@ -53,7 +53,7 @@ tastes = list("fish" = 1, "bread" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/fishburger +/obj/item/food/fishburger name = "Fillet-O-Carp sandwich" desc = "Almost like a carp is yelling somewhere... Give me back that fillet -o- carp, give me that carp." icon = 'icons/obj/food/seafood.dmi' @@ -64,7 +64,7 @@ tastes = list("bun" = 4, "fish" = 4) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/cubancarp +/obj/item/food/cubancarp name = "cuban carp" desc = "A grifftastic sandwich that burns your tongue and then leaves it numb!" icon = 'icons/obj/food/seafood.dmi' @@ -76,7 +76,7 @@ tastes = list("fish" = 4, "batter" = 1, "hot peppers" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/fishandchips +/obj/item/food/fishandchips name = "fish and chips" desc = "I do say so myself old chap. Indubitably!" icon = 'icons/obj/food/seafood.dmi' @@ -87,7 +87,7 @@ tastes = list("fish" = 1, "chips" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/sashimi +/obj/item/food/sashimi name = "carp sashimi" desc = "Celebrate surviving attack from hostile alien lifeforms by hospitalising yourself." icon = 'icons/obj/food/seafood.dmi' @@ -97,7 +97,7 @@ tastes = list("raw carp" = 1, "hot peppers" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/fried_shrimp +/obj/item/food/fried_shrimp name = "fried shrimp" desc = "Just one of the many things you can do with shrimp!" icon = 'icons/obj/food/seafood.dmi' @@ -107,7 +107,7 @@ tastes = list("shrimp" = 1, "bread crumbs" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/boiled_shrimp +/obj/item/food/boiled_shrimp name = "boiled shrimp" desc = "Just one of the many things you can do with shrimp!" icon = 'icons/obj/food/seafood.dmi' @@ -117,7 +117,7 @@ tastes = list("shrimp" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/shrimp_skewer +/obj/item/food/shrimp_skewer name = "shrimp skewer" desc = "Four shrimp lightly grilled on a skewer. Yummy!" trash = /obj/item/stack/rods @@ -128,7 +128,7 @@ tastes = list("shrimp" = 4) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/fish_skewer +/obj/item/food/fish_skewer name = "fish skewer" desc = "A whole fish battered and grilled on a skewer. Hope you're hungry!" trash = /obj/item/stack/rods @@ -139,19 +139,19 @@ tastes = list("shrimp" = 1, "batter" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/sliceable/Ebi_maki +/obj/item/food/sliceable/Ebi_maki name = "ebi maki roll" desc = "A large unsliced roll of Ebi Sushi." icon = 'icons/obj/food/seafood.dmi' icon_state = "Ebi_maki" - slice_path = /obj/item/food/snacks/sushi_Ebi + slice_path = /obj/item/food/sushi_Ebi slices_num = 4 bitesize = 3 list_reagents = list("nutriment" = 8) tastes = list("shrimp" = 1, "rice" = 1, "seaweed" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/sushi_Ebi +/obj/item/food/sushi_Ebi name = "ebi sushi" desc = "A simple sushi consisting of cooked shrimp and rice." icon = 'icons/obj/food/seafood.dmi' @@ -161,19 +161,19 @@ tastes = list("shrimp" = 1, "rice" = 1, "seaweed" = 1) goal_difficulty = FOOD_GOAL_EASY -/obj/item/food/snacks/sliceable/Ikura_maki +/obj/item/food/sliceable/Ikura_maki name = "ikura maki roll" desc = "A large unsliced roll of Ikura Sushi." icon = 'icons/obj/food/seafood.dmi' icon_state = "Ikura_maki" - slice_path = /obj/item/food/snacks/sushi_Ikura + slice_path = /obj/item/food/sushi_Ikura slices_num = 4 bitesize = 3 list_reagents = list("nutriment" = 8, "protein" = 4) tastes = list("salmon roe" = 1, "rice" = 1, "seaweed" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/sushi_Ikura +/obj/item/food/sushi_Ikura name = "ikura sushi" desc = "A simple sushi consisting of salmon roe." icon = 'icons/obj/food/seafood.dmi' @@ -183,19 +183,19 @@ tastes = list("salmon roe" = 1, "rice" = 1, "seaweed" = 1) goal_difficulty = FOOD_GOAL_EASY -/obj/item/food/snacks/sliceable/Sake_maki +/obj/item/food/sliceable/Sake_maki name = "sake maki roll" desc = "A large unsliced roll of Sake Sushi." icon = 'icons/obj/food/seafood.dmi' icon_state = "Sake_maki" - slice_path = /obj/item/food/snacks/sushi_Sake + slice_path = /obj/item/food/sushi_Sake slices_num = 4 bitesize = 3 list_reagents = list("nutriment" = 8) tastes = list("raw salmon" = 1, "rice" = 1, "seaweed" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/sushi_Sake +/obj/item/food/sushi_Sake name = "sake sushi" desc = "A simple sushi consisting of raw salmon and rice." icon = 'icons/obj/food/seafood.dmi' @@ -205,19 +205,19 @@ tastes = list("raw salmon" = 1, "rice" = 1, "seaweed" = 1) goal_difficulty = FOOD_GOAL_EASY -/obj/item/food/snacks/sliceable/SmokedSalmon_maki +/obj/item/food/sliceable/SmokedSalmon_maki name = "smoked salmon maki roll" desc = "A large unsliced roll of Smoked Salmon Sushi." icon = 'icons/obj/food/seafood.dmi' icon_state = "SmokedSalmon_maki" - slice_path = /obj/item/food/snacks/sushi_SmokedSalmon + slice_path = /obj/item/food/sushi_SmokedSalmon slices_num = 4 bitesize = 3 list_reagents = list("nutriment" = 8) tastes = list("smoked salmon" = 1, "rice" = 1, "seaweed" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/sushi_SmokedSalmon +/obj/item/food/sushi_SmokedSalmon name = "smoked salmon sushi" desc = "A simple sushi consisting of cooked salmon and rice." icon = 'icons/obj/food/seafood.dmi' @@ -227,19 +227,19 @@ tastes = list("smoked salmon" = 1, "rice" = 1, "seaweed" = 1) goal_difficulty = FOOD_GOAL_EASY -/obj/item/food/snacks/sliceable/Tamago_maki +/obj/item/food/sliceable/Tamago_maki name = "tamago maki roll" desc = "A large unsliced roll of Tamago Sushi." icon = 'icons/obj/food/seafood.dmi' icon_state = "Tamago_maki" - slice_path = /obj/item/food/snacks/sushi_Tamago + slice_path = /obj/item/food/sushi_Tamago slices_num = 4 bitesize = 3 list_reagents = list("nutriment" = 8) tastes = list("egg" = 1, "rice" = 1, "seaweed" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/sushi_Tamago +/obj/item/food/sushi_Tamago name = "tamago sushi" desc = "A simple sushi consisting of egg and rice." icon = 'icons/obj/food/seafood.dmi' @@ -249,19 +249,19 @@ tastes = list("egg" = 1, "rice" = 1, "seaweed" = 1) goal_difficulty = FOOD_GOAL_EASY -/obj/item/food/snacks/sliceable/Inari_maki +/obj/item/food/sliceable/Inari_maki name = "inari maki roll" desc = "A large unsliced roll of Inari Sushi." icon = 'icons/obj/food/seafood.dmi' icon_state = "Inari_maki" - slice_path = /obj/item/food/snacks/sushi_Inari + slice_path = /obj/item/food/sushi_Inari slices_num = 4 bitesize = 3 list_reagents = list("nutriment" = 8) tastes = list("fried tofu" = 1, "rice" = 1, "seaweed" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/sushi_Inari +/obj/item/food/sushi_Inari name = "inari sushi" desc = "A piece of fried tofu stuffed with rice." icon = 'icons/obj/food/seafood.dmi' @@ -271,19 +271,19 @@ tastes = list("fried tofu" = 1, "rice" = 1, "seaweed" = 1) goal_difficulty = FOOD_GOAL_EASY -/obj/item/food/snacks/sliceable/Masago_maki +/obj/item/food/sliceable/Masago_maki name = "masago maki roll" desc = "A large unsliced roll of Masago Sushi." icon = 'icons/obj/food/seafood.dmi' icon_state = "Masago_maki" - slice_path = /obj/item/food/snacks/sushi_Masago + slice_path = /obj/item/food/sushi_Masago slices_num = 4 bitesize = 3 list_reagents = list("nutriment" = 8, "protein" = 4) tastes = list("goldfish roe" = 1, "rice" = 1, "seaweed" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/sushi_Masago +/obj/item/food/sushi_Masago name = "masago sushi" desc = "A simple sushi consisting of goldfish roe." icon = 'icons/obj/food/seafood.dmi' @@ -293,19 +293,19 @@ tastes = list("goldfish roe" = 1, "rice" = 1, "seaweed" = 1) goal_difficulty = FOOD_GOAL_EASY -/obj/item/food/snacks/sliceable/Tobiko_maki +/obj/item/food/sliceable/Tobiko_maki name = "tobiko maki roll" desc = "A large unsliced roll of Tobkio Sushi." icon = 'icons/obj/food/seafood.dmi' icon_state = "Tobiko_maki" - slice_path = /obj/item/food/snacks/sushi_Tobiko + slice_path = /obj/item/food/sushi_Tobiko slices_num = 4 bitesize = 3 list_reagents = list("nutriment" = 8, "protein" = 4) tastes = list("shark roe" = 1, "rice" = 1, "seaweed" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/sushi_Tobiko +/obj/item/food/sushi_Tobiko name = "tobiko sushi" desc = "A simple sushi consisting of shark roe." icon = 'icons/obj/food/seafood.dmi' @@ -315,19 +315,19 @@ tastes = list("shark roe" = 1, "rice" = 1, "seaweed" = 1) goal_difficulty = FOOD_GOAL_EASY -/obj/item/food/snacks/sliceable/TobikoEgg_maki +/obj/item/food/sliceable/TobikoEgg_maki name = "tobiko and egg maki roll" desc = "A large unsliced roll of Tobkio and Egg Sushi." icon = 'icons/obj/food/seafood.dmi' icon_state = "TobikoEgg_maki" - slice_path = /obj/item/food/snacks/sushi_TobikoEgg + slice_path = /obj/item/food/sushi_TobikoEgg slices_num = 4 bitesize = 3 list_reagents = list("nutriment" = 8, "protein" = 4) tastes = list("shark roe" = 1, "rice" = 1, "egg" = 1, "seaweed" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/sushi_TobikoEgg +/obj/item/food/sushi_TobikoEgg name = "tobiko and egg sushi" desc = "A sushi consisting of shark roe and an egg." icon = 'icons/obj/food/seafood.dmi' @@ -337,19 +337,19 @@ tastes = list("shark roe" = 1, "rice" = 1, "egg" = 1, "seaweed" = 1) goal_difficulty = FOOD_GOAL_EASY -/obj/item/food/snacks/sliceable/Tai_maki +/obj/item/food/sliceable/Tai_maki name = "tai maki roll" desc = "A large unsliced roll of Tai Sushi." icon = 'icons/obj/food/seafood.dmi' icon_state = "Tai_maki" - slice_path = /obj/item/food/snacks/sushi_Tai + slice_path = /obj/item/food/sushi_Tai slices_num = 4 bitesize = 3 list_reagents = list("nutriment" = 8) tastes = list("catfish" = 1, "rice" = 1, "seaweed" = 1) goal_difficulty = FOOD_GOAL_DUPLICATE -/obj/item/food/snacks/sushi_Tai +/obj/item/food/sushi_Tai name = "tai sushi" desc = "A simple sushi consisting of catfish and rice." icon = 'icons/obj/food/seafood.dmi' @@ -359,7 +359,7 @@ tastes = list("catfish" = 1, "rice" = 1, "seaweed" = 1) goal_difficulty = FOOD_GOAL_EASY -/obj/item/food/snacks/sushi_Unagi +/obj/item/food/sushi_Unagi name = "unagi sushi" desc = "A simple sushi consisting of eel and rice." icon = 'icons/obj/food/seafood.dmi' diff --git a/code/modules/food_and_drinks/food/foods/side_dishes.dm b/code/modules/food_and_drinks/food/foods/side_dishes.dm index 2048c12740e8..eedcbc833495 100644 --- a/code/modules/food_and_drinks/food/foods/side_dishes.dm +++ b/code/modules/food_and_drinks/food/foods/side_dishes.dm @@ -3,7 +3,7 @@ // Raw // ////////////////////// -/obj/item/food/snacks/rawsticks +/obj/item/food/rawsticks name = "raw potato sticks" desc = "Raw fries, not very tasty." icon = 'icons/obj/food/food_ingredients.dmi' @@ -16,7 +16,7 @@ // Fried // ////////////////////// -/obj/item/food/snacks/fries +/obj/item/food/fries name = "space fries" desc = "AKA: French Fries, Freedom Fries, etc." icon_state = "fries" @@ -26,7 +26,7 @@ tastes = list("fries" = 3, "salt" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/cheesyfries +/obj/item/food/cheesyfries name = "cheesy fries" desc = "Fries. Covered in cheese. Duh." icon_state = "cheesyfries" @@ -36,7 +36,7 @@ tastes = list("fries" = 3, "cheese" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/tatortot +/obj/item/food/tatortot name = "tator tot" desc = "A large fried potato nugget that may or may not try to valid you." icon_state = "tatortot" @@ -45,7 +45,7 @@ tastes = list("fried potato" = 3, "valids" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/onionrings +/obj/item/food/onionrings name = "onion rings" desc = "Onion slices coated in batter." icon_state = "onionrings" @@ -55,7 +55,7 @@ tastes = list("onion" = 3, "batter" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/carrotfries +/obj/item/food/carrotfries name = "carrot fries" desc = "Tasty fries from fresh carrots." icon_state = "carrotfries" @@ -70,7 +70,7 @@ // Misc // ////////////////////// -/obj/item/food/snacks/beans +/obj/item/food/beans name = "tin of beans" desc = "Musical fruit in a slightly less musical container." icon_state = "beans" @@ -79,7 +79,7 @@ goal_difficulty = FOOD_GOAL_NORMAL /// mashed taters -/obj/item/food/snacks/mashed_potatoes +/obj/item/food/mashed_potatoes name = "mashed potatoes" desc = "Some soft, creamy, and irresistible mashed potatoes." icon_state = "mashedtaters" @@ -89,7 +89,7 @@ tastes = list("mashed potato" = 3, "gravy" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/stuffing +/obj/item/food/stuffing name = "stuffing" desc = "Moist, peppery breadcrumbs for filling the body cavities of dead birds. Dig in!" icon_state = "stuffing" @@ -98,7 +98,7 @@ tastes = list("bread crumbs" = 1, "herbs" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/loadedbakedpotato +/obj/item/food/loadedbakedpotato name = "loaded baked potato" desc = "Totally baked." icon_state = "loadedbakedpotato" @@ -107,7 +107,7 @@ tastes = list("potato" = 1, "cheese" = 1, "herbs" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/boiledrice +/obj/item/food/boiledrice name = "boiled rice" desc = "A boring dish of boring rice." icon_state = "boiledrice" @@ -117,18 +117,18 @@ tastes = list("rice" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/boiledrice/attackby(obj/item/I, mob/user, params) +/obj/item/food/boiledrice/attackby(obj/item/I, mob/user, params) if(!istype(I, /obj/item/stack/seaweed)) return ..() var/obj/item/stack/seaweed/S = I if(!S.use(1)) return ..() - var/obj/item/food/snacks/onigiri/O = new(get_turf(user)) + var/obj/item/food/onigiri/O = new(get_turf(user)) reagents.trans_to(O, reagents.total_volume) qdel(src) user.put_in_active_hand(O) -/obj/item/food/snacks/roastparsnip +/obj/item/food/roastparsnip name = "roast parsnip" desc = "Sweet and crunchy." icon_state = "roastparsnip" @@ -138,7 +138,7 @@ tastes = list("parsnip" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/onigiri +/obj/item/food/onigiri name = "onigiri" desc = "Rice and seaweed." icon_state = "onigiri" diff --git a/code/modules/food_and_drinks/food/foods/soups.dm b/code/modules/food_and_drinks/food/foods/soups.dm index e7b4db67565e..6da52d5685bc 100644 --- a/code/modules/food_and_drinks/food/foods/soups.dm +++ b/code/modules/food_and_drinks/food/foods/soups.dm @@ -4,7 +4,7 @@ ////////////////////// // Base object for soups, should never appear ingame. -/obj/item/food/snacks/soup +/obj/item/food/soup name = "impossible soup" desc = "This soup is so good, it shouldn't even exist!" icon = 'icons/obj/food/soupsalad.dmi' @@ -13,7 +13,7 @@ trash = /obj/item/trash/snack_bowl bitesize = 5 -/obj/item/food/snacks/soup/meatballsoup +/obj/item/food/soup/meatballsoup name = "meatball soup" desc = "You've got balls kid, BALLS!" icon_state = "meatballsoup" @@ -22,7 +22,7 @@ tastes = list("meatball" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soup/slimesoup +/obj/item/food/soup/slimesoup name = "slime soup" desc = "If no water is available, you may substitute tears." icon_state = "slimesoup" @@ -31,7 +31,7 @@ tastes = list("slime" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soup/bloodsoup +/obj/item/food/soup/bloodsoup name = "tomato soup" desc = "Smells like copper." icon_state = "tomatosoup" @@ -40,7 +40,7 @@ tastes = list("iron" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soup/clownstears +/obj/item/food/soup/clownstears name = "clown's tears" desc = "Not very funny." icon_state = "clownstears" @@ -49,7 +49,7 @@ tastes = list("a bad joke" = 1) goal_difficulty = FOOD_GOAL_EXCESSIVE -/obj/item/food/snacks/soup/vegetablesoup +/obj/item/food/soup/vegetablesoup name = "vegetable soup" desc = "A true vegan meal." //TODO icon_state = "vegetablesoup" @@ -58,7 +58,7 @@ tastes = list("vegetables" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soup/nettlesoup +/obj/item/food/soup/nettlesoup name = "nettle soup" desc = "To think, the botanist would've beaten you to death with one of these." icon_state = "nettlesoup" @@ -67,7 +67,7 @@ tastes = list("nettles" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soup/mysterysoup +/obj/item/food/soup/mysterysoup name = "mystery soup" desc = "The mystery is, why aren't you eating it?" icon_state = "mysterysoup" @@ -76,12 +76,12 @@ tastes = list("chaos" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soup/mysterysoup/Initialize(mapload) +/obj/item/food/soup/mysterysoup/Initialize(mapload) . = ..() extra_reagent = pick("capsaicin", "frostoil", "omnizine", "banana", "blood", "slimejelly", "toxin", "banana", "carbon", "oculine") reagents.add_reagent("[extra_reagent]", 5) -/obj/item/food/snacks/soup/wishsoup +/obj/item/food/soup/wishsoup name = "wish soup" desc = "I wish this was soup." icon_state = "wishsoup" @@ -89,14 +89,14 @@ list_reagents = list("water" = 10) tastes = list("wishes" = 1) -/obj/item/food/snacks/soup/wishsoup/Initialize(mapload) +/obj/item/food/soup/wishsoup/Initialize(mapload) . = ..() if(prob(25)) desc = "A wish come true!" // hue reagents.add_reagent("nutriment", 9) reagents.add_reagent("vitamin", 1) -/obj/item/food/snacks/soup/tomatosoup +/obj/item/food/soup/tomatosoup name = "tomato soup" desc = "Drinking this feels like being a vampire! A tomato vampire..." icon_state = "tomatosoup" @@ -105,7 +105,7 @@ tastes = list("tomato" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soup/misosoup +/obj/item/food/soup/misosoup name = "miso soup" desc = "The universe's best soup! Yum!!!" icon_state = "misosoup" @@ -113,7 +113,7 @@ tastes = list("miso" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soup/mushroomsoup +/obj/item/food/soup/mushroomsoup name = "chantrelle soup" desc = "A delicious and hearty mushroom soup." icon_state = "mushroomsoup" @@ -122,7 +122,7 @@ tastes = list("mushroom" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soup/beetsoup +/obj/item/food/soup/beetsoup name = "beet soup" desc = "Wait, how do you spell it again..?" icon_state = "beetsoup" @@ -131,11 +131,11 @@ tastes = list("beet" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soup/beetsoup/Initialize(mapload) +/obj/item/food/soup/beetsoup/Initialize(mapload) . = ..() name = pick("borsch", "bortsch", "borstch", "borsh", "borshch", "borscht") -/obj/item/food/snacks/soup/eyesoup +/obj/item/food/soup/eyesoup name = "eyeball soup" desc = "It looks back at you..." icon_state = "eyeballsoup" @@ -144,7 +144,7 @@ tastes = list("squirming" = 2, "tomato" = 2) goal_difficulty = FOOD_GOAL_HARD -/obj/item/food/snacks/soup/sweetpotatosoup +/obj/item/food/soup/sweetpotatosoup name = "sweet potato soup" desc = "Delicious sweet potato in soup form." icon_state = "sweetpotatosoup" @@ -152,7 +152,7 @@ tastes = list("sweet potato" = 1) goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soup/redbeetsoup +/obj/item/food/soup/redbeetsoup name = "red beet soup" desc = "Quite a delicacy." icon_state = "redbeetsoup" @@ -161,7 +161,7 @@ goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soup/frenchonionsoup +/obj/item/food/soup/frenchonionsoup name = "french onion soup" desc = "Good enough to make a grown mime cry." icon_state = "onionsoup" @@ -170,7 +170,7 @@ goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soup/zurek +/obj/item/food/soup/zurek name = "zurek" desc = "A traditional Polish soup composed of vegetables, meat, and an egg. Goes great with bread." icon_state = "zurek" @@ -179,7 +179,7 @@ goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soup/cullenskink +/obj/item/food/soup/cullenskink name = "cullen skink" desc = "A thick Scottish soup made of smoked fish, potatoes and onions." icon_state = "cullen_skink" @@ -188,7 +188,7 @@ goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soup/chicken_noodle_soup +/obj/item/food/soup/chicken_noodle_soup name = "chicken noodle soup" desc = "A hearty bowl of chicken noodle soup, perfect for when you're stuck at home and sick." icon_state = "chicken_noodle_soup" @@ -197,7 +197,7 @@ goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soup/cornchowder +/obj/item/food/soup/cornchowder name = "corn chowder" desc = "A creamy bowl of corn chowder, with bacon bits and mixed vegetables. One bowl is never enough." icon_state = "corn_chowder" @@ -206,7 +206,7 @@ goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soup/meatball_noodles +/obj/item/food/soup/meatball_noodles name = "meatball noodle soup" desc = "A hearty noodle soup made from meatballs and pasta in a rich broth. Commonly topped with a handful of chopped nuts." icon_state = "meatball_noodles" @@ -215,7 +215,7 @@ goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soup/seedsoup +/obj/item/food/soup/seedsoup name = "Misklmæsch" //miskl = seed, mæsch = soup desc = "A seed based soup, made by germinating seeds and then boiling them. \ Produces a particularly bitter broth which is usually balanced by the addition of vinegar." @@ -229,7 +229,7 @@ // Stews // ////////////////////// -/obj/item/food/snacks/soup/stew +/obj/item/food/soup/stew name = "stew" desc = "A nice and warm stew. Healthy and strong." icon_state = "stew" @@ -240,7 +240,7 @@ goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/stewedsoymeat +/obj/item/food/stewedsoymeat name = "stewed soy meat" desc = "Even non-vegetarians will LOVE this!" icon = 'icons/obj/food/soupsalad.dmi' @@ -251,7 +251,7 @@ goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soup/beanstew +/obj/item/food/soup/beanstew name = "Prickeldröndolhaskl" //prickeld = spicy, röndol = bean, haskl = stew desc = "A spicy bean stew with lots of veggies, commonly served aboard the fleet as a filling and satisfying meal with rice or bread." icon_state = "moth_bean_stew" @@ -260,7 +260,7 @@ goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soup/oatstew +/obj/item/food/soup/oatstew name = "Häfmisklhaskl" //häfmiskl = oat (häf from German hafer meaning oat, miskl meaning seed), haskl = stew desc = "A spicy bean stew with lots of veggies, commonly served aboard the fleet as a filling and satisfying meal with rice or bread." icon_state = "moth_oat_stew" @@ -269,7 +269,7 @@ goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soup/hong_kong_borscht +/obj/item/food/soup/hong_kong_borscht name = "hong kong borscht" desc = "Also known as luo song tang or Russian soup, this dish bears little to no resemblance to Eastern European borscht- indeed, it's a tomato-based soup with no beets in sight." icon_state = "hong_kong_borscht" @@ -278,7 +278,7 @@ goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soup/hong_kong_macaroni +/obj/item/food/soup/hong_kong_macaroni name = "hong kong macaroni" desc = "A favourite from Hong Kong's Cha Chaan Tengs, this macaroni soup came to Mars with Cantonese settlers under Cybersun Industries, and has become as much of a breakfast staple there as it is in its homeland." icon_state = "hong_kong_macaroni" @@ -291,7 +291,7 @@ // Chili // ////////////////////// -/obj/item/food/snacks/soup/hotchili +/obj/item/food/soup/hotchili name = "hot chili" desc = "A five alarm Texan Chili!" icon_state = "hotchili" @@ -301,7 +301,7 @@ goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soup/coldchili +/obj/item/food/soup/coldchili name = "cold chili" desc = "This slush is barely a liquid!" icon_state = "coldchili" @@ -311,7 +311,7 @@ goal_difficulty = FOOD_GOAL_NORMAL -/obj/item/food/snacks/soup/clownchili +/obj/item/food/soup/clownchili name = "chili con carnival" desc = "A delicious stew of meat, chiles, and salty, salty clown tears." icon_state = "clownchili" diff --git a/code/modules/food_and_drinks/food/snacks.dm b/code/modules/food_and_drinks/food/snacks.dm deleted file mode 100644 index c79f57df3452..000000000000 --- a/code/modules/food_and_drinks/food/snacks.dm +++ /dev/null @@ -1,300 +0,0 @@ -#define MAX_WEIGHT_CLASS WEIGHT_CLASS_SMALL -//Food items that are eaten normally and don't leave anything behind. -/obj/item/food/snacks - name = "snack" - desc = "yummy" - icon = 'icons/obj/food/food.dmi' - icon_state = null - var/bitecount = 0 - var/trash = null - var/slice_path - var/slices_num - var/dried_type = null - var/dry = FALSE - var/cooktype[0] - var/cooked_type = null //for microwave cooking. path of the resulting item after microwaving - var/total_w_class = 0 //for the total weight an item of food can carry - var/list/tastes // for example list("crisps" = 2, "salt" = 1) - -/obj/item/food/snacks/add_initial_reagents() - if(tastes && length(tastes)) - if(list_reagents) - for(var/rid in list_reagents) - var/amount = list_reagents[rid] - if(rid == "nutriment" || rid == "vitamin" || rid == "protein" || rid == "plantmatter") - reagents.add_reagent(rid, amount, tastes.Copy()) - else - reagents.add_reagent(rid, amount) - else - ..() - -//Placeholder for effect that trigger on eating that aren't tied to reagents. -/obj/item/food/snacks/proc/On_Consume(mob/M, mob/user) - if(!user) - return - if(!reagents.total_volume) - if(M == user) - to_chat(user, "You finish eating [src].") - user.visible_message("[M] finishes eating [src].") - user.unEquip(src) //so icons update :[ - Post_Consume(M) - var/obj/item/trash_item = generate_trash(usr) - usr.put_in_hands(trash_item) - qdel(src) - return - -/obj/item/food/snacks/proc/Post_Consume(mob/living/M) - return - -/obj/item/food/snacks/attack_self(mob/user) - return - -/obj/item/food/snacks/attack(mob/M, mob/user, def_zone) - if(user.a_intent == INTENT_HARM && force) - return ..() - if(reagents && !reagents.total_volume) //Shouldn't be needed but it checks to see if it has anything left in it. - to_chat(user, "None of [src] left, oh no!") - M.unEquip(src) //so icons update :[ - qdel(src) - return FALSE - - if(iscarbon(M)) - var/mob/living/carbon/C = M - if(C.eat(src, user)) - bitecount++ - On_Consume(C, user) - return TRUE - return FALSE - -/obj/item/food/snacks/afterattack(obj/target, mob/user, proximity) - return - -/obj/item/food/snacks/examine(mob/user) - . = ..() - if(in_range(user, src)) - if(bitecount > 0) - if(bitecount==1) - . += "[src] was bitten by someone!" - else if(bitecount<=3) - . += "[src] was bitten [bitecount] times!" - else - . += "[src] was bitten multiple times!" - - -/obj/item/food/snacks/attackby(obj/item/W, mob/user, params) - if(is_pen(W)) - rename_interactive(user, W, use_prefix = FALSE, prompt = "What would you like to name this dish?") - return - if(isstorage(W)) - ..() // -> item/attackby(, params) - - else if(istype(W,/obj/item/kitchen/utensil)) - - var/obj/item/kitchen/utensil/U = W - - if(length(U.contents) >= U.max_contents) - to_chat(user, "You cannot fit anything else on your [U].") - return - - user.visible_message( \ - "[user] scoops up some [src] with \the [U]!", \ - "You scoop up some [src] with \the [U]!" \ - ) - - bitecount++ - U.overlays.Cut() - var/image/I = new(U.icon, "loadedfood") - I.color = filling_color - U.overlays += I - - var/obj/item/food/snacks/collected = new type - collected.name = name - collected.loc = U - collected.reagents.remove_any(collected.reagents.total_volume) - collected.trash = null - if(reagents.total_volume > bitesize) - reagents.trans_to(collected, bitesize) - else - reagents.trans_to(collected, reagents.total_volume) - if(trash) - var/obj/item/TrashItem - if(ispath(trash,/obj/item)) - TrashItem = new trash(src) - else if(isitem(trash)) - TrashItem = trash - TrashItem.forceMove(loc) - qdel(src) - return TRUE - else - return ..() - -/obj/item/food/snacks/proc/generate_trash(atom/location) - if(trash) - if(ispath(trash, /obj/item)) - . = new trash(location) - trash = null - return - else if(isitem(trash)) - var/obj/item/trash_item = trash - trash_item.forceMove(location) - . = trash - trash = null - return - -/obj/item/food/snacks/Destroy() - if(contents) - for(var/atom/movable/something in contents) - something.loc = get_turf(src) - return ..() - -/obj/item/food/snacks/attack_animal(mob/M) - if(isanimal(M)) - M.changeNext_move(CLICK_CD_MELEE) - if(isdog(M)) - var/mob/living/simple_animal/pet/dog/D = M - if(world.time < (D.last_eaten + 300)) - to_chat(D, "You are too full to try eating [src] right now.") - else if(bitecount >= 4) - D.visible_message("[D] [pick("burps from enjoyment", "yaps for more", "woofs twice", "looks at the area where [src] was")].","You swallow up the last part of [src].") - playsound(loc,'sound/items/eatfood.ogg', rand(10,50), 1) - D.adjustHealth(-10) - D.last_eaten = world.time - D.taste(reagents) - qdel(src) - else - D.visible_message("[D] takes a bite of [src].","You take a bite of [src].") - playsound(loc,'sound/items/eatfood.ogg', rand(10,50), 1) - bitecount++ - D.last_eaten = world.time - D.taste(reagents) - else if(ismouse(M)) - var/mob/living/simple_animal/mouse/N = M - to_chat(N, "You nibble away at [src].") - if(prob(50)) - N.visible_message("[N] nibbles away at [src].", "") - N.adjustHealth(-2) - N.taste(reagents) - else if(iscaterpillar(M)) - var/mob/living/simple_animal/nian_caterpillar/W = M - W.taste(reagents) - W.consume(src) - -/obj/item/food/snacks/sliceable/examine(mob/user) - . = ..() - . += "Alt-click to put something small inside." - -/obj/item/food/snacks/sliceable/AltClick(mob/user) - if(!Adjacent(user)) - return - var/obj/item/I = user.get_active_hand() - if(!I) - return - if(I.w_class > WEIGHT_CLASS_SMALL) - to_chat(user, "You cannot fit [I] in [src]!") - return - var/newweight = GetTotalContentsWeight() + I.GetTotalContentsWeight() + I.w_class - if(newweight > MAX_WEIGHT_CLASS) - // Nope, no bluespace slice food - to_chat(user, "You cannot fit [I] in [src]!") - return - if(!iscarbon(user)) - return - if(!user.drop_item()) - to_chat(user, "You cannot slip [I] inside [src]!") - return - to_chat(user, "You slip [I] inside [src].") - total_w_class += I.w_class - add_fingerprint(user) - I.forceMove(src) - -/obj/item/food/snacks/sliceable/attackby(obj/item/I, mob/user, params) - if((slices_num <= 0 || !slices_num) || !slice_path) - return FALSE - - var/inaccurate = TRUE - if(I.sharp) - if(istype(I, /obj/item/kitchen/knife) || istype(I, /obj/item/scalpel)) - inaccurate = FALSE - else - return TRUE - if(!isturf(loc) || !(locate(/obj/structure/table) in loc) && \ - !(locate(/obj/machinery/optable) in loc) && !(locate(/obj/item/storage/bag/tray) in loc)) - to_chat(user, "You cannot slice [src] here! You need a table or at least a tray to do it.") - return TRUE - var/slices_lost = 0 - if(!inaccurate) - user.visible_message("[user] slices [src]!", - "You slice [src]!") - else - user.visible_message("[user] crudely slices [src] with [I]!", - "You crudely slice [src] with your [I]!") - slices_lost = rand(1,min(1,round(slices_num/2))) - var/reagents_per_slice = reagents.total_volume/slices_num - for(var/i=1 to (slices_num-slices_lost)) - var/obj/slice = new slice_path (loc) - reagents.trans_to(slice,reagents_per_slice) - slice.pixel_x = rand(-7, 7) - slice.pixel_y = rand(-7, 7) - qdel(src) - return ..() -//////////////////////////////////////////////////////////////////////////////// -/// FOOD END -//////////////////////////////////////////////////////////////////////////////// - - - - - - - - - - - -////////////////////////////////////////////////// -////////////////////////////////////////////Snacks -////////////////////////////////////////////////// -//Items in the "Snacks" subcategory are food items that people actually eat. The key points are that they are created -// already filled with reagents and are destroyed when empty. Additionally, they make a "munching" noise when eaten. - -//Notes by Darem: Food in the "snacks" subtype can hold a maximum of 50 units Generally speaking, you don't want to go over 40 -// total for the item because you want to leave space for extra condiments. If you want effect besides healing, add a reagent for -// it. Try to stick to existing reagents when possible (so if you want a stronger healing effect, just use Tricordrazine). On use -// effect (such as the old officer eating a donut code) requires a unique reagent (unless you can figure out a better way). - -//The nutriment reagent and bitesize variable replace the old heal_amt and amount variables. Each unit of nutriment is equal to -// 2 of the old heal_amt variable. Bitesize is the rate at which the reagents are consumed. So if you have 6 nutriment and a -// bitesize of 2, then it'll take 3 bites to eat. Unlike the old system, the contained reagents are evenly spread among all -// the bites. No more contained reagents = no more bites. - -/obj/item/food/snacks/badrecipe - name = "burned mess" - desc = "Someone should be demoted from chef for this." - icon_state = "badrecipe" - filling_color = "#211F02" - list_reagents = list("????" = 30) - -/obj/item/food/snacks/badrecipe/Initialize(mapload) - . = ..() - // it's burned! it should start off being classed as any cooktype that burns - cooktype["grilled"] = TRUE - cooktype["deep fried"] = TRUE - -// MISC - -/obj/item/food/snacks/cereal - name = "box of cereal" - desc = "A box of cereal." - icon = 'icons/obj/food/food.dmi' - icon_state = "cereal_box" - list_reagents = list("nutriment" = 3) - -/obj/item/food/snacks/deepfryholder - name = "Deep Fried Foods Holder Obj" - desc = "If you can see this description the code for the deep fryer fucked up." - icon = 'icons/obj/food/food.dmi' - icon_state = "deepfried_holder_icon" - list_reagents = list("nutriment" = 3) - - -#undef MAX_WEIGHT_CLASS diff --git a/code/modules/food_and_drinks/food_base.dm b/code/modules/food_and_drinks/food_base.dm index 21c53fbad007..005b1f28a004 100644 --- a/code/modules/food_and_drinks/food_base.dm +++ b/code/modules/food_and_drinks/food_base.dm @@ -2,7 +2,13 @@ /// Food. //////////////////////////////////////////////////////////////////////////////// +#define MAX_WEIGHT_CLASS WEIGHT_CLASS_SMALL + /obj/item/food + name = "snack" + desc = "yummy" + icon = 'icons/obj/food/food.dmi' + icon_state = null resistance_flags = FLAMMABLE container_type = INJECTABLE w_class = WEIGHT_CLASS_TINY @@ -33,6 +39,17 @@ /// Affects the quantity of food that is requested by CC. var/goal_difficulty = FOOD_GOAL_SKIP + var/bitecount = 0 + var/trash = null + var/slice_path + var/slices_num + var/dried_type = null + var/dry = FALSE + var/cooktype[0] + var/cooked_type = null //for microwave cooking. path of the resulting item after microwaving + var/total_w_class = 0 //for the total weight an item of food can carry + var/list/tastes // for example list("crisps" = 2, "salt" = 1) + /obj/item/food/Initialize(mapload) . = ..() @@ -57,10 +74,21 @@ ant_location = null if(isprocessing) STOP_PROCESSING(SSobj, src) + if(contents) + for(var/atom/movable/something in contents) + something.forceMove(get_turf(src)) return ..() -/obj/item/food/proc/add_initial_reagents() // This literally is only a proc for junk food - if(list_reagents) +/obj/item/food/proc/add_initial_reagents() + if(tastes && length(tastes) && length(list_reagents)) + for(var/rid in list_reagents) + var/amount = list_reagents[rid] + if(rid == "nutriment" || rid == "vitamin" || rid == "protein" || rid == "plantmatter") + reagents.add_reagent(rid, amount, tastes.Copy()) + else + reagents.add_reagent(rid, amount) + + else if(length(list_reagents)) reagents.add_reagent_list(list_reagents) /obj/item/food/process() @@ -95,9 +123,245 @@ desc += " It appears to be infested with ants. Yuck!" reagents.add_reagent("ants", 1) // Don't eat things with ants in it you weirdo. +/obj/item/food/examine(mob/user) + . = ..() + if(in_range(user, src)) + if(bitecount > 0) + if(bitecount==1) + . += "[src] was bitten by someone!" + else if(bitecount<=3) + . += "[src] was bitten [bitecount] times!" + else + . += "[src] was bitten multiple times!" + /obj/item/food/ex_act() if(reagents) for(var/datum/reagent/R in reagents.reagent_list) R.on_ex_act() if(!QDELETED(src)) ..() + +//Placeholder for effect that trigger on eating that aren't tied to reagents. +/obj/item/food/proc/On_Consume(mob/M, mob/user) + if(!user) + return + if(!reagents.total_volume) + if(M == user) + to_chat(user, "You finish eating [src].") + user.visible_message("[M] finishes eating [src].") + user.unEquip(src) //so icons update :[ + Post_Consume(M) + var/obj/item/trash_item = generate_trash(user) + user.put_in_hands(trash_item) + qdel(src) + +/obj/item/food/proc/Post_Consume(mob/living/M) + return + +/obj/item/food/attack_self(mob/user) + return + +/obj/item/food/attack(mob/M, mob/user, def_zone) + if(user.a_intent == INTENT_HARM && force) + return ..() + if(reagents && !reagents.total_volume) // Shouldn't be needed but it checks to see if it has anything left in it. + to_chat(user, "None of [src] left, oh no!") + M.unEquip(src) //so icons update :[ + qdel(src) + return FALSE + + if(iscarbon(M)) + var/mob/living/carbon/C = M + if(C.eat(src, user)) + bitecount++ + On_Consume(C, user) + return TRUE + return FALSE + +/obj/item/food/afterattack(obj/target, mob/user, proximity) + return + +/obj/item/food/attackby(obj/item/W, mob/user, params) + if(is_pen(W)) + rename_interactive(user, W, use_prefix = FALSE, prompt = "What would you like to name this dish?") + return + if(isstorage(W)) + ..() // -> item/attackby(, params) + + else if(istype(W,/obj/item/kitchen/utensil)) + + var/obj/item/kitchen/utensil/U = W + + if(length(U.contents) >= U.max_contents) + to_chat(user, "You cannot fit anything else on your [U].") + return + + user.visible_message( \ + "[user] scoops up some [src] with \the [U]!", \ + "You scoop up some [src] with \the [U]!" \ + ) + + bitecount++ + U.overlays.Cut() + var/image/I = new(U.icon, "loadedfood") + I.color = filling_color + U.overlays += I + + var/obj/item/food/collected = new type + collected.name = name + collected.loc = U + collected.reagents.remove_any(collected.reagents.total_volume) + collected.trash = null + if(reagents.total_volume > bitesize) + reagents.trans_to(collected, bitesize) + else + reagents.trans_to(collected, reagents.total_volume) + if(trash) + var/obj/item/TrashItem + if(ispath(trash,/obj/item)) + TrashItem = new trash(src) + else if(isitem(trash)) + TrashItem = trash + TrashItem.forceMove(loc) + qdel(src) + return TRUE + else + return ..() + +/obj/item/food/proc/generate_trash(atom/location) + if(trash) + if(ispath(trash, /obj/item)) + . = new trash(location) + trash = null + return + else if(isitem(trash)) + var/obj/item/trash_item = trash + trash_item.forceMove(location) + . = trash + trash = null + return + +/obj/item/food/attack_animal(mob/M) + if(isanimal(M)) + M.changeNext_move(CLICK_CD_MELEE) + if(isdog(M)) + var/mob/living/simple_animal/pet/dog/D = M + if(world.time < (D.last_eaten + 300)) + to_chat(D, "You are too full to try eating [src] right now.") + else if(bitecount >= 4) + D.visible_message("[D] [pick("burps from enjoyment", "yaps for more", "woofs twice", "looks at the area where [src] was")].","You swallow up the last part of [src].") + playsound(loc,'sound/items/eatfood.ogg', rand(10,50), 1) + D.adjustHealth(-10) + D.last_eaten = world.time + D.taste(reagents) + qdel(src) + else + D.visible_message("[D] takes a bite of [src].","You take a bite of [src].") + playsound(loc,'sound/items/eatfood.ogg', rand(10,50), 1) + bitecount++ + D.last_eaten = world.time + D.taste(reagents) + else if(ismouse(M)) + var/mob/living/simple_animal/mouse/N = M + to_chat(N, "You nibble away at [src].") + if(prob(50)) + N.visible_message("[N] nibbles away at [src].", "") + N.adjustHealth(-2) + N.taste(reagents) + else if(iscaterpillar(M)) + var/mob/living/simple_animal/nian_caterpillar/W = M + W.taste(reagents) + W.consume(src) + +/obj/item/food/sliceable + slices_num = 2 + +/obj/item/food/sliceable/examine(mob/user) + . = ..() + . += "Alt-click to put something small inside." + +/obj/item/food/sliceable/AltClick(mob/user) + if(!Adjacent(user)) + return + var/obj/item/I = user.get_active_hand() + if(!I) + return + if(I.w_class > WEIGHT_CLASS_SMALL) + to_chat(user, "You cannot fit [I] in [src]!") + return + var/newweight = GetTotalContentsWeight() + I.GetTotalContentsWeight() + I.w_class + if(newweight > MAX_WEIGHT_CLASS) + // Nope, no bluespace slice food + to_chat(user, "You cannot fit [I] in [src]!") + return + if(!iscarbon(user)) + return + if(!user.drop_item()) + to_chat(user, "You cannot slip [I] inside [src]!") + return + to_chat(user, "You slip [I] inside [src].") + total_w_class += I.w_class + add_fingerprint(user) + I.forceMove(src) + +/obj/item/food/sliceable/attackby(obj/item/I, mob/user, params) + if((slices_num <= 0 || !slices_num) || !slice_path) + return FALSE + + var/inaccurate = TRUE + if(I.sharp) + if(istype(I, /obj/item/kitchen/knife) || istype(I, /obj/item/scalpel)) + inaccurate = FALSE + else + return TRUE + if(!isturf(loc) || !(locate(/obj/structure/table) in loc) && \ + !(locate(/obj/machinery/optable) in loc) && !(locate(/obj/item/storage/bag/tray) in loc)) + to_chat(user, "You cannot slice [src] here! You need a table or at least a tray to do it.") + return TRUE + var/slices_lost = 0 + if(!inaccurate) + user.visible_message("[user] slices [src]!", + "You slice [src]!") + else + user.visible_message("[user] crudely slices [src] with [I]!", + "You crudely slice [src] with your [I]!") + slices_lost = rand(1, min(1, round(slices_num / 2))) + var/reagents_per_slice = reagents.total_volume/slices_num + for(var/i in 1 to (slices_num - slices_lost)) + var/obj/slice = new slice_path (loc) + reagents.trans_to(slice,reagents_per_slice) + slice.pixel_x = rand(-7, 7) + slice.pixel_y = rand(-7, 7) + qdel(src) + return ..() + +/obj/item/food/badrecipe + name = "burned mess" + desc = "Someone should be demoted from chef for this." + icon_state = "badrecipe" + filling_color = "#211F02" + list_reagents = list("????" = 30) + +/obj/item/food/badrecipe/Initialize(mapload) + . = ..() + // it's burned! it should start off being classed as any cooktype that burns + cooktype["grilled"] = TRUE + cooktype["deep fried"] = TRUE + +// MISC + +/obj/item/food/cereal + name = "box of cereal" + desc = "A box of cereal." + icon = 'icons/obj/food/food.dmi' + icon_state = "cereal_box" + list_reagents = list("nutriment" = 3) + +/obj/item/food/deepfryholder + name = "Deep Fried Foods Holder Obj" + desc = "If you can see this description the code for the deep fryer fucked up." + icon = 'icons/obj/food/food.dmi' + icon_state = "deepfried_holder_icon" + list_reagents = list("nutriment" = 3) + +#undef MAX_WEIGHT_CLASS diff --git a/code/modules/food_and_drinks/kitchen_machinery/cereal_maker.dm b/code/modules/food_and_drinks/kitchen_machinery/cereal_maker.dm index a0d534809432..787dada32d05 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/cereal_maker.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/cereal_maker.dm @@ -19,6 +19,6 @@ setme.desc = "[name.desc] It has been [thiscooktype]" /obj/machinery/cooker/cerealmaker/gettype() - var/obj/item/food/snacks/cereal/type = new(get_turf(src)) + var/obj/item/food/cereal/type = new(get_turf(src)) return type diff --git a/code/modules/food_and_drinks/kitchen_machinery/cooker.dm b/code/modules/food_and_drinks/kitchen_machinery/cooker.dm index 6ea19108e8b8..08f662b9ad80 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/cooker.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/cooker.dm @@ -34,13 +34,13 @@ return ..() // checks if the snack has been cooked in a certain way -/obj/machinery/cooker/proc/checkCooked(obj/item/food/snacks/D) +/obj/machinery/cooker/proc/checkCooked(obj/item/food/D) if(D.cooktype[thiscooktype]) return 1 return 0 // Sets the new snack's cooktype list to the same as the old one - no more cooking something in the same machine more than once! -/obj/machinery/cooker/proc/setCooked(obj/item/food/snacks/oldtypes, obj/item/food/snacks/newtypes) +/obj/machinery/cooker/proc/setCooked(obj/item/food/oldtypes, obj/item/food/newtypes) var/ct for(ct in oldtypes.cooktype) newtypes.cooktype[ct] = oldtypes.cooktype[ct] @@ -115,7 +115,7 @@ return FALSE if(has_specials && checkSpecials(check)) return TRUE - if(istype(check, /obj/item/food/snacks) || emagged) + if(istype(check, /obj/item/food) || emagged) if(istype(check, /obj/item/disk/nuclear)) //(1984 voice) you will not deep fry the NAD to_chat(user, "The disk is more useful raw than [thiscooktype].") return FALSE @@ -147,7 +147,7 @@ // if burns = FALSE then it'll just tell you that the item is already that foodtype and it would do nothing // if you wanted a different side effect set burns to 1 and override burn_food() /obj/machinery/cooker/proc/burn_food(mob/user, obj/item/reagent_containers/props) - var/obj/item/food/snacks/badrecipe/burnt = new(get_turf(src)) + var/obj/item/food/badrecipe/burnt = new(get_turf(src)) setRegents(props, burnt) soundloop.stop() to_chat(user, "You smell burning coming from [src]!") @@ -177,7 +177,7 @@ // Override this with the correct snack type /obj/machinery/cooker/proc/gettype() - var/obj/item/food/snacks/type = new(get_turf(src)) + var/obj/item/food/type = new(get_turf(src)) return type /obj/machinery/cooker/attackby(obj/item/I, mob/user, params) @@ -197,7 +197,7 @@ if(!checkValid(I, user)) return if(!burns) - if(istype(I, /obj/item/food/snacks)) + if(istype(I, /obj/item/food)) if(checkCooked(I)) to_chat(user, "That is already [thiscooktype], it would do nothing!") return @@ -226,17 +226,17 @@ cookSpecial(special) //Handle cooking the item as appropriate turnoff(I) //Shut off the machine and qdel the original item return - if(istype(I, /obj/item/food/snacks)) + if(istype(I, /obj/item/food)) if(checkCooked(I)) burn_food(user, I) turnoff(I) return - var/obj/item/food/snacks/newfood = gettype() + var/obj/item/food/newfood = gettype() setIcon(I, newfood) changename(I, newfood) if(istype(I, /obj/item/reagent_containers)) setRegents(I, newfood) - if(istype(I, /obj/item/food/snacks)) + if(istype(I, /obj/item/food)) setCooked(I, newfood) newfood.cooktype[thiscooktype] = TRUE turnoff(I) diff --git a/code/modules/food_and_drinks/kitchen_machinery/deep_fryer.dm b/code/modules/food_and_drinks/kitchen_machinery/deep_fryer.dm index 5c8292c0d843..d90039b1b723 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/deep_fryer.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/deep_fryer.dm @@ -40,7 +40,7 @@ cooktime = (200 - (E * 20)) //Effectively each laser improves cooktime by 20 per rating beyond the first (200 base, 80 max upgrade) /obj/machinery/cooker/deepfryer/gettype() - var/obj/item/food/snacks/deepfryholder/type = new(get_turf(src)) + var/obj/item/food/deepfryholder/type = new(get_turf(src)) return type /obj/machinery/cooker/deepfryer/attackby(obj/item/I, mob/user, params) @@ -157,44 +157,44 @@ return istype(I, input) /datum/deepfryer_special/shrimp - input = /obj/item/food/snacks/shrimp - output = /obj/item/food/snacks/fried_shrimp + input = /obj/item/food/shrimp + output = /obj/item/food/fried_shrimp /datum/deepfryer_special/banana - input = /obj/item/food/snacks/grown/banana - output = /obj/item/food/snacks/friedbanana + input = /obj/item/food/grown/banana + output = /obj/item/food/friedbanana /datum/deepfryer_special/fries - input = /obj/item/food/snacks/rawsticks - output = /obj/item/food/snacks/fries + input = /obj/item/food/rawsticks + output = /obj/item/food/fries /datum/deepfryer_special/corn_chips - input = /obj/item/food/snacks/grown/corn - output = /obj/item/food/snacks/cornchips + input = /obj/item/food/grown/corn + output = /obj/item/food/cornchips /datum/deepfryer_special/fried_tofu - input = /obj/item/food/snacks/tofu - output = /obj/item/food/snacks/fried_tofu + input = /obj/item/food/tofu + output = /obj/item/food/fried_tofu /datum/deepfryer_special/chimichanga - input = /obj/item/food/snacks/burrito - output = /obj/item/food/snacks/chimichanga + input = /obj/item/food/burrito + output = /obj/item/food/chimichanga /datum/deepfryer_special/potato_chips - input = /obj/item/food/snacks/grown/potato/wedges - output = /obj/item/food/snacks/chips + input = /obj/item/food/grown/potato/wedges + output = /obj/item/food/chips /datum/deepfryer_special/carrotfries - input = /obj/item/food/snacks/grown/carrot/wedges - output = /obj/item/food/snacks/carrotfries + input = /obj/item/food/grown/carrot/wedges + output = /obj/item/food/carrotfries /datum/deepfryer_special/onionrings - input = /obj/item/food/snacks/onion_slice - output = /obj/item/food/snacks/onionrings + input = /obj/item/food/onion_slice + output = /obj/item/food/onionrings /datum/deepfryer_special/fried_vox input = /obj/item/organ/external - output = /obj/item/food/snacks/fried_vox + output = /obj/item/food/fried_vox /datum/deepfryer_special/fried_vox/validate(obj/item/I) if(!..()) diff --git a/code/modules/food_and_drinks/kitchen_machinery/gibber.dm b/code/modules/food_and_drinks/kitchen_machinery/gibber.dm index 8ad5a5a81cee..f7899b4f19aa 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/gibber.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/gibber.dm @@ -106,14 +106,12 @@ if(default_deconstruction_screwdriver(user, "grinder_open", "grinder", P)) return - if(exchange_parts(user, P)) - return - if(default_unfasten_wrench(user, P, time = 4 SECONDS)) return if(default_deconstruction_crowbar(user, P)) return + return ..() /obj/machinery/gibber/MouseDrop_T(mob/target, mob/user) @@ -247,13 +245,13 @@ var/slab_name = occupant.name var/slab_count = 6 - var/slab_type = /obj/item/food/snacks/meat/human //gibber can only gib humans on paracode, no need to check meat type + var/slab_type = /obj/item/food/meat/human //gibber can only gib humans on paracode, no need to check meat type var/slab_nutrition = occupant.nutrition / 15 slab_nutrition /= slab_count for(var/i=1 to slab_count) - var/obj/item/food/snacks/meat/new_meat = new slab_type(src) + var/obj/item/food/meat/new_meat = new slab_type(src) new_meat.name = "[slab_name] [new_meat.name]" new_meat.reagents.add_reagent("nutriment", slab_nutrition) diff --git a/code/modules/food_and_drinks/kitchen_machinery/icecream_vat.dm b/code/modules/food_and_drinks/kitchen_machinery/icecream_vat.dm index 02fc3ff9162c..b57424f48bd1 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/icecream_vat.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/icecream_vat.dm @@ -42,7 +42,7 @@ to_chat(user, "You add [I] to [src]") updateUsrDialog() return - if(istype(I, /obj/item/food/snacks/frozen/icecream)) + if(istype(I, /obj/item/food/frozen/icecream)) if(!I.reagents.has_reagent("sprinkles")) if(I.reagents.total_volume > 29) I.reagents.remove_any(1) @@ -141,7 +141,7 @@ else if(href_list["createchoco"]) var/name = generate_name(reagents.get_master_reagent_name()) name += " Chocolate Cone" - var/obj/item/food/snacks/frozen/icecream/icecreamcup/C = new(loc) + var/obj/item/food/frozen/icecream/icecreamcup/C = new(loc) C.name = "[name]" C.pixel_x = rand(-8, 8) C.pixel_y = -16 @@ -153,7 +153,7 @@ else if(href_list["createcone"]) var/name = generate_name(reagents.get_master_reagent_name()) name += " Cone" - var/obj/item/food/snacks/frozen/icecream/icecreamcone/C = new(loc) + var/obj/item/food/frozen/icecream/icecreamcone/C = new(loc) C.name = "[name]" C.pixel_x = rand(-8, 8) C.pixel_y = -16 @@ -165,7 +165,7 @@ else if(href_list["createwaffle"]) var/name = generate_name(reagents.get_master_reagent_name()) name += " Waffle Cone" - var/obj/item/food/snacks/frozen/icecream/wafflecone/C = new(loc) + var/obj/item/food/frozen/icecream/wafflecone/C = new(loc) C.name = "[name]" C.pixel_x = rand(-8, 8) C.pixel_y = -16 diff --git a/code/modules/food_and_drinks/kitchen_machinery/kitchen_machine.dm b/code/modules/food_and_drinks/kitchen_machinery/kitchen_machine.dm index 09e60e96ff3c..4d1a35328383 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/kitchen_machine.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/kitchen_machine.dm @@ -65,7 +65,7 @@ GLOB.cooking_reagents[recipe_type] |= reagent else qdel(recipe) - GLOB.cooking_ingredients[recipe_type] |= /obj/item/food/snacks/grown + GLOB.cooking_ingredients[recipe_type] |= /obj/item/food/grown /******************* * Item Adding @@ -74,11 +74,13 @@ /obj/machinery/kitchen_machine/attackby(obj/item/O, mob/user, params) if(operating) return + if(dirty < MAX_DIRT) if(default_deconstruction_screwdriver(user, open_icon, off_icon, O)) return - if(exchange_parts(user, O)) - return + + if(istype(O, /obj/item/storage/part_replacer)) + return ..() default_deconstruction_crowbar(user, O) @@ -91,13 +93,16 @@ update_icon(UPDATE_ICON_STATE) container_type = OPENCONTAINER return TRUE + else //Otherwise bad luck!! to_chat(user, "It's dirty!") return TRUE - else if(is_type_in_list(O, GLOB.cooking_ingredients[recipe_type]) || istype(O, /obj/item/mixing_bowl)) + + if(is_type_in_list(O, GLOB.cooking_ingredients[recipe_type]) || istype(O, /obj/item/mixing_bowl)) if(length(contents) >= max_n_of_items) to_chat(user, "This [src] is full of ingredients, you cannot put more.") return TRUE + if(istype(O,/obj/item/stack)) var/obj/item/stack/S = O if(S.get_amount() > 1) @@ -111,16 +116,19 @@ else if(is_type_in_list(O, list(/obj/item/reagent_containers/glass, /obj/item/reagent_containers/drinks, /obj/item/reagent_containers/condiment))) if(!O.reagents) return TRUE + for(var/datum/reagent/R in O.reagents.reagent_list) if(!(R.id in GLOB.cooking_reagents[recipe_type])) to_chat(user, "Your [O] contains components unsuitable for cookery.") return TRUE + else if(istype(O, /obj/item/grab)) var/obj/item/grab/G = O if(HAS_TRAIT(user, TRAIT_PACIFISM)) to_chat(user, "Slamming [G.affecting] into [src] might hurt them!") return return special_attack_grab(G, user) + else to_chat(user, "You have no idea what you can cook with [O].") return TRUE @@ -416,7 +424,7 @@ amount += reagents.total_volume reagents.clear_reagents() if(amount) - var/obj/item/food/snacks/badrecipe/mysteryfood = new(src) + var/obj/item/food/badrecipe/mysteryfood = new(src) mysteryfood.reagents.add_reagent("carbon", amount / 2) mysteryfood.reagents.add_reagent("????", amount / 15) mysteryfood.forceMove(get_turf(src)) diff --git a/code/modules/food_and_drinks/kitchen_machinery/monkeyrecycler.dm b/code/modules/food_and_drinks/kitchen_machinery/monkeyrecycler.dm index 753b398e6a32..e007796c9df8 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/monkeyrecycler.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/monkeyrecycler.dm @@ -14,7 +14,7 @@ GLOBAL_LIST_EMPTY(monkey_recyclers) var/required_grind = 5 var/cube_production = 1 var/cycle_through = 0 - var/obj/item/food/snacks/monkeycube/cube_type = /obj/item/food/snacks/monkeycube + var/obj/item/food/monkeycube/cube_type = /obj/item/food/monkeycube var/list/connected = list() /obj/machinery/monkey_recycler/Initialize(mapload) @@ -58,8 +58,8 @@ GLOBAL_LIST_EMPTY(monkey_recyclers) if(default_deconstruction_screwdriver(user, "grinder_open", "grinder", O)) return - if(exchange_parts(user, O)) - return + if(istype(O, /obj/item/storage/part_replacer)) + return ..() if(default_unfasten_wrench(user, O, time = 4 SECONDS)) power_change() @@ -73,17 +73,17 @@ GLOBAL_LIST_EMPTY(monkey_recyclers) cycle_through++ switch(cycle_through) if(1) - cube_type = /obj/item/food/snacks/monkeycube/nian_wormecube + cube_type = /obj/item/food/monkeycube/nian_wormecube if(2) - cube_type = /obj/item/food/snacks/monkeycube/farwacube + cube_type = /obj/item/food/monkeycube/farwacube if(3) - cube_type = /obj/item/food/snacks/monkeycube/wolpincube + cube_type = /obj/item/food/monkeycube/wolpincube if(4) - cube_type = /obj/item/food/snacks/monkeycube/stokcube + cube_type = /obj/item/food/monkeycube/stokcube if(5) - cube_type = /obj/item/food/snacks/monkeycube/neaeracube + cube_type = /obj/item/food/monkeycube/neaeracube if(6) - cube_type = /obj/item/food/snacks/monkeycube + cube_type = /obj/item/food/monkeycube cycle_through = 0 to_chat(user, "You change the monkeycube type to [initial(cube_type.name)].") else @@ -111,9 +111,8 @@ GLOBAL_LIST_EMPTY(monkey_recyclers) animate(src, pixel_x = pixel_x + offset, time = 0.2, loop = 200) //start shaking use_power(500) grinded++ - sleep(50) - pixel_x = initial(pixel_x) to_chat(user, "The machine now has [grinded] monkey\s worth of material stored.") + addtimer(VARSET_CALLBACK(src, pixel_x, initial(pixel_x)), 5 SECONDS) else to_chat(user, "The machine only accepts monkeys!") else diff --git a/code/modules/food_and_drinks/kitchen_machinery/oven.dm b/code/modules/food_and_drinks/kitchen_machinery/oven.dm deleted file mode 100644 index 94ebc9c61bbe..000000000000 --- a/code/modules/food_and_drinks/kitchen_machinery/oven.dm +++ /dev/null @@ -1,80 +0,0 @@ -/obj/machinery/cooking - name = "oven" - desc = "Cookies are ready, dear." - icon = 'icons/obj/cooking_machines.dmi' - icon_state = "oven_off" - layer = 2.9 - density = TRUE - anchored = TRUE - idle_power_consumption = 5 - - var/candy = FALSE - var/on = FALSE //Is it making food already? - var/list/food_choices = list() - -/obj/machinery/cooking/Initialize(mapload) - . = ..() - updatefood() - -/obj/machinery/cooking/attackby(obj/item/I, mob/user, params) - if(on) - to_chat(user, "The machine is already running.") - return - else - var/obj/item/F = I - var/obj/item/food/snacks/customizable/C - C = tgui_input_list(user, "Select food to make.", "Cooking", food_choices) - if(!C) - return - else - to_chat(user, "You put [F] into [src] for cooking.") - user.drop_item() - F.loc = src - on = TRUE - if(!candy) - icon_state = "oven_on" - else - icon_state = "mixer_on" - sleep(100) - on = FALSE - if(!candy) - icon_state = "oven_off" - else - icon_state = "mixer_off" - C.loc = get_turf(src) - C.attackby(F,user, params) - playsound(loc, 'sound/machines/ding.ogg', 50, 1) - updatefood() - return - -/obj/machinery/cooking/proc/updatefood() - return - -/obj/machinery/cooking/oven - name = "oven" - desc = "Cookies are ready, dear." - icon = 'icons/obj/cooking_machines.dmi' - icon_state = "oven_off" - -/obj/machinery/cooking/oven/updatefood() - for(var/U in food_choices) - food_choices.Remove(U) - for(var/U in subtypesof(/obj/item/food/snacks/customizable/cook)) - var/obj/item/food/snacks/customizable/cook/V = new U - food_choices += V - return - -/obj/machinery/cooking/candy - name = "candy machine" - desc = "Get yer box of deep fried deep fried deep fried deep fried cotton candy cereal sandwich cookies here!" - icon = 'icons/obj/cooking_machines.dmi' - icon_state = "mixer_off" - candy = TRUE - -/obj/machinery/cooking/candy/updatefood() - for(var/U in food_choices) - food_choices.Remove(U) - for(var/U in subtypesof(/obj/item/food/snacks/customizable/candy)) - var/obj/item/food/snacks/customizable/candy/V = new U - food_choices += V - return diff --git a/code/modules/food_and_drinks/kitchen_machinery/processor.dm b/code/modules/food_and_drinks/kitchen_machinery/processor.dm index c9eff5ae83bf..795741fc4cd6 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/processor.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/processor.dm @@ -89,36 +89,36 @@ /////OBJECT RECIPIES///// ///////////////////////// /datum/food_processor_process/meat - input = /obj/item/food/snacks/meat - output = /obj/item/food/snacks/meatball + input = /obj/item/food/meat + output = /obj/item/food/meatball /datum/food_processor_process/potato - input = /obj/item/food/snacks/grown/potato - output = /obj/item/food/snacks/rawsticks + input = /obj/item/food/grown/potato + output = /obj/item/food/rawsticks /datum/food_processor_process/rawsticks - input = /obj/item/food/snacks/rawsticks - output = /obj/item/food/snacks/tatortot + input = /obj/item/food/rawsticks + output = /obj/item/food/tatortot /datum/food_processor_process/soybeans - input = /obj/item/food/snacks/grown/soybeans - output = /obj/item/food/snacks/soydope + input = /obj/item/food/grown/soybeans + output = /obj/item/food/soydope /datum/food_processor_process/spaghetti - input = /obj/item/food/snacks/doughslice - output = /obj/item/food/snacks/spaghetti + input = /obj/item/food/doughslice + output = /obj/item/food/spaghetti /datum/food_processor_process/macaroni - input = /obj/item/food/snacks/spaghetti - output = /obj/item/food/snacks/macaroni + input = /obj/item/food/spaghetti + output = /obj/item/food/macaroni /datum/food_processor_process/parsnip - input = /obj/item/food/snacks/grown/parsnip - output = /obj/item/food/snacks/roastparsnip + input = /obj/item/food/grown/parsnip + output = /obj/item/food/roastparsnip /datum/food_processor_process/carrot - input = /obj/item/food/snacks/grown/carrot - output = /obj/item/food/snacks/grown/carrot/wedges + input = /obj/item/food/grown/carrot + output = /obj/item/food/grown/carrot/wedges /datum/food_processor_process/towercap input = /obj/item/grown/log @@ -189,16 +189,15 @@ return 0 /obj/machinery/processor/attackby(obj/item/O, mob/user, params) - if(processing) to_chat(user, "\the [src] is already processing something!") - return 1 + return TRUE if(default_deconstruction_screwdriver(user, "processor_open", "processor", O)) return - if(exchange_parts(user, O)) - return + if(istype(O, /obj/item/storage/part_replacer)) + return ..() if(default_unfasten_wrench(user, O, time = 4 SECONDS)) return diff --git a/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm b/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm index 6ea26c477515..0303d07045b9 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm @@ -82,7 +82,7 @@ update_icon(UPDATE_OVERLAYS) // Accepted items accepted_items_typecache = typecacheof(list( - /obj/item/food/snacks/grown, + /obj/item/food/grown, /obj/item/seeds, /obj/item/grown, )) @@ -178,31 +178,43 @@ return ..() /obj/machinery/smartfridge/attackby(obj/item/O, mob/user) - if(exchange_parts(user, O)) + if(istype(O, /obj/item/storage/part_replacer)) + . = ..() SStgui.update_uis(src) return + if(stat & (BROKEN|NOPOWER)) - to_chat(user, "\The [src] is unpowered and useless.") + to_chat(user, "[src] is unpowered and useless.") return if(load(O, user)) - user.visible_message("[user] has added \the [O] to \the [src].", "You add \the [O] to \the [src].") + user.visible_message( + "[user] has added [O] to [src].", + "You add [O] to [src]." + ) SStgui.update_uis(src) update_icon(UPDATE_OVERLAYS) - else if(istype(O, /obj/item/storage/bag) || istype(O, /obj/item/storage/box)) + return + + if(istype(O, /obj/item/storage/bag) || istype(O, /obj/item/storage/box)) var/obj/item/storage/P = O var/items_loaded = 0 for(var/obj/G in P.contents) if(load(G, user)) items_loaded++ if(items_loaded) - user.visible_message("[user] loads \the [src] with \the [P].", "You load \the [src] with \the [P].") + user.visible_message( + "[user] loads [src] with [P].", + "You load [src] with [P]." + ) SStgui.update_uis(src) update_icon(UPDATE_OVERLAYS) var/failed = length(P.contents) if(failed) to_chat(user, "[failed] item\s [failed == 1 ? "is" : "are"] refused.") - else if(!istype(O, /obj/item/card/emag)) + return + + if(!istype(O, /obj/item/card/emag)) to_chat(user, "\The [src] smartly refuses [O].") return TRUE @@ -427,10 +439,10 @@ // Syndicate Druglab Ruin /obj/machinery/smartfridge/food/syndicate_druglab starting_items = list( - /obj/item/food/snacks/boiledrice = 2, - /obj/item/food/snacks/macncheese = 1, - /obj/item/food/snacks/syndicake = 3, - /obj/item/food/snacks/beans = 4, + /obj/item/food/boiledrice = 2, + /obj/item/food/macncheese = 1, + /obj/item/food/syndicake = 3, + /obj/item/food/beans = 4, /obj/item/reagent_containers/glass/beaker/waterbottle/large = 7, /obj/item/reagent_containers/drinks/bottle/kahlua = 1, /obj/item/reagent_containers/drinks/bottle/orangejuice = 2) @@ -475,7 +487,7 @@ /obj/machinery/smartfridge/foodcart/Initialize(mapload) . = ..() accepted_items_typecache = typecacheof(list( - /obj/item/food/snacks, + /obj/item/food, /obj/item/reagent_containers/drinks, /obj/item/reagent_containers/condiment, )) @@ -804,7 +816,7 @@ component_parts = null // Accepted items accepted_items_typecache = typecacheof(list( - /obj/item/food/snacks, + /obj/item/food, /obj/item/stack/sheet/wetleather, )) @@ -853,8 +865,8 @@ /obj/machinery/smartfridge/drying_rack/accept_check(obj/item/O) . = ..() // If it's a food, reject non driable ones - if(istype(O, /obj/item/food/snacks)) - var/obj/item/food/snacks/S = O + if(istype(O, /obj/item/food)) + var/obj/item/food/S = O if(!S.dried_type) return FALSE @@ -875,7 +887,7 @@ * Called in [/obj/machinery/smartfridge/drying_rack/process] to dry the contents. */ /obj/machinery/smartfridge/drying_rack/proc/rack_dry() - for(var/obj/item/food/snacks/S in contents) + for(var/obj/item/food/S in contents) if(S.dried_type == S.type)//if the dried type is the same as the object's type, don't bother creating a whole new item... S.color = "#ad7257" S.dry = TRUE diff --git a/code/modules/food_and_drinks/recipes/recipes_candy.dm b/code/modules/food_and_drinks/recipes/recipes_candy.dm index e47449af1935..46a2eec574fe 100644 --- a/code/modules/food_and_drinks/recipes/recipes_candy.dm +++ b/code/modules/food_and_drinks/recipes/recipes_candy.dm @@ -3,7 +3,7 @@ * /datum/recipe/candy/ * reagents = list() * items = list() -* result = /obj/item/food/snacks/ +* result = /obj/item/food/ * byproduct = /obj/item/ // only set this if the recipe has a byproduct, like returning it's mould * * NOTE: If using a mould, make sure to list it in *BOTH* the items and byproduct lists if it is to be returned. @@ -18,74 +18,74 @@ /datum/recipe/candy/chocolate_bar reagents = list("soymilk" = 2, "cocoa" = 2, "sugar" = 2) items = list() - result = /obj/item/food/snacks/chocolatebar + result = /obj/item/food/chocolatebar /datum/recipe/candy/chocolate_bar2 reagents = list("milk" = 2, "cocoa" = 2, "sugar" = 2) items = list() - result = /obj/item/food/snacks/chocolatebar + result = /obj/item/food/chocolatebar /datum/recipe/candy/fudge_peanut reagents = list("sugar" = 5, "milk" = 5) - items = list(/obj/item/food/snacks/chocolatebar, /obj/item/food/snacks/grown/peanuts, - /obj/item/food/snacks/grown/peanuts, /obj/item/food/snacks/grown/peanuts) - result = /obj/item/food/snacks/candy/fudge/peanut + items = list(/obj/item/food/chocolatebar, /obj/item/food/grown/peanuts, + /obj/item/food/grown/peanuts, /obj/item/food/grown/peanuts) + result = /obj/item/food/candy/fudge/peanut /datum/recipe/candy/fudge_cherry reagents = list("sugar" = 5, "milk" = 5) - items = list(/obj/item/food/snacks/chocolatebar, /obj/item/food/snacks/grown/cherries, - /obj/item/food/snacks/grown/cherries, /obj/item/food/snacks/grown/cherries) - result = /obj/item/food/snacks/candy/fudge/cherry + items = list(/obj/item/food/chocolatebar, /obj/item/food/grown/cherries, + /obj/item/food/grown/cherries, /obj/item/food/grown/cherries) + result = /obj/item/food/candy/fudge/cherry /datum/recipe/candy/fudge_cookies_n_cream reagents = list("sugar" = 5, "milk" = 5, "cream" = 5) items = list( - /obj/item/food/snacks/chocolatebar, - /obj/item/food/snacks/cookie, + /obj/item/food/chocolatebar, + /obj/item/food/cookie, ) - result = /obj/item/food/snacks/candy/fudge/cookies_n_cream + result = /obj/item/food/candy/fudge/cookies_n_cream /datum/recipe/candy/fudge_turtle reagents = list("sugar" = 5, "milk" = 5) items = list( - /obj/item/food/snacks/chocolatebar, - /obj/item/food/snacks/candy/caramel, - /obj/item/food/snacks/grown/peanuts + /obj/item/food/chocolatebar, + /obj/item/food/candy/caramel, + /obj/item/food/grown/peanuts ) - result = /obj/item/food/snacks/candy/fudge/turtle + result = /obj/item/food/candy/fudge/turtle /datum/recipe/candy/fudge reagents = list("sugar" = 5, "milk" = 5) - items = list(/obj/item/food/snacks/chocolatebar) - result = /obj/item/food/snacks/candy/fudge + items = list(/obj/item/food/chocolatebar) + result = /obj/item/food/candy/fudge /datum/recipe/candy/caramel reagents = list("sugar" = 5, "cream" = 5) items = list() - result = /obj/item/food/snacks/candy/caramel + result = /obj/item/food/candy/caramel /datum/recipe/candy/toffee reagents = list("sugar" = 5, "flour" = 10) - result = /obj/item/food/snacks/candy/toffee + result = /obj/item/food/candy/toffee /datum/recipe/candy/taffy reagents = list("salglu_solution" = 15) items = list() - result = /obj/item/food/snacks/candy/taffy + result = /obj/item/food/candy/taffy /datum/recipe/candy/nougat reagents = list("sugar" = 5, "cornoil" = 5) - items = list(/obj/item/food/snacks/egg) - result = /obj/item/food/snacks/candy/nougat + items = list(/obj/item/food/egg) + result = /obj/item/food/candy/nougat /datum/recipe/candy/nougat/make_food(obj/container) - var/obj/item/food/snacks/candy/nougat/being_cooked = ..() + var/obj/item/food/candy/nougat/being_cooked = ..() being_cooked.reagents.del_reagent("egg") return being_cooked /datum/recipe/candy/wafflecone reagents = list("milk" = 1, "sugar" = 1) - result = /obj/item/food/snacks/wafflecone + result = /obj/item/food/wafflecone // *********************************************************** // Base Candy Recipes (unflavored / plain) @@ -96,14 +96,14 @@ items = list( /obj/item/c_tube, ) - result = /obj/item/food/snacks/candy/cotton + result = /obj/item/food/candy/cotton /datum/recipe/candy/gummybear reagents = list("sugar" = 5, "water" = 5, "cornoil" = 5) items = list( /obj/item/kitchen/mould/bear, ) - result = /obj/item/food/snacks/candy/gummybear + result = /obj/item/food/candy/gummybear byproduct = /obj/item/kitchen/mould/bear /datum/recipe/candy/gummyworm @@ -111,7 +111,7 @@ items = list( /obj/item/kitchen/mould/worm, ) - result = /obj/item/food/snacks/candy/gummyworm + result = /obj/item/food/candy/gummyworm byproduct = /obj/item/kitchen/mould/worm /datum/recipe/candy/jellybean @@ -119,7 +119,7 @@ items = list( /obj/item/kitchen/mould/bean, ) - result = /obj/item/food/snacks/candy/jellybean + result = /obj/item/food/candy/jellybean byproduct = /obj/item/kitchen/mould/bean /datum/recipe/candy/jawbreaker @@ -127,44 +127,44 @@ items = list( /obj/item/kitchen/mould/ball, ) - result = /obj/item/food/snacks/candy/jawbreaker + result = /obj/item/food/candy/jawbreaker byproduct = /obj/item/kitchen/mould/ball /datum/recipe/candy/candycane reagents = list("sugar" = 5) items = list( /obj/item/kitchen/mould/cane, - /obj/item/food/snacks/mint, + /obj/item/food/mint, ) - result = /obj/item/food/snacks/candy/candycane + result = /obj/item/food/candy/candycane byproduct = /obj/item/kitchen/mould/cane /datum/recipe/candy/gum reagents = list("sugar" = 5, "water" = 5, "cornoil" = 5) items = list() - result = /obj/item/food/snacks/candy/gum + result = /obj/item/food/candy/gum /datum/recipe/candy/candybar reagents = list("sugar" = 5) items = list( - /obj/item/food/snacks/chocolatebar, + /obj/item/food/chocolatebar, ) - result = /obj/item/food/snacks/candy/candybar + result = /obj/item/food/candy/candybar /datum/recipe/candy/cash items = list( /obj/item/kitchen/mould/cash, - /obj/item/food/snacks/chocolatebar, + /obj/item/food/chocolatebar, ) - result = /obj/item/food/snacks/candy/cash + result = /obj/item/food/candy/cash byproduct = /obj/item/kitchen/mould/cash /datum/recipe/candy/coin items = list( /obj/item/kitchen/mould/coin, - /obj/item/food/snacks/chocolatebar, + /obj/item/food/chocolatebar, ) - result = /obj/item/food/snacks/candy/coin + result = /obj/item/food/candy/coin byproduct = /obj/item/kitchen/mould/coin /datum/recipe/candy/sucker @@ -172,7 +172,7 @@ items = list( /obj/item/kitchen/mould/loli, ) - result = /obj/item/food/snacks/candy/sucker + result = /obj/item/food/candy/sucker byproduct = /obj/item/kitchen/mould/loli // *********************************************************** @@ -182,84 +182,84 @@ /datum/recipe/candy/cottoncandy_red reagents = list("cherryjelly" = 5) items = list( - /obj/item/food/snacks/candy/cotton, + /obj/item/food/candy/cotton, ) - result = /obj/item/food/snacks/candy/cotton/red + result = /obj/item/food/candy/cotton/red /datum/recipe/candy/cottoncandy_blue reagents = list("berryjuice" = 5) items = list( - /obj/item/food/snacks/candy/cotton, + /obj/item/food/candy/cotton, ) - result = /obj/item/food/snacks/candy/cotton/blue + result = /obj/item/food/candy/cotton/blue /datum/recipe/candy/cottoncandy_poison reagents = list("poisonberryjuice" = 5) items = list( - /obj/item/food/snacks/candy/cotton, + /obj/item/food/candy/cotton, ) - result = /obj/item/food/snacks/candy/cotton/poison + result = /obj/item/food/candy/cotton/poison /datum/recipe/candy/cottoncandy_green reagents = list("limejuice" = 5) items = list( - /obj/item/food/snacks/candy/cotton, + /obj/item/food/candy/cotton, ) - result = /obj/item/food/snacks/candy/cotton/green + result = /obj/item/food/candy/cotton/green /datum/recipe/candy/cottoncandy_yellow reagents = list("lemonjuice" = 5) items = list( - /obj/item/food/snacks/candy/cotton, + /obj/item/food/candy/cotton, ) - result = /obj/item/food/snacks/candy/cotton/yellow + result = /obj/item/food/candy/cotton/yellow /datum/recipe/candy/cottoncandy_orange reagents = list("orangejuice" = 5) items = list( - /obj/item/food/snacks/candy/cotton, + /obj/item/food/candy/cotton, ) - result = /obj/item/food/snacks/candy/cotton/orange + result = /obj/item/food/candy/cotton/orange /datum/recipe/candy/cottoncandy_purple reagents = list("grapejuice" = 5) items = list( - /obj/item/food/snacks/candy/cotton, + /obj/item/food/candy/cotton, ) - result = /obj/item/food/snacks/candy/cotton/purple + result = /obj/item/food/candy/cotton/purple /datum/recipe/candy/cottoncandy_pink reagents = list("watermelonjuice" = 5) items = list( - /obj/item/food/snacks/candy/cotton, + /obj/item/food/candy/cotton, ) - result = /obj/item/food/snacks/candy/cotton/pink + result = /obj/item/food/candy/cotton/pink /datum/recipe/candy/cottoncandy_rainbow reagents = list() items = list( - /obj/item/food/snacks/candy/cotton/red, - /obj/item/food/snacks/candy/cotton/blue, - /obj/item/food/snacks/candy/cotton/green, - /obj/item/food/snacks/candy/cotton/yellow, - /obj/item/food/snacks/candy/cotton/orange, - /obj/item/food/snacks/candy/cotton/purple, - /obj/item/food/snacks/candy/cotton/pink, + /obj/item/food/candy/cotton/red, + /obj/item/food/candy/cotton/blue, + /obj/item/food/candy/cotton/green, + /obj/item/food/candy/cotton/yellow, + /obj/item/food/candy/cotton/orange, + /obj/item/food/candy/cotton/purple, + /obj/item/food/candy/cotton/pink, ) - result = /obj/item/food/snacks/candy/cotton/rainbow + result = /obj/item/food/candy/cotton/rainbow /datum/recipe/candy/cottoncandy_rainbow2 reagents = list() items = list( - /obj/item/food/snacks/candy/cotton/red, - /obj/item/food/snacks/candy/cotton/poison, - /obj/item/food/snacks/candy/cotton/green, - /obj/item/food/snacks/candy/cotton/yellow, - /obj/item/food/snacks/candy/cotton/orange, - /obj/item/food/snacks/candy/cotton/purple, - /obj/item/food/snacks/candy/cotton/pink, + /obj/item/food/candy/cotton/red, + /obj/item/food/candy/cotton/poison, + /obj/item/food/candy/cotton/green, + /obj/item/food/candy/cotton/yellow, + /obj/item/food/candy/cotton/orange, + /obj/item/food/candy/cotton/purple, + /obj/item/food/candy/cotton/pink, ) - result = /obj/item/food/snacks/candy/cotton/bad_rainbow + result = /obj/item/food/candy/cotton/bad_rainbow // *********************************************************** // Gummy Bear Recipes (flavored) @@ -268,63 +268,63 @@ /datum/recipe/candy/gummybear_red reagents = list("cherryjelly" = 5) items = list( - /obj/item/food/snacks/candy/gummybear, + /obj/item/food/candy/gummybear, ) - result = /obj/item/food/snacks/candy/gummybear/red + result = /obj/item/food/candy/gummybear/red /datum/recipe/candy/gummybear_blue reagents = list("berryjuice" = 5) items = list( - /obj/item/food/snacks/candy/gummybear, + /obj/item/food/candy/gummybear, ) - result = /obj/item/food/snacks/candy/gummybear/blue + result = /obj/item/food/candy/gummybear/blue /datum/recipe/candy/gummybear_poison reagents = list("poisonberryjuice" = 5) items = list( - /obj/item/food/snacks/candy/gummybear, + /obj/item/food/candy/gummybear, ) - result = /obj/item/food/snacks/candy/gummybear/poison + result = /obj/item/food/candy/gummybear/poison /datum/recipe/candy/gummybear_green reagents = list("limejuice" = 5) items = list( - /obj/item/food/snacks/candy/gummybear, + /obj/item/food/candy/gummybear, ) - result = /obj/item/food/snacks/candy/gummybear/green + result = /obj/item/food/candy/gummybear/green /datum/recipe/candy/gummybear_yellow reagents = list("lemonjuice" = 5) items = list( - /obj/item/food/snacks/candy/gummybear, + /obj/item/food/candy/gummybear, ) - result = /obj/item/food/snacks/candy/gummybear/yellow + result = /obj/item/food/candy/gummybear/yellow /datum/recipe/candy/gummybear_orange reagents = list("orangejuice" = 5) items = list( - /obj/item/food/snacks/candy/gummybear, + /obj/item/food/candy/gummybear, ) - result = /obj/item/food/snacks/candy/gummybear/orange + result = /obj/item/food/candy/gummybear/orange /datum/recipe/candy/gummybear_purple reagents = list("grapejuice" = 5) items = list( - /obj/item/food/snacks/candy/gummybear, + /obj/item/food/candy/gummybear, ) - result = /obj/item/food/snacks/candy/gummybear/purple + result = /obj/item/food/candy/gummybear/purple /datum/recipe/candy/gummybear_wtf reagents = list("space_drugs" = 5) items = list( - /obj/item/food/snacks/candy/gummybear, + /obj/item/food/candy/gummybear, ) - result = /obj/item/food/snacks/candy/gummybear/wtf + result = /obj/item/food/candy/gummybear/wtf /datum/recipe/candy/gummybear_wtf2 reagents = list() - items = list(/obj/item/food/snacks/candy/gummybear, /obj/item/food/snacks/grown/ambrosia/vulgaris) - result = /obj/item/food/snacks/candy/gummybear/wtf + items = list(/obj/item/food/candy/gummybear, /obj/item/food/grown/ambrosia/vulgaris) + result = /obj/item/food/candy/gummybear/wtf // *********************************************************** // Gummy Worm Recipes (flavored) @@ -333,62 +333,62 @@ /datum/recipe/candy/gummyworm_red reagents = list("cherryjelly" = 5) items = list( - /obj/item/food/snacks/candy/gummyworm, + /obj/item/food/candy/gummyworm, ) - result = /obj/item/food/snacks/candy/gummyworm/red + result = /obj/item/food/candy/gummyworm/red /datum/recipe/candy/gummyworm_blue reagents = list("berryjuice" = 5) items = list( - /obj/item/food/snacks/candy/gummyworm, + /obj/item/food/candy/gummyworm, ) - result = /obj/item/food/snacks/candy/gummyworm/blue + result = /obj/item/food/candy/gummyworm/blue /datum/recipe/candy/gummyworm_poison reagents = list("poisonberryjuice" = 5) items = list( - /obj/item/food/snacks/candy/gummyworm, + /obj/item/food/candy/gummyworm, ) - result = /obj/item/food/snacks/candy/gummyworm/poison + result = /obj/item/food/candy/gummyworm/poison /datum/recipe/candy/gummyworm_green reagents = list("limejuice" = 5) items = list( - /obj/item/food/snacks/candy/gummyworm, + /obj/item/food/candy/gummyworm, ) - result = /obj/item/food/snacks/candy/gummyworm/green + result = /obj/item/food/candy/gummyworm/green /datum/recipe/candy/gummyworm_yellow reagents = list("lemonjuice" = 5) items = list( - /obj/item/food/snacks/candy/gummyworm, + /obj/item/food/candy/gummyworm, ) - result = /obj/item/food/snacks/candy/gummyworm/yellow + result = /obj/item/food/candy/gummyworm/yellow /datum/recipe/candy/gummyworm_orange reagents = list("orangejuice" = 5) items = list( - /obj/item/food/snacks/candy/gummyworm, + /obj/item/food/candy/gummyworm, ) - result = /obj/item/food/snacks/candy/gummyworm/orange + result = /obj/item/food/candy/gummyworm/orange /datum/recipe/candy/gummyworm_purple reagents = list("grapejuice" = 5) items = list( - /obj/item/food/snacks/candy/gummyworm, + /obj/item/food/candy/gummyworm, ) - result = /obj/item/food/snacks/candy/gummyworm/purple + result = /obj/item/food/candy/gummyworm/purple /datum/recipe/candy/gummyworm_wtf reagents = list("space_drugs" = 5) items = list( - /obj/item/food/snacks/candy/gummyworm, + /obj/item/food/candy/gummyworm, ) - result = /obj/item/food/snacks/candy/gummyworm/wtf + result = /obj/item/food/candy/gummyworm/wtf /datum/recipe/candy/gummyworm_wtf2 - items = list(/obj/item/food/snacks/candy/gummyworm, /obj/item/food/snacks/grown/ambrosia/vulgaris) - result = /obj/item/food/snacks/candy/gummyworm/wtf + items = list(/obj/item/food/candy/gummyworm, /obj/item/food/grown/ambrosia/vulgaris) + result = /obj/item/food/candy/gummyworm/wtf // *********************************************************** // Jelly Bean Recipes (flavored) @@ -397,99 +397,99 @@ /datum/recipe/candy/jellybean_red reagents = list("cherryjelly" = 5) items = list( - /obj/item/food/snacks/candy/jellybean, + /obj/item/food/candy/jellybean, ) - result = /obj/item/food/snacks/candy/jellybean/red + result = /obj/item/food/candy/jellybean/red /datum/recipe/candy/jellybean_blue reagents = list("berryjuice" = 5) items = list( - /obj/item/food/snacks/candy/jellybean, + /obj/item/food/candy/jellybean, ) - result = /obj/item/food/snacks/candy/jellybean/blue + result = /obj/item/food/candy/jellybean/blue /datum/recipe/candy/jellybean_poison reagents = list("poisonberryjuice" = 5) items = list( - /obj/item/food/snacks/candy/jellybean, + /obj/item/food/candy/jellybean, ) - result = /obj/item/food/snacks/candy/jellybean/poison + result = /obj/item/food/candy/jellybean/poison /datum/recipe/candy/jellybean_green reagents = list("limejuice" = 5) items = list( - /obj/item/food/snacks/candy/jellybean, + /obj/item/food/candy/jellybean, ) - result = /obj/item/food/snacks/candy/jellybean/green + result = /obj/item/food/candy/jellybean/green /datum/recipe/candy/jellybean_yellow reagents = list("lemonjuice" = 5) items = list( - /obj/item/food/snacks/candy/jellybean, + /obj/item/food/candy/jellybean, ) - result = /obj/item/food/snacks/candy/jellybean/yellow + result = /obj/item/food/candy/jellybean/yellow /datum/recipe/candy/jellybean_orange reagents = list("orangejuice" = 5) items = list( - /obj/item/food/snacks/candy/jellybean, + /obj/item/food/candy/jellybean, ) - result = /obj/item/food/snacks/candy/jellybean/orange + result = /obj/item/food/candy/jellybean/orange /datum/recipe/candy/jellybean_purple reagents = list("grapejuice" = 5) items = list( - /obj/item/food/snacks/candy/jellybean, + /obj/item/food/candy/jellybean, ) - result = /obj/item/food/snacks/candy/jellybean/purple + result = /obj/item/food/candy/jellybean/purple /datum/recipe/candy/jellybean_chocolate reagents = list() items = list( - /obj/item/food/snacks/candy/jellybean, - /obj/item/food/snacks/chocolatebar, + /obj/item/food/candy/jellybean, + /obj/item/food/chocolatebar, ) - result = /obj/item/food/snacks/candy/jellybean/chocolate + result = /obj/item/food/candy/jellybean/chocolate /datum/recipe/candy/jellybean_cola reagents = list("cola" = 5) items = list( - /obj/item/food/snacks/candy/jellybean, + /obj/item/food/candy/jellybean, ) - result = /obj/item/food/snacks/candy/jellybean/cola + result = /obj/item/food/candy/jellybean/cola /datum/recipe/candy/jellybean_popcorn reagents = list() items = list( - /obj/item/food/snacks/popcorn, - /obj/item/food/snacks/candy/jellybean, + /obj/item/food/popcorn, + /obj/item/food/candy/jellybean, ) - result = /obj/item/food/snacks/candy/jellybean/popcorn + result = /obj/item/food/candy/jellybean/popcorn /datum/recipe/candy/jellybean_coffee reagents = list("coffee" = 5) items = list( - /obj/item/food/snacks/candy/jellybean, + /obj/item/food/candy/jellybean, ) - result = /obj/item/food/snacks/candy/jellybean/cola + result = /obj/item/food/candy/jellybean/cola /datum/recipe/candy/jellybean_drgibb reagents = list("dr_gibb" = 5) items = list( - /obj/item/food/snacks/candy/jellybean, + /obj/item/food/candy/jellybean, ) - result = /obj/item/food/snacks/candy/jellybean/cola + result = /obj/item/food/candy/jellybean/cola /datum/recipe/candy/jellybean_wtf reagents = list("space_drugs" = 5) items = list( - /obj/item/food/snacks/candy/jellybean, + /obj/item/food/candy/jellybean, ) - result = /obj/item/food/snacks/candy/jellybean/wtf + result = /obj/item/food/candy/jellybean/wtf /datum/recipe/candy/jellybean_wtf2 - items = list(/obj/item/food/snacks/candy/jellybean, /obj/item/food/snacks/grown/ambrosia/vulgaris) - result = /obj/item/food/snacks/candy/jellybean/wtf + items = list(/obj/item/food/candy/jellybean, /obj/item/food/grown/ambrosia/vulgaris) + result = /obj/item/food/candy/jellybean/wtf // *********************************************************** // Candybar Recipes (flavored) @@ -498,39 +498,39 @@ /datum/recipe/candy/malper reagents = list() items = list( - /obj/item/food/snacks/candy/candybar, - /obj/item/food/snacks/candy/caramel, + /obj/item/food/candy/candybar, + /obj/item/food/candy/caramel, ) - result = /obj/item/food/snacks/candy/confectionery/caramel + result = /obj/item/food/candy/confectionery/caramel /datum/recipe/candy/toolerone reagents = list() items = list( - /obj/item/food/snacks/candy/candybar, - /obj/item/food/snacks/candy/nougat, + /obj/item/food/candy/candybar, + /obj/item/food/candy/nougat, ) - result = /obj/item/food/snacks/candy/confectionery/nougat + result = /obj/item/food/candy/confectionery/nougat /datum/recipe/candy/yumbaton reagents = list() items = list( - /obj/item/food/snacks/candy/candybar, - /obj/item/food/snacks/candy/toffee, + /obj/item/food/candy/candybar, + /obj/item/food/candy/toffee, ) - result = /obj/item/food/snacks/candy/confectionery/toffee + result = /obj/item/food/candy/confectionery/toffee /datum/recipe/candy/crunch reagents = list("rice" = 5) items = list( - /obj/item/food/snacks/candy/candybar, + /obj/item/food/candy/candybar, ) - result = /obj/item/food/snacks/candy/confectionery/rice + result = /obj/item/food/candy/confectionery/rice /datum/recipe/candy/toxinstest reagents = list() items = list( - /obj/item/food/snacks/candy/candybar, - /obj/item/food/snacks/candy/caramel, - /obj/item/food/snacks/candy/nougat, + /obj/item/food/candy/candybar, + /obj/item/food/candy/caramel, + /obj/item/food/candy/nougat, ) - result = /obj/item/food/snacks/candy/confectionery/caramel_nougat + result = /obj/item/food/candy/confectionery/caramel_nougat diff --git a/code/modules/food_and_drinks/recipes/recipes_grill.dm b/code/modules/food_and_drinks/recipes/recipes_grill.dm index c80132bf2698..ac90ef968f25 100644 --- a/code/modules/food_and_drinks/recipes/recipes_grill.dm +++ b/code/modules/food_and_drinks/recipes/recipes_grill.dm @@ -3,312 +3,312 @@ /datum/recipe/grill/bacon items = list( - /obj/item/food/snacks/raw_bacon, + /obj/item/food/raw_bacon, ) - result = /obj/item/food/snacks/bacon + result = /obj/item/food/bacon /datum/recipe/grill/telebacon items = list( - /obj/item/food/snacks/meat, + /obj/item/food/meat, /obj/item/assembly/signaler ) - result = /obj/item/food/snacks/telebacon + result = /obj/item/food/telebacon /datum/recipe/grill/syntitelebacon items = list( - /obj/item/food/snacks/meat/syntiflesh, + /obj/item/food/meat/syntiflesh, /obj/item/assembly/signaler ) - result = /obj/item/food/snacks/telebacon + result = /obj/item/food/telebacon /datum/recipe/grill/friedegg reagents = list("sodiumchloride" = 1, "blackpepper" = 1) items = list( - /obj/item/food/snacks/egg + /obj/item/food/egg ) - result = /obj/item/food/snacks/friedegg + result = /obj/item/food/friedegg /datum/recipe/grill/birdsteak reagents = list("sodiumchloride" = 1, "blackpepper" = 1) items = list( - /obj/item/food/snacks/meat/chicken + /obj/item/food/meat/chicken ) - result = /obj/item/food/snacks/meatsteak/chicken + result = /obj/item/food/meatsteak/chicken /datum/recipe/grill/meatsteak reagents = list("sodiumchloride" = 1, "blackpepper" = 1) items = list( - /obj/item/food/snacks/meat + /obj/item/food/meat ) - result = /obj/item/food/snacks/meatsteak + result = /obj/item/food/meatsteak /datum/recipe/grill/salmonsteak reagents = list("sodiumchloride" = 1, "blackpepper" = 1) items = list( - /obj/item/food/snacks/salmonmeat + /obj/item/food/salmonmeat ) - result = /obj/item/food/snacks/salmonsteak + result = /obj/item/food/salmonsteak /datum/recipe/grill/syntisteak reagents = list("sodiumchloride" = 1, "blackpepper" = 1) items = list( - /obj/item/food/snacks/meat/syntiflesh + /obj/item/food/meat/syntiflesh ) - result = /obj/item/food/snacks/meatsteak + result = /obj/item/food/meatsteak /datum/recipe/grill/waffles reagents = list("sugar" = 10) items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough + /obj/item/food/dough, + /obj/item/food/dough ) - result = /obj/item/food/snacks/waffles + result = /obj/item/food/waffles /datum/recipe/grill/rofflewaffles reagents = list("psilocybin" = 5, "sugar" = 10) items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough + /obj/item/food/dough, + /obj/item/food/dough ) - result = /obj/item/food/snacks/rofflewaffles + result = /obj/item/food/rofflewaffles /datum/recipe/grill/grilledcheese items = list( - /obj/item/food/snacks/breadslice, - /obj/item/food/snacks/breadslice, - /obj/item/food/snacks/cheesewedge + /obj/item/food/breadslice, + /obj/item/food/breadslice, + /obj/item/food/cheesewedge ) - result = /obj/item/food/snacks/grilledcheese + result = /obj/item/food/grilledcheese /datum/recipe/grill/sausage items = list( - /obj/item/food/snacks/meatball, - /obj/item/food/snacks/cutlet + /obj/item/food/meatball, + /obj/item/food/cutlet ) - result = /obj/item/food/snacks/sausage + result = /obj/item/food/sausage /datum/recipe/grill/fishfingers reagents = list("flour" = 10) items = list( - /obj/item/food/snacks/egg, - /obj/item/food/snacks/carpmeat + /obj/item/food/egg, + /obj/item/food/carpmeat ) - result = /obj/item/food/snacks/fishfingers + result = /obj/item/food/fishfingers /datum/recipe/grill/fishfingers/make_food(obj/container) - var/obj/item/food/snacks/fishfingers/being_cooked = ..() + var/obj/item/food/fishfingers/being_cooked = ..() being_cooked.reagents.del_reagent("egg") being_cooked.reagents.del_reagent("carpotoxin") return being_cooked /datum/recipe/grill/cutlet items = list( - /obj/item/food/snacks/rawcutlet + /obj/item/food/rawcutlet ) - result = /obj/item/food/snacks/cutlet + result = /obj/item/food/cutlet /datum/recipe/grill/omelette items = list( - /obj/item/food/snacks/egg, - /obj/item/food/snacks/egg, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/cheesewedge + /obj/item/food/egg, + /obj/item/food/egg, + /obj/item/food/cheesewedge, + /obj/item/food/cheesewedge ) - result = /obj/item/food/snacks/omelette + result = /obj/item/food/omelette /datum/recipe/grill/wingfangchu reagents = list("soysauce" = 5) items = list( - /obj/item/food/snacks/monstermeat/xenomeat + /obj/item/food/monstermeat/xenomeat ) - result = /obj/item/food/snacks/wingfangchu + result = /obj/item/food/wingfangchu /datum/recipe/grill/human/kebab items = list( /obj/item/stack/rods, - /obj/item/food/snacks/meat/human, - /obj/item/food/snacks/meat/human + /obj/item/food/meat/human, + /obj/item/food/meat/human ) - result = /obj/item/food/snacks/human/kebab + result = /obj/item/food/human/kebab /datum/recipe/grill/syntikebab items = list( /obj/item/stack/rods, - /obj/item/food/snacks/meat/syntiflesh, - /obj/item/food/snacks/meat/syntiflesh + /obj/item/food/meat/syntiflesh, + /obj/item/food/meat/syntiflesh ) - result = /obj/item/food/snacks/syntikebab + result = /obj/item/food/syntikebab /datum/recipe/grill/meatkeb // Do not put this above the other meat kebab variants or it will override them. items = list( /obj/item/stack/rods, - /obj/item/food/snacks/meat, - /obj/item/food/snacks/meat + /obj/item/food/meat, + /obj/item/food/meat ) - result = /obj/item/food/snacks/meatkebab + result = /obj/item/food/meatkebab /datum/recipe/grill/tofukebab items = list( /obj/item/stack/rods, - /obj/item/food/snacks/tofu, - /obj/item/food/snacks/tofu + /obj/item/food/tofu, + /obj/item/food/tofu ) - result = /obj/item/food/snacks/tofukebab + result = /obj/item/food/tofukebab /datum/recipe/grill/picoss_kebab reagents = list("vinegar" = 5) items = list( - /obj/item/food/snacks/carpmeat, - /obj/item/food/snacks/carpmeat, - /obj/item/food/snacks/grown/onion, - /obj/item/food/snacks/grown/chili, + /obj/item/food/carpmeat, + /obj/item/food/carpmeat, + /obj/item/food/grown/onion, + /obj/item/food/grown/chili, /obj/item/stack/rods ) - result = /obj/item/food/snacks/picoss_kebab + result = /obj/item/food/picoss_kebab /datum/recipe/grill/picoss_kebab/make_food(obj/container) - var/obj/item/food/snacks/picoss_kebab/being_cooked = ..() + var/obj/item/food/picoss_kebab/being_cooked = ..() being_cooked.reagents.del_reagent("carpotoxin") return being_cooked /datum/recipe/grill/sushi_Tamago reagents = list("sake" = 5) items = list( - /obj/item/food/snacks/egg, - /obj/item/food/snacks/boiledrice, + /obj/item/food/egg, + /obj/item/food/boiledrice, /obj/item/stack/seaweed ) - result = /obj/item/food/snacks/sushi_Tamago + result = /obj/item/food/sushi_Tamago /datum/recipe/grill/sushi_Unagi reagents = list("sake" = 5) items = list( /obj/item/fish/electric_eel, - /obj/item/food/snacks/boiledrice, + /obj/item/food/boiledrice, /obj/item/stack/seaweed ) - result = /obj/item/food/snacks/sushi_Unagi + result = /obj/item/food/sushi_Unagi /datum/recipe/grill/sushi_Ebi items = list( - /obj/item/food/snacks/boiledrice, - /obj/item/food/snacks/boiled_shrimp, + /obj/item/food/boiledrice, + /obj/item/food/boiled_shrimp, /obj/item/stack/seaweed ) - result = /obj/item/food/snacks/sushi_Ebi + result = /obj/item/food/sushi_Ebi /datum/recipe/grill/sushi_Ikura items = list( - /obj/item/food/snacks/boiledrice, + /obj/item/food/boiledrice, /obj/item/fish_eggs/salmon, /obj/item/stack/seaweed ) - result = /obj/item/food/snacks/sushi_Ikura + result = /obj/item/food/sushi_Ikura /datum/recipe/grill/sushi_Inari items = list( - /obj/item/food/snacks/boiledrice, - /obj/item/food/snacks/fried_tofu, + /obj/item/food/boiledrice, + /obj/item/food/fried_tofu, /obj/item/stack/seaweed ) - result = /obj/item/food/snacks/sushi_Inari + result = /obj/item/food/sushi_Inari /datum/recipe/grill/sushi_Sake items = list( - /obj/item/food/snacks/boiledrice, - /obj/item/food/snacks/salmonmeat, + /obj/item/food/boiledrice, + /obj/item/food/salmonmeat, /obj/item/stack/seaweed ) - result = /obj/item/food/snacks/sushi_Sake + result = /obj/item/food/sushi_Sake /datum/recipe/grill/sushi_SmokedSalmon items = list( - /obj/item/food/snacks/boiledrice, - /obj/item/food/snacks/salmonsteak, + /obj/item/food/boiledrice, + /obj/item/food/salmonsteak, /obj/item/stack/seaweed ) - result = /obj/item/food/snacks/sushi_SmokedSalmon + result = /obj/item/food/sushi_SmokedSalmon /datum/recipe/grill/sushi_Masago items = list( - /obj/item/food/snacks/boiledrice, + /obj/item/food/boiledrice, /obj/item/fish_eggs/goldfish, /obj/item/stack/seaweed ) - result = /obj/item/food/snacks/sushi_Masago + result = /obj/item/food/sushi_Masago /datum/recipe/grill/sushi_Tobiko items = list( - /obj/item/food/snacks/boiledrice, + /obj/item/food/boiledrice, /obj/item/fish_eggs/shark, /obj/item/stack/seaweed ) - result = /obj/item/food/snacks/sushi_Tobiko + result = /obj/item/food/sushi_Tobiko /datum/recipe/grill/sushi_TobikoEgg items = list( - /obj/item/food/snacks/sushi_Tobiko, - /obj/item/food/snacks/egg, + /obj/item/food/sushi_Tobiko, + /obj/item/food/egg, /obj/item/stack/seaweed ) - result = /obj/item/food/snacks/sushi_TobikoEgg + result = /obj/item/food/sushi_TobikoEgg /datum/recipe/grill/sushi_Tai items = list( - /obj/item/food/snacks/boiledrice, - /obj/item/food/snacks/catfishmeat, + /obj/item/food/boiledrice, + /obj/item/food/catfishmeat, /obj/item/stack/seaweed ) - result = /obj/item/food/snacks/sushi_Tai + result = /obj/item/food/sushi_Tai /datum/recipe/grill/goliath - items = list(/obj/item/food/snacks/monstermeat/goliath) - result = /obj/item/food/snacks/goliath_steak + items = list(/obj/item/food/monstermeat/goliath) + result = /obj/item/food/goliath_steak /datum/recipe/grill/shrimp_skewer items = list( - /obj/item/food/snacks/shrimp, - /obj/item/food/snacks/shrimp, - /obj/item/food/snacks/shrimp, - /obj/item/food/snacks/shrimp, + /obj/item/food/shrimp, + /obj/item/food/shrimp, + /obj/item/food/shrimp, + /obj/item/food/shrimp, /obj/item/stack/rods ) - result = /obj/item/food/snacks/shrimp_skewer + result = /obj/item/food/shrimp_skewer /datum/recipe/grill/fish_skewer reagents = list("flour" = 10) items = list( - /obj/item/food/snacks/salmonmeat, - /obj/item/food/snacks/salmonmeat, + /obj/item/food/salmonmeat, + /obj/item/food/salmonmeat, /obj/item/stack/rods ) - result = /obj/item/food/snacks/fish_skewer + result = /obj/item/food/fish_skewer /datum/recipe/grill/pancake items = list( - /obj/item/food/snacks/cookiedough + /obj/item/food/cookiedough ) - result = /obj/item/food/snacks/pancake + result = /obj/item/food/pancake /datum/recipe/grill/berry_pancake items = list( - /obj/item/food/snacks/cookiedough, - /obj/item/food/snacks/grown/berries + /obj/item/food/cookiedough, + /obj/item/food/grown/berries ) - result = /obj/item/food/snacks/pancake/berry_pancake + result = /obj/item/food/pancake/berry_pancake /datum/recipe/grill/choc_chip_pancake items = list( - /obj/item/food/snacks/cookiedough, - /obj/item/food/snacks/choc_pile + /obj/item/food/cookiedough, + /obj/item/food/choc_pile ) - result = /obj/item/food/snacks/pancake/choc_chip_pancake + result = /obj/item/food/pancake/choc_chip_pancake /datum/recipe/grill/bbqribs reagents = list("bbqsauce" = 5) items = list( - /obj/item/food/snacks/meat, - /obj/item/food/snacks/meat + /obj/item/food/meat, + /obj/item/food/meat ) - result = /obj/item/food/snacks/bbqribs + result = /obj/item/food/bbqribs diff --git a/code/modules/food_and_drinks/recipes/recipes_microwave.dm b/code/modules/food_and_drinks/recipes/recipes_microwave.dm index 4e6f5fc16650..7457a25c82e5 100644 --- a/code/modules/food_and_drinks/recipes/recipes_microwave.dm +++ b/code/modules/food_and_drinks/recipes/recipes_microwave.dm @@ -5,863 +5,863 @@ /datum/recipe/microwave/boiledegg reagents = list("water" = 5) items = list( - /obj/item/food/snacks/egg + /obj/item/food/egg ) - result = /obj/item/food/snacks/boiledegg + result = /obj/item/food/boiledegg /datum/recipe/microwave/dionaroast reagents = list("facid" = 5) //It dissolves the carapace. Still poisonous, though. items = list( /obj/item/holder/diona, - /obj/item/food/snacks/grown/apple + /obj/item/food/grown/apple ) - result = /obj/item/food/snacks/dionaroast + result = /obj/item/food/dionaroast /datum/recipe/microwave/jellydonut reagents = list("berryjuice" = 5, "sugar" = 5) items = list( - /obj/item/food/snacks/dough + /obj/item/food/dough ) - result = /obj/item/food/snacks/donut/jelly + result = /obj/item/food/donut/jelly /datum/recipe/microwave/jellydonut/slime reagents = list("slimejelly" = 5, "sugar" = 5) items = list( - /obj/item/food/snacks/dough + /obj/item/food/dough ) - result = /obj/item/food/snacks/donut/jelly/slimejelly + result = /obj/item/food/donut/jelly/slimejelly /datum/recipe/microwave/jellydonut/cherry reagents = list("cherryjelly" = 5, "sugar" = 5) items = list( - /obj/item/food/snacks/dough + /obj/item/food/dough ) - result = /obj/item/food/snacks/donut/jelly/cherryjelly + result = /obj/item/food/donut/jelly/cherryjelly /datum/recipe/microwave/donut reagents = list("sugar" = 5) items = list( - /obj/item/food/snacks/dough + /obj/item/food/dough ) - result = /obj/item/food/snacks/donut + result = /obj/item/food/donut /datum/recipe/microwave/donut/sprinkles reagents = list("sugar" = 5, "sprinkles" = 2) items = list( - /obj/item/food/snacks/dough + /obj/item/food/dough ) - result = /obj/item/food/snacks/donut/sprinkles + result = /obj/item/food/donut/sprinkles /datum/recipe/microwave/human/burger items = list( - /obj/item/food/snacks/meat/human, - /obj/item/food/snacks/grown/lettuce, - /obj/item/food/snacks/bun + /obj/item/food/meat/human, + /obj/item/food/grown/lettuce, + /obj/item/food/bun ) - result = /obj/item/food/snacks/human/burger + result = /obj/item/food/human/burger /datum/recipe/microwave/chickenburger items = list( - /obj/item/food/snacks/bun, - /obj/item/food/snacks/meat/chicken + /obj/item/food/bun, + /obj/item/food/meat/chicken ) - result = /obj/item/food/snacks/burger/chicken + result = /obj/item/food/burger/chicken /datum/recipe/microwave/plainburger items = list( - /obj/item/food/snacks/bun, - /obj/item/food/snacks/grown/lettuce, - /obj/item/food/snacks/meat //do not place this recipe before /datum/recipe/microwave/human/burger + /obj/item/food/bun, + /obj/item/food/grown/lettuce, + /obj/item/food/meat //do not place this recipe before /datum/recipe/microwave/human/burger ) - result = /obj/item/food/snacks/burger/plain + result = /obj/item/food/burger/plain /datum/recipe/microwave/syntiburger items = list( - /obj/item/food/snacks/bun, - /obj/item/food/snacks/grown/lettuce, - /obj/item/food/snacks/meat/syntiflesh + /obj/item/food/bun, + /obj/item/food/grown/lettuce, + /obj/item/food/meat/syntiflesh ) - result = /obj/item/food/snacks/burger/plain + result = /obj/item/food/burger/plain /datum/recipe/microwave/bigbiteburger items = list( - /obj/item/food/snacks/burger/plain, - /obj/item/food/snacks/meat, - /obj/item/food/snacks/meat, - /obj/item/food/snacks/meat, - /obj/item/food/snacks/cheesewedge + /obj/item/food/burger/plain, + /obj/item/food/meat, + /obj/item/food/meat, + /obj/item/food/meat, + /obj/item/food/cheesewedge ) - result = /obj/item/food/snacks/burger/bigbite + result = /obj/item/food/burger/bigbite /datum/recipe/microwave/superbiteburger reagents = list("sodiumchloride" = 5, "blackpepper" = 5) items = list( - /obj/item/food/snacks/burger/bigbite, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/meat, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/bacon, - /obj/item/food/snacks/tomatoslice + /obj/item/food/burger/bigbite, + /obj/item/food/dough, + /obj/item/food/meat, + /obj/item/food/cheesewedge, + /obj/item/food/bacon, + /obj/item/food/tomatoslice ) - result = /obj/item/food/snacks/burger/superbite + result = /obj/item/food/burger/superbite /datum/recipe/microwave/brainburger items = list( - /obj/item/food/snacks/bun, + /obj/item/food/bun, /obj/item/organ/internal/brain ) - result = /obj/item/food/snacks/burger/brain + result = /obj/item/food/burger/brain /datum/recipe/microwave/hamborger items = list( - /obj/item/food/snacks/bun, + /obj/item/food/bun, /obj/item/robot_parts/head ) - result = /obj/item/food/snacks/burger/hamborger + result = /obj/item/food/burger/hamborger /datum/recipe/microwave/xenoburger items = list( - /obj/item/food/snacks/bun, - /obj/item/food/snacks/monstermeat/xenomeat + /obj/item/food/bun, + /obj/item/food/monstermeat/xenomeat ) - result = /obj/item/food/snacks/burger/xeno + result = /obj/item/food/burger/xeno /datum/recipe/microwave/fishburger items = list( - /obj/item/food/snacks/bun, - /obj/item/food/snacks/carpmeat + /obj/item/food/bun, + /obj/item/food/carpmeat ) - result = /obj/item/food/snacks/fishburger + result = /obj/item/food/fishburger /datum/recipe/microwave/fishburger/make_food(obj/container) - var/obj/item/food/snacks/fishburger/being_cooked = ..() + var/obj/item/food/fishburger/being_cooked = ..() being_cooked.reagents.del_reagent("carpotoxin") return being_cooked /datum/recipe/microwave/tofuburger items = list( - /obj/item/food/snacks/bun, - /obj/item/food/snacks/tofu + /obj/item/food/bun, + /obj/item/food/tofu ) - result = /obj/item/food/snacks/burger/tofu + result = /obj/item/food/burger/tofu /datum/recipe/microwave/ghostburger items = list( - /obj/item/food/snacks/bun, - /obj/item/food/snacks/ectoplasm //where do you even find this stuff + /obj/item/food/bun, + /obj/item/food/ectoplasm //where do you even find this stuff ) - result = /obj/item/food/snacks/burger/ghost + result = /obj/item/food/burger/ghost /datum/recipe/microwave/clownburger items = list( - /obj/item/food/snacks/bun, + /obj/item/food/bun, /obj/item/clothing/mask/gas/clown_hat ) - result = /obj/item/food/snacks/burger/clown + result = /obj/item/food/burger/clown /datum/recipe/microwave/mimeburger items = list( - /obj/item/food/snacks/bun, + /obj/item/food/bun, /obj/item/clothing/head/beret ) - result = /obj/item/food/snacks/burger/mime + result = /obj/item/food/burger/mime /datum/recipe/microwave/baseballburger items = list( - /obj/item/food/snacks/bun, + /obj/item/food/bun, /obj/item/melee/baseball_bat ) - result = /obj/item/food/snacks/burger/baseball + result = /obj/item/food/burger/baseball /datum/recipe/microwave/cheeseburger items = list( - /obj/item/food/snacks/bun, - /obj/item/food/snacks/meat, - /obj/item/food/snacks/grown/lettuce, - /obj/item/food/snacks/cheesewedge + /obj/item/food/bun, + /obj/item/food/meat, + /obj/item/food/grown/lettuce, + /obj/item/food/cheesewedge ) - result = /obj/item/food/snacks/burger/cheese + result = /obj/item/food/burger/cheese /datum/recipe/microwave/appendixburger items = list( - /obj/item/food/snacks/bun, + /obj/item/food/bun, /obj/item/organ/internal/appendix ) - result = /obj/item/food/snacks/burger/appendix + result = /obj/item/food/burger/appendix /datum/recipe/microwave/appendixburger_bitten items = list( - /obj/item/food/snacks/appendix, - /obj/item/food/snacks/bun + /obj/item/food/appendix, + /obj/item/food/bun ) - result = /obj/item/food/snacks/burger/appendix + result = /obj/item/food/burger/appendix /datum/recipe/microwave/bearger items = list( - /obj/item/food/snacks/bun, - /obj/item/food/snacks/monstermeat/bearmeat + /obj/item/food/bun, + /obj/item/food/monstermeat/bearmeat ) - result = /obj/item/food/snacks/burger/bearger + result = /obj/item/food/burger/bearger /datum/recipe/microwave/fivealarmburger items = list( - /obj/item/food/snacks/bun, - /obj/item/food/snacks/grown/ghost_chili, - /obj/item/food/snacks/grown/ghost_chili, - /obj/item/food/snacks/grown/lettuce + /obj/item/food/bun, + /obj/item/food/grown/ghost_chili, + /obj/item/food/grown/ghost_chili, + /obj/item/food/grown/lettuce ) - result = /obj/item/food/snacks/burger/fivealarm + result = /obj/item/food/burger/fivealarm /datum/recipe/microwave/baconburger items = list( - /obj/item/food/snacks/bun, - /obj/item/food/snacks/bacon, - /obj/item/food/snacks/bacon, - /obj/item/food/snacks/grown/lettuce, - /obj/item/food/snacks/cheesewedge + /obj/item/food/bun, + /obj/item/food/bacon, + /obj/item/food/bacon, + /obj/item/food/grown/lettuce, + /obj/item/food/cheesewedge ) - result = /obj/item/food/snacks/burger/bacon + result = /obj/item/food/burger/bacon /datum/recipe/microwave/mcrib items = list( - /obj/item/food/snacks/bun, - /obj/item/food/snacks/bbqribs, - /obj/item/food/snacks/onion_slice + /obj/item/food/bun, + /obj/item/food/bbqribs, + /obj/item/food/onion_slice ) - result = /obj/item/food/snacks/burger/mcrib + result = /obj/item/food/burger/mcrib /datum/recipe/microwave/mcguffin items = list( - /obj/item/food/snacks/bun, - /obj/item/food/snacks/bacon, - /obj/item/food/snacks/bacon, - /obj/item/food/snacks/friedegg + /obj/item/food/bun, + /obj/item/food/bacon, + /obj/item/food/bacon, + /obj/item/food/friedegg ) - result = /obj/item/food/snacks/burger/mcguffin + result = /obj/item/food/burger/mcguffin /datum/recipe/microwave/hotdog items = list( - /obj/item/food/snacks/bun, - /obj/item/food/snacks/sausage + /obj/item/food/bun, + /obj/item/food/sausage ) - result = /obj/item/food/snacks/hotdog + result = /obj/item/food/hotdog /datum/recipe/microwave/donkpocket items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/meatball + /obj/item/food/dough, + /obj/item/food/meatball ) - result = /obj/item/food/snacks/donkpocket + result = /obj/item/food/donkpocket /datum/recipe/microwave/warmdonkpocket duplicate = FALSE items = list( - /obj/item/food/snacks/donkpocket + /obj/item/food/donkpocket ) - result = /obj/item/food/snacks/warmdonkpocket + result = /obj/item/food/warmdonkpocket /datum/recipe/microwave/reheatwarmdonkpocket duplicate = FALSE items = list( - /obj/item/food/snacks/warmdonkpocket + /obj/item/food/warmdonkpocket ) - result = /obj/item/food/snacks/warmdonkpocket + result = /obj/item/food/warmdonkpocket /datum/recipe/microwave/eggplantparm items = list( - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/grown/eggplant + /obj/item/food/cheesewedge, + /obj/item/food/cheesewedge, + /obj/item/food/grown/eggplant ) - result = /obj/item/food/snacks/eggplantparm + result = /obj/item/food/eggplantparm /datum/recipe/microwave/soylentviridians reagents = list("flour" = 10) items = list( - /obj/item/food/snacks/grown/soybeans + /obj/item/food/grown/soybeans ) - result = /obj/item/food/snacks/soylentviridians + result = /obj/item/food/soylentviridians /datum/recipe/microwave/soylentgreen reagents = list("flour" = 10) items = list( - /obj/item/food/snacks/meat/human, - /obj/item/food/snacks/meat/human + /obj/item/food/meat/human, + /obj/item/food/meat/human ) - result = /obj/item/food/snacks/soylentgreen + result = /obj/item/food/soylentgreen /datum/recipe/microwave/chaosdonut reagents = list("frostoil" = 5, "capsaicin" = 5, "sugar" = 5) items = list( - /obj/item/food/snacks/dough + /obj/item/food/dough ) - result = /obj/item/food/snacks/donut/chaos + result = /obj/item/food/donut/chaos /datum/recipe/microwave/cheesyfries items = list( - /obj/item/food/snacks/fries, - /obj/item/food/snacks/cheesewedge + /obj/item/food/fries, + /obj/item/food/cheesewedge ) - result = /obj/item/food/snacks/cheesyfries + result = /obj/item/food/cheesyfries /datum/recipe/microwave/cubancarp items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/carpmeat, - /obj/item/food/snacks/grown/chili + /obj/item/food/dough, + /obj/item/food/carpmeat, + /obj/item/food/grown/chili ) - result = /obj/item/food/snacks/cubancarp + result = /obj/item/food/cubancarp /datum/recipe/microwave/cubancarp/make_food(obj/container) - var/obj/item/food/snacks/cubancarp/being_cooked = ..() + var/obj/item/food/cubancarp/being_cooked = ..() being_cooked.reagents.del_reagent("carpotoxin") return being_cooked /datum/recipe/microwave/popcorn items = list( - /obj/item/food/snacks/grown/corn + /obj/item/food/grown/corn ) - result = /obj/item/food/snacks/popcorn + result = /obj/item/food/popcorn /datum/recipe/microwave/spacylibertyduff reagents = list("water" = 5, "vodka" = 5) items = list( - /obj/item/food/snacks/grown/mushroom/libertycap, - /obj/item/food/snacks/grown/mushroom/libertycap, - /obj/item/food/snacks/grown/mushroom/libertycap + /obj/item/food/grown/mushroom/libertycap, + /obj/item/food/grown/mushroom/libertycap, + /obj/item/food/grown/mushroom/libertycap ) - result = /obj/item/food/snacks/spacylibertyduff + result = /obj/item/food/spacylibertyduff /datum/recipe/microwave/amanitajelly reagents = list("water" = 5, "vodka" = 5) items = list( - /obj/item/food/snacks/grown/mushroom/amanita, - /obj/item/food/snacks/grown/mushroom/amanita, - /obj/item/food/snacks/grown/mushroom/amanita + /obj/item/food/grown/mushroom/amanita, + /obj/item/food/grown/mushroom/amanita, + /obj/item/food/grown/mushroom/amanita ) - result = /obj/item/food/snacks/amanitajelly + result = /obj/item/food/amanitajelly /datum/recipe/microwave/amanitajelly/make_food(obj/container) - var/obj/item/food/snacks/amanitajelly/being_cooked = ..() + var/obj/item/food/amanitajelly/being_cooked = ..() being_cooked.reagents.del_reagent("amanitin") return being_cooked /datum/recipe/microwave/meatballsoup reagents = list("water" = 10) items = list( - /obj/item/food/snacks/meatball, - /obj/item/food/snacks/grown/potato, - /obj/item/food/snacks/grown/carrot + /obj/item/food/meatball, + /obj/item/food/grown/potato, + /obj/item/food/grown/carrot ) - result = /obj/item/food/snacks/soup/meatballsoup + result = /obj/item/food/soup/meatballsoup /datum/recipe/microwave/vegetablesoup reagents = list("water" = 10) items = list( - /obj/item/food/snacks/grown/potato, - /obj/item/food/snacks/grown/carrot, - /obj/item/food/snacks/grown/corn, - /obj/item/food/snacks/grown/eggplant + /obj/item/food/grown/potato, + /obj/item/food/grown/carrot, + /obj/item/food/grown/corn, + /obj/item/food/grown/eggplant ) - result = /obj/item/food/snacks/soup/vegetablesoup + result = /obj/item/food/soup/vegetablesoup /datum/recipe/microwave/nettlesoup reagents = list("water" = 10) items = list( - /obj/item/food/snacks/egg, + /obj/item/food/egg, /obj/item/grown/nettle/basic, - /obj/item/food/snacks/grown/potato + /obj/item/food/grown/potato ) - result = /obj/item/food/snacks/soup/nettlesoup + result = /obj/item/food/soup/nettlesoup /datum/recipe/microwave/wishsoup reagents = list("water" = 20) - result = /obj/item/food/snacks/soup/wishsoup + result = /obj/item/food/soup/wishsoup /datum/recipe/microwave/hotchili items = list( - /obj/item/food/snacks/meat, - /obj/item/food/snacks/grown/chili, - /obj/item/food/snacks/grown/tomato + /obj/item/food/meat, + /obj/item/food/grown/chili, + /obj/item/food/grown/tomato ) - result = /obj/item/food/snacks/soup/hotchili + result = /obj/item/food/soup/hotchili /datum/recipe/microwave/coldchili items = list( - /obj/item/food/snacks/meat, - /obj/item/food/snacks/grown/icepepper, - /obj/item/food/snacks/grown/tomato + /obj/item/food/meat, + /obj/item/food/grown/icepepper, + /obj/item/food/grown/tomato ) - result = /obj/item/food/snacks/soup/coldchili + result = /obj/item/food/soup/coldchili /datum/recipe/microwave/spellburger items = list( - /obj/item/food/snacks/bun, + /obj/item/food/bun, /obj/item/clothing/head/wizard ) - result = /obj/item/food/snacks/burger/spell + result = /obj/item/food/burger/spell /datum/recipe/microwave/enchiladas items = list( - /obj/item/food/snacks/cutlet, - /obj/item/food/snacks/grown/chili, - /obj/item/food/snacks/grown/chili, - /obj/item/food/snacks/grown/corn + /obj/item/food/cutlet, + /obj/item/food/grown/chili, + /obj/item/food/grown/chili, + /obj/item/food/grown/corn ) - result = /obj/item/food/snacks/enchiladas + result = /obj/item/food/enchiladas /datum/recipe/microwave/burrito reagents = list("capsaicin" = 5, "rice" = 5) items = list( - /obj/item/food/snacks/cutlet, - /obj/item/food/snacks/beans, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/sliceable/flatdough + /obj/item/food/cutlet, + /obj/item/food/beans, + /obj/item/food/cheesewedge, + /obj/item/food/sliceable/flatdough ) - result = /obj/item/food/snacks/burrito + result = /obj/item/food/burrito /datum/recipe/microwave/monkeysdelight reagents = list("sodiumchloride" = 1, "blackpepper" = 1, "flour" = 10) items = list( - /obj/item/food/snacks/monkeycube, - /obj/item/food/snacks/grown/banana + /obj/item/food/monkeycube, + /obj/item/food/grown/banana ) - result = /obj/item/food/snacks/monkeysdelight + result = /obj/item/food/monkeysdelight /datum/recipe/microwave/fishandchips items = list( - /obj/item/food/snacks/fries, - /obj/item/food/snacks/carpmeat, + /obj/item/food/fries, + /obj/item/food/carpmeat, ) - result = /obj/item/food/snacks/fishandchips + result = /obj/item/food/fishandchips /datum/recipe/microwave/fishandchips/make_food(obj/container) - var/obj/item/food/snacks/fishandchips/being_cooked = ..() + var/obj/item/food/fishandchips/being_cooked = ..() being_cooked.reagents.del_reagent("carpotoxin") return being_cooked /datum/recipe/microwave/sandwich items = list( - /obj/item/food/snacks/meatsteak, - /obj/item/food/snacks/breadslice, - /obj/item/food/snacks/breadslice, - /obj/item/food/snacks/cheesewedge + /obj/item/food/meatsteak, + /obj/item/food/breadslice, + /obj/item/food/breadslice, + /obj/item/food/cheesewedge ) - result = /obj/item/food/snacks/sandwich + result = /obj/item/food/sandwich /datum/recipe/microwave/tomatosoup reagents = list("water" = 10) items = list( - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/grown/tomato + /obj/item/food/grown/tomato, + /obj/item/food/grown/tomato ) - result = /obj/item/food/snacks/soup/tomatosoup + result = /obj/item/food/soup/tomatosoup /datum/recipe/microwave/stew reagents = list("water" = 10) items= list( - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/grown/potato, - /obj/item/food/snacks/grown/carrot, - /obj/item/food/snacks/grown/eggplant, - /obj/item/food/snacks/grown/mushroom, - /obj/item/food/snacks/meat + /obj/item/food/grown/tomato, + /obj/item/food/grown/potato, + /obj/item/food/grown/carrot, + /obj/item/food/grown/eggplant, + /obj/item/food/grown/mushroom, + /obj/item/food/meat ) - result = /obj/item/food/snacks/soup/stew + result = /obj/item/food/soup/stew /datum/recipe/microwave/slimetoast reagents = list("slimejelly" = 5) items = list( - /obj/item/food/snacks/breadslice, + /obj/item/food/breadslice, ) - result = /obj/item/food/snacks/jelliedtoast/slime + result = /obj/item/food/jelliedtoast/slime /datum/recipe/microwave/jelliedtoast reagents = list("cherryjelly" = 5) items = list( - /obj/item/food/snacks/breadslice + /obj/item/food/breadslice ) - result = /obj/item/food/snacks/jelliedtoast/cherry + result = /obj/item/food/jelliedtoast/cherry /datum/recipe/microwave/misosoup reagents = list("water" = 10) items = list( - /obj/item/food/snacks/soydope, - /obj/item/food/snacks/soydope, - /obj/item/food/snacks/tofu, - /obj/item/food/snacks/tofu + /obj/item/food/soydope, + /obj/item/food/soydope, + /obj/item/food/tofu, + /obj/item/food/tofu ) - result = /obj/item/food/snacks/soup/misosoup + result = /obj/item/food/soup/misosoup /datum/recipe/microwave/stewedsoymeat items = list( - /obj/item/food/snacks/soydope, - /obj/item/food/snacks/soydope, - /obj/item/food/snacks/grown/carrot, - /obj/item/food/snacks/grown/tomato + /obj/item/food/soydope, + /obj/item/food/soydope, + /obj/item/food/grown/carrot, + /obj/item/food/grown/tomato ) - result = /obj/item/food/snacks/stewedsoymeat + result = /obj/item/food/stewedsoymeat /datum/recipe/microwave/boiledspaghetti reagents = list("water" = 5) items = list( - /obj/item/food/snacks/spaghetti + /obj/item/food/spaghetti ) - result = /obj/item/food/snacks/boiledspaghetti + result = /obj/item/food/boiledspaghetti /datum/recipe/microwave/boiledrice reagents = list("water" = 5, "rice" = 10) - result = /obj/item/food/snacks/boiledrice + result = /obj/item/food/boiledrice /datum/recipe/microwave/ricepudding reagents = list("milk" = 5, "rice" = 10) - result = /obj/item/food/snacks/ricepudding + result = /obj/item/food/ricepudding /datum/recipe/microwave/pastatomato reagents = list("water" = 5) items = list( - /obj/item/food/snacks/spaghetti, - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/grown/tomato + /obj/item/food/spaghetti, + /obj/item/food/grown/tomato, + /obj/item/food/grown/tomato ) - result = /obj/item/food/snacks/pastatomato + result = /obj/item/food/pastatomato /datum/recipe/microwave/poppypretzel items = list( /obj/item/seeds/poppy, - /obj/item/food/snacks/dough + /obj/item/food/dough ) - result = /obj/item/food/snacks/poppypretzel + result = /obj/item/food/poppypretzel /datum/recipe/microwave/meatballspaggetti reagents = list("water" = 5) items = list( - /obj/item/food/snacks/spaghetti, - /obj/item/food/snacks/meatball, - /obj/item/food/snacks/meatball, + /obj/item/food/spaghetti, + /obj/item/food/meatball, + /obj/item/food/meatball, ) - result = /obj/item/food/snacks/meatballspaghetti + result = /obj/item/food/meatballspaghetti /datum/recipe/microwave/spesslaw reagents = list("water" = 5) items = list( - /obj/item/food/snacks/spaghetti, - /obj/item/food/snacks/meatball, - /obj/item/food/snacks/meatball, - /obj/item/food/snacks/meatball, - /obj/item/food/snacks/meatball, + /obj/item/food/spaghetti, + /obj/item/food/meatball, + /obj/item/food/meatball, + /obj/item/food/meatball, + /obj/item/food/meatball, ) - result = /obj/item/food/snacks/spesslaw + result = /obj/item/food/spesslaw /datum/recipe/microwave/macncheese reagents = list("water" = 5, "milk" = 5) items = list( - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/macaroni, + /obj/item/food/cheesewedge, + /obj/item/food/macaroni, ) - result = /obj/item/food/snacks/macncheese + result = /obj/item/food/macncheese /datum/recipe/microwave/crazyburger reagents = list("cornoil" = 15) items = list( - /obj/item/food/snacks/bun, - /obj/item/food/snacks/meat, - /obj/item/food/snacks/meat, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/grown/lettuce, - /obj/item/food/snacks/grown/chili, + /obj/item/food/bun, + /obj/item/food/meat, + /obj/item/food/meat, + /obj/item/food/cheesewedge, + /obj/item/food/cheesewedge, + /obj/item/food/grown/lettuce, + /obj/item/food/grown/chili, /obj/item/toy/crayon/green, /obj/item/flashlight/flare ) - result = /obj/item/food/snacks/burger/crazy + result = /obj/item/food/burger/crazy /datum/recipe/microwave/blt items = list( - /obj/item/food/snacks/breadslice, - /obj/item/food/snacks/breadslice, - /obj/item/food/snacks/grown/lettuce, - /obj/item/food/snacks/tomatoslice, - /obj/item/food/snacks/bacon + /obj/item/food/breadslice, + /obj/item/food/breadslice, + /obj/item/food/grown/lettuce, + /obj/item/food/tomatoslice, + /obj/item/food/bacon ) - result = /obj/item/food/snacks/blt + result = /obj/item/food/blt /datum/recipe/microwave/peanut_butter_jelly/cherry reagents = list("cherryjelly" = 5, "peanutbutter" = 5) items = list( - /obj/item/food/snacks/breadslice, - /obj/item/food/snacks/breadslice + /obj/item/food/breadslice, + /obj/item/food/breadslice ) - result = /obj/item/food/snacks/peanut_butter_jelly/cherry + result = /obj/item/food/peanut_butter_jelly/cherry /datum/recipe/microwave/peanut_butter_jelly/slime reagents = list("slimejelly" = 5, "peanutbutter" = 5) items = list( - /obj/item/food/snacks/breadslice, - /obj/item/food/snacks/breadslice + /obj/item/food/breadslice, + /obj/item/food/breadslice ) - result = /obj/item/food/snacks/peanut_butter_jelly/slime + result = /obj/item/food/peanut_butter_jelly/slime /datum/recipe/microwave/peanut_butter_banana reagents = list("peanutbutter" = 5) items = list( - /obj/item/food/snacks/breadslice, - /obj/item/food/snacks/breadslice, - /obj/item/food/snacks/grown/banana + /obj/item/food/breadslice, + /obj/item/food/breadslice, + /obj/item/food/grown/banana ) - result = /obj/item/food/snacks/peanut_butter_banana + result = /obj/item/food/peanut_butter_banana /datum/recipe/microwave/philly_cheesesteak items = list( - /obj/item/food/snacks/breadslice, - /obj/item/food/snacks/breadslice, - /obj/item/food/snacks/cutlet, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/grown/onion + /obj/item/food/breadslice, + /obj/item/food/breadslice, + /obj/item/food/cutlet, + /obj/item/food/cheesewedge, + /obj/item/food/grown/onion ) - result = /obj/item/food/snacks/philly_cheesesteak + result = /obj/item/food/philly_cheesesteak /datum/recipe/microwave/ppattyred reagents = list("cherryjelly" = 5) items = list( - /obj/item/food/snacks/bun, - /obj/item/food/snacks/meat + /obj/item/food/bun, + /obj/item/food/meat ) - result = /obj/item/food/snacks/burger/ppatty/red + result = /obj/item/food/burger/ppatty/red /datum/recipe/microwave/ppattyorange reagents = list("orangejuice" = 5) items = list( - /obj/item/food/snacks/bun, - /obj/item/food/snacks/meat + /obj/item/food/bun, + /obj/item/food/meat ) - result = /obj/item/food/snacks/burger/ppatty/orange + result = /obj/item/food/burger/ppatty/orange /datum/recipe/microwave/ppattyyellow reagents = list("lemonjuice" = 5) items = list( - /obj/item/food/snacks/bun, - /obj/item/food/snacks/meat + /obj/item/food/bun, + /obj/item/food/meat ) - result = /obj/item/food/snacks/burger/ppatty/yellow + result = /obj/item/food/burger/ppatty/yellow /datum/recipe/microwave/ppattygreen reagents = list("limejuice" = 5) items = list( - /obj/item/food/snacks/bun, - /obj/item/food/snacks/meat + /obj/item/food/bun, + /obj/item/food/meat ) - result = /obj/item/food/snacks/burger/ppatty/green + result = /obj/item/food/burger/ppatty/green /datum/recipe/microwave/ppattyblue reagents = list("berryjuice" = 5) items = list( - /obj/item/food/snacks/bun, - /obj/item/food/snacks/meat + /obj/item/food/bun, + /obj/item/food/meat ) - result = /obj/item/food/snacks/burger/ppatty/blue + result = /obj/item/food/burger/ppatty/blue /datum/recipe/microwave/ppattypurple reagents = list("grapejuice" = 5) items = list( - /obj/item/food/snacks/bun, - /obj/item/food/snacks/meat + /obj/item/food/bun, + /obj/item/food/meat ) - result = /obj/item/food/snacks/burger/ppatty/purple + result = /obj/item/food/burger/ppatty/purple /datum/recipe/microwave/ppattywhite reagents = list("sugar" = 5) items = list( - /obj/item/food/snacks/bun, - /obj/item/food/snacks/meat + /obj/item/food/bun, + /obj/item/food/meat ) - result = /obj/item/food/snacks/burger/ppatty/white + result = /obj/item/food/burger/ppatty/white /datum/recipe/microwave/ppattyrainbow items = list( - /obj/item/food/snacks/burger/ppatty/red, - /obj/item/food/snacks/burger/ppatty/orange, - /obj/item/food/snacks/burger/ppatty/yellow, - /obj/item/food/snacks/burger/ppatty/green, - /obj/item/food/snacks/burger/ppatty/blue, - /obj/item/food/snacks/burger/ppatty/purple, - /obj/item/food/snacks/burger/ppatty/white + /obj/item/food/burger/ppatty/red, + /obj/item/food/burger/ppatty/orange, + /obj/item/food/burger/ppatty/yellow, + /obj/item/food/burger/ppatty/green, + /obj/item/food/burger/ppatty/blue, + /obj/item/food/burger/ppatty/purple, + /obj/item/food/burger/ppatty/white ) - result = /obj/item/food/snacks/burger/ppatty/rainbow + result = /obj/item/food/burger/ppatty/rainbow /datum/recipe/microwave/elecburger items = list( - /obj/item/food/snacks/bun, + /obj/item/food/bun, /obj/item/stack/sheet/mineral/plasma, /obj/item/stack/sheet/mineral/plasma ) - result = /obj/item/food/snacks/burger/elec + result = /obj/item/food/burger/elec /datum/recipe/microwave/ratburger items = list( - /obj/item/food/snacks/bun, + /obj/item/food/bun, /obj/item/holder/mouse ) - result = /obj/item/food/snacks/burger/rat + result = /obj/item/food/burger/rat /datum/recipe/microwave/candiedapple reagents = list("water" = 5, "sugar" = 5) - items = list(/obj/item/food/snacks/grown/apple) - result = /obj/item/food/snacks/candiedapple + items = list(/obj/item/food/grown/apple) + result = /obj/item/food/candiedapple /datum/recipe/microwave/slimeburger reagents = list("slimejelly" = 5) items = list( - /obj/item/food/snacks/bun + /obj/item/food/bun ) - result = /obj/item/food/snacks/burger/jelly/slime + result = /obj/item/food/burger/jelly/slime /datum/recipe/microwave/jellyburger reagents = list("cherryjelly" = 5) items = list( - /obj/item/food/snacks/bun + /obj/item/food/bun ) - result = /obj/item/food/snacks/burger/jelly/cherry + result = /obj/item/food/burger/jelly/cherry /datum/recipe/microwave/twobread reagents = list("wine" = 5) items = list( - /obj/item/food/snacks/breadslice, - /obj/item/food/snacks/breadslice + /obj/item/food/breadslice, + /obj/item/food/breadslice ) - result = /obj/item/food/snacks/twobread + result = /obj/item/food/twobread /datum/recipe/microwave/slimesandwich reagents = list("slimejelly" = 5) items = list( - /obj/item/food/snacks/breadslice, - /obj/item/food/snacks/breadslice + /obj/item/food/breadslice, + /obj/item/food/breadslice ) - result = /obj/item/food/snacks/jellysandwich/slime + result = /obj/item/food/jellysandwich/slime /datum/recipe/microwave/cherrysandwich reagents = list("cherryjelly" = 5) items = list( - /obj/item/food/snacks/breadslice, - /obj/item/food/snacks/breadslice + /obj/item/food/breadslice, + /obj/item/food/breadslice ) - result = /obj/item/food/snacks/jellysandwich/cherry + result = /obj/item/food/jellysandwich/cherry /datum/recipe/microwave/bloodsoup reagents = list("blood" = 10) items = list( - /obj/item/food/snacks/grown/tomato/blood, - /obj/item/food/snacks/grown/tomato/blood + /obj/item/food/grown/tomato/blood, + /obj/item/food/grown/tomato/blood ) - result = /obj/item/food/snacks/soup/bloodsoup + result = /obj/item/food/soup/bloodsoup /datum/recipe/microwave/slimesoup reagents = list("water" = 10, "slimejelly" = 5) - result = /obj/item/food/snacks/soup/slimesoup + result = /obj/item/food/soup/slimesoup /datum/recipe/microwave/clownstears reagents = list("water" = 10) items = list( /obj/item/stack/ore/bananium, - /obj/item/food/snacks/grown/banana + /obj/item/food/grown/banana ) - result = /obj/item/food/snacks/soup/clownstears + result = /obj/item/food/soup/clownstears /datum/recipe/microwave/clownchili reagents = list("water" = 10) items = list( - /obj/item/food/snacks/cutlet, - /obj/item/food/snacks/cutlet, - /obj/item/food/snacks/grown/chili, - /obj/item/food/snacks/grown/tomato, + /obj/item/food/cutlet, + /obj/item/food/cutlet, + /obj/item/food/grown/chili, + /obj/item/food/grown/tomato, /obj/item/clothing/shoes/clown_shoes ) - result = /obj/item/food/snacks/soup/clownchili + result = /obj/item/food/soup/clownchili /datum/recipe/microwave/eyesoup reagents = list("water" = 10) items = list( - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/grown/tomato, + /obj/item/food/grown/tomato, + /obj/item/food/grown/tomato, /obj/item/organ/internal/eyes ) - result = /obj/item/food/snacks/soup/eyesoup + result = /obj/item/food/soup/eyesoup /datum/recipe/microwave/sweetpotatosoup reagents = list("water" = 10, "milk" = 10) items = list( - /obj/item/food/snacks/grown/potato/sweet, - /obj/item/food/snacks/grown/potato/sweet + /obj/item/food/grown/potato/sweet, + /obj/item/food/grown/potato/sweet ) - result = /obj/item/food/snacks/soup/sweetpotatosoup + result = /obj/item/food/soup/sweetpotatosoup /datum/recipe/microwave/redbeetsoup reagents = list("water" = 10) items = list( - /obj/item/food/snacks/grown/redbeet, - /obj/item/food/snacks/grown/redbeet, - /obj/item/food/snacks/grown/cabbage + /obj/item/food/grown/redbeet, + /obj/item/food/grown/redbeet, + /obj/item/food/grown/cabbage ) - result = /obj/item/food/snacks/soup/redbeetsoup + result = /obj/item/food/soup/redbeetsoup /datum/recipe/microwave/frenchonionsoup reagents = list("water" = 10) items = list( - /obj/item/food/snacks/grown/onion, - /obj/item/food/snacks/cheesewedge + /obj/item/food/grown/onion, + /obj/item/food/cheesewedge ) - result = /obj/item/food/snacks/soup/frenchonionsoup + result = /obj/item/food/soup/frenchonionsoup /datum/recipe/microwave/zurek reagents = list("water" = 10, "flour" = 10) items = list( - /obj/item/food/snacks/boiledegg, - /obj/item/food/snacks/sausage, - /obj/item/food/snacks/grown/carrot, - /obj/item/food/snacks/grown/onion + /obj/item/food/boiledegg, + /obj/item/food/sausage, + /obj/item/food/grown/carrot, + /obj/item/food/grown/onion ) - result = /obj/item/food/snacks/soup/zurek + result = /obj/item/food/soup/zurek /datum/recipe/microwave/cullenskink reagents = list("water" = 10, "milk" = 10, "blackpepper" = 4) items = list( - /obj/item/food/snacks/salmonmeat, - /obj/item/food/snacks/grown/onion, - /obj/item/food/snacks/grown/potato + /obj/item/food/salmonmeat, + /obj/item/food/grown/onion, + /obj/item/food/grown/potato ) - result = /obj/item/food/snacks/soup/cullenskink + result = /obj/item/food/soup/cullenskink /datum/recipe/microwave/chicken_noodle_soup reagents = list("water" = 10) items = list( - /obj/item/food/snacks/meat, - /obj/item/food/snacks/grown/carrot, - /obj/item/food/snacks/boiledspaghetti + /obj/item/food/meat, + /obj/item/food/grown/carrot, + /obj/item/food/boiledspaghetti ) - result = /obj/item/food/snacks/soup/chicken_noodle_soup + result = /obj/item/food/soup/chicken_noodle_soup /datum/recipe/microwave/cornchowder reagents = list("water" = 10, "cream" = 5) items = list( - /obj/item/food/snacks/grown/corn, - /obj/item/food/snacks/grown/potato, - /obj/item/food/snacks/grown/carrot, - /obj/item/food/snacks/bacon + /obj/item/food/grown/corn, + /obj/item/food/grown/potato, + /obj/item/food/grown/carrot, + /obj/item/food/bacon ) - result = /obj/item/food/snacks/soup/cornchowder + result = /obj/item/food/soup/cornchowder /datum/recipe/microwave/meatball_noodles reagents = list("water" = 10) items = list( - /obj/item/food/snacks/cutlet, - /obj/item/food/snacks/cutlet, - /obj/item/food/snacks/grown/onion, - /obj/item/food/snacks/grown/peanuts, - /obj/item/food/snacks/meatball, - /obj/item/food/snacks/meatball, - /obj/item/food/snacks/spaghetti + /obj/item/food/cutlet, + /obj/item/food/cutlet, + /obj/item/food/grown/onion, + /obj/item/food/grown/peanuts, + /obj/item/food/meatball, + /obj/item/food/meatball, + /obj/item/food/spaghetti ) - result = /obj/item/food/snacks/soup/meatball_noodles + result = /obj/item/food/soup/meatball_noodles /datum/recipe/microwave/seedsoup reagents = list("water" = 10, "vinegar" = 10) @@ -870,235 +870,235 @@ /obj/item/seeds/poppy/lily, /obj/item/seeds/ambrosia ) - result = /obj/item/food/snacks/soup/seedsoup + result = /obj/item/food/soup/seedsoup /datum/recipe/microwave/beanstew reagents = list("water" = 10) items = list( - /obj/item/food/snacks/beans, - /obj/item/food/snacks/grown/cabbage, - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/grown/onion, - /obj/item/food/snacks/grown/chili, - /obj/item/food/snacks/grown/corn + /obj/item/food/beans, + /obj/item/food/grown/cabbage, + /obj/item/food/grown/tomato, + /obj/item/food/grown/onion, + /obj/item/food/grown/chili, + /obj/item/food/grown/corn ) - result = /obj/item/food/snacks/soup/beanstew + result = /obj/item/food/soup/beanstew /datum/recipe/microwave/oatstew reagents = list("water" = 10) items = list( - /obj/item/food/snacks/grown/oat, - /obj/item/food/snacks/grown/potato/sweet, - /obj/item/food/snacks/grown/parsnip, - /obj/item/food/snacks/grown/carrot + /obj/item/food/grown/oat, + /obj/item/food/grown/potato/sweet, + /obj/item/food/grown/parsnip, + /obj/item/food/grown/carrot ) - result = /obj/item/food/snacks/soup/oatstew + result = /obj/item/food/soup/oatstew /datum/recipe/microwave/hong_kong_borscht reagents = list("water" = 10, "soysauce" = 5) items = list( - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/grown/cabbage, - /obj/item/food/snacks/grown/onion, - /obj/item/food/snacks/grown/carrot, - /obj/item/food/snacks/cutlet + /obj/item/food/grown/tomato, + /obj/item/food/grown/cabbage, + /obj/item/food/grown/onion, + /obj/item/food/grown/carrot, + /obj/item/food/cutlet ) - result = /obj/item/food/snacks/soup/hong_kong_borscht + result = /obj/item/food/soup/hong_kong_borscht /datum/recipe/microwave/hong_kong_macaroni reagents = list("water" = 10, "cream" = 10) items = list( - /obj/item/food/snacks/boiledspaghetti, - /obj/item/food/snacks/cutlet, - /obj/item/food/snacks/bacon + /obj/item/food/boiledspaghetti, + /obj/item/food/cutlet, + /obj/item/food/bacon ) - result = /obj/item/food/snacks/soup/hong_kong_macaroni + result = /obj/item/food/soup/hong_kong_macaroni /datum/recipe/microwave/boiledslimeextract reagents = list("water" = 5) items = list( /obj/item/slime_extract, ) - result = /obj/item/food/snacks/boiledslimecore + result = /obj/item/food/boiledslimecore /datum/recipe/microwave/mint reagents = list("toxin" = 5) - result = /obj/item/food/snacks/mint + result = /obj/item/food/mint /datum/recipe/microwave/chocolateegg items = list( - /obj/item/food/snacks/egg, - /obj/item/food/snacks/chocolatebar + /obj/item/food/egg, + /obj/item/food/chocolatebar ) - result = /obj/item/food/snacks/chocolateegg + result = /obj/item/food/chocolateegg /datum/recipe/microwave/mysterysoup reagents = list("water" = 10) items = list( - /obj/item/food/snacks/badrecipe, - /obj/item/food/snacks/tofu, - /obj/item/food/snacks/egg, - /obj/item/food/snacks/cheesewedge + /obj/item/food/badrecipe, + /obj/item/food/tofu, + /obj/item/food/egg, + /obj/item/food/cheesewedge ) - result = /obj/item/food/snacks/soup/mysterysoup + result = /obj/item/food/soup/mysterysoup /datum/recipe/microwave/mushroomsoup reagents = list("water" = 5, "milk" = 5) items = list( - /obj/item/food/snacks/grown/mushroom + /obj/item/food/grown/mushroom ) - result = /obj/item/food/snacks/soup/mushroomsoup + result = /obj/item/food/soup/mushroomsoup /datum/recipe/microwave/chawanmushi reagents = list("water" = 5, "soysauce" = 5) items = list( - /obj/item/food/snacks/egg, - /obj/item/food/snacks/egg, - /obj/item/food/snacks/grown/mushroom + /obj/item/food/egg, + /obj/item/food/egg, + /obj/item/food/grown/mushroom ) - result = /obj/item/food/snacks/chawanmushi + result = /obj/item/food/chawanmushi /datum/recipe/microwave/beetsoup reagents = list("water" = 10) items = list( - /obj/item/food/snacks/grown/whitebeet, - /obj/item/food/snacks/grown/cabbage + /obj/item/food/grown/whitebeet, + /obj/item/food/grown/cabbage ) - result = /obj/item/food/snacks/soup/beetsoup + result = /obj/item/food/soup/beetsoup /datum/recipe/microwave/salad items = list( - /obj/item/food/snacks/grown/lettuce, - /obj/item/food/snacks/grown/lettuce + /obj/item/food/grown/lettuce, + /obj/item/food/grown/lettuce ) - result = /obj/item/food/snacks/salad + result = /obj/item/food/salad /datum/recipe/microwave/antipasto_salad items = list( - /obj/item/food/snacks/grown/lettuce, - /obj/item/food/snacks/grown/lettuce, - /obj/item/food/snacks/grown/olive, - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/cutlet, - /obj/item/food/snacks/cheesewedge + /obj/item/food/grown/lettuce, + /obj/item/food/grown/lettuce, + /obj/item/food/grown/olive, + /obj/item/food/grown/tomato, + /obj/item/food/cutlet, + /obj/item/food/cheesewedge ) - result = /obj/item/food/snacks/salad/antipasto + result = /obj/item/food/salad/antipasto /datum/recipe/microwave/caesar_salad reagents = list("oliveoil" = 5) items = list( - /obj/item/food/snacks/grown/lettuce, - /obj/item/food/snacks/onion_slice/red, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/breadslice + /obj/item/food/grown/lettuce, + /obj/item/food/onion_slice/red, + /obj/item/food/cheesewedge, + /obj/item/food/breadslice ) - result = /obj/item/food/snacks/salad/caesar + result = /obj/item/food/salad/caesar /datum/recipe/microwave/citrusdelight items = list( - /obj/item/food/snacks/grown/citrus/lime, - /obj/item/food/snacks/grown/citrus/orange, - /obj/item/food/snacks/grown/citrus/lemon + /obj/item/food/grown/citrus/lime, + /obj/item/food/grown/citrus/orange, + /obj/item/food/grown/citrus/lemon ) - result = /obj/item/food/snacks/salad/citrusdelight + result = /obj/item/food/salad/citrusdelight /datum/recipe/microwave/fruitsalad items = list( - /obj/item/food/snacks/grown/citrus/orange, - /obj/item/food/snacks/grown/apple, - /obj/item/food/snacks/grown/grapes, - /obj/item/food/snacks/watermelonslice + /obj/item/food/grown/citrus/orange, + /obj/item/food/grown/apple, + /obj/item/food/grown/grapes, + /obj/item/food/watermelonslice ) - result = /obj/item/food/snacks/salad/fruit + result = /obj/item/food/salad/fruit /datum/recipe/microwave/greek_salad reagents = list("oliveoil" = 5) items = list( - /obj/item/food/snacks/grown/olive, - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/onion_slice/red, - /obj/item/food/snacks/onion_slice/red, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/cheesewedge + /obj/item/food/grown/olive, + /obj/item/food/grown/tomato, + /obj/item/food/onion_slice/red, + /obj/item/food/onion_slice/red, + /obj/item/food/cheesewedge, + /obj/item/food/cheesewedge ) - result = /obj/item/food/snacks/salad/greek + result = /obj/item/food/salad/greek /datum/recipe/microwave/junglesalad items = list( - /obj/item/food/snacks/grown/apple, - /obj/item/food/snacks/grown/grapes, - /obj/item/food/snacks/grown/banana, - /obj/item/food/snacks/grown/banana, - /obj/item/food/snacks/watermelonslice, - /obj/item/food/snacks/watermelonslice + /obj/item/food/grown/apple, + /obj/item/food/grown/grapes, + /obj/item/food/grown/banana, + /obj/item/food/grown/banana, + /obj/item/food/watermelonslice, + /obj/item/food/watermelonslice ) - result = /obj/item/food/snacks/salad/jungle + result = /obj/item/food/salad/jungle /datum/recipe/microwave/kale_salad reagents = list("oliveoil" = 5) items = list( - /obj/item/food/snacks/grown/carrot, - /obj/item/food/snacks/grown/lettuce, - /obj/item/food/snacks/onion_slice/red, - /obj/item/food/snacks/onion_slice/red + /obj/item/food/grown/carrot, + /obj/item/food/grown/lettuce, + /obj/item/food/onion_slice/red, + /obj/item/food/onion_slice/red ) - result = /obj/item/food/snacks/salad/kale + result = /obj/item/food/salad/kale /datum/recipe/microwave/potato_salad reagents = list("mayonnaise" = 5) items = list( - /obj/item/food/snacks/grown/potato, - /obj/item/food/snacks/grown/potato, - /obj/item/food/snacks/boiledegg + /obj/item/food/grown/potato, + /obj/item/food/grown/potato, + /obj/item/food/boiledegg ) - result = /obj/item/food/snacks/salad/potato + result = /obj/item/food/salad/potato /datum/recipe/microwave/melonfruitbowl items = list( - /obj/item/food/snacks/grown/watermelon, - /obj/item/food/snacks/grown/apple, - /obj/item/food/snacks/grown/ambrosia, - /obj/item/food/snacks/grown/banana, - /obj/item/food/snacks/grown/citrus/orange, - /obj/item/food/snacks/grown/citrus/lemon + /obj/item/food/grown/watermelon, + /obj/item/food/grown/apple, + /obj/item/food/grown/ambrosia, + /obj/item/food/grown/banana, + /obj/item/food/grown/citrus/orange, + /obj/item/food/grown/citrus/lemon ) - result = /obj/item/food/snacks/salad/melonfruitbowl + result = /obj/item/food/salad/melonfruitbowl /datum/recipe/microwave/herbsalad items = list( - /obj/item/food/snacks/grown/ambrosia/vulgaris, - /obj/item/food/snacks/grown/ambrosia/vulgaris, - /obj/item/food/snacks/grown/ambrosia/vulgaris, - /obj/item/food/snacks/grown/apple + /obj/item/food/grown/ambrosia/vulgaris, + /obj/item/food/grown/ambrosia/vulgaris, + /obj/item/food/grown/ambrosia/vulgaris, + /obj/item/food/grown/apple ) - result = /obj/item/food/snacks/salad/herb + result = /obj/item/food/salad/herb /datum/recipe/microwave/herbsalad/make_food(obj/container) - var/obj/item/food/snacks/salad/herb/being_cooked = ..() + var/obj/item/food/salad/herb/being_cooked = ..() being_cooked.reagents.del_reagent("toxin") return being_cooked /datum/recipe/microwave/aesirsalad items = list( - /obj/item/food/snacks/grown/ambrosia/deus, - /obj/item/food/snacks/grown/ambrosia/deus, - /obj/item/food/snacks/grown/ambrosia/deus, - /obj/item/food/snacks/grown/apple/gold + /obj/item/food/grown/ambrosia/deus, + /obj/item/food/grown/ambrosia/deus, + /obj/item/food/grown/ambrosia/deus, + /obj/item/food/grown/apple/gold ) - result = /obj/item/food/snacks/salad/aesir + result = /obj/item/food/salad/aesir /datum/recipe/microwave/validsalad items = list( - /obj/item/food/snacks/grown/ambrosia/vulgaris, - /obj/item/food/snacks/grown/ambrosia/vulgaris, - /obj/item/food/snacks/grown/ambrosia/vulgaris, - /obj/item/food/snacks/grown/potato, - /obj/item/food/snacks/meatball + /obj/item/food/grown/ambrosia/vulgaris, + /obj/item/food/grown/ambrosia/vulgaris, + /obj/item/food/grown/ambrosia/vulgaris, + /obj/item/food/grown/potato, + /obj/item/food/meatball ) - result = /obj/item/food/snacks/salad/valid + result = /obj/item/food/salad/valid /datum/recipe/microwave/validsalad/make_food(obj/container) - var/obj/item/food/snacks/salad/valid/being_cooked = ..() + var/obj/item/food/salad/valid/being_cooked = ..() being_cooked.reagents.del_reagent("toxin") return being_cooked @@ -1107,338 +1107,338 @@ /datum/recipe/microwave/wrap reagents = list("soysauce" = 10) items = list( - /obj/item/food/snacks/friedegg, - /obj/item/food/snacks/grown/cabbage + /obj/item/food/friedegg, + /obj/item/food/grown/cabbage ) - result = /obj/item/food/snacks/wrap + result = /obj/item/food/wrap /datum/recipe/microwave/beans reagents = list("ketchup" = 5) items = list( - /obj/item/food/snacks/grown/soybeans, - /obj/item/food/snacks/grown/soybeans + /obj/item/food/grown/soybeans, + /obj/item/food/grown/soybeans ) - result = /obj/item/food/snacks/beans + result = /obj/item/food/beans /datum/recipe/microwave/benedict items = list( - /obj/item/food/snacks/friedegg, - /obj/item/food/snacks/meatsteak, - /obj/item/food/snacks/breadslice + /obj/item/food/friedegg, + /obj/item/food/meatsteak, + /obj/item/food/breadslice ) - result = /obj/item/food/snacks/benedict + result = /obj/item/food/benedict /datum/recipe/microwave/meatbun reagents = list("soysauce" = 5) items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/meatball, - /obj/item/food/snacks/grown/cabbage + /obj/item/food/dough, + /obj/item/food/meatball, + /obj/item/food/grown/cabbage ) - result = /obj/item/food/snacks/meatbun + result = /obj/item/food/meatbun /datum/recipe/microwave/icecreamsandwich reagents = list("ice" = 5, "cream" = 5) items = list( - /obj/item/food/snacks/frozen/icecream + /obj/item/food/frozen/icecream ) - result = /obj/item/food/snacks/frozen/icecreamsandwich + result = /obj/item/food/frozen/icecreamsandwich /datum/recipe/microwave/berryicecreamsandwich reagents = list("ice" = 5, "cream" = 5) items = list( - /obj/item/food/snacks/grown/cherries, - /obj/item/food/snacks/grown/cherries, - /obj/item/food/snacks/wafflecone + /obj/item/food/grown/cherries, + /obj/item/food/grown/cherries, + /obj/item/food/wafflecone ) - result = /obj/item/food/snacks/frozen/berryicecreamsandwich + result = /obj/item/food/frozen/berryicecreamsandwich /datum/recipe/microwave/sundae reagents = list("cream" = 5) items = list( - /obj/item/food/snacks/wafflecone, - /obj/item/food/snacks/grown/cherries, - /obj/item/food/snacks/grown/banana + /obj/item/food/wafflecone, + /obj/item/food/grown/cherries, + /obj/item/food/grown/banana ) - result = /obj/item/food/snacks/frozen/sundae + result = /obj/item/food/frozen/sundae /datum/recipe/microwave/bananatopsicle reagents = list("sugar" = 5, "banana" = 5) items = list( /obj/item/popsicle_stick, - /obj/item/food/snacks/tofu + /obj/item/food/tofu ) - result = /obj/item/food/snacks/frozen/popsicle/bananatop + result = /obj/item/food/frozen/popsicle/bananatop /datum/recipe/microwave/berrytopsicle reagents = list("sugar" = 5, "berryjuice" = 5) items = list( /obj/item/popsicle_stick, - /obj/item/food/snacks/tofu + /obj/item/food/tofu ) - result = /obj/item/food/snacks/frozen/popsicle/berrytop + result = /obj/item/food/frozen/popsicle/berrytop /datum/recipe/microwave/pineappletopsicle reagents = list("sugar" = 5, "pineapplejuice" = 5) items = list( /obj/item/popsicle_stick, - /obj/item/food/snacks/tofu + /obj/item/food/tofu ) - result = /obj/item/food/snacks/frozen/popsicle/pineappletop + result = /obj/item/food/frozen/popsicle/pineappletop /datum/recipe/microwave/licoricecreamsicle reagents = list("sugar" = 2, "blumpkinjuice" = 4, "ice" = 2, "vanilla" = 2, "cream" = 2) items = list( /obj/item/popsicle_stick ) - result = /obj/item/food/snacks/frozen/popsicle/licoricecream + result = /obj/item/food/frozen/popsicle/licoricecream /datum/recipe/microwave/orangecreamsicle reagents = list("sugar" = 2, "orangejuice" = 4, "ice" = 2, "vanilla" = 2, "cream" = 2) items = list( /obj/item/popsicle_stick ) - result = /obj/item/food/snacks/frozen/popsicle/orangecream + result = /obj/item/food/frozen/popsicle/orangecream /datum/recipe/microwave/berrycreamsicle reagents = list("sugar" = 2, "berryjuice" = 4, "ice" = 2, "vanilla" = 2, "cream" = 2) items = list( /obj/item/popsicle_stick ) - result = /obj/item/food/snacks/frozen/popsicle/berrycream + result = /obj/item/food/frozen/popsicle/berrycream /datum/recipe/microwave/frozenpineapplepop items = list( /obj/item/popsicle_stick, - /obj/item/food/snacks/pineappleslice, - /obj/item/food/snacks/chocolatebar + /obj/item/food/pineappleslice, + /obj/item/food/chocolatebar ) - result = /obj/item/food/snacks/frozen/popsicle/frozenpineapple + result = /obj/item/food/frozen/popsicle/frozenpineapple /datum/recipe/microwave/jumboicecream reagents = list("sugar" = 2, "ice" = 2, "vanilla" = 3, "cream" = 2) items = list( /obj/item/popsicle_stick, - /obj/item/food/snacks/chocolatebar + /obj/item/food/chocolatebar ) - result = /obj/item/food/snacks/frozen/popsicle + result = /obj/item/food/frozen/popsicle /datum/recipe/microwave/seasalticecream reagents = list("sugar" = 5, "sodiumchloride" = 3, "cream" = 5) items = list( /obj/item/popsicle_stick ) - result = /obj/item/food/snacks/frozen/popsicle/sea_salt + result = /obj/item/food/frozen/popsicle/sea_salt /datum/recipe/microwave/cornuto reagents = list("ice" = 2, "sugar" = 4, "cream" = 4) items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/chocolatebar + /obj/item/food/sliceable/flatdough, + /obj/item/food/chocolatebar ) - result = /obj/item/food/snacks/frozen/cornuto + result = /obj/item/food/frozen/cornuto /datum/recipe/microwave/honkdae reagents = list("cream" = 5, "ice" = 5) items = list( - /obj/item/food/snacks/wafflecone, - /obj/item/food/snacks/grown/cherries, - /obj/item/food/snacks/grown/banana, - /obj/item/food/snacks/grown/banana, + /obj/item/food/wafflecone, + /obj/item/food/grown/cherries, + /obj/item/food/grown/banana, + /obj/item/food/grown/banana, /obj/item/clothing/mask/gas/clown_hat ) - result = /obj/item/food/snacks/frozen/honkdae + result = /obj/item/food/frozen/honkdae /datum/recipe/microwave/peanutbuttermochi reagents = list("cream" = 5, "rice" = 5, "sugar" = 5, "peanutbutter" = 2) items = list( - /obj/item/food/snacks/wafflecone + /obj/item/food/wafflecone ) - result = /obj/item/food/snacks/frozen/peanutbuttermochi + result = /obj/item/food/frozen/peanutbuttermochi /datum/recipe/microwave/spacefreezy reagents = list("bluecherryjelly" = 5,"spacemountainwind" = 15) items = list( - /obj/item/food/snacks/frozen/icecream + /obj/item/food/frozen/icecream ) - result = /obj/item/food/snacks/frozen/spacefreezy + result = /obj/item/food/frozen/spacefreezy /datum/recipe/microwave/snowcone/apple reagents = list("ice" = 15, "applejuice" = 5) items = list( /obj/item/reagent_containers/drinks/sillycup ) - result = /obj/item/food/snacks/frozen/snowcone/apple + result = /obj/item/food/frozen/snowcone/apple /datum/recipe/microwave/snowcone/berry reagents = list("ice" = 15, "berryjuice" = 5) items = list( /obj/item/reagent_containers/drinks/sillycup ) - result = /obj/item/food/snacks/frozen/snowcone/berry + result = /obj/item/food/frozen/snowcone/berry /datum/recipe/microwave/snowcone/bluecherry reagents = list("ice" = 15, "bluecherryjelly" = 5) items = list( /obj/item/reagent_containers/drinks/sillycup ) - result = /obj/item/food/snacks/frozen/snowcone/bluecherry + result = /obj/item/food/frozen/snowcone/bluecherry /datum/recipe/microwave/snowcone/cherry reagents = list("ice" = 15, "cherryjelly" = 5) items = list( /obj/item/reagent_containers/drinks/sillycup ) - result = /obj/item/food/snacks/frozen/snowcone/cherry + result = /obj/item/food/frozen/snowcone/cherry /datum/recipe/microwave/snowcone/flavorless reagents = list("ice" = 15) items = list( /obj/item/reagent_containers/drinks/sillycup ) - result = /obj/item/food/snacks/frozen/snowcone + result = /obj/item/food/frozen/snowcone /datum/recipe/microwave/snowcone/fruitsalad reagents = list("ice" = 15, "banana" = 5, "orangejuice" = 5, "watermelonjuice" = 5) items = list( /obj/item/reagent_containers/drinks/sillycup ) - result = /obj/item/food/snacks/frozen/snowcone/fruitsalad + result = /obj/item/food/frozen/snowcone/fruitsalad /datum/recipe/microwave/snowcone/grape reagents = list("ice" = 15, "grapejuice" = 5) items = list( /obj/item/reagent_containers/drinks/sillycup ) - result = /obj/item/food/snacks/frozen/snowcone/grape + result = /obj/item/food/frozen/snowcone/grape /datum/recipe/microwave/snowcone/honey reagents = list("ice" = 15, "honey" = 5) items = list( /obj/item/reagent_containers/drinks/sillycup ) - result = /obj/item/food/snacks/frozen/snowcone/honey + result = /obj/item/food/frozen/snowcone/honey /datum/recipe/microwave/snowcone/lemon reagents = list("ice" = 15, "lemonjuice" = 5) items = list( /obj/item/reagent_containers/drinks/sillycup ) - result = /obj/item/food/snacks/frozen/snowcone/lemon + result = /obj/item/food/frozen/snowcone/lemon /datum/recipe/microwave/snowcone/lime reagents = list("ice" = 15, "limejuice" = 5) items = list( /obj/item/reagent_containers/drinks/sillycup ) - result = /obj/item/food/snacks/frozen/snowcone/lime + result = /obj/item/food/frozen/snowcone/lime /datum/recipe/microwave/snowcone/mime reagents = list("ice" = 15, "nothing" = 5) items = list( /obj/item/reagent_containers/drinks/sillycup ) - result = /obj/item/food/snacks/frozen/snowcone/mime + result = /obj/item/food/frozen/snowcone/mime /datum/recipe/microwave/snowcone/orange reagents = list("ice" = 15, "orangejuice" = 5) items = list( /obj/item/reagent_containers/drinks/sillycup ) - result = /obj/item/food/snacks/frozen/snowcone/orange + result = /obj/item/food/frozen/snowcone/orange /datum/recipe/microwave/snowcone/pineapple reagents = list("ice" = 15, "pineapplejuice" = 5) items = list( /obj/item/reagent_containers/drinks/sillycup ) - result = /obj/item/food/snacks/frozen/snowcone/pineapple + result = /obj/item/food/frozen/snowcone/pineapple /datum/recipe/microwave/snowcone/rainbow reagents = list("ice" = 15, "colorful_reagent" = 5) items = list( /obj/item/reagent_containers/drinks/sillycup ) - result = /obj/item/food/snacks/frozen/snowcone/rainbow + result = /obj/item/food/frozen/snowcone/rainbow /datum/recipe/microwave/snowcone/cola reagents = list("ice" = 15, "cola" = 5) items = list( /obj/item/reagent_containers/drinks/sillycup ) - result = /obj/item/food/snacks/frozen/snowcone/cola + result = /obj/item/food/frozen/snowcone/cola /datum/recipe/microwave/snowcone/spacemountainwind reagents = list("ice" = 15, "spacemountainwind" = 5) items = list( /obj/item/reagent_containers/drinks/sillycup ) - result = /obj/item/food/snacks/frozen/snowcone/spacemountain + result = /obj/item/food/frozen/snowcone/spacemountain /datum/recipe/microwave/antpopsicle reagents = list("sugar" = 5, "water" = 5, "ants" = 10) items = list( /obj/item/popsicle_stick ) - result = /obj/item/food/snacks/frozen/popsicle/ant + result = /obj/item/food/frozen/popsicle/ant /datum/recipe/microwave/notasandwich items = list( - /obj/item/food/snacks/breadslice, - /obj/item/food/snacks/breadslice, + /obj/item/food/breadslice, + /obj/item/food/breadslice, /obj/item/clothing/mask/fakemoustache ) - result = /obj/item/food/snacks/notasandwich + result = /obj/item/food/notasandwich /datum/recipe/microwave/friedbanana reagents = list("sugar" = 10, "cornoil" = 5) items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/grown/banana + /obj/item/food/dough, + /obj/item/food/grown/banana ) - result = /obj/item/food/snacks/friedbanana + result = /obj/item/food/friedbanana /datum/recipe/microwave/stuffing reagents = list("water" = 5, "sodiumchloride" = 1, "blackpepper" = 1) items = list( - /obj/item/food/snacks/sliceable/bread + /obj/item/food/sliceable/bread ) - result = /obj/item/food/snacks/stuffing + result = /obj/item/food/stuffing /datum/recipe/microwave/boiledspiderleg reagents = list("water" = 10) items = list( - /obj/item/food/snacks/monstermeat/spiderleg + /obj/item/food/monstermeat/spiderleg ) - result = /obj/item/food/snacks/boiledspiderleg + result = /obj/item/food/boiledspiderleg /datum/recipe/microwave/boiledspiderleg/make_food(obj/container) - var/obj/item/food/snacks/boiledspiderleg/being_cooked = ..() + var/obj/item/food/boiledspiderleg/being_cooked = ..() being_cooked.reagents.del_reagent("toxin") return being_cooked /datum/recipe/microwave/spidereggsham reagents = list("sodiumchloride" = 1) items = list( - /obj/item/food/snacks/monstermeat/spidereggs, - /obj/item/food/snacks/monstermeat/spidermeat + /obj/item/food/monstermeat/spidereggs, + /obj/item/food/monstermeat/spidermeat ) - result = /obj/item/food/snacks/spidereggsham + result = /obj/item/food/spidereggsham /datum/recipe/microwave/spidereggsham/make_food(obj/container) - var/obj/item/food/snacks/spidereggsham/being_cooked = ..() + var/obj/item/food/spidereggsham/being_cooked = ..() being_cooked.reagents.del_reagent("toxin") return being_cooked /datum/recipe/microwave/sashimi reagents = list("soysauce" = 5) items = list( - /obj/item/food/snacks/monstermeat/spidereggs, - /obj/item/food/snacks/carpmeat + /obj/item/food/monstermeat/spidereggs, + /obj/item/food/carpmeat ) - result = /obj/item/food/snacks/sashimi + result = /obj/item/food/sashimi /datum/recipe/microwave/sashimi/make_food(obj/container) - var/obj/item/food/snacks/sashimi/being_cooked = ..() + var/obj/item/food/sashimi/being_cooked = ..() being_cooked.reagents.del_reagent("carpotoxin") being_cooked.reagents.del_reagent("toxin") return being_cooked @@ -1446,9 +1446,9 @@ /datum/recipe/microwave/mashedtaters reagents = list("gravy" = 5) items = list( - /obj/item/food/snacks/grown/potato + /obj/item/food/grown/potato ) - result = /obj/item/food/snacks/mashed_potatoes + result = /obj/item/food/mashed_potatoes ////////////////////////////////////////// // bs12 food port stuff @@ -1456,20 +1456,20 @@ /datum/recipe/microwave/taco items = list( - /obj/item/food/snacks/doughslice, - /obj/item/food/snacks/cutlet, - /obj/item/food/snacks/cheesewedge + /obj/item/food/doughslice, + /obj/item/food/cutlet, + /obj/item/food/cheesewedge ) - result = /obj/item/food/snacks/taco + result = /obj/item/food/taco /datum/recipe/microwave/mint_2 reagents = list("sugar" = 5, "frostoil" = 5) - result = /obj/item/food/snacks/mint + result = /obj/item/food/mint /datum/recipe/microwave/boiled_shrimp reagents = list("water" = 5) items = list( - /obj/item/food/snacks/shrimp + /obj/item/food/shrimp ) - result = /obj/item/food/snacks/boiled_shrimp + result = /obj/item/food/boiled_shrimp diff --git a/code/modules/food_and_drinks/recipes/recipes_oven.dm b/code/modules/food_and_drinks/recipes/recipes_oven.dm index 0d639141d32b..8b0dc71ba6bd 100644 --- a/code/modules/food_and_drinks/recipes/recipes_oven.dm +++ b/code/modules/food_and_drinks/recipes/recipes_oven.dm @@ -4,209 +4,209 @@ /datum/recipe/oven/bun items = list( - /obj/item/food/snacks/dough + /obj/item/food/dough ) - result = /obj/item/food/snacks/bun + result = /obj/item/food/bun /datum/recipe/oven/meatbread items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/meat, - /obj/item/food/snacks/meat, - /obj/item/food/snacks/meat, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/cheesewedge, + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/meat, + /obj/item/food/meat, + /obj/item/food/meat, + /obj/item/food/cheesewedge, + /obj/item/food/cheesewedge, + /obj/item/food/cheesewedge, ) - result = /obj/item/food/snacks/sliceable/meatbread + result = /obj/item/food/sliceable/meatbread /datum/recipe/oven/syntibread items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/meat/syntiflesh, - /obj/item/food/snacks/meat/syntiflesh, - /obj/item/food/snacks/meat/syntiflesh, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/cheesewedge, + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/meat/syntiflesh, + /obj/item/food/meat/syntiflesh, + /obj/item/food/meat/syntiflesh, + /obj/item/food/cheesewedge, + /obj/item/food/cheesewedge, + /obj/item/food/cheesewedge, ) - result = /obj/item/food/snacks/sliceable/meatbread + result = /obj/item/food/sliceable/meatbread /datum/recipe/oven/xenomeatbread items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/monstermeat/xenomeat, - /obj/item/food/snacks/monstermeat/xenomeat, - /obj/item/food/snacks/monstermeat/xenomeat, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/cheesewedge, + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/monstermeat/xenomeat, + /obj/item/food/monstermeat/xenomeat, + /obj/item/food/monstermeat/xenomeat, + /obj/item/food/cheesewedge, + /obj/item/food/cheesewedge, + /obj/item/food/cheesewedge, ) - result = /obj/item/food/snacks/sliceable/xenomeatbread + result = /obj/item/food/sliceable/xenomeatbread /datum/recipe/oven/bananabread reagents = list("milk" = 5, "sugar" = 15) items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/grown/banana + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/grown/banana ) - result = /obj/item/food/snacks/sliceable/bananabread + result = /obj/item/food/sliceable/bananabread /datum/recipe/oven/banarnarbread reagents = list("milk" = 5, "sugar" = 5, "blood" = 5) items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/grown/banana + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/grown/banana ) - result = /obj/item/food/snacks/sliceable/banarnarbread + result = /obj/item/food/sliceable/banarnarbread /datum/recipe/oven/muffin reagents = list("milk" = 5, "sugar" = 5) items = list( - /obj/item/food/snacks/dough, + /obj/item/food/dough, ) - result = /obj/item/food/snacks/muffin + result = /obj/item/food/muffin /datum/recipe/oven/carrotcake reagents = list("milk" = 5, "sugar" = 15) items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/grown/carrot, - /obj/item/food/snacks/grown/carrot, - /obj/item/food/snacks/grown/carrot + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/grown/carrot, + /obj/item/food/grown/carrot, + /obj/item/food/grown/carrot ) - result = /obj/item/food/snacks/sliceable/carrotcake + result = /obj/item/food/sliceable/carrotcake /datum/recipe/oven/cheesecake reagents = list("milk" = 5, "sugar" = 15) items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/cheesewedge, + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/cheesewedge, + /obj/item/food/cheesewedge, ) - result = /obj/item/food/snacks/sliceable/cheesecake + result = /obj/item/food/sliceable/cheesecake /datum/recipe/oven/plaincake reagents = list("milk" = 5, "sugar" = 15) items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/dough, ) - result = /obj/item/food/snacks/sliceable/plaincake + result = /obj/item/food/sliceable/plaincake /datum/recipe/oven/clowncake reagents = list("milk" = 5, "sugar" = 15) items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/frozen/sundae, - /obj/item/food/snacks/frozen/sundae, - /obj/item/food/snacks/grown/banana, - /obj/item/food/snacks/grown/banana, - /obj/item/food/snacks/grown/banana, - /obj/item/food/snacks/grown/banana, - /obj/item/food/snacks/grown/banana + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/frozen/sundae, + /obj/item/food/frozen/sundae, + /obj/item/food/grown/banana, + /obj/item/food/grown/banana, + /obj/item/food/grown/banana, + /obj/item/food/grown/banana, + /obj/item/food/grown/banana ) - result = /obj/item/food/snacks/sliceable/clowncake + result = /obj/item/food/sliceable/clowncake /datum/recipe/oven/meatpie items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/meat, + /obj/item/food/sliceable/flatdough, + /obj/item/food/meat, ) - result = /obj/item/food/snacks/meatpie + result = /obj/item/food/meatpie /datum/recipe/oven/tofupie items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/tofu, + /obj/item/food/sliceable/flatdough, + /obj/item/food/tofu, ) - result = /obj/item/food/snacks/tofupie + result = /obj/item/food/tofupie /datum/recipe/oven/xemeatpie items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/monstermeat/xenomeat + /obj/item/food/sliceable/flatdough, + /obj/item/food/monstermeat/xenomeat ) - result = /obj/item/food/snacks/xemeatpie + result = /obj/item/food/xemeatpie /datum/recipe/oven/pie reagents = list("sugar" = 5) items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/grown/banana + /obj/item/food/sliceable/flatdough, + /obj/item/food/grown/banana ) - result = /obj/item/food/snacks/pie + result = /obj/item/food/pie /datum/recipe/oven/cherrypie reagents = list("sugar" = 10) items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/grown/cherries + /obj/item/food/sliceable/flatdough, + /obj/item/food/grown/cherries ) - result = /obj/item/food/snacks/cherrypie + result = /obj/item/food/cherrypie /datum/recipe/oven/berryclafoutis items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/grown/berries + /obj/item/food/sliceable/flatdough, + /obj/item/food/grown/berries ) - result = /obj/item/food/snacks/berryclafoutis + result = /obj/item/food/berryclafoutis /datum/recipe/oven/tofubread items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/tofu, - /obj/item/food/snacks/tofu, - /obj/item/food/snacks/tofu, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/cheesewedge, + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/tofu, + /obj/item/food/tofu, + /obj/item/food/tofu, + /obj/item/food/cheesewedge, + /obj/item/food/cheesewedge, + /obj/item/food/cheesewedge, ) - result = /obj/item/food/snacks/sliceable/tofubread + result = /obj/item/food/sliceable/tofubread /datum/recipe/oven/loadedbakedpotato items = list( - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/grown/potato + /obj/item/food/cheesewedge, + /obj/item/food/grown/potato ) - result = /obj/item/food/snacks/loadedbakedpotato + result = /obj/item/food/loadedbakedpotato /datum/recipe/oven/yakiimo items = list( - /obj/item/food/snacks/grown/potato/sweet + /obj/item/food/grown/potato/sweet ) - result = /obj/item/food/snacks/yakiimo + result = /obj/item/food/yakiimo ////cookies by Ume /datum/recipe/oven/cookies items = list( - /obj/item/food/snacks/rawcookies/chocochips, + /obj/item/food/rawcookies/chocochips, ) result = /obj/item/storage/bag/tray/cookies_tray /datum/recipe/oven/sugarcookies items = list( - /obj/item/food/snacks/rawcookies, + /obj/item/food/rawcookies, ) result = /obj/item/storage/bag/tray/cookies_tray/sugarcookie @@ -216,15 +216,15 @@ /datum/recipe/oven/fortunecookie reagents = list("sugar" = 5) items = list( - /obj/item/food/snacks/doughslice, + /obj/item/food/doughslice, /obj/item/paper, ) - result = /obj/item/food/snacks/fortunecookie + result = /obj/item/food/fortunecookie /datum/recipe/oven/fortunecookie/make_food(obj/container) var/obj/item/paper/P = locate() in container P.loc = null //So we don't delete the paper while cooking the cookie - var/obj/item/food/snacks/fortunecookie/being_cooked = ..() + var/obj/item/food/fortunecookie/being_cooked = ..() if(P.info) //If there's anything written on the paper, just move it into the fortune cookie P.forceMove(being_cooked) //Prevents the oven deleting our paper being_cooked.trash = P //so the paper is left behind as trash without special-snowflake(TM Nodrak) code ~carn @@ -235,368 +235,368 @@ // Pizzas /datum/recipe/oven/pizzamargherita items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/cheesewedge + /obj/item/food/sliceable/flatdough, + /obj/item/food/grown/tomato, + /obj/item/food/grown/tomato, + /obj/item/food/cheesewedge, + /obj/item/food/cheesewedge ) - result = /obj/item/food/snacks/sliceable/pizza/margheritapizza + result = /obj/item/food/sliceable/pizza/margheritapizza /datum/recipe/oven/meatpizza items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/meat, - /obj/item/food/snacks/meat, - /obj/item/food/snacks/meat, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/grown/tomato + /obj/item/food/sliceable/flatdough, + /obj/item/food/meat, + /obj/item/food/meat, + /obj/item/food/meat, + /obj/item/food/cheesewedge, + /obj/item/food/grown/tomato ) - result = /obj/item/food/snacks/sliceable/pizza/meatpizza + result = /obj/item/food/sliceable/pizza/meatpizza /datum/recipe/oven/mushroompizza items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/grown/mushroom, - /obj/item/food/snacks/grown/mushroom, - /obj/item/food/snacks/grown/mushroom, - /obj/item/food/snacks/grown/mushroom, - /obj/item/food/snacks/grown/mushroom, - /obj/item/food/snacks/grown/tomato + /obj/item/food/sliceable/flatdough, + /obj/item/food/cheesewedge, + /obj/item/food/grown/mushroom, + /obj/item/food/grown/mushroom, + /obj/item/food/grown/mushroom, + /obj/item/food/grown/mushroom, + /obj/item/food/grown/mushroom, + /obj/item/food/grown/tomato ) - result = /obj/item/food/snacks/sliceable/pizza/mushroompizza + result = /obj/item/food/sliceable/pizza/mushroompizza /datum/recipe/oven/vegetablepizza items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/grown/eggplant, - /obj/item/food/snacks/grown/carrot, - /obj/item/food/snacks/grown/corn, - /obj/item/food/snacks/grown/tomato + /obj/item/food/sliceable/flatdough, + /obj/item/food/cheesewedge, + /obj/item/food/grown/eggplant, + /obj/item/food/grown/carrot, + /obj/item/food/grown/corn, + /obj/item/food/grown/tomato ) - result = /obj/item/food/snacks/sliceable/pizza/vegetablepizza + result = /obj/item/food/sliceable/pizza/vegetablepizza /datum/recipe/oven/hawaiianpizza items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/pineappleslice, - /obj/item/food/snacks/pineappleslice, - /obj/item/food/snacks/meat, + /obj/item/food/sliceable/flatdough, + /obj/item/food/grown/tomato, + /obj/item/food/cheesewedge, + /obj/item/food/pineappleslice, + /obj/item/food/pineappleslice, + /obj/item/food/meat, ) - result = /obj/item/food/snacks/sliceable/pizza/hawaiianpizza + result = /obj/item/food/sliceable/pizza/hawaiianpizza /datum/recipe/oven/macncheesepizza items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/macncheese, + /obj/item/food/sliceable/flatdough, + /obj/item/food/cheesewedge, + /obj/item/food/cheesewedge, + /obj/item/food/macncheese, ) - result = /obj/item/food/snacks/sliceable/pizza/macpizza + result = /obj/item/food/sliceable/pizza/macpizza /datum/recipe/oven/cheesepizza items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/cheesewedge + /obj/item/food/sliceable/flatdough, + /obj/item/food/grown/tomato, + /obj/item/food/cheesewedge, + /obj/item/food/cheesewedge, + /obj/item/food/cheesewedge, + /obj/item/food/cheesewedge ) - result = /obj/item/food/snacks/sliceable/pizza/cheesepizza + result = /obj/item/food/sliceable/pizza/cheesepizza /datum/recipe/oven/pepperonipizza items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/sausage + /obj/item/food/sliceable/flatdough, + /obj/item/food/grown/tomato, + /obj/item/food/cheesewedge, + /obj/item/food/sausage ) - result = /obj/item/food/snacks/sliceable/pizza/pepperonipizza + result = /obj/item/food/sliceable/pizza/pepperonipizza /datum/recipe/oven/donkpocketpizza items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/donkpocket, - /obj/item/food/snacks/donkpocket + /obj/item/food/sliceable/flatdough, + /obj/item/food/grown/tomato, + /obj/item/food/cheesewedge, + /obj/item/food/donkpocket, + /obj/item/food/donkpocket ) - result = /obj/item/food/snacks/sliceable/pizza/donkpocketpizza + result = /obj/item/food/sliceable/pizza/donkpocketpizza /datum/recipe/oven/dankpizza items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/grown/cannabis, - /obj/item/food/snacks/grown/cannabis, - /obj/item/food/snacks/grown/cannabis, - /obj/item/food/snacks/grown/cannabis + /obj/item/food/sliceable/flatdough, + /obj/item/food/grown/tomato, + /obj/item/food/cheesewedge, + /obj/item/food/grown/cannabis, + /obj/item/food/grown/cannabis, + /obj/item/food/grown/cannabis, + /obj/item/food/grown/cannabis ) - result = /obj/item/food/snacks/sliceable/pizza/dankpizza + result = /obj/item/food/sliceable/pizza/dankpizza /datum/recipe/oven/firecrackerpizza reagents = list("capsaicin" = 5) items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/grown/chili, - /obj/item/food/snacks/grown/chili + /obj/item/food/sliceable/flatdough, + /obj/item/food/cheesewedge, + /obj/item/food/grown/chili, + /obj/item/food/grown/chili ) - result = /obj/item/food/snacks/sliceable/pizza/firecrackerpizza + result = /obj/item/food/sliceable/pizza/firecrackerpizza /datum/recipe/oven/pestopizza reagents = list("wasabi" = 5) items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/cheesewedge + /obj/item/food/sliceable/flatdough, + /obj/item/food/grown/tomato, + /obj/item/food/grown/tomato, + /obj/item/food/cheesewedge ) - result = /obj/item/food/snacks/sliceable/pizza/pestopizza + result = /obj/item/food/sliceable/pizza/pestopizza /datum/recipe/oven/garlicpizza reagents = list("garlic" = 5) items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/grown/garlic, - /obj/item/food/snacks/grown/garlic, - /obj/item/food/snacks/cheesewedge + /obj/item/food/sliceable/flatdough, + /obj/item/food/grown/garlic, + /obj/item/food/grown/garlic, + /obj/item/food/cheesewedge ) - result = /obj/item/food/snacks/sliceable/pizza/garlicpizza + result = /obj/item/food/sliceable/pizza/garlicpizza /datum/recipe/oven/amanita_pie items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/grown/mushroom/amanita + /obj/item/food/sliceable/flatdough, + /obj/item/food/grown/mushroom/amanita ) - result = /obj/item/food/snacks/amanita_pie + result = /obj/item/food/amanita_pie /datum/recipe/oven/plump_pie items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/grown/mushroom/plumphelmet + /obj/item/food/sliceable/flatdough, + /obj/item/food/grown/mushroom/plumphelmet ) - result = /obj/item/food/snacks/plump_pie + result = /obj/item/food/plump_pie /datum/recipe/oven/plumphelmetbiscuit reagents = list("water" = 5, "flour" = 5) - items = list(/obj/item/food/snacks/grown/mushroom/plumphelmet) - result = /obj/item/food/snacks/plumphelmetbiscuit + items = list(/obj/item/food/grown/mushroom/plumphelmet) + result = /obj/item/food/plumphelmetbiscuit /datum/recipe/oven/creamcheesebread items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/cheesewedge, + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/cheesewedge, + /obj/item/food/cheesewedge, ) - result = /obj/item/food/snacks/sliceable/creamcheesebread + result = /obj/item/food/sliceable/creamcheesebread /datum/recipe/oven/baguette reagents = list("sodiumchloride" = 1, "blackpepper" = 1) items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, + /obj/item/food/dough, + /obj/item/food/dough, ) - result = /obj/item/food/snacks/baguette + result = /obj/item/food/baguette /datum/recipe/oven/croissant items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/egg + /obj/item/food/dough, + /obj/item/food/egg ) reagents = list("sodiumchloride" = 1, "milk" = 5, "sugar" = 5) - result = /obj/item/food/snacks/croissant + result = /obj/item/food/croissant /datum/recipe/oven/birthdaycake reagents = list("milk" = 5, "sugar" = 15, "vanilla" = 10) items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/dough, /obj/item/candle, /obj/item/candle, /obj/item/candle, ) - result = /obj/item/food/snacks/sliceable/birthdaycake + result = /obj/item/food/sliceable/birthdaycake /datum/recipe/oven/bread items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/egg + /obj/item/food/dough, + /obj/item/food/egg ) - result = /obj/item/food/snacks/sliceable/bread + result = /obj/item/food/sliceable/bread /datum/recipe/oven/bread/make_food(obj/container) - var/obj/item/food/snacks/sliceable/bread/being_cooked = ..() + var/obj/item/food/sliceable/bread/being_cooked = ..() being_cooked.reagents.del_reagent("egg") return being_cooked /datum/recipe/oven/applepie items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/grown/apple + /obj/item/food/sliceable/flatdough, + /obj/item/food/grown/apple ) - result = /obj/item/food/snacks/applepie + result = /obj/item/food/applepie /datum/recipe/oven/applecake reagents = list("milk" = 5, "sugar" = 5) items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/grown/apple, - /obj/item/food/snacks/grown/apple + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/grown/apple, + /obj/item/food/grown/apple ) - result = /obj/item/food/snacks/sliceable/applecake + result = /obj/item/food/sliceable/applecake /datum/recipe/oven/orangecake reagents = list("milk" = 5) items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/grown/citrus/orange, - /obj/item/food/snacks/grown/citrus/orange + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/grown/citrus/orange, + /obj/item/food/grown/citrus/orange ) - result = /obj/item/food/snacks/sliceable/orangecake + result = /obj/item/food/sliceable/orangecake /datum/recipe/oven/bananacake reagents = list("milk" = 5) items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/grown/banana, - /obj/item/food/snacks/grown/banana + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/grown/banana, + /obj/item/food/grown/banana ) - result = /obj/item/food/snacks/sliceable/bananacake + result = /obj/item/food/sliceable/bananacake /datum/recipe/oven/limecake reagents = list("milk" = 5) items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/grown/citrus/lime, - /obj/item/food/snacks/grown/citrus/lime + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/grown/citrus/lime, + /obj/item/food/grown/citrus/lime ) - result = /obj/item/food/snacks/sliceable/limecake + result = /obj/item/food/sliceable/limecake /datum/recipe/oven/lemoncake reagents = list("milk" = 5) items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/grown/citrus/lemon, - /obj/item/food/snacks/grown/citrus/lemon + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/grown/citrus/lemon, + /obj/item/food/grown/citrus/lemon ) - result = /obj/item/food/snacks/sliceable/lemoncake + result = /obj/item/food/sliceable/lemoncake /datum/recipe/oven/chocolatecake reagents = list("milk" = 5) items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/chocolatebar, - /obj/item/food/snacks/chocolatebar, + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/chocolatebar, + /obj/item/food/chocolatebar, ) - result = /obj/item/food/snacks/sliceable/chocolatecake + result = /obj/item/food/sliceable/chocolatecake /datum/recipe/oven/braincake reagents = list("milk" = 5) items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, - /obj/item/food/snacks/dough, + /obj/item/food/dough, + /obj/item/food/dough, + /obj/item/food/dough, /obj/item/organ/internal/brain ) - result = /obj/item/food/snacks/sliceable/braincake + result = /obj/item/food/sliceable/braincake /datum/recipe/oven/pumpkinpie reagents = list("milk" = 5, "sugar" = 5) items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/grown/pumpkin + /obj/item/food/sliceable/flatdough, + /obj/item/food/grown/pumpkin ) - result = /obj/item/food/snacks/sliceable/pumpkinpie + result = /obj/item/food/sliceable/pumpkinpie /datum/recipe/oven/appletart reagents = list("sugar" = 5, "milk" = 5, "flour" = 10) items = list( - /obj/item/food/snacks/egg, - /obj/item/food/snacks/grown/apple/gold + /obj/item/food/egg, + /obj/item/food/grown/apple/gold ) - result = /obj/item/food/snacks/appletart + result = /obj/item/food/appletart /datum/recipe/oven/appletart/make_food(obj/container) - var/obj/item/food/snacks/appletart/being_cooked = ..() + var/obj/item/food/appletart/being_cooked = ..() being_cooked.reagents.del_reagent("egg") return being_cooked /datum/recipe/oven/cracker reagents = list("sodiumchloride" = 1) items = list( - /obj/item/food/snacks/doughslice + /obj/item/food/doughslice ) - result = /obj/item/food/snacks/cracker + result = /obj/item/food/cracker /datum/recipe/oven/sugarcookie/make_food(obj/container) - var/obj/item/food/snacks/sugarcookie/being_cooked = ..() + var/obj/item/food/sugarcookie/being_cooked = ..() being_cooked.reagents.del_reagent("egg") return being_cooked /datum/recipe/oven/flatbread items = list( - /obj/item/food/snacks/sliceable/flatdough + /obj/item/food/sliceable/flatdough ) - result = /obj/item/food/snacks/flatbread + result = /obj/item/food/flatbread /datum/recipe/oven/toastedsandwich items = list( - /obj/item/food/snacks/sandwich + /obj/item/food/sandwich ) - result = /obj/item/food/snacks/toastedsandwich + result = /obj/item/food/toastedsandwich /// Magic /datum/recipe/oven/turkey items = list( - /obj/item/food/snacks/meat, - /obj/item/food/snacks/meat, - /obj/item/food/snacks/meat, - /obj/item/food/snacks/meat, - /obj/item/food/snacks/stuffing, - /obj/item/food/snacks/stuffing + /obj/item/food/meat, + /obj/item/food/meat, + /obj/item/food/meat, + /obj/item/food/meat, + /obj/item/food/stuffing, + /obj/item/food/stuffing ) - result = /obj/item/food/snacks/sliceable/turkey + result = /obj/item/food/sliceable/turkey /datum/recipe/oven/tofurkey items = list( - /obj/item/food/snacks/tofu, - /obj/item/food/snacks/tofu, - /obj/item/food/snacks/stuffing, + /obj/item/food/tofu, + /obj/item/food/tofu, + /obj/item/food/stuffing, ) - result = /obj/item/food/snacks/tofurkey + result = /obj/item/food/tofurkey /datum/recipe/oven/lasagna items = list( - /obj/item/food/snacks/meat, - /obj/item/food/snacks/meat, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/dough + /obj/item/food/meat, + /obj/item/food/meat, + /obj/item/food/cheesewedge, + /obj/item/food/cheesewedge, + /obj/item/food/cheesewedge, + /obj/item/food/grown/tomato, + /obj/item/food/grown/tomato, + /obj/item/food/dough ) - result = /obj/item/food/snacks/lasagna + result = /obj/item/food/lasagna diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm index 05d21f480bdb..9a4ec3876951 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm @@ -1,11 +1,11 @@ /datum/crafting_recipe/sandwich name = "Sandwich" reqs = list( - /obj/item/food/snacks/meatsteak = 1, - /obj/item/food/snacks/breadslice = 2, - /obj/item/food/snacks/cheesewedge = 1, + /obj/item/food/meatsteak = 1, + /obj/item/food/breadslice = 2, + /obj/item/food/cheesewedge = 1, ) - result = list(/obj/item/food/snacks/sandwich) + result = list(/obj/item/food/sandwich) category = CAT_FOOD subcategory = CAT_SANDWICH @@ -13,9 +13,9 @@ name = "Slime Jelly Sandwich" reqs = list( /datum/reagent/slimejelly = 5, - /obj/item/food/snacks/breadslice = 2, + /obj/item/food/breadslice = 2, ) - result = list(/obj/item/food/snacks/jellysandwich/slime) + result = list(/obj/item/food/jellysandwich/slime) category = CAT_FOOD subcategory = CAT_SANDWICH @@ -23,9 +23,9 @@ name = "Cherry Jelly Sandwich" reqs = list( /datum/reagent/consumable/cherryjelly = 5, - /obj/item/food/snacks/breadslice = 2, + /obj/item/food/breadslice = 2, ) - result = list(/obj/item/food/snacks/jellysandwich/cherry) + result = list(/obj/item/food/jellysandwich/cherry) category = CAT_FOOD subcategory = CAT_SANDWICH @@ -33,9 +33,9 @@ name = "Slime Jelly Burger" reqs = list( /datum/reagent/slimejelly = 5, - /obj/item/food/snacks/bun = 1, + /obj/item/food/bun = 1, ) - result = list(/obj/item/food/snacks/burger/jelly/slime) + result = list(/obj/item/food/burger/jelly/slime) category = CAT_FOOD subcategory = CAT_SANDWICH @@ -43,9 +43,9 @@ name = "Cherry Jelly Burger" reqs = list( /datum/reagent/consumable/cherryjelly = 5, - /obj/item/food/snacks/bun = 1, + /obj/item/food/bun = 1, ) - result = list(/obj/item/food/snacks/burger/jelly/cherry) + result = list(/obj/item/food/burger/jelly/cherry) category = CAT_FOOD subcategory = CAT_SANDWICH @@ -53,226 +53,226 @@ name = "Home run baseball burger" reqs = list( /obj/item/melee/baseball_bat = 1, - /obj/item/food/snacks/bun = 1, + /obj/item/food/bun = 1, ) - result = list(/obj/item/food/snacks/burger/baseball) + result = list(/obj/item/food/burger/baseball) category = CAT_FOOD subcategory = CAT_SANDWICH /datum/crafting_recipe/notasandwich name = "not-a-sandwich" reqs = list( - /obj/item/food/snacks/breadslice = 2, + /obj/item/food/breadslice = 2, /obj/item/clothing/mask/fakemoustache = 1, ) - result = list(/obj/item/food/snacks/notasandwich) + result = list(/obj/item/food/notasandwich) category = CAT_FOOD subcategory = CAT_SANDWICH /datum/crafting_recipe/sushi_Ebi name = "Ebi Sushi" reqs = list( - /obj/item/food/snacks/boiledrice = 1, - /obj/item/food/snacks/boiled_shrimp = 1, + /obj/item/food/boiledrice = 1, + /obj/item/food/boiled_shrimp = 1, /obj/item/stack/seaweed = 1, ) - result = list(/obj/item/food/snacks/sushi_Ebi) + result = list(/obj/item/food/sushi_Ebi) category = CAT_FOOD subcategory = CAT_SUSHI /datum/crafting_recipe/Ebi_maki name = "Ebi Maki Roll" reqs = list( - /obj/item/food/snacks/boiledrice = 1, - /obj/item/food/snacks/boiled_shrimp = 4, + /obj/item/food/boiledrice = 1, + /obj/item/food/boiled_shrimp = 4, /obj/item/stack/seaweed = 1, ) pathtools = list(/obj/item/kitchen/sushimat) - result = list(/obj/item/food/snacks/sliceable/Ebi_maki) + result = list(/obj/item/food/sliceable/Ebi_maki) category = CAT_FOOD subcategory = CAT_SUSHI /datum/crafting_recipe/sushi_Ikura name = "Ikura Sushi" reqs = list( - /obj/item/food/snacks/boiledrice = 1, + /obj/item/food/boiledrice = 1, /obj/item/fish_eggs/salmon = 1, /obj/item/stack/seaweed = 1, ) - result = list(/obj/item/food/snacks/sushi_Ikura) + result = list(/obj/item/food/sushi_Ikura) category = CAT_FOOD subcategory = CAT_SUSHI /datum/crafting_recipe/Ikura_maki name = "Ikura Maki Roll" reqs = list( - /obj/item/food/snacks/boiledrice = 1, + /obj/item/food/boiledrice = 1, /obj/item/fish_eggs/salmon = 4, /obj/item/stack/seaweed = 1, ) pathtools = list(/obj/item/kitchen/sushimat) - result = list(/obj/item/food/snacks/sliceable/Ikura_maki) + result = list(/obj/item/food/sliceable/Ikura_maki) category = CAT_FOOD subcategory = CAT_SUSHI /datum/crafting_recipe/sushi_Inari name = "Inari Sushi" reqs = list( - /obj/item/food/snacks/boiledrice = 1, - /obj/item/food/snacks/fried_tofu = 1, + /obj/item/food/boiledrice = 1, + /obj/item/food/fried_tofu = 1, /obj/item/stack/seaweed = 1, ) - result = list(/obj/item/food/snacks/sushi_Inari) + result = list(/obj/item/food/sushi_Inari) category = CAT_FOOD subcategory = CAT_SUSHI /datum/crafting_recipe/Inari_maki name = "Inari Maki Roll" reqs = list( - /obj/item/food/snacks/boiledrice = 1, - /obj/item/food/snacks/fried_tofu = 4, + /obj/item/food/boiledrice = 1, + /obj/item/food/fried_tofu = 4, /obj/item/stack/seaweed = 1, ) pathtools = list(/obj/item/kitchen/sushimat) - result = list(/obj/item/food/snacks/sliceable/Inari_maki) + result = list(/obj/item/food/sliceable/Inari_maki) category = CAT_FOOD subcategory = CAT_SUSHI /datum/crafting_recipe/sushi_Sake name = "Sake Sushi" reqs = list( - /obj/item/food/snacks/boiledrice = 1, - /obj/item/food/snacks/salmonmeat = 1, + /obj/item/food/boiledrice = 1, + /obj/item/food/salmonmeat = 1, /obj/item/stack/seaweed = 1, ) - result = list(/obj/item/food/snacks/sushi_Sake) + result = list(/obj/item/food/sushi_Sake) category = CAT_FOOD subcategory = CAT_SUSHI /datum/crafting_recipe/Sake_maki name = "Sake Maki Roll" reqs = list( - /obj/item/food/snacks/boiledrice = 1, - /obj/item/food/snacks/salmonmeat = 4, + /obj/item/food/boiledrice = 1, + /obj/item/food/salmonmeat = 4, /obj/item/stack/seaweed = 1, ) pathtools = list(/obj/item/kitchen/sushimat) - result = list(/obj/item/food/snacks/sliceable/Sake_maki) + result = list(/obj/item/food/sliceable/Sake_maki) category = CAT_FOOD subcategory = CAT_SUSHI /datum/crafting_recipe/sushi_SmokedSalmon name = "Smoked Salmon Sushi" reqs = list( - /obj/item/food/snacks/boiledrice = 1, - /obj/item/food/snacks/salmonsteak = 1, + /obj/item/food/boiledrice = 1, + /obj/item/food/salmonsteak = 1, /obj/item/stack/seaweed = 1, ) - result = list(/obj/item/food/snacks/sushi_SmokedSalmon) + result = list(/obj/item/food/sushi_SmokedSalmon) category = CAT_FOOD subcategory = CAT_SUSHI /datum/crafting_recipe/SmokedSalmon_maki name = "Smoked Salmon Maki Roll" reqs = list( - /obj/item/food/snacks/boiledrice = 1, - /obj/item/food/snacks/salmonsteak = 4, + /obj/item/food/boiledrice = 1, + /obj/item/food/salmonsteak = 4, /obj/item/stack/seaweed = 1, ) pathtools = list(/obj/item/kitchen/sushimat) - result = list(/obj/item/food/snacks/sliceable/SmokedSalmon_maki) + result = list(/obj/item/food/sliceable/SmokedSalmon_maki) category = CAT_FOOD subcategory = CAT_SUSHI /datum/crafting_recipe/sushi_Masago name = "Masago Sushi" reqs = list( - /obj/item/food/snacks/boiledrice = 1, + /obj/item/food/boiledrice = 1, /obj/item/fish_eggs/goldfish = 1, /obj/item/stack/seaweed = 1, ) - result = list(/obj/item/food/snacks/sushi_Masago) + result = list(/obj/item/food/sushi_Masago) category = CAT_FOOD subcategory = CAT_SUSHI /datum/crafting_recipe/Masago_maki name = "Masago Maki Roll" reqs = list( - /obj/item/food/snacks/boiledrice = 1, + /obj/item/food/boiledrice = 1, /obj/item/fish_eggs/goldfish = 4, /obj/item/stack/seaweed = 1, ) pathtools = list(/obj/item/kitchen/sushimat) - result = list(/obj/item/food/snacks/sliceable/Masago_maki) + result = list(/obj/item/food/sliceable/Masago_maki) category = CAT_FOOD subcategory = CAT_SUSHI /datum/crafting_recipe/sushi_Tobiko name = "Tobiko Sushi" reqs = list( - /obj/item/food/snacks/boiledrice = 1, + /obj/item/food/boiledrice = 1, /obj/item/fish_eggs/shark = 1, /obj/item/stack/seaweed = 1, ) - result = list(/obj/item/food/snacks/sushi_Tobiko) + result = list(/obj/item/food/sushi_Tobiko) category = CAT_FOOD subcategory = CAT_SUSHI /datum/crafting_recipe/Tobiko_maki name = "Tobiko Maki Roll" reqs = list( - /obj/item/food/snacks/boiledrice = 1, + /obj/item/food/boiledrice = 1, /obj/item/fish_eggs/shark = 4, /obj/item/stack/seaweed = 1, ) pathtools = list(/obj/item/kitchen/sushimat) - result = list(/obj/item/food/snacks/sliceable/Tobiko_maki) + result = list(/obj/item/food/sliceable/Tobiko_maki) category = CAT_FOOD subcategory = CAT_SUSHI /datum/crafting_recipe/sushi_TobikoEgg name = "Tobiko and Egg Sushi" reqs = list( - /obj/item/food/snacks/sushi_Tobiko = 1, - /obj/item/food/snacks/egg = 1, + /obj/item/food/sushi_Tobiko = 1, + /obj/item/food/egg = 1, /obj/item/stack/seaweed = 1, ) - result = list(/obj/item/food/snacks/sushi_TobikoEgg) + result = list(/obj/item/food/sushi_TobikoEgg) category = CAT_FOOD subcategory = CAT_SUSHI /datum/crafting_recipe/TobikoEgg_maki name = "Tobiko and Egg Maki Roll" reqs = list( - /obj/item/food/snacks/sushi_Tobiko = 4, - /obj/item/food/snacks/egg = 4, + /obj/item/food/sushi_Tobiko = 4, + /obj/item/food/egg = 4, /obj/item/stack/seaweed = 1, ) pathtools = list(/obj/item/kitchen/sushimat) - result = list(/obj/item/food/snacks/sliceable/TobikoEgg_maki) + result = list(/obj/item/food/sliceable/TobikoEgg_maki) category = CAT_FOOD subcategory = CAT_SUSHI /datum/crafting_recipe/sushi_Tai name = "Tai Sushi" reqs = list( - /obj/item/food/snacks/boiledrice = 1, - /obj/item/food/snacks/catfishmeat = 1, + /obj/item/food/boiledrice = 1, + /obj/item/food/catfishmeat = 1, /obj/item/stack/seaweed = 1, ) - result = list(/obj/item/food/snacks/sushi_Tai) + result = list(/obj/item/food/sushi_Tai) category = CAT_FOOD subcategory = CAT_SUSHI /datum/crafting_recipe/Tai_maki name = "Tai Maki Roll" reqs = list( - /obj/item/food/snacks/boiledrice = 1, - /obj/item/food/snacks/catfishmeat = 4, + /obj/item/food/boiledrice = 1, + /obj/item/food/catfishmeat = 4, /obj/item/stack/seaweed = 1, ) pathtools = list(/obj/item/kitchen/sushimat) - result = list(/obj/item/food/snacks/sliceable/Tai_maki) + result = list(/obj/item/food/sliceable/Tai_maki) category = CAT_FOOD subcategory = CAT_SUSHI @@ -286,8 +286,8 @@ reqs = list( /obj/item/organ/internal/brain = 1, /obj/item/organ/internal/heart = 1, - /obj/item/food/snacks/sliceable/birthdaycake = 1, - /obj/item/food/snacks/meat = 3, + /obj/item/food/sliceable/birthdaycake = 1, + /obj/item/food/meat = 3, /datum/reagent/blood = 30, /datum/reagent/consumable/sprinkles = 5, /datum/reagent/teslium = 1, diff --git a/code/modules/hallucinations/effects/moderate.dm b/code/modules/hallucinations/effects/moderate.dm index fcbf90c05747..1dde6a4097e8 100644 --- a/code/modules/hallucinations/effects/moderate.dm +++ b/code/modules/hallucinations/effects/moderate.dm @@ -344,7 +344,10 @@ /obj/effect/hallucination/stunprodding/Initialize(mapload, mob/living/carbon/target) . = ..() - var/turf/T = pick(RANGE_TURFS(15, target)) + var/list/possible_turfs = RANGE_TURFS(15, target) + if(!length(possible_turfs)) + return INITIALIZE_HINT_QDEL + var/turf/T = pick(possible_turfs) target.playsound_local(T, 'sound/weapons/egloves.ogg', 25, TRUE) target.playsound_local(T, get_sfx("bodyfall"), 25, TRUE) target.playsound_local(T, "sparks", 50, TRUE) @@ -366,7 +369,10 @@ /obj/effect/hallucination/energy_sword/Initialize(mapload, mob/living/carbon/target) . = ..() - var/turf/T = pick(RANGE_TURFS(15, target)) + var/list/possible_turfs = RANGE_TURFS(15, target) + if(!length(possible_turfs)) + return INITIALIZE_HINT_QDEL + var/turf/T = pick(possible_turfs) forceMove(T) target.playsound_local(T, 'sound/weapons/saberon.ogg', 20, TRUE) @@ -398,7 +404,10 @@ /obj/effect/hallucination/gunfire/Initialize(mapload, mob/living/carbon/target) . = ..() - var/turf/T = pick(RANGE_TURFS(15, target)) + var/list/possible_turfs = RANGE_TURFS(15, target) + if(!length(possible_turfs)) + return INITIALIZE_HINT_QDEL + var/turf/T = pick(possible_turfs) forceMove(T) var/gun_sound = pick('sound/weapons/gunshots/gunshot_pistol.ogg', 'sound/weapons/gunshots/gunshot_strong.ogg') diff --git a/code/modules/hydroponics/beekeeping/beebox.dm b/code/modules/hydroponics/beekeeping/beebox.dm index 01fb9c6111b8..9debfe1aa6a3 100644 --- a/code/modules/hydroponics/beekeeping/beebox.dm +++ b/code/modules/hydroponics/beekeeping/beebox.dm @@ -95,7 +95,7 @@ if(queen_bee) if(bee_resources >= BEE_RESOURCE_HONEYCOMB_COST && length(honeycombs) < get_max_honeycomb()) bee_resources = max(bee_resources-BEE_RESOURCE_HONEYCOMB_COST, 0) - var/obj/item/food/snacks/honeycomb/HC = new(src) + var/obj/item/food/honeycomb/HC = new(src) if(queen_bee.beegent) HC.set_reagent(queen_bee.beegent.id) honeycombs += HC @@ -240,7 +240,7 @@ var/amtH = HF.honeycomb_capacity var/fallen = 0 while(length(honeycombs) && amtH) //let's pretend you always grab the frame with the most honeycomb on it - var/obj/item/food/snacks/honeycomb/HC = pick_n_take(honeycombs) + var/obj/item/food/honeycomb/HC = pick_n_take(honeycombs) if(HC) HC.forceMove(get_turf(src)) amtH-- diff --git a/code/modules/hydroponics/beekeeping/honeycomb.dm b/code/modules/hydroponics/beekeeping/honeycomb.dm index 7f27bdb9841b..cdbaf069c417 100644 --- a/code/modules/hydroponics/beekeeping/honeycomb.dm +++ b/code/modules/hydroponics/beekeeping/honeycomb.dm @@ -1,5 +1,5 @@ -/obj/item/food/snacks/honeycomb +/obj/item/food/honeycomb name = "honeycomb" desc = "A hexagonal mesh of honeycomb." icon = 'icons/obj/hydroponics/harvest.dmi' @@ -8,13 +8,13 @@ list_reagents = list("honey" = 5) var/honey_color = "" -/obj/item/food/snacks/honeycomb/Initialize(mapload) +/obj/item/food/honeycomb/Initialize(mapload) . = ..() pixel_x = rand(8,-8) pixel_y = rand(8,-8) update_icon(UPDATE_OVERLAYS) -/obj/item/food/snacks/honeycomb/update_overlays() +/obj/item/food/honeycomb/update_overlays() . = ..() var/image/honey if(honey_color) @@ -25,7 +25,7 @@ . += honey -/obj/item/food/snacks/honeycomb/proc/set_reagent(reagent) +/obj/item/food/honeycomb/proc/set_reagent(reagent) var/datum/reagent/R = GLOB.chemical_reagents_list[reagent] if(istype(R)) name = "honeycomb ([R.name])" diff --git a/code/modules/hydroponics/biogenerator.dm b/code/modules/hydroponics/biogenerator.dm index ef4e15963d4a..8db4b80f1b53 100644 --- a/code/modules/hydroponics/biogenerator.dm +++ b/code/modules/hydroponics/biogenerator.dm @@ -32,10 +32,10 @@ var/static/list/acceptable_items = typecacheof(list( /obj/item/seeds, /obj/item/unsorted_seeds, - /obj/item/food/snacks/grown, + /obj/item/food/grown, /obj/item/grown, - /obj/item/food/snacks/grown/ash_flora, - /obj/item/food/snacks/honeycomb)) + /obj/item/food/grown/ash_flora, + /obj/item/food/honeycomb)) /obj/machinery/biogenerator/Initialize(mapload) . = ..() @@ -105,19 +105,23 @@ /obj/machinery/biogenerator/attackby(obj/item/O, mob/user, params) if(user.a_intent == INTENT_HARM) return ..() + + if(istype(O, /obj/item/storage/part_replacer)) + return ..() + if(processing) to_chat(user, "[src] is currently processing.") return - if(exchange_parts(user, O)) - return if(istype(O, /obj/item/reagent_containers/glass)) if(panel_open) to_chat(user, "Close the maintenance panel first.") return + if(container) to_chat(user, "A container is already loaded into [src].") return + if(!user.drop_item()) return @@ -128,7 +132,7 @@ SStgui.update_uis(src) return TRUE - else if(istype(O, /obj/item/storage/bag/plants)) + if(istype(O, /obj/item/storage/bag/plants)) if(length(stored_plants) >= max_storable_plants) to_chat(user, "[src] can't hold any more plants!") return @@ -149,7 +153,7 @@ SStgui.update_uis(src) return TRUE - else if(is_type_in_typecache(O, acceptable_items)) + if(is_type_in_typecache(O, acceptable_items)) if(length(stored_plants) >= max_storable_plants) to_chat(user, "[src] can't hold any more plants!") return @@ -162,7 +166,7 @@ SStgui.update_uis(src) return TRUE - else if(istype(O, /obj/item/disk/design_disk)) + if(istype(O, /obj/item/disk/design_disk)) user.visible_message("[user] begins to load [O] in [src]...", "You begin to load a design from [O]...", "You hear the chatter of a floppy drive.") @@ -176,8 +180,8 @@ processing = FALSE update_ui_product_list(user) return TRUE - else - to_chat(user, "You cannot put this in [name]!") + + to_chat(user, "You cannot put [src] in [name]!") /** * Builds/Updates the `product_list` used by the UI. diff --git a/code/modules/hydroponics/compost_bin.dm b/code/modules/hydroponics/compost_bin.dm index ecb796857bac..5d0dedd9e191 100644 --- a/code/modules/hydroponics/compost_bin.dm +++ b/code/modules/hydroponics/compost_bin.dm @@ -54,7 +54,7 @@ return default_deconstruction_crowbar(user, I, ignore_panel = TRUE) // Accepts inserted plants and converts them to biomass and potassium -/obj/machinery/compost_bin/proc/make_biomass(obj/item/food/snacks/grown/O) +/obj/machinery/compost_bin/proc/make_biomass(obj/item/food/grown/O) // calculate biomass from plant nutriment and plant matter var/plant_biomass = O.reagents.get_reagent_amount("nutriment") + O.reagents.get_reagent_amount("plantmatter") var/plant_potassium = O.reagents.get_reagent_amount("potassium") @@ -76,7 +76,7 @@ return var/obj/item/storage/bag/plants/PB = O - for(var/obj/item/food/snacks/grown/G in PB.contents) + for(var/obj/item/food/grown/G in PB.contents) // if the plant contains either potassium, plantmatter and nutriment and the compost bin has space for any of those. if((G.reagents.get_reagent_amount("potassium") && potassium <= potassium_capacity) || ((G.reagents.get_reagent_amount("plantmatter") || G.reagents.get_reagent_amount("nutriment")) && biomass <= biomass_capacity)) PB.remove_from_storage(G, src) @@ -99,7 +99,7 @@ update_icon_state() return TRUE - if(istype(O, /obj/item/food/snacks/grown)) + if(istype(O, /obj/item/food/grown)) if(biomass >= biomass_capacity && potassium >= potassium_capacity) to_chat(user, "[src] can't hold any more biomass, and its contents are saturated with potassium!") return diff --git a/code/modules/hydroponics/fermenting_barrel.dm b/code/modules/hydroponics/fermenting_barrel.dm index cad77d337e2d..2bd18ee1793f 100644 --- a/code/modules/hydroponics/fermenting_barrel.dm +++ b/code/modules/hydroponics/fermenting_barrel.dm @@ -20,7 +20,7 @@ . = ..() . += "It is currently [open ? "open, letting you pour liquids in." : "closed, letting you draw liquids from the tap."]" -/obj/structure/fermenting_barrel/proc/makeWine(obj/item/food/snacks/grown/G) +/obj/structure/fermenting_barrel/proc/makeWine(obj/item/food/grown/G) if(G.reagents) G.reagents.trans_to(src, G.reagents.total_volume) var/amount = G.seed.potency / 4 @@ -40,7 +40,7 @@ playsound(src, 'sound/effects/bubbles.ogg', 50, TRUE) /obj/structure/fermenting_barrel/attackby(obj/item/I, mob/user, params) - var/obj/item/food/snacks/grown/G = I + var/obj/item/food/grown/G = I if(istype(G)) if(!G.can_distill) to_chat(user, "You can't distill this into anything...") diff --git a/code/modules/hydroponics/gene_modder.dm b/code/modules/hydroponics/gene_modder.dm index 6cac5b3b9641..272dbbf143c0 100644 --- a/code/modules/hydroponics/gene_modder.dm +++ b/code/modules/hydroponics/gene_modder.dm @@ -134,22 +134,23 @@ if(default_deconstruction_screwdriver(user, "dnamod", "dnamod", I)) update_icon(UPDATE_OVERLAYS) return - if(exchange_parts(user, I)) - return + if(default_deconstruction_crowbar(user, I)) return - if(isrobot(user)) + + if(istype(I, /obj/item/unsorted_seeds)) + to_chat(user, "You need to sort [I] first!") return if(istype(I, /obj/item/seeds)) add_seed(I, user) - else if(istype(I, /obj/item/unsorted_seeds)) - to_chat(user, "You need to sort [I] first!") - return ..() - else if(istype(I, /obj/item/disk/plantgene) || istype(I, /obj/item/storage/box)) + return + + if(istype(I, /obj/item/disk/plantgene) || istype(I, /obj/item/storage/box)) add_disk(I, user) - else - return ..() + return + + return ..() /obj/machinery/plantgenes/proc/add_seed(obj/item/seeds/new_seed, mob/user) if(seed) diff --git a/code/modules/hydroponics/grown.dm b/code/modules/hydroponics/grown.dm index 2fb1bcf161ea..d8e658a8afcd 100644 --- a/code/modules/hydroponics/grown.dm +++ b/code/modules/hydroponics/grown.dm @@ -4,7 +4,7 @@ // *********************************************************** // Base type. Subtypes are found in /grown dir. -/obj/item/food/snacks/grown +/obj/item/food/grown icon = 'icons/obj/hydroponics/harvest.dmi' /// The seed of this plant. Starts as a type path, gets converted to an item on New() var/obj/item/seeds/seed = null @@ -21,7 +21,7 @@ resistance_flags = FLAMMABLE origin_tech = "biotech=1" -/obj/item/food/snacks/grown/Initialize(mapload, obj/new_seed = null) +/obj/item/food/grown/Initialize(mapload, obj/new_seed = null) . = ..() if(!tastes) tastes = list("[name]" = 1) @@ -51,25 +51,25 @@ if(seed.variant) name += " \[[seed.variant]]" -/obj/item/food/snacks/grown/Destroy() +/obj/item/food/grown/Destroy() QDEL_NULL(seed) return ..() -/obj/item/food/snacks/grown/proc/add_juice() +/obj/item/food/grown/proc/add_juice() if(reagents) if(bitesize_mod) bitesize = 1 + round(reagents.total_volume / bitesize_mod) return 1 return 0 -/obj/item/food/snacks/grown/examine(user) +/obj/item/food/grown/examine(user) . = ..() if(seed) for(var/datum/plant_gene/trait/T in seed.genes) if(T.examine_line) . += T.examine_line -/obj/item/food/snacks/grown/attackby(obj/item/O, mob/user, params) +/obj/item/food/grown/attackby(obj/item/O, mob/user, params) ..() if(slices_num && slice_path) var/inaccurate = TRUE @@ -106,12 +106,12 @@ // Various gene procs -/obj/item/food/snacks/grown/attack_self(mob/user) +/obj/item/food/grown/attack_self(mob/user) if(seed && seed.get_gene(/datum/plant_gene/trait/squash)) squash(user) ..() -/obj/item/food/snacks/grown/throw_impact(atom/hit_atom) +/obj/item/food/grown/throw_impact(atom/hit_atom) if(!..()) //was it caught by a mob? if(seed) log_action(locateUID(thrownby), hit_atom, "Thrown [src] at") @@ -120,7 +120,7 @@ if(seed.get_gene(/datum/plant_gene/trait/squash)) squash(hit_atom) -/obj/item/food/snacks/grown/proc/squash(atom/target) +/obj/item/food/grown/proc/squash(atom/target) var/turf/T = get_turf(target) if(ispath(splat_type, /obj/effect/decal/cleanable/plant_smudge)) if(filling_color) @@ -145,28 +145,28 @@ qdel(src) -/obj/item/food/snacks/grown/On_Consume(mob/M, mob/user) +/obj/item/food/grown/On_Consume(mob/M, mob/user) if(iscarbon(M)) if(seed) for(var/datum/plant_gene/trait/T in seed.genes) T.on_consume(src, M) ..() -/obj/item/food/snacks/grown/after_slip(mob/living/carbon/human/H) +/obj/item/food/grown/after_slip(mob/living/carbon/human/H) if(!seed) return for(var/datum/plant_gene/trait/T in seed.genes) T.on_slip(src, H) // Glow gene procs -/obj/item/food/snacks/grown/generate_trash(atom/location) +/obj/item/food/grown/generate_trash(atom/location) if(trash && ispath(trash, /obj/item/grown)) . = new trash(location, seed) trash = null return return ..() -/obj/item/food/snacks/grown/decompile_act(obj/item/matter_decompiler/C, mob/user) +/obj/item/food/grown/decompile_act(obj/item/matter_decompiler/C, mob/user) if(isdrone(user)) C.stored_comms["wood"] += 4 qdel(src) @@ -174,7 +174,7 @@ return ..() // For item-containing growns such as eggy or gatfruit -/obj/item/food/snacks/grown/shell/attack_self(mob/user) +/obj/item/food/grown/shell/attack_self(mob/user) if(!do_after(user, 1.5 SECONDS, target = user)) return user.unEquip(src) @@ -185,14 +185,14 @@ qdel(src) // Diona Nymphs can eat these as well as weeds to gain nutrition. -/obj/item/food/snacks/grown/attack_animal(mob/living/simple_animal/M) +/obj/item/food/grown/attack_animal(mob/living/simple_animal/M) if(isnymph(M)) var/mob/living/simple_animal/diona/D = M D.consume(src) else return ..() -/obj/item/food/snacks/grown/proc/log_action(mob/user, atom/target, what_done) +/obj/item/food/grown/proc/log_action(mob/user, atom/target, what_done) var/reagent_str = reagents.log_list() var/genes_str = "No genes" if(seed && length(seed.genes)) @@ -205,12 +205,12 @@ add_attack_logs(user, target, "[what_done] ([reagent_str] | [genes_str])") -/obj/item/food/snacks/grown/extinguish_light(force) +/obj/item/food/grown/extinguish_light(force) if(seed.get_gene(/datum/plant_gene/trait/glow/shadow)) return set_light(0) -/obj/item/food/snacks/grown/proc/send_plant_details(mob/user) +/obj/item/food/grown/proc/send_plant_details(mob/user) var/msg = "This is \a [src].\n" if(seed) msg += seed.get_analyzer_text() @@ -225,13 +225,13 @@ msg += reag_txt to_chat(user, msg) -/obj/item/food/snacks/grown/attack_ghost(mob/dead/observer/user) +/obj/item/food/grown/attack_ghost(mob/dead/observer/user) if(!istype(user)) // Make sure user is actually an observer. Revenents also use attack_ghost, but do not have the toggle plant analyzer var. return if(user.plant_analyzer) send_plant_details(user) -/obj/item/food/snacks/grown/fire_act() +/obj/item/food/grown/fire_act() if(!..()) //Checks for if its unburnable return if(!reagents) diff --git a/code/modules/hydroponics/grown/ambrosia.dm b/code/modules/hydroponics/grown/ambrosia.dm index 0cd8dfcdb5e2..b11cfd562511 100644 --- a/code/modules/hydroponics/grown/ambrosia.dm +++ b/code/modules/hydroponics/grown/ambrosia.dm @@ -1,5 +1,5 @@ // Ambrosia - base type -/obj/item/food/snacks/grown/ambrosia +/obj/item/food/grown/ambrosia seed = /obj/item/seeds/ambrosia name = "ambrosia branch" desc = "This is a plant." @@ -20,7 +20,7 @@ icon_state = "seed-ambrosiavulgaris" species = "ambrosiavulgaris" plantname = "Ambrosia Vulgaris" - product = /obj/item/food/snacks/grown/ambrosia/vulgaris + product = /obj/item/food/grown/ambrosia/vulgaris lifespan = 60 endurance = 25 yield = 6 @@ -30,7 +30,7 @@ mutatelist = list(/obj/item/seeds/ambrosia/deus) reagents_add = list("space_drugs" = 0.15, "bicaridine" = 0.1, "kelotane" = 0.1, "vitamin" = 0.04, "plantmatter" = 0.05, "toxin" = 0.1) -/obj/item/food/snacks/grown/ambrosia/vulgaris +/obj/item/food/grown/ambrosia/vulgaris seed = /obj/item/seeds/ambrosia name = "ambrosia vulgaris branch" desc = "This is a plant containing various healing chemicals." @@ -44,12 +44,12 @@ icon_state = "seed-ambrosiadeus" species = "ambrosiadeus" plantname = "Ambrosia Deus" - product = /obj/item/food/snacks/grown/ambrosia/deus + product = /obj/item/food/grown/ambrosia/deus mutatelist = list(/obj/item/seeds/ambrosia/gaia) reagents_add = list("weak_omnizine" = 0.15, "synaptizine" = 0.15, "space_drugs" = 0.1, "vitamin" = 0.04, "plantmatter" = 0.05) rarity = 40 -/obj/item/food/snacks/grown/ambrosia/deus +/obj/item/food/grown/ambrosia/deus seed = /obj/item/seeds/ambrosia/deus name = "ambrosia deus branch" desc = "Eating this makes you feel immortal!" @@ -70,7 +70,7 @@ icon_state = "seed-ambrosia_gaia" species = "ambrosia_gaia" plantname = "Ambrosia Gaia" - product = /obj/item/food/snacks/grown/ambrosia/gaia + product = /obj/item/food/grown/ambrosia/gaia mutatelist = list() reagents_add = list("earthsblood" = 0.05, "nutriment" = 0.06, "vitamin" = 0.05) rarity = 30 //These are some pretty good plants right here @@ -78,7 +78,7 @@ weed_rate = 4 weed_chance = 100 -/obj/item/food/snacks/grown/ambrosia/gaia +/obj/item/food/grown/ambrosia/gaia name = "ambrosia gaia branch" desc = "Eating this makes you immortal." icon_state = "ambrosia_gaia" @@ -92,12 +92,12 @@ // Ambrosia Cruciatus /obj/item/seeds/ambrosia/cruciatus - product = /obj/item/food/snacks/grown/ambrosia/cruciatus + product = /obj/item/food/grown/ambrosia/cruciatus potency = 10 mutatelist = list() reagents_add = list("thc" = 0.15, "kelotane" = 0.15, "bicaridine" = 0.1, "bath_salts" = 0.20, "plantmatter" = 0.05) -/obj/item/food/snacks/grown/ambrosia/cruciatus +/obj/item/food/grown/ambrosia/cruciatus seed = /obj/item/seeds/ambrosia/cruciatus wine_power = 0.7 tastes = list("ambrosia cruciatus" = 1) diff --git a/code/modules/hydroponics/grown/apple.dm b/code/modules/hydroponics/grown/apple.dm index f1cd12752313..68e21264f2f5 100644 --- a/code/modules/hydroponics/grown/apple.dm +++ b/code/modules/hydroponics/grown/apple.dm @@ -5,7 +5,7 @@ icon_state = "seed-apple" species = "apple" plantname = "Apple Tree" - product = /obj/item/food/snacks/grown/apple + product = /obj/item/food/grown/apple lifespan = 55 endurance = 35 yield = 5 @@ -16,7 +16,7 @@ mutatelist = list(/obj/item/seeds/apple/gold) reagents_add = list("vitamin" = 0.04, "plantmatter" = 0.1) -/obj/item/food/snacks/grown/apple +/obj/item/food/grown/apple seed = /obj/item/seeds/apple name = "apple" desc = "It's a little piece of Eden." @@ -28,12 +28,12 @@ // Posioned Apple /obj/item/seeds/apple/poisoned - product = /obj/item/food/snacks/grown/apple/poisoned + product = /obj/item/food/grown/apple/poisoned mutatelist = list() reagents_add = list("cyanide" = 0.5, "vitamin" = 0.04, "plantmatter" = 0.1) rarity = 50 // Source of cyanide, and hard (almost impossible) to obtain normally. -/obj/item/food/snacks/grown/apple/poisoned +/obj/item/food/grown/apple/poisoned seed = /obj/item/seeds/apple/poisoned // Gold Apple @@ -43,14 +43,14 @@ icon_state = "seed-goldapple" species = "goldapple" plantname = "Golden Apple Tree" - product = /obj/item/food/snacks/grown/apple/gold + product = /obj/item/food/grown/apple/gold maturation = 10 production = 10 mutatelist = list() reagents_add = list("gold" = 0.2, "vitamin" = 0.04, "plantmatter" = 0.1) rarity = 40 // Alchemy! -/obj/item/food/snacks/grown/apple/gold +/obj/item/food/grown/apple/gold seed = /obj/item/seeds/apple/gold name = "golden apple" desc = "Emblazoned upon the apple is the word 'Kallisti'." diff --git a/code/modules/hydroponics/grown/banana.dm b/code/modules/hydroponics/grown/banana.dm index da8012befd4d..1ef613568142 100644 --- a/code/modules/hydroponics/grown/banana.dm +++ b/code/modules/hydroponics/grown/banana.dm @@ -5,7 +5,7 @@ icon_state = "seed-banana" species = "banana" plantname = "Banana Tree" - product = /obj/item/food/snacks/grown/banana + product = /obj/item/food/grown/banana lifespan = 50 endurance = 30 growing_icon = 'icons/obj/hydroponics/growing_fruits.dmi' @@ -14,7 +14,7 @@ mutatelist = list(/obj/item/seeds/banana/mime, /obj/item/seeds/banana/bluespace) reagents_add = list("banana" = 0.1, "potassium" = 0.1, "vitamin" = 0.04, "plantmatter" = 0.02) -/obj/item/food/snacks/grown/banana +/obj/item/food/grown/banana seed = /obj/item/seeds/banana name = "banana" desc = "It's an excellent prop for a clown." @@ -26,11 +26,11 @@ distill_reagent = "bananahonk" tastes = list("banana" = 1) -/obj/item/food/snacks/grown/banana/Initialize(mapload) +/obj/item/food/grown/banana/Initialize(mapload) . = ..() ADD_TRAIT(src, TRAIT_CAN_POINT_WITH, ROUNDSTART_TRAIT) -/obj/item/food/snacks/grown/banana/suicide_act(mob/user) +/obj/item/food/grown/banana/suicide_act(mob/user) user.visible_message("[user] is aiming [src] at [user.p_themselves()]! It looks like [user.p_theyre()] trying to commit suicide!") playsound(loc, 'sound/items/bikehorn.ogg', 50, TRUE, -1) sleep(25) @@ -81,13 +81,13 @@ icon_state = "seed-mimana" species = "mimana" plantname = "Mimana Tree" - product = /obj/item/food/snacks/grown/banana/mime + product = /obj/item/food/grown/banana/mime growthstages = 4 mutatelist = list() reagents_add = list("nothing" = 0.1, "capulettium_plus" = 0.1, "nutriment" = 0.02) rarity = 15 -/obj/item/food/snacks/grown/banana/mime +/obj/item/food/grown/banana/mime seed = /obj/item/seeds/banana/mime name = "mimana" desc = "It's an excellent prop for a mime." @@ -110,13 +110,13 @@ species = "bluespacebanana" icon_grow = "banana-grow" plantname = "Bluespace Banana Tree" - product = /obj/item/food/snacks/grown/banana/bluespace + product = /obj/item/food/grown/banana/bluespace mutatelist = list() genes = list(/datum/plant_gene/trait/slip, /datum/plant_gene/trait/teleport, /datum/plant_gene/trait/repeated_harvest) reagents_add = list("singulo" = 0.2, "banana" = 0.1, "vitamin" = 0.04, "plantmatter" = 0.02) rarity = 30 -/obj/item/food/snacks/grown/banana/bluespace +/obj/item/food/grown/banana/bluespace seed = /obj/item/seeds/banana/bluespace name = "bluespace banana" icon_state = "bluenana" diff --git a/code/modules/hydroponics/grown/beans.dm b/code/modules/hydroponics/grown/beans.dm index 4c0ad33b5f46..d1d4c9c125a0 100644 --- a/code/modules/hydroponics/grown/beans.dm +++ b/code/modules/hydroponics/grown/beans.dm @@ -5,7 +5,7 @@ icon_state = "seed-soybean" species = "soybean" plantname = "Soybean Plants" - product = /obj/item/food/snacks/grown/soybeans + product = /obj/item/food/grown/soybeans maturation = 4 production = 4 potency = 15 @@ -17,7 +17,7 @@ mutatelist = list(/obj/item/seeds/soya/koi) reagents_add = list("vitamin" = 0.04, "plantmatter" = 0.05, "soybeanoil" = 0.03) -/obj/item/food/snacks/grown/soybeans +/obj/item/food/grown/soybeans seed = /obj/item/seeds/soya name = "soybeans" desc = "It's pretty bland, but oh the possibilities..." @@ -35,13 +35,13 @@ icon_state = "seed-koibean" species = "koibean" plantname = "Koibean Plants" - product = /obj/item/food/snacks/grown/koibeans + product = /obj/item/food/grown/koibeans potency = 10 mutatelist = list() reagents_add = list("carpotoxin" = 0.1, "vitamin" = 0.04, "plantmatter" = 0.05) rarity = 20 -/obj/item/food/snacks/grown/koibeans +/obj/item/food/grown/koibeans seed = /obj/item/seeds/soya/koi name = "koibean" desc = "Something about these seems fishy." diff --git a/code/modules/hydroponics/grown/berries.dm b/code/modules/hydroponics/grown/berries.dm index 78f651294985..1137e7533685 100644 --- a/code/modules/hydroponics/grown/berries.dm +++ b/code/modules/hydroponics/grown/berries.dm @@ -5,7 +5,7 @@ icon_state = "seed-berry" species = "berry" plantname = "Berry Bush" - product = /obj/item/food/snacks/grown/berries + product = /obj/item/food/grown/berries lifespan = 20 maturation = 5 production = 5 @@ -17,7 +17,7 @@ mutatelist = list(/obj/item/seeds/berry/glow, /obj/item/seeds/berry/poison) reagents_add = list("vitamin" = 0.04, "plantmatter" = 0.1) -/obj/item/food/snacks/grown/berries +/obj/item/food/grown/berries seed = /obj/item/seeds/berry name = "bunch of berries" desc = "Nutritious!" @@ -35,12 +35,12 @@ icon_state = "seed-poisonberry" species = "poisonberry" plantname = "Poison-Berry Bush" - product = /obj/item/food/snacks/grown/berries/poison + product = /obj/item/food/grown/berries/poison mutatelist = list(/obj/item/seeds/berry/death) reagents_add = list("cyanide" = 0.15, "tirizene" = 0.2, "vitamin" = 0.04, "plantmatter" = 0.1) rarity = 10 // Mildly poisonous berries are common in reality -/obj/item/food/snacks/grown/berries/poison +/obj/item/food/grown/berries/poison seed = /obj/item/seeds/berry/poison name = "bunch of poison-berries" desc = "Taste so good, you could die!" @@ -57,14 +57,14 @@ icon_state = "seed-deathberry" species = "deathberry" plantname = "Death Berry Bush" - product = /obj/item/food/snacks/grown/berries/death + product = /obj/item/food/grown/berries/death lifespan = 30 potency = 50 mutatelist = list() reagents_add = list("coniine" = 0.08, "tirizene" = 0.1, "vitamin" = 0.04, "plantmatter" = 0.1) rarity = 30 -/obj/item/food/snacks/grown/berries/death +/obj/item/food/grown/berries/death seed = /obj/item/seeds/berry/death name = "bunch of death-berries" desc = "Taste so good, you could die!" @@ -81,7 +81,7 @@ icon_state = "seed-glowberry" species = "glowberry" plantname = "Glow-Berry Bush" - product = /obj/item/food/snacks/grown/berries/glow + product = /obj/item/food/grown/berries/glow lifespan = 30 endurance = 25 mutatelist = list() @@ -89,7 +89,7 @@ reagents_add = list("uranium" = 0.25, "iodine" = 0.2, "vitamin" = 0.04, "plantmatter" = 0.1) rarity = 20 -/obj/item/food/snacks/grown/berries/glow +/obj/item/food/grown/berries/glow seed = /obj/item/seeds/berry/glow name = "bunch of glow-berries" desc = "Nutritious!" @@ -109,7 +109,7 @@ icon_state = "seed-cherry" species = "cherry" plantname = "Cherry Tree" - product = /obj/item/food/snacks/grown/cherries + product = /obj/item/food/grown/cherries lifespan = 35 endurance = 35 maturation = 5 @@ -122,7 +122,7 @@ mutatelist = list(/obj/item/seeds/cherry/blue) reagents_add = list("plantmatter" = 0.07, "sugar" = 0.07) -/obj/item/food/snacks/grown/cherries +/obj/item/food/grown/cherries seed = /obj/item/seeds/cherry name = "cherries" desc = "Great for toppings!" @@ -140,12 +140,12 @@ icon_state = "seed-bluecherry" species = "bluecherry" plantname = "Blue Cherry Tree" - product = /obj/item/food/snacks/grown/bluecherries + product = /obj/item/food/grown/bluecherries mutatelist = list() reagents_add = list("plantmatter" = 0.07, "sugar" = 0.07) rarity = 10 -/obj/item/food/snacks/grown/bluecherries +/obj/item/food/grown/bluecherries seed = /obj/item/seeds/cherry/blue name = "blue cherries" desc = "They're cherries that are blue." @@ -162,7 +162,7 @@ icon_state = "seed-grapes" species = "grape" plantname = "Grape Vine" - product = /obj/item/food/snacks/grown/grapes + product = /obj/item/food/grown/grapes lifespan = 50 endurance = 25 maturation = 3 @@ -176,12 +176,12 @@ mutatelist = list(/obj/item/seeds/grape/green) reagents_add = list("vitamin" = 0.04, "plantmatter" = 0.1, "sugar" = 0.1) -/obj/item/food/snacks/grown/grapes +/obj/item/food/grown/grapes seed = /obj/item/seeds/grape name = "bunch of grapes" desc = "Nutritious!" icon_state = "grapes" - dried_type = /obj/item/food/snacks/no_raisin/healthy + dried_type = /obj/item/food/no_raisin/healthy filling_color = "#FF1493" bitesize_mod = 2 tastes = list("grapes" = 1) @@ -194,12 +194,12 @@ icon_state = "seed-greengrapes" species = "greengrape" plantname = "Green-Grape Vine" - product = /obj/item/food/snacks/grown/grapes/green + product = /obj/item/food/grown/grapes/green reagents_add = list("kelotane" = 0.2, "vitamin" = 0.04, "plantmatter" = 0.1, "sugar" = 0.1) // No rarity: technically it's a beneficial mutant, but it's not exactly "new"... mutatelist = list() -/obj/item/food/snacks/grown/grapes/green +/obj/item/food/grown/grapes/green seed = /obj/item/seeds/grape/green name = "bunch of green grapes" icon_state = "greengrapes" diff --git a/code/modules/hydroponics/grown/cannabis.dm b/code/modules/hydroponics/grown/cannabis.dm index ce96f21d6668..517033e030c3 100644 --- a/code/modules/hydroponics/grown/cannabis.dm +++ b/code/modules/hydroponics/grown/cannabis.dm @@ -5,7 +5,7 @@ icon_state = "seed-cannabis" species = "cannabis" plantname = "Cannabis Plant" - product = /obj/item/food/snacks/grown/cannabis + product = /obj/item/food/grown/cannabis maturation = 8 potency = 20 growthstages = 1 @@ -24,7 +24,7 @@ icon_state = "seed-megacannabis" species = "megacannabis" plantname = "Rainbow Weed" - product = /obj/item/food/snacks/grown/cannabis/rainbow + product = /obj/item/food/grown/cannabis/rainbow mutatelist = list(/obj/item/seeds/cannabis/death, /obj/item/seeds/cannabis/ultimate) reagents_add = list("lsd" = 0.15, "thc" = 0.15, "cbd" = 0.15, "happiness" = 0.15) @@ -36,7 +36,7 @@ icon_state = "seed-blackcannabis" species = "blackcannabis" plantname = "Deathweed" - product = /obj/item/food/snacks/grown/cannabis/death + product = /obj/item/food/grown/cannabis/death mutatelist = list() reagents_add = list("cyanide" = 0.35, "thc" = 0.15, "cbd" = 0.15) rarity = 40 @@ -47,7 +47,7 @@ icon_state = "seed-whitecannabis" species = "whitecannabis" plantname = "Lifeweed" - product = /obj/item/food/snacks/grown/cannabis/white + product = /obj/item/food/grown/cannabis/white mutatelist = list(/obj/item/seeds/cannabis/death, /obj/item/seeds/cannabis/ultimate) reagents_add = list("omnizine" = 0.35, "thc" = 0.15, "cbd" = 0.15) @@ -60,7 +60,7 @@ icon_state = "seed-ocannabis" species = "ocannabis" plantname = "Omega Weed" - product = /obj/item/food/snacks/grown/cannabis/ultimate + product = /obj/item/food/grown/cannabis/ultimate mutatelist = list() reagents_add = list("lsd" = 0.05, "suicider" = 0.05, @@ -85,7 +85,7 @@ // --------------------------------------------------------------- -/obj/item/food/snacks/grown/cannabis +/obj/item/food/grown/cannabis seed = /obj/item/seeds/cannabis icon = 'icons/goonstation/objects/hydroponics.dmi' name = "cannabis leaf" @@ -97,28 +97,28 @@ wine_power = 0.2 -/obj/item/food/snacks/grown/cannabis/rainbow +/obj/item/food/grown/cannabis/rainbow seed = /obj/item/seeds/cannabis/rainbow name = "rainbow cannabis leaf" desc = "Is it supposed to be glowing like that...?" icon_state = "megacannabis" wine_power = 0.6 -/obj/item/food/snacks/grown/cannabis/death +/obj/item/food/grown/cannabis/death seed = /obj/item/seeds/cannabis/death name = "death cannabis leaf" desc = "Looks a bit dark. Oh well." icon_state = "blackcannabis" wine_power = 0.4 -/obj/item/food/snacks/grown/cannabis/white +/obj/item/food/grown/cannabis/white seed = /obj/item/seeds/cannabis/white name = "white cannabis leaf" desc = "It feels smooth and nice to the touch." icon_state = "whitecannabis" wine_power = 0.1 -/obj/item/food/snacks/grown/cannabis/ultimate +/obj/item/food/grown/cannabis/ultimate seed = /obj/item/seeds/cannabis/ultimate name = "omega cannibas leaf" desc = "You feel dizzy looking at it. What the fuck?" diff --git a/code/modules/hydroponics/grown/cereals.dm b/code/modules/hydroponics/grown/cereals.dm index e5342e999858..0d57acbdd9a6 100644 --- a/code/modules/hydroponics/grown/cereals.dm +++ b/code/modules/hydroponics/grown/cereals.dm @@ -5,7 +5,7 @@ icon_state = "seed-wheat" species = "wheat" plantname = "Wheat Stalks" - product = /obj/item/food/snacks/grown/wheat + product = /obj/item/food/grown/wheat production = 1 yield = 4 potency = 30 @@ -13,7 +13,7 @@ mutatelist = list(/obj/item/seeds/wheat/oat, /obj/item/seeds/wheat/meat) reagents_add = list("plantmatter" = 0.04) -/obj/item/food/snacks/grown/wheat +/obj/item/food/grown/wheat seed = /obj/item/seeds/wheat name = "wheat" desc = "Sigh... wheat... a-grain?" @@ -31,10 +31,10 @@ icon_state = "seed-oat" species = "oat" plantname = "Oat Stalks" - product = /obj/item/food/snacks/grown/oat + product = /obj/item/food/grown/oat mutatelist = list() -/obj/item/food/snacks/grown/oat +/obj/item/food/grown/oat seed = /obj/item/seeds/wheat/oat name = "oat" desc = "Eat oats, do squats." @@ -52,11 +52,11 @@ icon_state = "seed-rice" species = "rice" plantname = "Rice Stalks" - product = /obj/item/food/snacks/grown/rice + product = /obj/item/food/grown/rice mutatelist = list() growthstages = 3 -/obj/item/food/snacks/grown/rice +/obj/item/food/grown/rice seed = /obj/item/seeds/wheat/rice name = "rice" desc = "Rice to meet you." @@ -74,11 +74,11 @@ icon_state = "seed-meatwheat" species = "meatwheat" plantname = "Meatwheat" - product = /obj/item/food/snacks/grown/meatwheat + product = /obj/item/food/grown/meatwheat mutatelist = list() reagents_add = list("protein" = 0.04) -/obj/item/food/snacks/grown/meatwheat +/obj/item/food/grown/meatwheat name = "meatwheat" desc = "Some blood-drenched wheat stalks. You can crush them into what passes for meat if you squint hard enough." icon_state = "meatwheat" @@ -89,10 +89,10 @@ tastes = list("meatwheat" = 1) can_distill = FALSE -/obj/item/food/snacks/grown/meatwheat/attack_self(mob/living/user) +/obj/item/food/grown/meatwheat/attack_self(mob/living/user) user.visible_message("[user] crushes [src] into meat.", "You crush [src] into something that resembles meat.") playsound(user, 'sound/effects/blobattack.ogg', 50, 1) - var/obj/item/food/snacks/meat/meatwheat/M = new(get_turf(user)) + var/obj/item/food/meat/meatwheat/M = new(get_turf(user)) user.drop_item() qdel(src) user.put_in_hands(M) diff --git a/code/modules/hydroponics/grown/chili.dm b/code/modules/hydroponics/grown/chili.dm index 63202491bffc..d0c05accc2b8 100644 --- a/code/modules/hydroponics/grown/chili.dm +++ b/code/modules/hydroponics/grown/chili.dm @@ -5,7 +5,7 @@ icon_state = "seed-chili" species = "chili" plantname = "Chili Plants" - product = /obj/item/food/snacks/grown/chili + product = /obj/item/food/grown/chili lifespan = 20 maturation = 5 production = 5 @@ -18,7 +18,7 @@ mutatelist = list(/obj/item/seeds/chili/ice, /obj/item/seeds/chili/ghost) reagents_add = list("capsaicin" = 0.25, "vitamin" = 0.04, "plantmatter" = 0.04) -/obj/item/food/snacks/grown/chili +/obj/item/food/grown/chili seed = /obj/item/seeds/chili name = "chili" desc = "It's spicy! Wait... IT'S BURNING ME!!" @@ -35,7 +35,7 @@ icon_state = "seed-icepepper" species = "chiliice" plantname = "Chilly Pepper Plants" - product = /obj/item/food/snacks/grown/icepepper + product = /obj/item/food/grown/icepepper lifespan = 25 maturation = 4 production = 4 @@ -43,7 +43,7 @@ mutatelist = list() reagents_add = list("frostoil" = 0.25, "vitamin" = 0.02, "plantmatter" = 0.02) -/obj/item/food/snacks/grown/icepepper +/obj/item/food/grown/icepepper seed = /obj/item/seeds/chili/ice name = "chilly pepper" desc = "It's a mutant strain of chili" @@ -61,7 +61,7 @@ icon_state = "seed-chilighost" species = "chilighost" plantname = "Ghost Chili Plants" - product = /obj/item/food/snacks/grown/ghost_chili + product = /obj/item/food/grown/ghost_chili endurance = 10 maturation = 10 production = 10 @@ -70,7 +70,7 @@ mutatelist = list() reagents_add = list("condensedcapsaicin" = 0.3, "capsaicin" = 0.55, "plantmatter" = 0.04) -/obj/item/food/snacks/grown/ghost_chili +/obj/item/food/grown/ghost_chili seed = /obj/item/seeds/chili/ghost name = "ghost chili" desc = "It seems to be vibrating gently." diff --git a/code/modules/hydroponics/grown/citrus.dm b/code/modules/hydroponics/grown/citrus.dm index f4d1b53d0e3c..1ee7a1d9f155 100644 --- a/code/modules/hydroponics/grown/citrus.dm +++ b/code/modules/hydroponics/grown/citrus.dm @@ -1,5 +1,5 @@ // Citrus - base type -/obj/item/food/snacks/grown/citrus +/obj/item/food/grown/citrus seed = /obj/item/seeds/lime name = "citrus" desc = "It's so sour, your face will twist." @@ -14,7 +14,7 @@ icon_state = "seed-lime" species = "lime" plantname = "Lime Tree" - product = /obj/item/food/snacks/grown/citrus/lime + product = /obj/item/food/grown/citrus/lime lifespan = 55 endurance = 50 yield = 4 @@ -24,7 +24,7 @@ mutatelist = list(/obj/item/seeds/orange) reagents_add = list("vitamin" = 0.04, "plantmatter" = 0.05) -/obj/item/food/snacks/grown/citrus/lime +/obj/item/food/grown/citrus/lime seed = /obj/item/seeds/lime name = "lime" desc = "It's so sour, your face will twist." @@ -39,7 +39,7 @@ icon_state = "seed-orange" species = "orange" plantname = "Orange Tree" - product = /obj/item/food/snacks/grown/citrus/orange + product = /obj/item/food/grown/citrus/orange lifespan = 60 endurance = 50 yield = 5 @@ -51,7 +51,7 @@ mutatelist = list(/obj/item/seeds/lime) reagents_add = list("vitamin" = 0.04, "plantmatter" = 0.05) -/obj/item/food/snacks/grown/citrus/orange +/obj/item/food/grown/citrus/orange seed = /obj/item/seeds/orange name = "orange" desc = "It's an tangy fruit." @@ -67,7 +67,7 @@ icon_state = "seed-lemon" species = "lemon" plantname = "Lemon Tree" - product = /obj/item/food/snacks/grown/citrus/lemon + product = /obj/item/food/grown/citrus/lemon lifespan = 55 endurance = 45 yield = 4 @@ -78,7 +78,7 @@ mutatelist = list(/obj/item/seeds/firelemon) reagents_add = list("vitamin" = 0.04, "plantmatter" = 0.05) -/obj/item/food/snacks/grown/citrus/lemon +/obj/item/food/grown/citrus/lemon seed = /obj/item/seeds/lemon name = "lemon" desc = "When life gives you lemons, make lemonade." @@ -94,7 +94,7 @@ icon_state = "seed-firelemon" species = "firelemon" plantname = "Combustible Lemon Tree" - product = /obj/item/food/snacks/grown/firelemon + product = /obj/item/food/grown/firelemon growing_icon = 'icons/obj/hydroponics/growing_fruits.dmi' icon_grow = "lime-grow" icon_dead = "lime-dead" @@ -104,7 +104,7 @@ yield = 4 reagents_add = list("plantmatter" = 0.05) -/obj/item/food/snacks/grown/firelemon +/obj/item/food/grown/firelemon seed = /obj/item/seeds/firelemon name = "combustible lemon" desc = "Made for burning houses down." @@ -114,7 +114,7 @@ tastes = list("burning lemon" = 1) wine_flavor = "fire" -/obj/item/food/snacks/grown/firelemon/attack_self(mob/living/user) +/obj/item/food/grown/firelemon/attack_self(mob/living/user) var/area/A = get_area(user) user.visible_message("[user] primes [src]!", "You prime [src]!") investigate_log("[key_name(user)] primed a combustible lemon for detonation at [A] [COORD(user)].", INVESTIGATE_BOMB) @@ -127,19 +127,19 @@ playsound(loc, 'sound/weapons/armbomb.ogg', 75, TRUE, -3) addtimer(CALLBACK(src, PROC_REF(prime)), rand(10, 60)) -/obj/item/food/snacks/grown/firelemon/burn() +/obj/item/food/grown/firelemon/burn() prime() ..() -/obj/item/food/snacks/grown/firelemon/proc/update_mob() +/obj/item/food/grown/firelemon/proc/update_mob() if(ismob(loc)) var/mob/M = loc M.unEquip(src) -/obj/item/food/snacks/grown/firelemon/ex_act(severity) +/obj/item/food/grown/firelemon/ex_act(severity) qdel(src) //Ensuring that it's deleted by its own explosion -/obj/item/food/snacks/grown/firelemon/proc/prime() +/obj/item/food/grown/firelemon/proc/prime() switch(seed.potency) //Combustible lemons are alot like IEDs, lots of flame, very little bang. if(0 to 30) update_mob() diff --git a/code/modules/hydroponics/grown/cocoa_vanilla.dm b/code/modules/hydroponics/grown/cocoa_vanilla.dm index 9e21671169bd..cc21fca814ee 100644 --- a/code/modules/hydroponics/grown/cocoa_vanilla.dm +++ b/code/modules/hydroponics/grown/cocoa_vanilla.dm @@ -5,7 +5,7 @@ icon_state = "seed-cocoapod" species = "cocoapod" plantname = "Cocao Tree" - product = /obj/item/food/snacks/grown/cocoapod + product = /obj/item/food/grown/cocoapod lifespan = 20 maturation = 5 production = 5 @@ -18,7 +18,7 @@ mutatelist = list(/obj/item/seeds/cocoapod/vanillapod) reagents_add = list("cocoa" = 0.25, "plantmatter" = 0.1) -/obj/item/food/snacks/grown/cocoapod +/obj/item/food/grown/cocoapod seed = /obj/item/seeds/cocoapod name = "cocoa pod" desc = "Fattening... Mmmmm... chucklate." @@ -34,12 +34,12 @@ icon_state = "seed-vanillapod" species = "vanillapod" plantname = "Vanilla Tree" - product = /obj/item/food/snacks/grown/vanillapod + product = /obj/item/food/grown/vanillapod genes = list(/datum/plant_gene/trait/repeated_harvest) mutatelist = list() reagents_add = list("vanilla" = 0.25, "plantmatter" = 0.1) -/obj/item/food/snacks/grown/vanillapod +/obj/item/food/grown/vanillapod seed = /obj/item/seeds/cocoapod/vanillapod name = "vanilla pod" desc = "Fattening... Mmmmm... vanilla." diff --git a/code/modules/hydroponics/grown/corn.dm b/code/modules/hydroponics/grown/corn.dm index 81688a435eaf..90b7bd8d7d04 100644 --- a/code/modules/hydroponics/grown/corn.dm +++ b/code/modules/hydroponics/grown/corn.dm @@ -5,7 +5,7 @@ icon_state = "seed-corn" species = "corn" plantname = "Corn Stalks" - product = /obj/item/food/snacks/grown/corn + product = /obj/item/food/grown/corn maturation = 8 potency = 20 growthstages = 3 @@ -15,12 +15,12 @@ mutatelist = list(/obj/item/seeds/corn/snapcorn) reagents_add = list("cornoil" = 0.2, "vitamin" = 0.04, "plantmatter" = 0.1) -/obj/item/food/snacks/grown/corn +/obj/item/food/grown/corn seed = /obj/item/seeds/corn name = "ear of corn" desc = "Needs some butter!" icon_state = "corn" - cooked_type = /obj/item/food/snacks/popcorn + cooked_type = /obj/item/food/popcorn filling_color = "#FFFF00" trash = /obj/item/grown/corncob bitesize_mod = 2 diff --git a/code/modules/hydroponics/grown/eggplant.dm b/code/modules/hydroponics/grown/eggplant.dm index e31e07e215bc..9179ad0fcc9a 100644 --- a/code/modules/hydroponics/grown/eggplant.dm +++ b/code/modules/hydroponics/grown/eggplant.dm @@ -5,7 +5,7 @@ icon_state = "seed-eggplant" species = "eggplant" plantname = "Eggplants" - product = /obj/item/food/snacks/grown/eggplant + product = /obj/item/food/grown/eggplant yield = 2 potency = 20 growing_icon = 'icons/obj/hydroponics/growing_vegetables.dmi' @@ -15,7 +15,7 @@ mutatelist = list(/obj/item/seeds/eggplant/eggy) reagents_add = list("vitamin" = 0.04, "plantmatter" = 0.1) -/obj/item/food/snacks/grown/eggplant +/obj/item/food/grown/eggplant seed = /obj/item/seeds/eggplant name = "eggplant" desc = "Maybe there's a chicken inside?" @@ -32,18 +32,18 @@ icon_state = "seed-eggy" species = "eggy" plantname = "Egg-Plants" - product = /obj/item/food/snacks/grown/shell/eggy + product = /obj/item/food/grown/shell/eggy lifespan = 75 production = 12 mutatelist = list() reagents_add = list("nutriment" = 0.1) -/obj/item/food/snacks/grown/shell/eggy +/obj/item/food/grown/shell/eggy seed = /obj/item/seeds/eggplant/eggy name = "Egg-plant" desc = "There MUST be a chicken inside." icon_state = "eggyplant" - trash = /obj/item/food/snacks/egg + trash = /obj/item/food/egg filling_color = "#F8F8FF" bitesize_mod = 2 tastes = list("egg-plant" = 1) diff --git a/code/modules/hydroponics/grown/flowers.dm b/code/modules/hydroponics/grown/flowers.dm index c16f78174f09..095aeca5190d 100644 --- a/code/modules/hydroponics/grown/flowers.dm +++ b/code/modules/hydroponics/grown/flowers.dm @@ -5,7 +5,7 @@ icon_state = "seed-poppy" species = "poppy" plantname = "Poppy Plants" - product = /obj/item/food/snacks/grown/poppy + product = /obj/item/food/grown/poppy endurance = 10 maturation = 8 yield = 6 @@ -17,7 +17,7 @@ mutatelist = list(/obj/item/seeds/poppy/geranium, /obj/item/seeds/poppy/lily) reagents_add = list("bicaridine" = 0.2, "plantmatter" = 0.05) -/obj/item/food/snacks/grown/poppy +/obj/item/food/grown/poppy seed = /obj/item/seeds/poppy name = "poppy" desc = "Long-used as a symbol of rest, peace, and death." @@ -37,10 +37,10 @@ plantname = "Lily Plants" icon_grow = "lily-grow" icon_dead = "lily-dead" - product = /obj/item/food/snacks/grown/lily + product = /obj/item/food/grown/lily mutatelist = list() -/obj/item/food/snacks/grown/lily +/obj/item/food/grown/lily seed = /obj/item/seeds/poppy/lily name = "lily" desc = "A beautiful white flower." @@ -60,10 +60,10 @@ plantname = "Geranium Plants" icon_grow = "geranium-grow" icon_dead = "geranium-dead" - product = /obj/item/food/snacks/grown/geranium + product = /obj/item/food/grown/geranium mutatelist = list() -/obj/item/food/snacks/grown/geranium +/obj/item/food/grown/geranium seed = /obj/item/seeds/poppy/geranium name = "geranium" desc = "A beautiful purple flower." @@ -81,7 +81,7 @@ icon_state = "seed-harebell" species = "harebell" plantname = "Harebells" - product = /obj/item/food/snacks/grown/harebell + product = /obj/item/food/grown/harebell lifespan = 100 endurance = 20 maturation = 7 @@ -93,7 +93,7 @@ growing_icon = 'icons/obj/hydroponics/growing_flowers.dmi' reagents_add = list("plantmatter" = 0.04) -/obj/item/food/snacks/grown/harebell +/obj/item/food/grown/harebell seed = /obj/item/seeds/harebell name = "harebell" desc = "\"I'll sweeten thy sad grave: thou shalt not lack the flower that's like thy face, pale primrose, nor the azured hare-bell, like thy veins; no, nor the leaf of eglantine, whom not to slander, out-sweeten'd not thy breath.\"" @@ -150,12 +150,12 @@ plantname = "Moonflowers" icon_grow = "moonflower-grow" icon_dead = "sunflower-dead" - product = /obj/item/food/snacks/grown/moonflower + product = /obj/item/food/grown/moonflower mutatelist = list() reagents_add = list("moonshine" = 0.2, "vitamin" = 0.02, "plantmatter" = 0.02) rarity = 15 -/obj/item/food/snacks/grown/moonflower +/obj/item/food/grown/moonflower seed = /obj/item/seeds/sunflower/moonflower name = "moonflower" desc = "Store in a location at least 50 yards away from werewolves." diff --git a/code/modules/hydroponics/grown/garlic.dm b/code/modules/hydroponics/grown/garlic.dm index 82d802a0b927..66979391b392 100644 --- a/code/modules/hydroponics/grown/garlic.dm +++ b/code/modules/hydroponics/grown/garlic.dm @@ -4,14 +4,14 @@ icon_state = "seed-garlic" species = "garlic" plantname = "Garlic Sprouts" - product = /obj/item/food/snacks/grown/garlic + product = /obj/item/food/grown/garlic yield = 6 potency = 25 growthstages = 3 growing_icon = 'icons/obj/hydroponics/growing_vegetables.dmi' reagents_add = list("garlic" = 0.15, "plantmatter" = 0.1) -/obj/item/food/snacks/grown/garlic +/obj/item/food/grown/garlic seed = /obj/item/seeds/garlic name = "garlic" desc = "Delicious, but with a potentially overwhelming odor." diff --git a/code/modules/hydroponics/grown/grass_carpet.dm b/code/modules/hydroponics/grown/grass_carpet.dm index 84c177d2b070..2a78f12fddae 100644 --- a/code/modules/hydroponics/grown/grass_carpet.dm +++ b/code/modules/hydroponics/grown/grass_carpet.dm @@ -5,7 +5,7 @@ icon_state = "seed-grass" species = "grass" plantname = "Grass" - product = /obj/item/food/snacks/grown/grass + product = /obj/item/food/grown/grass lifespan = 40 endurance = 40 maturation = 2 @@ -18,7 +18,7 @@ mutatelist = list(/obj/item/seeds/grass/carpet) reagents_add = list("plantmatter" = 0.02, "hydrogen" = 0.05) -/obj/item/food/snacks/grown/grass +/obj/item/food/grown/grass seed = /obj/item/seeds/grass name = "grass" desc = "Green and lush." @@ -30,10 +30,10 @@ tastes = list("grass" = 1) wine_power = 0.15 -/obj/item/food/snacks/grown/grass/attack_self(mob/user) +/obj/item/food/grown/grass/attack_self(mob/user) to_chat(user, "You prepare the astroturf.") var/grassAmt = 1 + round(seed.potency * tile_coefficient) // The grass we're holding - for(var/obj/item/food/snacks/grown/grass/G in user.loc) // The grass on the floor + for(var/obj/item/food/grown/grass/G in user.loc) // The grass on the floor if(G.type != type) continue grassAmt += 1 + round(G.seed.potency * tile_coefficient) @@ -48,11 +48,11 @@ icon_state = "seed-carpet" species = "carpet" plantname = "Carpet" - product = /obj/item/food/snacks/grown/grass/carpet + product = /obj/item/food/grown/grass/carpet mutatelist = list() rarity = 10 -/obj/item/food/snacks/grown/grass/carpet +/obj/item/food/grown/grass/carpet seed = /obj/item/seeds/grass/carpet name = "carpet" desc = "The textile industry's dark secret." diff --git a/code/modules/hydroponics/grown/herbals.dm b/code/modules/hydroponics/grown/herbals.dm index f13d9d20b9cc..3c4c1735d1e3 100644 --- a/code/modules/hydroponics/grown/herbals.dm +++ b/code/modules/hydroponics/grown/herbals.dm @@ -4,14 +4,14 @@ icon_state = "seed-lettuce" species = "cabbage" plantname = "Comfrey" - product = /obj/item/food/snacks/grown/comfrey + product = /obj/item/food/grown/comfrey yield = 2 maturation = 3 growthstages = 1 growing_icon = 'icons/obj/hydroponics/growing_vegetables.dmi' reagents_add = list("styptic_powder" = 0.1) -/obj/item/food/snacks/grown/comfrey +/obj/item/food/grown/comfrey seed = /obj/item/seeds/comfrey name = "comfrey leaf" desc = "Mash to turn into a poultice." @@ -20,7 +20,7 @@ tastes = list("comfrey" = 1) bitesize_mod = 2 -/obj/item/food/snacks/grown/comfrey/attack_self(mob/user) +/obj/item/food/grown/comfrey/attack_self(mob/user) var/obj/item/stack/medical/bruise_pack/comfrey/C = new(get_turf(user)) C.heal_brute = seed.potency to_chat(user, "You mash [src] into a poultice.") @@ -33,12 +33,12 @@ icon_state = "seed-ambrosiavulgaris" species = "ambrosiavulgaris" plantname = "Aloe Vera Plant" - product = /obj/item/food/snacks/grown/aloe + product = /obj/item/food/grown/aloe yield = 2 icon_dead = "ambrosia-dead" reagents_add = list("silver_sulfadiazine" = 0.1) -/obj/item/food/snacks/grown/aloe +/obj/item/food/grown/aloe seed = /obj/item/seeds/aloe name = "aloe leaf" desc = "Mash to turn into a poultice." @@ -47,7 +47,7 @@ tastes = list("aloe" = 1) bitesize_mod = 2 -/obj/item/food/snacks/grown/aloe/attack_self(mob/user) +/obj/item/food/grown/aloe/attack_self(mob/user) var/obj/item/stack/medical/ointment/aloe/A = new(get_turf(user)) A.heal_burn = seed.potency to_chat(user, "You mash [src] into a poultice.") @@ -61,7 +61,7 @@ icon_state = "seed-mint" species = "mint" plantname = "Mint Plant" - product = /obj/item/food/snacks/grown/mint + product = /obj/item/food/grown/mint lifespan = 20 maturation = 4 production = 5 @@ -70,7 +70,7 @@ icon_dead = "mint-dead" reagents_add = list("mint" = 0.03, "plantmatter" = 0.03) -/obj/item/food/snacks/grown/mint +/obj/item/food/grown/mint seed = /obj/item/seeds/mint name = "mint leaves" desc = "Process for mint. Distill for menthol. No need to experi-mint." //haha diff --git a/code/modules/hydroponics/grown/kudzu.dm b/code/modules/hydroponics/grown/kudzu.dm index a1d8251c2d75..950971fb591e 100644 --- a/code/modules/hydroponics/grown/kudzu.dm +++ b/code/modules/hydroponics/grown/kudzu.dm @@ -6,7 +6,7 @@ icon_state = "seed-kudzu" species = "kudzu" plantname = "Kudzu" - product = /obj/item/food/snacks/grown/kudzupod + product = /obj/item/food/grown/kudzupod genes = list(/datum/plant_gene/trait/repeated_harvest, /datum/plant_gene/trait/plant_type/weed_hardy) lifespan = 20 endurance = 10 @@ -88,7 +88,7 @@ adjust_potency(rand(15, -5)) -/obj/item/food/snacks/grown/kudzupod +/obj/item/food/grown/kudzupod seed = /obj/item/seeds/kudzu name = "kudzu pod" desc = "Pueraria Virallis: An invasive species with vines that rapidly creep and wrap around whatever they contact." diff --git a/code/modules/hydroponics/grown/melon.dm b/code/modules/hydroponics/grown/melon.dm index 702640618ab0..9d6ef0044708 100644 --- a/code/modules/hydroponics/grown/melon.dm +++ b/code/modules/hydroponics/grown/melon.dm @@ -5,7 +5,7 @@ icon_state = "seed-watermelon" species = "watermelon" plantname = "Watermelon Vines" - product = /obj/item/food/snacks/grown/watermelon + product = /obj/item/food/grown/watermelon lifespan = 50 endurance = 40 growing_icon = 'icons/obj/hydroponics/growing_fruits.dmi' @@ -21,12 +21,12 @@ qdel(src) return OBLITERATION -/obj/item/food/snacks/grown/watermelon +/obj/item/food/grown/watermelon seed = /obj/item/seeds/watermelon name = "watermelon" desc = "It's full of watery goodness." icon_state = "watermelon" // Sprite created by https://github.com/binarysudoku for Goonstation, They have relicensed it for our use. - slice_path = /obj/item/food/snacks/watermelonslice + slice_path = /obj/item/food/watermelonslice slices_num = 5 dried_type = null w_class = WEIGHT_CLASS_NORMAL @@ -42,12 +42,12 @@ icon_state = "seed-holymelon" species = "holymelon" plantname = "Holy Melon Vines" - product = /obj/item/food/snacks/grown/holymelon + product = /obj/item/food/grown/holymelon mutatelist = list() reagents_add = list("holywater" = 0.2, "vitamin" = 0.04, "nutriment" = 0.1) rarity = 20 -/obj/item/food/snacks/grown/holymelon +/obj/item/food/grown/holymelon seed = /obj/item/seeds/watermelon/holy name = "holymelon" desc = "The water within this melon has been blessed by some deity that's particularly fond of watermelon." diff --git a/code/modules/hydroponics/grown/misc_seeds.dm b/code/modules/hydroponics/grown/misc_seeds.dm index 99ed6c86ef7a..0bbb55450d1f 100644 --- a/code/modules/hydroponics/grown/misc_seeds.dm +++ b/code/modules/hydroponics/grown/misc_seeds.dm @@ -32,7 +32,7 @@ icon_state = "seed-lettuce" species = "cabbage" plantname = "Lettuces" - product = /obj/item/food/snacks/grown/lettuce + product = /obj/item/food/grown/lettuce lifespan = 50 endurance = 25 maturation = 3 @@ -43,7 +43,7 @@ genes = list(/datum/plant_gene/trait/repeated_harvest) reagents_add = list("vitamin" = 0.04, "plantmatter" = 0.1) -/obj/item/food/snacks/grown/lettuce +/obj/item/food/grown/lettuce seed = /obj/item/seeds/lettuce name = "lettuce" desc = "Often confused with cabbages." @@ -60,7 +60,7 @@ icon_state = "seed-lettuce" species = "cabbage" plantname = "Cabbages" - product = /obj/item/food/snacks/grown/cabbage + product = /obj/item/food/grown/cabbage lifespan = 50 endurance = 25 maturation = 3 @@ -72,7 +72,7 @@ mutatelist = list(/obj/item/seeds/replicapod) reagents_add = list("vitamin" = 0.04, "plantmatter" = 0.1) -/obj/item/food/snacks/grown/cabbage +/obj/item/food/grown/cabbage seed = /obj/item/seeds/cabbage name = "cabbage" desc = "Ewwwwwwwwww. Cabbage." @@ -90,7 +90,7 @@ icon_state = "seed-sugarcane" species = "sugarcane" plantname = "Sugarcane" - product = /obj/item/food/snacks/grown/sugarcane + product = /obj/item/food/grown/sugarcane genes = list(/datum/plant_gene/trait/repeated_harvest) lifespan = 60 endurance = 50 @@ -99,7 +99,7 @@ growthstages = 3 reagents_add = list("sugar" = 0.25) -/obj/item/food/snacks/grown/sugarcane +/obj/item/food/grown/sugarcane seed = /obj/item/seeds/sugarcane name = "sugarcane" desc = "Sickly sweet." @@ -143,7 +143,7 @@ icon_state = "seed-gatfruit" species = "gatfruit" plantname = "Gatfruit Tree" - product = /obj/item/food/snacks/grown/shell/gatfruit + product = /obj/item/food/grown/shell/gatfruit genes = list(/datum/plant_gene/trait/repeated_harvest) lifespan = 20 endurance = 20 @@ -156,7 +156,7 @@ growing_icon = 'icons/obj/hydroponics/growing_fruits.dmi' reagents_add = list("sulfur" = 0.1, "carbon" = 0.1, "nitrogen" = 0.07, "potassium" = 0.05) -/obj/item/food/snacks/grown/shell/gatfruit +/obj/item/food/grown/shell/gatfruit seed = /obj/item/seeds/gatfruit name = "gatfruit" desc = "It smells like burning." @@ -174,12 +174,12 @@ icon_state = "seed-cherry_bomb" species = "cherry_bomb" plantname = "Cherry Bomb Tree" - product = /obj/item/food/snacks/grown/cherry_bomb + product = /obj/item/food/grown/cherry_bomb mutatelist = list() reagents_add = list("plantmatter" = 0.1, "sugar" = 0.1, "blackpowder" = 0.7) rarity = 60 //See above -/obj/item/food/snacks/grown/cherry_bomb +/obj/item/food/grown/cherry_bomb name = "cherry bombs" desc = "You think you can hear the hissing of a tiny fuse." icon_state = "cherry_bomb" @@ -191,7 +191,7 @@ max_integrity = 40 wine_power = 0.8 -/obj/item/food/snacks/grown/cherry_bomb/attack_self(mob/living/user) +/obj/item/food/grown/cherry_bomb/attack_self(mob/living/user) var/area/A = get_area(user) user.visible_message("[user] plucks the stem from [src]!", "You pluck the stem from [src], which begins to hiss loudly!") message_admins("[user] ([user.key ? user.key : "no key"]) primed a cherry bomb for detonation at [A] ([user.x], [user.y], [user.z]) (JMP)") @@ -201,16 +201,16 @@ C.throw_mode_on() prime() -/obj/item/food/snacks/grown/cherry_bomb/deconstruct(disassembled = TRUE) +/obj/item/food/grown/cherry_bomb/deconstruct(disassembled = TRUE) if(!disassembled) prime() if(!QDELETED(src)) qdel(src) -/obj/item/food/snacks/grown/cherry_bomb/ex_act(severity) +/obj/item/food/grown/cherry_bomb/ex_act(severity) qdel(src) //Ensuring that it's deleted by its own explosion. Also prevents mass chain reaction with piles of cherry bombs -/obj/item/food/snacks/grown/cherry_bomb/proc/prime() +/obj/item/food/grown/cherry_bomb/proc/prime() icon_state = "cherry_bomb_lit" playsound(src, 'sound/goonstation/misc/fuse.ogg', seed.potency, 0) reagents.set_reagent_temp(1000) //Sets off the black powder diff --git a/code/modules/hydroponics/grown/mushrooms.dm b/code/modules/hydroponics/grown/mushrooms.dm index bd117356dffb..a3bb028724de 100644 --- a/code/modules/hydroponics/grown/mushrooms.dm +++ b/code/modules/hydroponics/grown/mushrooms.dm @@ -1,4 +1,4 @@ -/obj/item/food/snacks/grown/mushroom +/obj/item/food/grown/mushroom name = "mushroom" bitesize_mod = 2 wine_power = 0.4 @@ -11,7 +11,7 @@ icon_state = "mycelium-reishi" species = "reishi" plantname = "Reishi" - product = /obj/item/food/snacks/grown/mushroom/reishi + product = /obj/item/food/grown/mushroom/reishi lifespan = 35 endurance = 35 maturation = 10 @@ -23,7 +23,7 @@ growing_icon = 'icons/obj/hydroponics/growing_mushrooms.dmi' reagents_add = list("morphine" = 0.35, "charcoal" = 0.35, "nutriment" = 0) -/obj/item/food/snacks/grown/mushroom/reishi +/obj/item/food/grown/mushroom/reishi seed = /obj/item/seeds/reishi name = "reishi" desc = "Ganoderma lucidum: A special fungus known for its medicinal and stress relieving properties." @@ -39,7 +39,7 @@ icon_state = "mycelium-amanita" species = "amanita" plantname = "Fly Amanitas" - product = /obj/item/food/snacks/grown/mushroom/amanita + product = /obj/item/food/grown/mushroom/amanita lifespan = 50 endurance = 35 maturation = 10 @@ -51,7 +51,7 @@ mutatelist = list(/obj/item/seeds/angel) reagents_add = list("psilocybin" = 0.04, "amanitin" = 0.35, "nutriment" = 0, "growthserum" = 0.1) -/obj/item/food/snacks/grown/mushroom/amanita +/obj/item/food/grown/mushroom/amanita seed = /obj/item/seeds/amanita name = "fly amanita" desc = "Amanita Muscaria: Learn poisonous mushrooms by heart. Only pick mushrooms you know." @@ -67,7 +67,7 @@ icon_state = "mycelium-angel" species = "angel" plantname = "Destroying Angels" - product = /obj/item/food/snacks/grown/mushroom/angel + product = /obj/item/food/grown/mushroom/angel lifespan = 50 endurance = 35 maturation = 12 @@ -81,7 +81,7 @@ rarity = 30 origin_tech = "biotech=5" -/obj/item/food/snacks/grown/mushroom/angel +/obj/item/food/grown/mushroom/angel seed = /obj/item/seeds/angel name = "destroying angel" desc = "Amanita Virosa: Deadly poisonous basidiomycete fungus filled with alpha amanitin." @@ -98,7 +98,7 @@ icon_state = "mycelium-liberty" species = "liberty" plantname = "Liberty-Caps" - product = /obj/item/food/snacks/grown/mushroom/libertycap + product = /obj/item/food/grown/mushroom/libertycap maturation = 7 production = 1 yield = 5 @@ -108,7 +108,7 @@ growing_icon = 'icons/obj/hydroponics/growing_mushrooms.dmi' reagents_add = list("psilocybin" = 0.25, "nutriment" = 0.02) -/obj/item/food/snacks/grown/mushroom/libertycap +/obj/item/food/grown/mushroom/libertycap seed = /obj/item/seeds/liberty name = "liberty-cap" desc = "Psilocybe Semilanceata: Liberate yourself!" @@ -126,7 +126,7 @@ icon_state = "mycelium-plump" species = "plump" plantname = "Plump-Helmet Mushrooms" - product = /obj/item/food/snacks/grown/mushroom/plumphelmet + product = /obj/item/food/grown/mushroom/plumphelmet maturation = 8 production = 1 yield = 4 @@ -137,7 +137,7 @@ mutatelist = list(/obj/item/seeds/plump/walkingmushroom) reagents_add = list("vitamin" = 0.04, "nutriment" = 0.1) -/obj/item/food/snacks/grown/mushroom/plumphelmet +/obj/item/food/grown/mushroom/plumphelmet seed = /obj/item/seeds/plump name = "plump-helmet" desc = "Plumus Hellmus: Plump, soft and s-so inviting~" @@ -154,7 +154,7 @@ icon_state = "mycelium-walkingmushroom" species = "walkingmushroom" plantname = "Walking Mushrooms" - product = /obj/item/food/snacks/grown/mushroom/walkingmushroom + product = /obj/item/food/grown/mushroom/walkingmushroom lifespan = 30 endurance = 30 maturation = 5 @@ -164,7 +164,7 @@ reagents_add = list("vitamin" = 0.05, "nutriment" = 0.15) rarity = 30 -/obj/item/food/snacks/grown/mushroom/walkingmushroom +/obj/item/food/grown/mushroom/walkingmushroom seed = /obj/item/seeds/plump/walkingmushroom name = "walking mushroom" desc = "Plumus Locomotus: The beginning of the great walk." @@ -174,7 +174,7 @@ tastes = list("walking mushroom" = 1, "motion" = 1) can_distill = FALSE -/obj/item/food/snacks/grown/mushroom/walkingmushroom/attack_self(mob/user) +/obj/item/food/grown/mushroom/walkingmushroom/attack_self(mob/user) if(isspaceturf(user.loc)) return var/mob/living/simple_animal/hostile/mushroom/M = new /mob/living/simple_animal/hostile/mushroom(user.loc) @@ -194,7 +194,7 @@ icon_state = "mycelium-chanter" species = "chanter" plantname = "Chanterelle Mushrooms" - product = /obj/item/food/snacks/grown/mushroom/chanterelle + product = /obj/item/food/grown/mushroom/chanterelle lifespan = 35 endurance = 20 maturation = 7 @@ -206,7 +206,7 @@ growing_icon = 'icons/obj/hydroponics/growing_mushrooms.dmi' reagents_add = list("nutriment" = 0.1) -/obj/item/food/snacks/grown/mushroom/chanterelle +/obj/item/food/grown/mushroom/chanterelle seed = /obj/item/seeds/chanter name = "chanterelle cluster" desc = "Cantharellus Cibarius: These jolly yellow little shrooms sure look tasty!" @@ -222,7 +222,7 @@ icon_state = "mycelium-glowshroom" species = "glowshroom" plantname = "Glowshrooms" - product = /obj/item/food/snacks/grown/mushroom/glowshroom + product = /obj/item/food/grown/mushroom/glowshroom lifespan = 100 //ten times that is the delay endurance = 30 maturation = 6 @@ -236,7 +236,7 @@ mutatelist = list(/obj/item/seeds/glowshroom/glowcap, /obj/item/seeds/glowshroom/shadowshroom) reagents_add = list("radium" = 0.1, "phosphorus" = 0.1, "nutriment" = 0.04) -/obj/item/food/snacks/grown/mushroom/glowshroom +/obj/item/food/grown/mushroom/glowshroom seed = /obj/item/seeds/glowshroom name = "glowshroom cluster" desc = "Mycena Bregprox: This species of mushroom glows in the dark." @@ -248,7 +248,7 @@ tastes = list("warmth" = 1, "light" = 1, "glowshroom" = 1) wine_power = 0.5 -/obj/item/food/snacks/grown/mushroom/glowshroom/attack_self(mob/user) +/obj/item/food/grown/mushroom/glowshroom/attack_self(mob/user) if(isspaceturf(user.loc)) return FALSE if(!isturf(user.loc)) @@ -279,14 +279,14 @@ species = "glowcap" icon_harvest = "glowcap-harvest" plantname = "Glowcaps" - product = /obj/item/food/snacks/grown/mushroom/glowshroom/glowcap + product = /obj/item/food/grown/mushroom/glowshroom/glowcap maturation = 15 genes = list(/datum/plant_gene/trait/glow/red, /datum/plant_gene/trait/cell_charge, /datum/plant_gene/trait/plant_type/fungal_metabolism) mutatelist = list() reagents_add = list("teslium" = 0.1, "nutriment" = 0.04) rarity = 30 -/obj/item/food/snacks/grown/mushroom/glowshroom/glowcap +/obj/item/food/grown/mushroom/glowshroom/glowcap seed = /obj/item/seeds/glowshroom/glowcap name = "glowcap cluster" desc = "Mycena Ruthenia: This species of mushroom glows in the dark, but isn't actually bioluminescent. They're warm to the touch..." @@ -306,7 +306,7 @@ icon_state = "mycelium-tower" species = "mold" plantname = "Fungus" - product = /obj/item/food/snacks/grown/mushroom/fungus + product = /obj/item/food/grown/mushroom/fungus yield = 4 icon_grow = "mold-grow" icon_dead = "mold-dead" @@ -315,7 +315,7 @@ genes = list(/datum/plant_gene/trait/plant_type/fungal_metabolism) reagents_add = list("fungus" = 0.35) -/obj/item/food/snacks/grown/mushroom/fungus +/obj/item/food/grown/mushroom/fungus seed = /obj/item/seeds/fungus name = "fungus" desc = "A fungus ideal for making antibacterials." @@ -332,14 +332,14 @@ icon_grow = "shadowshroom-grow" icon_dead = "shadowshroom-dead" plantname = "Shadowshrooms" - product = /obj/item/food/snacks/grown/mushroom/glowshroom/shadowshroom + product = /obj/item/food/grown/mushroom/glowshroom/shadowshroom maturation = 15 genes = list(/datum/plant_gene/trait/glow/shadow, /datum/plant_gene/trait/plant_type/fungal_metabolism) mutatelist = list() reagents_add = list("radium" = 0.2, "nutriment" = 0.04) rarity = 30 -/obj/item/food/snacks/grown/mushroom/glowshroom/shadowshroom +/obj/item/food/grown/mushroom/glowshroom/shadowshroom seed = /obj/item/seeds/glowshroom/shadowshroom name = "shadowshroom cluster" desc = "Mycena Umbra: This species of mushroom emits shadow instead of light." diff --git a/code/modules/hydroponics/grown/nymph.dm b/code/modules/hydroponics/grown/nymph.dm index af1a0506b788..8c8c9e70fd5b 100644 --- a/code/modules/hydroponics/grown/nymph.dm +++ b/code/modules/hydroponics/grown/nymph.dm @@ -4,7 +4,7 @@ icon_state = "seed-replicapod" species = "replicapod" plantname = "Nymph Pod" - product = /obj/item/food/snacks/grown/nymph_pod + product = /obj/item/food/grown/nymph_pod lifespan = 50 endurance = 8 maturation = 10 @@ -12,14 +12,14 @@ yield = 1 reagents_add = list("plantmatter" = 0.1) -/obj/item/food/snacks/grown/nymph_pod +/obj/item/food/grown/nymph_pod seed = /obj/item/seeds/nymph name = "nymph pod" desc = "A peculiar wriggling pod with a grown nymph inside. Crack it open to let the nymph out." icon_state = "mushy" bitesize_mod = 2 -/obj/item/food/snacks/grown/nymph_pod/attack_self(mob/user) +/obj/item/food/grown/nymph_pod/attack_self(mob/user) new /mob/living/simple_animal/diona(get_turf(user)) to_chat(user, "You crack open [src] letting the nymph out.") user.drop_item() diff --git a/code/modules/hydroponics/grown/olive.dm b/code/modules/hydroponics/grown/olive.dm index 7c25c4814fdf..60cafcca01c8 100644 --- a/code/modules/hydroponics/grown/olive.dm +++ b/code/modules/hydroponics/grown/olive.dm @@ -5,7 +5,7 @@ icon_state = "seed-olive" species = "olive" plantname = "Olive Tree" - product = /obj/item/food/snacks/grown/olive + product = /obj/item/food/grown/olive lifespan = 150 endurance = 35 yield = 5 @@ -15,7 +15,7 @@ mutatelist = list() reagents_add = list("vitamin" = 0.02, "plantmatter" = 0.2, "sodiumchloride" = 0.2) -/obj/item/food/snacks/grown/olive +/obj/item/food/grown/olive seed = /obj/item/seeds/olive name = "olive" desc = "A small cylindrical salty fruit closely related to mangoes. Can be ground into a paste and mixed with water to make quality oil." diff --git a/code/modules/hydroponics/grown/onion.dm b/code/modules/hydroponics/grown/onion.dm index b59a3bfa5e0e..3e4532713ea9 100644 --- a/code/modules/hydroponics/grown/onion.dm +++ b/code/modules/hydroponics/grown/onion.dm @@ -4,7 +4,7 @@ icon_state = "seed-onion" species = "onion" plantname = "Onion Sprouts" - product = /obj/item/food/snacks/grown/onion + product = /obj/item/food/grown/onion lifespan = 20 maturation = 3 production = 4 @@ -16,14 +16,14 @@ reagents_add = list("vitamin" = 0.04, "plantmatter" = 0.1) mutatelist = list(/obj/item/seeds/onion/red) -/obj/item/food/snacks/grown/onion +/obj/item/food/grown/onion seed = /obj/item/seeds/onion name = "onion" desc = "Nothing to cry over." icon_state = "onion" filling_color = "#C0C9A0" bitesize_mod = 2 - slice_path = /obj/item/food/snacks/onion_slice + slice_path = /obj/item/food/onion_slice tastes = list("onion" = 1, "pungentness" = 1) slices_num = 2 wine_power = 0.3 @@ -36,22 +36,22 @@ species = "onion_red" plantname = "Red Onion Sprouts" weed_chance = 1 - product = /obj/item/food/snacks/grown/onion/red + product = /obj/item/food/grown/onion/red mutatelist = list() reagents_add = list("vitamin" = 0.04, "plantmatter" = 0.1, "onionjuice" = 0.05) -/obj/item/food/snacks/grown/onion/red +/obj/item/food/grown/onion/red seed = /obj/item/seeds/onion/red name = "red onion" desc = "Purple despite the name." icon_state = "onion_red" filling_color = "#C29ACF" - slice_path = /obj/item/food/snacks/onion_slice/red + slice_path = /obj/item/food/onion_slice/red tastes = list("red onion" = 1, "pungentness" = 3) wine_power = 0.6 wine_flavor = "powerful pungentness" -/obj/item/food/snacks/onion_slice +/obj/item/food/onion_slice name = "onion slices" desc = "Rings, not for wearing." icon_state = "onionslice" @@ -59,9 +59,9 @@ filling_color = "#C0C9A0" tastes = list("onion" = 1, "pungentness" = 1) gender = PLURAL - cooked_type = /obj/item/food/snacks/onionrings + cooked_type = /obj/item/food/onionrings -/obj/item/food/snacks/onion_slice/red +/obj/item/food/onion_slice/red name = "red onion slices" desc = "They shine like exceptionally low quality amethyst." icon_state = "onionslice_red" diff --git a/code/modules/hydroponics/grown/peanut.dm b/code/modules/hydroponics/grown/peanut.dm index 8226df87fca2..80ae989a9c39 100644 --- a/code/modules/hydroponics/grown/peanut.dm +++ b/code/modules/hydroponics/grown/peanut.dm @@ -5,7 +5,7 @@ icon_state = "seed-potato" species = "potato" plantname = "Peanut Vines" - product = /obj/item/food/snacks/grown/peanuts + product = /obj/item/food/grown/peanuts lifespan = 30 maturation = 10 production = 1 @@ -17,7 +17,7 @@ genes = list(/datum/plant_gene/trait/repeated_harvest) reagents_add = list("plantmatter" = 0.1) -/obj/item/food/snacks/grown/peanuts +/obj/item/food/grown/peanuts seed = /obj/item/seeds/peanuts name = "patch of peanuts" desc = "Best avoided if you have spess allergies." diff --git a/code/modules/hydroponics/grown/pineapple.dm b/code/modules/hydroponics/grown/pineapple.dm index dd4727a2c318..3935ae7ae7e6 100644 --- a/code/modules/hydroponics/grown/pineapple.dm +++ b/code/modules/hydroponics/grown/pineapple.dm @@ -5,7 +5,7 @@ icon_state = "seed-pineapple" species = "pineapple" plantname = "Pineapple Plant" - product = /obj/item/food/snacks/grown/pineapple + product = /obj/item/food/grown/pineapple lifespan = 40 endurance = 30 growthstages = 3 @@ -14,7 +14,7 @@ mutatelist = list(/obj/item/seeds/apple) reagents_add = list("vitamin" = 0.02, "plantmatter" = 0.2, "water" = 0.04) -/obj/item/food/snacks/grown/pineapple +/obj/item/food/grown/pineapple seed = /obj/item/seeds/pineapple name = "pineapple" desc = "A soft sweet interior surrounded by a spiky skin." @@ -25,7 +25,7 @@ attack_verb = list("stung", "pined") throw_speed = 1 throw_range = 5 - slice_path = /obj/item/food/snacks/pineappleslice + slice_path = /obj/item/food/pineappleslice slices_num = 3 filling_color = "#F6CB0B" w_class = WEIGHT_CLASS_NORMAL diff --git a/code/modules/hydroponics/grown/potato.dm b/code/modules/hydroponics/grown/potato.dm index 3aa317f6bf3c..d143c8bd633e 100644 --- a/code/modules/hydroponics/grown/potato.dm +++ b/code/modules/hydroponics/grown/potato.dm @@ -5,7 +5,7 @@ icon_state = "seed-potato" species = "potato" plantname = "Potato Plants" - product = /obj/item/food/snacks/grown/potato + product = /obj/item/food/grown/potato lifespan = 30 maturation = 10 production = 1 @@ -18,7 +18,7 @@ mutatelist = list(/obj/item/seeds/potato/sweet) reagents_add = list("vitamin" = 0.04, "plantmatter" = 0.1) -/obj/item/food/snacks/grown/potato +/obj/item/food/grown/potato seed = /obj/item/seeds/potato name = "potato" desc = "Boil 'em! Mash 'em! Stick 'em in a stew!" @@ -29,7 +29,7 @@ distill_reagent = "vodka" -/obj/item/food/snacks/grown/potato/wedges +/obj/item/food/grown/potato/wedges name = "potato wedges" desc = "Slices of neatly cut potato." icon_state = "potato_wedges" @@ -39,10 +39,10 @@ distill_reagent = "sbiten" -/obj/item/food/snacks/grown/potato/attackby(obj/item/W, mob/user, params) +/obj/item/food/grown/potato/attackby(obj/item/W, mob/user, params) if(W.sharp) to_chat(user, "You cut the potato into wedges with [W].") - var/obj/item/food/snacks/grown/potato/wedges/Wedges = new /obj/item/food/snacks/grown/potato/wedges + var/obj/item/food/grown/potato/wedges/Wedges = new /obj/item/food/grown/potato/wedges if(!remove_item_from_storage(user)) user.unEquip(src) user.put_in_hands(Wedges) @@ -58,11 +58,11 @@ icon_state = "seed-sweetpotato" species = "sweetpotato" plantname = "Sweet Potato Plants" - product = /obj/item/food/snacks/grown/potato/sweet + product = /obj/item/food/grown/potato/sweet mutatelist = list() reagents_add = list("vitamin" = 0.1, "sugar" = 0.1, "plantmatter" = 0.1) -/obj/item/food/snacks/grown/potato/sweet +/obj/item/food/grown/potato/sweet seed = /obj/item/seeds/potato/sweet name = "sweet potato" desc = "It's sweet." diff --git a/code/modules/hydroponics/grown/pumpkin.dm b/code/modules/hydroponics/grown/pumpkin.dm index 2d0a588c2417..4a3668acc052 100644 --- a/code/modules/hydroponics/grown/pumpkin.dm +++ b/code/modules/hydroponics/grown/pumpkin.dm @@ -5,7 +5,7 @@ icon_state = "seed-pumpkin" species = "pumpkin" plantname = "Pumpkin Vines" - product = /obj/item/food/snacks/grown/pumpkin + product = /obj/item/food/grown/pumpkin lifespan = 50 endurance = 40 growthstages = 3 @@ -17,7 +17,7 @@ reagents_add = list("vitamin" = 0.04, "plantmatter" = 0.2) -/obj/item/food/snacks/grown/pumpkin +/obj/item/food/grown/pumpkin seed = /obj/item/seeds/pumpkin name = "pumpkin" desc = "It's large and scary." @@ -28,7 +28,7 @@ wine_power = 0.2 var/carved_type = /obj/item/clothing/head/hardhat/pumpkinhead -/obj/item/food/snacks/grown/pumpkin/attackby(obj/item/W as obj, mob/user as mob, params) +/obj/item/food/grown/pumpkin/attackby(obj/item/W as obj, mob/user as mob, params) if(W.sharp) user.show_message("You carve a face into [src]!", 1) new carved_type(user.loc) @@ -44,13 +44,13 @@ icon_state = "seed-blumpkin" species = "blumpkin" plantname = "Blumpkin Vines" - product = /obj/item/food/snacks/grown/pumpkin/blumpkin + product = /obj/item/food/grown/pumpkin/blumpkin mutatelist = list() reagents_add = list("ammonia" = 0.2, "chlorine" = 0.1, "plasma" = 0.1, "plantmatter" = 0.2) rarity = 20 -/obj/item/food/snacks/grown/pumpkin/blumpkin +/obj/item/food/grown/pumpkin/blumpkin seed = /obj/item/seeds/pumpkin/blumpkin name = "blumpkin" desc = "The pumpkin's toxic sibling." diff --git a/code/modules/hydroponics/grown/random_seeds.dm b/code/modules/hydroponics/grown/random_seeds.dm index 3be1c302f87b..e158fe2531b4 100644 --- a/code/modules/hydroponics/grown/random_seeds.dm +++ b/code/modules/hydroponics/grown/random_seeds.dm @@ -6,7 +6,7 @@ icon_state = "seed-x" species = "?????" plantname = "strange plant" - product = /obj/item/food/snacks/grown/random + product = /obj/item/food/grown/random icon_grow = "xpod-grow" icon_dead = "xpod-dead" icon_harvest = "xpod-harvest" @@ -30,14 +30,14 @@ add_random_plant_type(100) desc = "Label: \n" + get_analyzer_text() -/obj/item/food/snacks/grown/random +/obj/item/food/grown/random seed = /obj/item/seeds/random name = "strange plant" desc = "What could this even be?" icon_state = "crunchy" bitesize_mod = 2 -/obj/item/food/snacks/grown/random/Initialize() +/obj/item/food/grown/random/Initialize() . = ..() wine_power = rand(0.1,1.5) if(prob(1)) diff --git a/code/modules/hydroponics/grown/root.dm b/code/modules/hydroponics/grown/root.dm index 77110eaf27a3..9a52dc6b88ca 100644 --- a/code/modules/hydroponics/grown/root.dm +++ b/code/modules/hydroponics/grown/root.dm @@ -5,7 +5,7 @@ icon_state = "seed-carrot" species = "carrot" plantname = "Carrots" - product = /obj/item/food/snacks/grown/carrot + product = /obj/item/food/grown/carrot maturation = 10 production = 1 yield = 5 @@ -14,7 +14,7 @@ mutatelist = list(/obj/item/seeds/carrot/parsnip) reagents_add = list("oculine" = 0.25, "vitamin" = 0.04, "plantmatter" = 0.05) -/obj/item/food/snacks/grown/carrot +/obj/item/food/grown/carrot seed = /obj/item/seeds/carrot name = "carrot" desc = "It's good for the eyes!" @@ -24,14 +24,14 @@ tastes = list("carrot" = 1) wine_power = 0.3 -/obj/item/food/snacks/grown/carrot/wedges +/obj/item/food/grown/carrot/wedges name = "carrot wedges" desc = "Slices of neatly cut carrot." icon_state = "carrot_wedges" filling_color = "#FFA500" bitesize_mod = 2 -/obj/item/food/snacks/grown/carrot/attackby(obj/item/I, mob/user, params) +/obj/item/food/grown/carrot/attackby(obj/item/I, mob/user, params) if(I.sharp) to_chat(user, "You sharpen the carrot into a shiv with [I].") var/obj/item/kitchen/knife/shiv/carrot/Shiv = new () @@ -50,12 +50,12 @@ icon_state = "seed-parsnip" species = "parsnip" plantname = "Parsnip" - product = /obj/item/food/snacks/grown/parsnip + product = /obj/item/food/grown/parsnip icon_dead = "carrot-dead" mutatelist = list() reagents_add = list("vitamin" = 0.05, "plantmatter" = 0.05) -/obj/item/food/snacks/grown/parsnip +/obj/item/food/grown/parsnip seed = /obj/item/seeds/carrot/parsnip name = "parsnip" desc = "Closely related to carrots." @@ -72,7 +72,7 @@ icon_state = "seed-whitebeet" species = "whitebeet" plantname = "White Beet Plants" - product = /obj/item/food/snacks/grown/whitebeet + product = /obj/item/food/grown/whitebeet lifespan = 60 endurance = 50 yield = 6 @@ -81,7 +81,7 @@ mutatelist = list(/obj/item/seeds/redbeet) reagents_add = list("vitamin" = 0.04, "sugar" = 0.2, "plantmatter" = 0.05) -/obj/item/food/snacks/grown/whitebeet +/obj/item/food/grown/whitebeet seed = /obj/item/seeds/whitebeet name = "white beet" desc = "You can't beat white beet." @@ -98,7 +98,7 @@ icon_state = "seed-redbeet" species = "redbeet" plantname = "Red Beet Plants" - product = /obj/item/food/snacks/grown/redbeet + product = /obj/item/food/grown/redbeet lifespan = 60 endurance = 50 yield = 6 @@ -107,7 +107,7 @@ genes = list(/datum/plant_gene/trait/maxchem) reagents_add = list("vitamin" = 0.05, "plantmatter" = 0.05) -/obj/item/food/snacks/grown/redbeet +/obj/item/food/grown/redbeet seed = /obj/item/seeds/redbeet name = "red beet" desc = "You can't beat red beet." diff --git a/code/modules/hydroponics/grown/tea_coffee.dm b/code/modules/hydroponics/grown/tea_coffee.dm index 6289b1abda7f..20f43305cebc 100644 --- a/code/modules/hydroponics/grown/tea_coffee.dm +++ b/code/modules/hydroponics/grown/tea_coffee.dm @@ -5,7 +5,7 @@ icon_state = "seed-teaaspera" species = "teaaspera" plantname = "Tea Aspera Plant" - product = /obj/item/food/snacks/grown/tea + product = /obj/item/food/grown/tea lifespan = 20 maturation = 5 production = 5 @@ -16,7 +16,7 @@ mutatelist = list(/obj/item/seeds/tea/astra) reagents_add = list("vitamin" = 0.04, "teapowder" = 0.1) -/obj/item/food/snacks/grown/tea +/obj/item/food/grown/tea seed = /obj/item/seeds/tea name = "Tea Aspera tips" desc = "These aromatic tips of the tea plant can be dried to make tea." @@ -32,12 +32,12 @@ desc = "These seeds grow into Tea Astra, a more potent variant of tea" species = "teaastra" plantname = "Tea Astra Plant" - product = /obj/item/food/snacks/grown/tea/astra + product = /obj/item/food/grown/tea/astra mutatelist = list() reagents_add = list("synaptizine" = 0.1, "vitamin" = 0.04, "teapowder" = 0.1) rarity = 20 -/obj/item/food/snacks/grown/tea/astra +/obj/item/food/grown/tea/astra seed = /obj/item/seeds/tea/astra name = "Tea Astra tips" desc = "Knock away your fatigue!" @@ -53,7 +53,7 @@ icon_state = "seed-coffeea" species = "coffeea" plantname = "Coffee Arabica Bush" - product = /obj/item/food/snacks/grown/coffee + product = /obj/item/food/grown/coffee lifespan = 30 endurance = 20 maturation = 5 @@ -65,7 +65,7 @@ mutatelist = list(/obj/item/seeds/coffee/robusta) reagents_add = list("vitamin" = 0.04, "coffeepowder" = 0.1) -/obj/item/food/snacks/grown/coffee +/obj/item/food/grown/coffee seed = /obj/item/seeds/coffee name = "coffee arabica beans" desc = "Dry them out to make coffee." @@ -82,12 +82,12 @@ icon_state = "seed-coffeer" species = "coffeer" plantname = "Coffee Robusta Bush" - product = /obj/item/food/snacks/grown/coffee/robusta + product = /obj/item/food/grown/coffee/robusta mutatelist = list() reagents_add = list("ephedrine" = 0.1, "vitamin" = 0.04, "coffeepowder" = 0.1) rarity = 20 -/obj/item/food/snacks/grown/coffee/robusta +/obj/item/food/grown/coffee/robusta seed = /obj/item/seeds/coffee/robusta name = "coffee robusta beans" desc = "Increases robustness by 37 percent!" diff --git a/code/modules/hydroponics/grown/tobacco.dm b/code/modules/hydroponics/grown/tobacco.dm index 6a74a4e02f44..461f77e18d03 100644 --- a/code/modules/hydroponics/grown/tobacco.dm +++ b/code/modules/hydroponics/grown/tobacco.dm @@ -5,7 +5,7 @@ icon_state = "seed-tobacco" species = "tobacco" plantname = "Tobacco Plant" - product = /obj/item/food/snacks/grown/tobacco + product = /obj/item/food/grown/tobacco lifespan = 20 maturation = 5 production = 5 @@ -15,7 +15,7 @@ mutatelist = list(/obj/item/seeds/tobacco/space) reagents_add = list("nicotine" = 0.03, "plantmatter" = 0.03) -/obj/item/food/snacks/grown/tobacco +/obj/item/food/grown/tobacco seed = /obj/item/seeds/tobacco name = "tobacco leaves" desc = "Dry them out to make some smokes." @@ -31,12 +31,12 @@ icon_state = "seed-stobacco" species = "stobacco" plantname = "Space Tobacco Plant" - product = /obj/item/food/snacks/grown/tobacco/space + product = /obj/item/food/grown/tobacco/space mutatelist = list() reagents_add = list("salbutamol" = 0.05, "nicotine" = 0.08, "plantmatter" = 0.03) rarity = 20 -/obj/item/food/snacks/grown/tobacco/space +/obj/item/food/grown/tobacco/space seed = /obj/item/seeds/tobacco/space name = "space tobacco leaves" desc = "Dry them out to make some space-smokes." diff --git a/code/modules/hydroponics/grown/tomato.dm b/code/modules/hydroponics/grown/tomato.dm index 0de416b0972d..4f26bf4f6fe5 100644 --- a/code/modules/hydroponics/grown/tomato.dm +++ b/code/modules/hydroponics/grown/tomato.dm @@ -5,7 +5,7 @@ icon_state = "seed-tomato" species = "tomato" plantname = "Tomato Plants" - product = /obj/item/food/snacks/grown/tomato + product = /obj/item/food/grown/tomato maturation = 8 growing_icon = 'icons/obj/hydroponics/growing_fruits.dmi' icon_grow = "tomato-grow" @@ -14,12 +14,12 @@ mutatelist = list(/obj/item/seeds/tomato/blue, /obj/item/seeds/tomato/blood) reagents_add = list("vitamin" = 0.04, "plantmatter" = 0.1) -/obj/item/food/snacks/grown/tomato +/obj/item/food/grown/tomato seed = /obj/item/seeds/tomato name = "tomato" desc = "I say to-mah-to, you say tom-mae-to." icon_state = "tomato" - slice_path = /obj/item/food/snacks/tomatoslice + slice_path = /obj/item/food/tomatoslice slices_num = 4 splat_type = /obj/effect/decal/cleanable/tomato_smudge filling_color = "#FF6347" @@ -34,12 +34,12 @@ icon_state = "seed-bloodtomato" species = "bloodtomato" plantname = "Blood-Tomato Plants" - product = /obj/item/food/snacks/grown/tomato/blood + product = /obj/item/food/grown/tomato/blood mutatelist = list(/obj/item/seeds/tomato/killer) reagents_add = list("blood" = 0.2, "vitamin" = 0.04, "plantmatter" = 0.1) rarity = 20 -/obj/item/food/snacks/grown/tomato/blood +/obj/item/food/grown/tomato/blood seed = /obj/item/seeds/tomato/blood name = "blood-tomato" desc = "So bloody...so...very...bloody....AHHHH!!!!" @@ -58,7 +58,7 @@ icon_state = "seed-bluetomato" species = "bluetomato" plantname = "Blue-Tomato Plants" - product = /obj/item/food/snacks/grown/tomato/blue + product = /obj/item/food/grown/tomato/blue yield = 2 icon_grow = "bluetomato-grow" mutatelist = list(/obj/item/seeds/tomato/blue/bluespace) @@ -66,7 +66,7 @@ reagents_add = list("lube" = 0.2, "vitamin" = 0.04, "plantmatter" = 0.1) rarity = 20 -/obj/item/food/snacks/grown/tomato/blue +/obj/item/food/grown/tomato/blue seed = /obj/item/seeds/tomato/blue name = "blue-tomato" desc = "I say blue-mah-to, you say blue-mae-to." @@ -83,14 +83,14 @@ icon_state = "seed-bluespacetomato" species = "bluespacetomato" plantname = "Bluespace Tomato Plants" - product = /obj/item/food/snacks/grown/tomato/blue/bluespace + product = /obj/item/food/grown/tomato/blue/bluespace yield = 2 mutatelist = list() genes = list(/datum/plant_gene/trait/squash, /datum/plant_gene/trait/slip, /datum/plant_gene/trait/teleport, /datum/plant_gene/trait/repeated_harvest) reagents_add = list("lube" = 0.2, "singulo" = 0.2, "vitamin" = 0.04, "plantmatter" = 0.1) rarity = 50 -/obj/item/food/snacks/grown/tomato/blue/bluespace +/obj/item/food/grown/tomato/blue/bluespace seed = /obj/item/seeds/tomato/blue/bluespace name = "bluespace tomato" desc = "So lubricated, you might slip through space-time." @@ -108,7 +108,7 @@ icon_state = "seed-killertomato" species = "killertomato" plantname = "Killer-Tomato Plants" - product = /obj/item/food/snacks/grown/tomato/killer + product = /obj/item/food/grown/tomato/killer yield = 2 genes = list(/datum/plant_gene/trait/squash) growthstages = 2 @@ -119,7 +119,7 @@ reagents_add = list("vitamin" = 0.04, "protein" = 0.1) rarity = 30 -/obj/item/food/snacks/grown/tomato/killer +/obj/item/food/grown/tomato/killer seed = /obj/item/seeds/tomato/killer name = "killer-tomato" desc = "I say to-mah-to, you say tom-mae-to... OH GOD IT'S EATING MY LEGS!!" @@ -129,13 +129,13 @@ origin_tech = "biotech=4;combat=5" distill_reagent = "demonsblood" -/obj/item/food/snacks/grown/tomato/killer/attack(mob/M, mob/user, def_zone) +/obj/item/food/grown/tomato/killer/attack(mob/M, mob/user, def_zone) if(awakening) to_chat(user, "The tomato is twitching and shaking, preventing you from eating it.") return ..() -/obj/item/food/snacks/grown/tomato/killer/attack_self(mob/user) +/obj/item/food/grown/tomato/killer/attack_self(mob/user) if(awakening || isspaceturf(user.loc)) return to_chat(user, "You begin to awaken the Killer Tomato...") diff --git a/code/modules/hydroponics/grown/towercap.dm b/code/modules/hydroponics/grown/towercap.dm index 4449e8d6f503..7c19394a2623 100644 --- a/code/modules/hydroponics/grown/towercap.dm +++ b/code/modules/hydroponics/grown/towercap.dm @@ -43,11 +43,11 @@ attack_verb = list("bashed", "battered", "bludgeoned", "whacked") var/plank_type = /obj/item/stack/sheet/wood var/plank_name = "wooden planks" - var/static/list/accepted = typecacheof(list(/obj/item/food/snacks/grown/tobacco, - /obj/item/food/snacks/grown/tea, - /obj/item/food/snacks/grown/ambrosia/vulgaris, - /obj/item/food/snacks/grown/ambrosia/deus, - /obj/item/food/snacks/grown/wheat)) + var/static/list/accepted = typecacheof(list(/obj/item/food/grown/tobacco, + /obj/item/food/grown/tea, + /obj/item/food/grown/ambrosia/vulgaris, + /obj/item/food/grown/ambrosia/deus, + /obj/item/food/grown/wheat)) /obj/item/grown/log/attackby(obj/item/W, mob/user, params) if(W.sharp) @@ -68,7 +68,7 @@ qdel(src) if(CheckAccepted(W)) - var/obj/item/food/snacks/grown/leaf = W + var/obj/item/food/grown/leaf = W if(leaf.dry) user.show_message("You wrap \the [W] around the log, turning it into a torch!") var/obj/item/flashlight/flare/torch/T = new /obj/item/flashlight/flare/torch(user.loc) diff --git a/code/modules/hydroponics/hydroponics_tray.dm b/code/modules/hydroponics/hydroponics_tray.dm index 4bd228afbbb2..217dcb5c53cc 100644 --- a/code/modules/hydroponics/hydroponics_tray.dm +++ b/code/modules/hydroponics/hydroponics_tray.dm @@ -122,7 +122,7 @@ return ..() /obj/machinery/hydroponics/constructable/attackby(obj/item/I, mob/user, params) - if(default_deconstruction_screwdriver(user, "hydrotray3", "hydrotray3", I) || exchange_parts(user, I)) + if(default_deconstruction_screwdriver(user, "hydrotray3", "hydrotray3", I)) return return ..() @@ -857,7 +857,7 @@ else if(istype(O, /obj/item/storage/bag/plants)) attack_hand(user) var/obj/item/storage/bag/plants/S = O - for(var/obj/item/food/snacks/grown/G in locate(user.x,user.y,user.z)) + for(var/obj/item/food/grown/G in locate(user.x,user.y,user.z)) if(!S.can_be_inserted(G)) return S.handle_item_insertion(G, user, TRUE) diff --git a/code/modules/hydroponics/plant_genes.dm b/code/modules/hydroponics/plant_genes.dm index a9c9d9c16a7c..1ed5751192c3 100644 --- a/code/modules/hydroponics/plant_genes.dm +++ b/code/modules/hydroponics/plant_genes.dm @@ -209,7 +209,7 @@ return FALSE return TRUE -/datum/plant_gene/trait/proc/on_new(obj/item/food/snacks/grown/G) +/datum/plant_gene/trait/proc/on_new(obj/item/food/grown/G) if(!origin_tech) // This ugly code segment adds RnD tech levels to resulting plants. return @@ -224,19 +224,19 @@ else G.origin_tech = list2params(origin_tech) -/datum/plant_gene/trait/proc/on_consume(obj/item/food/snacks/grown/G, mob/living/carbon/target) +/datum/plant_gene/trait/proc/on_consume(obj/item/food/grown/G, mob/living/carbon/target) return -/datum/plant_gene/trait/proc/on_slip(obj/item/food/snacks/grown/G, mob/living/carbon/target) +/datum/plant_gene/trait/proc/on_slip(obj/item/food/grown/G, mob/living/carbon/target) return -/datum/plant_gene/trait/proc/on_squash(obj/item/food/snacks/grown/G, atom/target) +/datum/plant_gene/trait/proc/on_squash(obj/item/food/grown/G, atom/target) return -/datum/plant_gene/trait/proc/on_attackby(obj/item/food/snacks/grown/G, obj/item/I, mob/user) +/datum/plant_gene/trait/proc/on_attackby(obj/item/food/grown/G, obj/item/I, mob/user) return -/datum/plant_gene/trait/proc/on_throw_impact(obj/item/food/snacks/grown/G, atom/target) +/datum/plant_gene/trait/proc/on_throw_impact(obj/item/food/grown/G, atom/target) return /datum/plant_gene/trait/squash @@ -256,7 +256,7 @@ examine_line = "It has a very slippery skin." dangerous = TRUE -/datum/plant_gene/trait/slip/on_new(obj/item/food/snacks/grown/G) +/datum/plant_gene/trait/slip/on_new(obj/item/food/grown/G) . = ..() if(istype(G) && ispath(G.trash, /obj/item/grown)) return @@ -280,19 +280,19 @@ origin_tech = list("powerstorage" = 5) dangerous = TRUE -/datum/plant_gene/trait/cell_charge/on_slip(obj/item/food/snacks/grown/G, mob/living/carbon/C) +/datum/plant_gene/trait/cell_charge/on_slip(obj/item/food/grown/G, mob/living/carbon/C) var/power = G.seed.potency*rate if(prob(power)) C.electrocute_act(round(power), G, 1, SHOCK_NOGLOVES) -/datum/plant_gene/trait/cell_charge/on_squash(obj/item/food/snacks/grown/G, atom/target) +/datum/plant_gene/trait/cell_charge/on_squash(obj/item/food/grown/G, atom/target) if(isliving(target)) var/mob/living/carbon/C = target var/power = G.seed.potency*rate if(prob(power)) C.electrocute_act(round(power), G, 1, SHOCK_NOGLOVES) -/datum/plant_gene/trait/cell_charge/on_consume(obj/item/food/snacks/grown/G, mob/living/carbon/target) +/datum/plant_gene/trait/cell_charge/on_consume(obj/item/food/grown/G, mob/living/carbon/target) if(!G.reagents.total_volume) var/batteries_recharged = 0 for(var/obj/item/stock_parts/cell/C in target.GetAllContents()) @@ -325,7 +325,7 @@ /datum/plant_gene/trait/glow/proc/glow_power(obj/item/seeds/S) return max(S.potency*(rate + 0.01), 0.1) -/datum/plant_gene/trait/glow/on_new(obj/item/food/snacks/grown/G) +/datum/plant_gene/trait/glow/on_new(obj/item/food/grown/G) ..() G.set_light(glow_range(G.seed), glow_power(G.seed), glow_color) @@ -356,7 +356,7 @@ origin_tech = list("bluespace" = 5) dangerous = TRUE -/datum/plant_gene/trait/teleport/on_squash(obj/item/food/snacks/grown/G, atom/target) +/datum/plant_gene/trait/teleport/on_squash(obj/item/food/grown/G, atom/target) if(isliving(target)) var/mob/living/L = target var/teleport_radius = max(round(G.seed.potency / 10), 1) @@ -365,7 +365,7 @@ do_teleport(L, T, teleport_radius) L.apply_status_effect(STATUS_EFFECT_TELEPORTSICK) -/datum/plant_gene/trait/teleport/on_slip(obj/item/food/snacks/grown/G, mob/living/carbon/C) +/datum/plant_gene/trait/teleport/on_slip(obj/item/food/grown/G, mob/living/carbon/C) var/teleport_radius = max(round(G.seed.potency / 10), 1) var/turf/T = get_turf(C) if(do_teleport(C, T, teleport_radius)) @@ -386,7 +386,7 @@ name = "Densified Chemicals" rate = 2 -/datum/plant_gene/trait/maxchem/on_new(obj/item/food/snacks/grown/G) +/datum/plant_gene/trait/maxchem/on_new(obj/item/food/grown/G) ..() G.reagents.maximum_volume *= rate @@ -403,7 +403,7 @@ /datum/plant_gene/trait/battery name = "Capacitive Cell Production" -/datum/plant_gene/trait/battery/on_attackby(obj/item/food/snacks/grown/G, obj/item/I, mob/user) +/datum/plant_gene/trait/battery/on_attackby(obj/item/food/grown/G, obj/item/I, mob/user) if(istype(I, /obj/item/stack/cable_coil)) var/obj/item/stack/cable_coil/C = I if(C.use(5)) @@ -432,7 +432,7 @@ name = "Hypodermic Prickles" dangerous = TRUE -/datum/plant_gene/trait/stinging/on_throw_impact(obj/item/food/snacks/grown/G, atom/target) +/datum/plant_gene/trait/stinging/on_throw_impact(obj/item/food/grown/G, atom/target) if(isliving(target) && G.reagents && G.reagents.total_volume) var/mob/living/L = target // It would be nice to inject the body part the original thrower aimed at, @@ -449,7 +449,7 @@ name = "Gaseous Decomposition" dangerous = TRUE -/datum/plant_gene/trait/smoke/on_squash(obj/item/food/snacks/grown/G, atom/target) +/datum/plant_gene/trait/smoke/on_squash(obj/item/food/grown/G, atom/target) var/datum/effect_system/smoke_spread/chem/plant/S = new() var/splat_location = get_turf(target) var/smoke_amount = round(sqrt(G.seed.potency * 0.1), 1) @@ -464,7 +464,7 @@ if(!(S.resistance_flags & FIRE_PROOF)) S.resistance_flags |= FIRE_PROOF -/datum/plant_gene/trait/fire_resistance/on_new(obj/item/food/snacks/grown/G) +/datum/plant_gene/trait/fire_resistance/on_new(obj/item/food/grown/G) if(!(G.resistance_flags & FIRE_PROOF)) G.resistance_flags |= FIRE_PROOF diff --git a/code/modules/hydroponics/seed_extractor.dm b/code/modules/hydroponics/seed_extractor.dm index 37ac3e36132f..32f0f2d2ab72 100644 --- a/code/modules/hydroponics/seed_extractor.dm +++ b/code/modules/hydroponics/seed_extractor.dm @@ -10,8 +10,8 @@ output_loc = extractor.loc var/original_seed = null - if(istype(source_item, /obj/item/food/snacks/grown)) - var/obj/item/food/snacks/grown/F = source_item + if(istype(source_item, /obj/item/food/grown)) + var/obj/item/food/grown/F = source_item original_seed = F.unsorted_seed || F.seed else if(istype(source_item, /obj/item/grown)) var/obj/item/grown/F = source_item @@ -77,13 +77,17 @@ /obj/machinery/seed_extractor/attackby(obj/item/O, mob/user, params) if(default_deconstruction_screwdriver(user, "sextractor_open", "sextractor", O)) return - if(exchange_parts(user, O)) - return + if(default_unfasten_wrench(user, O, time = 4 SECONDS)) return + if(default_deconstruction_crowbar(user, O)) return + if(istype(O, /obj/item/storage/part_replacer)) + . = ..() + SStgui.update_uis(src) + return if(istype(O, /obj/item/storage/bag/plants)) var/obj/item/storage/P = O @@ -99,33 +103,39 @@ SStgui.update_uis(src) else var/seedable = 0 - for(var/obj/item/food/snacks/grown/ignored in P) + for(var/obj/item/food/grown/ignored in P) seedable++ for(var/obj/item/grown/ignored in P) seedable++ if(!seedable) to_chat(user, "There are no seeds or plants in [O].") return + to_chat(user, "You dump the plants in [O] into [src].") if(!O.use_tool(src, user, min(5, seedable/2) SECONDS)) return + for(var/thing in P) seedify(thing,-1, src, user) return - else if(istype(O, /obj/item/unsorted_seeds)) + if(istype(O, /obj/item/unsorted_seeds)) to_chat(user, "You need to sort [O] first!") return ..() - else if(istype(O, /obj/item/seeds)) + + if(istype(O, /obj/item/seeds)) add_seed(O, user) to_chat(user, "You add [O] to [name].") SStgui.update_uis(src) return - else if(seedify(O,-1, src, user)) + + if(seedify(O,-1, src, user)) to_chat(user, "You extract some seeds.") return - else if(user.a_intent != INTENT_HARM) + + if(user.a_intent != INTENT_HARM) to_chat(user, "You can't extract any seeds from \the [O.name]!") + return ..() /obj/machinery/seed_extractor/attack_ai(mob/user) diff --git a/code/modules/hydroponics/seeds.dm b/code/modules/hydroponics/seeds.dm index a18d95c828fe..7e770f65bc42 100644 --- a/code/modules/hydroponics/seeds.dm +++ b/code/modules/hydroponics/seeds.dm @@ -242,8 +242,8 @@ data = list("blood_type" = "O-") if(rid == "nutriment" || rid == "vitamin" || rid == "protein" || rid == "plantmatter") // Apple tastes of apple. - if(istype(T, /obj/item/food/snacks/grown)) - var/obj/item/food/snacks/grown/grown_edible = T + if(istype(T, /obj/item/food/grown)) + var/obj/item/food/grown/grown_edible = T data = grown_edible.tastes.Copy() T.reagents.add_reagent(rid, amount, data) diff --git a/code/modules/library/book.dm b/code/modules/library/book.dm index 02316f5a95c6..466033801e0c 100644 --- a/code/modules/library/book.dm +++ b/code/modules/library/book.dm @@ -360,11 +360,14 @@ var/amount = 1 /obj/item/book/random/Initialize() - ..() - var/list/books = GLOB.library_catalog.get_random_book(amount, FALSE) + . = ..() + addtimer(CALLBACK(src, PROC_REF(spawn_books)), 0) + +/obj/item/book/random/proc/spawn_books() + var/list/books = GLOB.library_catalog.get_random_book(amount) for(var/datum/cachedbook/book as anything in books) new /obj/item/book(loc, book, TRUE, FALSE) - return INITIALIZE_HINT_QDEL + qdel(src) /obj/item/book/random/triple amount = 3 diff --git a/code/modules/library/library_catalog.dm b/code/modules/library/library_catalog.dm index 84f097eeea82..cabc94a9c3b1 100644 --- a/code/modules/library/library_catalog.dm +++ b/code/modules/library/library_catalog.dm @@ -236,7 +236,7 @@ * * range - Amount of books we want to grab at once * * datum/library_user_data/search_terms - datum with parameters for what we want to query our DB for */ -/datum/library_catalog/proc/get_book_by_range(initial = 1, range = 25, datum/library_user_data/search_terms, doAsync = TRUE) +/datum/library_catalog/proc/get_book_by_range(initial = 1, range = 25, datum/library_user_data/search_terms) var/list/search_query = build_search_query(search_terms) var/sql = "SELECT id, author, title, content, summary, rating, raters, primary_category, secondary_category, tertiary_category, ckey, reports FROM library" + search_query[1] + " LIMIT :lowerlimit, :upperlimit" var/list/sql_params = search_query[2] @@ -246,7 +246,7 @@ var/datum/db_query/select_query = SSdbcore.NewQuery(sql, sql_params) - if(!select_query.warn_execute(async = doAsync)) + if(!select_query.warn_execute()) qdel(select_query) return @@ -309,13 +309,13 @@ * Arguments: * * datum/library_user_data/search_terms - datum with parameters for what we want to query our DB for */ -/datum/library_catalog/proc/get_total_books(datum/library_user_data/search_terms, async = TRUE) +/datum/library_catalog/proc/get_total_books(datum/library_user_data/search_terms) var/list/search_query = build_search_query(search_terms) var/sql = "SELECT COUNT(id) FROM library" + search_query[1] var/list/sql_params = search_query[2] var/datum/db_query/count_query = SSdbcore.NewQuery(sql, sql_params) - if(!count_query.warn_execute(async)) + if(!count_query.warn_execute()) qdel(count_query) return @@ -365,7 +365,7 @@ * Arguments: * * amount - amount of random books to get */ -/datum/library_catalog/proc/get_random_book(amount = 1, doAsync = TRUE) +/datum/library_catalog/proc/get_random_book(amount = 1) if(!amount) return if(!SSdbcore.IsConnected()) @@ -374,7 +374,7 @@ var/list/sql_params = list("amount" = num_books ) var/sql = "SELECT id, author, title, content, summary, rating, primary_category, secondary_category, tertiary_category, ckey, reports FROM library GROUP BY title ORDER BY rand() LIMIT :amount" var/datum/db_query/query = SSdbcore.NewQuery(sql, sql_params) - if(!query.warn_execute(async = doAsync)) //this proc is used in initialize in some objects :) + if(!query.warn_execute()) qdel(query) return diff --git a/code/modules/library/library_computer.dm b/code/modules/library/library_computer.dm index b31f73c13317..3fcab669b34b 100644 --- a/code/modules/library/library_computer.dm +++ b/code/modules/library/library_computer.dm @@ -52,9 +52,7 @@ /obj/machinery/computer/library/Initialize(mapload) . = ..() - populate_booklist(async = FALSE) - //since ui_data screws up when SQL calls are made inside it, - //we must populate our booklist before ui_act is called for the first time + addtimer(CALLBACK(src, PROC_REF(populate_booklist)), 0) /obj/machinery/computer/library/attack_ai(mob/user) return attack_hand(user) @@ -538,11 +536,11 @@ * internal proc that will refresh our cached booklist, it needs to be called everytime we are switching parameters * that will affect what books will be displayed in our TGUI player book archive. */ -/obj/machinery/computer/library/proc/populate_booklist(async = TRUE) +/obj/machinery/computer/library/proc/populate_booklist() cached_booklist = list() //clear old list var/starting_book = (archive_page_num - 1) * LIBRARY_BOOKS_PER_PAGE var/range = LIBRARY_BOOKS_PER_PAGE - for(var/datum/cachedbook/CB in GLOB.library_catalog.get_book_by_range(starting_book, range, user_data, async)) + for(var/datum/cachedbook/CB in GLOB.library_catalog.get_book_by_range(starting_book, range, user_data)) //instead of just adding the datum to the cached_booklist, we want to make it an assoc list so we can just give it to the TGUI var/list/book_data = list( @@ -561,13 +559,13 @@ book_data["categories"] += book_category.description //we're displaying the cats onlys, so we don't need the ids cached_booklist += list(book_data) - num_pages = getmaxpages(async) + num_pages = getmaxpages() archive_page_num = clamp(archive_page_num, 1, num_pages) ///Returns the amount of pages we will need to hold all the book our DB has found -/obj/machinery/computer/library/proc/getmaxpages(async = TRUE) +/obj/machinery/computer/library/proc/getmaxpages() //if get_total_books doesn't return anything, just set pages to 1 so we don't break stuff - var/book_count = max(1, GLOB.library_catalog.get_total_books(user_data, async)) + var/book_count = max(1, GLOB.library_catalog.get_total_books(user_data)) var/page_count = round(book_count / LIBRARY_BOOKS_PER_PAGE) //Since 'round' gets the floor value it's likely there will be 1 page more than //the page count amount (almost guaranteed), we check for a remainder because of this diff --git a/code/modules/library/library_equipment.dm b/code/modules/library/library_equipment.dm index 00790622c600..82e88b3a1cad 100644 --- a/code/modules/library/library_equipment.dm +++ b/code/modules/library/library_equipment.dm @@ -149,7 +149,10 @@ /obj/structure/bookcase/random/Initialize(mapload) . = ..() - var/list/books = GLOB.library_catalog.get_random_book(book_count, doAsync = FALSE) + addtimer(CALLBACK(src, PROC_REF(load_books)), 0) + +/obj/structure/bookcase/random/proc/load_books() + var/list/books = GLOB.library_catalog.get_random_book(book_count) for(var/datum/cachedbook/book as anything in books) new /obj/item/book(src, book, TRUE, FALSE) update_icon(UPDATE_ICON_STATE) diff --git a/code/modules/mapping/access_helpers.dm b/code/modules/mapping/access_helpers.dm index 66661ae3c654..54582614ccfa 100644 --- a/code/modules/mapping/access_helpers.dm +++ b/code/modules/mapping/access_helpers.dm @@ -1,10 +1,13 @@ /obj/effect/mapping_helpers/airlock/access - layer = DOOR_HELPER_LAYER + layer = SPLASHSCREEN_PLANE + 0.1 // Above even airlock spawners icon_state = "access_helper" var/access // These are mutually exclusive; can't have req_any and req_all /obj/effect/mapping_helpers/airlock/access/any/payload(obj/machinery/door/airlock/airlock) + if(is_type_in_list(airlock, blacklist)) + return + if(airlock.req_access_txt == "0") // Overwrite if there is no access set, otherwise add onto existing access if(airlock.req_one_access_txt == "0") @@ -15,6 +18,9 @@ log_world("[src] at [AREACOORD(src)] tried to set req_one_access, but req_access was already set!") /obj/effect/mapping_helpers/airlock/access/all/payload(obj/machinery/door/airlock/airlock) + if(is_type_in_list(airlock, blacklist)) + return + if(airlock.req_one_access_txt == "0") if(airlock.req_access_txt == "0") airlock.req_access_txt = "[access]" diff --git a/code/modules/mapping/mapping_helpers.dm b/code/modules/mapping/mapping_helpers.dm index f003c6ecfc27..784f6672c1c7 100644 --- a/code/modules/mapping/mapping_helpers.dm +++ b/code/modules/mapping/mapping_helpers.dm @@ -84,18 +84,20 @@ /obj/effect/mapping_helpers/airlock/Initialize(mapload) . = ..() + if(!mapload) log_world("[src] spawned outside of mapload!") - return + return INITIALIZE_HINT_QDEL +/obj/effect/mapping_helpers/airlock/LateInitialize() + . = ..() if(!(locate(/obj/machinery/door) in get_turf(src))) log_world("[src] failed to find an airlock at [AREACOORD(src)]") for(var/obj/machinery/door/D in get_turf(src)) - if(!is_type_in_list(D, blacklist)) - payload(D) + payload(D) - return INITIALIZE_HINT_QDEL + qdel(src) /obj/effect/mapping_helpers/airlock/proc/payload(obj/machinery/door/airlock/payload) return diff --git a/code/modules/martial_arts/judo.dm b/code/modules/martial_arts/judo.dm index acd0b1693b84..96af7e0996c1 100644 --- a/code/modules/martial_arts/judo.dm +++ b/code/modules/martial_arts/judo.dm @@ -27,7 +27,7 @@ /obj/item/reagent_containers/spray/pepper, /obj/item/restraints/handcuffs, /obj/item/flash, - /obj/item/food/snacks/donut, + /obj/item/food/donut, /obj/item/flashlight/seclite, /obj/item/holosign_creator/security, /obj/item/holosign_creator/detective, diff --git a/code/modules/mining/abandonedcrates.dm b/code/modules/mining/abandonedcrates.dm index 51a04b85da7a..e8c49f5d821a 100644 --- a/code/modules/mining/abandonedcrates.dm +++ b/code/modules/mining/abandonedcrates.dm @@ -24,7 +24,7 @@ switch(loot) if(1 to 5) //5% chance new /obj/item/reagent_containers/drinks/bottle/rum(src) - new /obj/item/food/snacks/grown/ambrosia/deus(src) + new /obj/item/food/grown/ambrosia/deus(src) new /obj/item/reagent_containers/drinks/bottle/whiskey(src) new /obj/item/lighter(src) if(6 to 10) diff --git a/code/modules/mining/equipment/explorer_gear.dm b/code/modules/mining/equipment/explorer_gear.dm index 9eadbe5e2a7e..e7aded9447f6 100644 --- a/code/modules/mining/equipment/explorer_gear.dm +++ b/code/modules/mining/equipment/explorer_gear.dm @@ -53,6 +53,7 @@ max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT heat_protection = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS|HANDS|FEET resistance_flags = FIRE_PROOF | LAVA_PROOF + flags_2 = RAD_PROTECT_CONTENTS_2 slowdown = 0 armor = list(MELEE = 120, BULLET = 35, LASER = 25, ENERGY = 25, BOMB = 150, RAD = INFINITY, FIRE = INFINITY, ACID = INFINITY) allowed = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/resonator, /obj/item/mining_scanner, /obj/item/t_scanner/adv_mining_scanner, /obj/item/gun/energy/kinetic_accelerator, /obj/item/pickaxe, /obj/item/melee/spellblade) @@ -90,7 +91,7 @@ heat_protection = HEAD armor = list(MELEE = 120, BULLET = 35, LASER = 25, ENERGY = 25, BOMB = 150, RAD = INFINITY, FIRE = INFINITY, ACID = INFINITY) resistance_flags = FIRE_PROOF | LAVA_PROOF - + flags_2 = RAD_PROTECT_CONTENTS_2 sprite_sheets = list( "Vox" = 'icons/mob/clothing/species/vox/head.dmi', "Drask" = 'icons/mob/clothing/species/drask/head.dmi', diff --git a/code/modules/mining/equipment/survival_pod.dm b/code/modules/mining/equipment/survival_pod.dm index 4c4ad8a8e925..f6ec847f9239 100644 --- a/code/modules/mining/equipment/survival_pod.dm +++ b/code/modules/mining/equipment/survival_pod.dm @@ -240,7 +240,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/economy/vending/wallmed/survival_pod, return for(var/i in 1 to 5) - var/obj/item/food/snacks/warmdonkpocket_weak/W = new(src) + var/obj/item/food/warmdonkpocket_weak/W = new(src) load(W) if(prob(50)) var/obj/item/storage/bag/dice/D = new(src) diff --git a/code/modules/mining/equipment/wormhole_jaunter.dm b/code/modules/mining/equipment/wormhole_jaunter.dm index 9238fb83fbdd..ab12f1fdcdec 100644 --- a/code/modules/mining/equipment/wormhole_jaunter.dm +++ b/code/modules/mining/equipment/wormhole_jaunter.dm @@ -133,6 +133,9 @@ /obj/item/wormhole_jaunter/contractor/activate(mob/user) if(!turf_check(user)) return + if(istype(get_area(src), /area/ruin/space/telecomms)) //It should work in the depot, because it's syndicate, but I don't want someone lighting the flare in the middle of telecomms and calling it a day. + to_chat(user, "Error! Unknown jamming system blocking teleportation in this area!") + return if(!destination) var/list/L = get_destinations(user) if(!length(L)) diff --git a/code/modules/mining/lavaland/ash_flora.dm b/code/modules/mining/lavaland/ash_flora.dm index 463312725163..9768e5d08e68 100644 --- a/code/modules/mining/lavaland/ash_flora.dm +++ b/code/modules/mining/lavaland/ash_flora.dm @@ -9,7 +9,7 @@ var/harvested_name = "shortened mushrooms" var/harvested_desc = "Some quickly regrowing mushrooms, formerly known to be quite large." var/needs_sharp_harvest = TRUE - var/harvest = /obj/item/food/snacks/grown/ash_flora/shavings + var/harvest = /obj/item/food/grown/ash_flora/shavings var/harvest_amount_low = 1 var/harvest_amount_high = 3 var/harvest_time = 60 @@ -85,7 +85,7 @@ desc = "A number of mushrooms, each of which surrounds a greenish sporangium with a number of leaf-like structures." harvested_name = "leafless mushrooms" harvested_desc = "A bunch of formerly-leafed mushrooms, with their sporangiums exposed. Scandalous?" - harvest = /obj/item/food/snacks/grown/ash_flora/mushroom_leaf + harvest = /obj/item/food/grown/ash_flora/mushroom_leaf needs_sharp_harvest = FALSE harvest_amount_high = 4 harvest_time = 20 @@ -101,7 +101,7 @@ desc = "Several mushrooms, the larger of which have a ring of conks at the midpoint of their stems." harvested_name = "small mushrooms" harvested_desc = "Several small mushrooms near the stumps of what likely were larger mushrooms." - harvest = /obj/item/food/snacks/grown/ash_flora/mushroom_cap + harvest = /obj/item/food/grown/ash_flora/mushroom_cap harvest_amount_high = 4 harvest_time = 50 harvest_message_low = "You slice the cap off of a mushroom." @@ -118,7 +118,7 @@ light_power = 2.1 harvested_name = "tiny mushrooms" harvested_desc = "A few tiny mushrooms around larger stumps. You can already see them growing back." - harvest = /obj/item/food/snacks/grown/ash_flora/mushroom_stem + harvest = /obj/item/food/grown/ash_flora/mushroom_stem harvest_amount_high = 4 harvest_time = 40 harvest_message_low = "You pick and slice the cap off of a mushroom, leaving the stem." @@ -133,7 +133,7 @@ desc = "Several prickly cacti, brimming with ripe fruit and covered in a thin layer of ash." harvested_name = "cacti" harvested_desc = "A bunch of prickly cacti. You can see fruits slowly growing beneath the covering of ash." - harvest = /obj/item/food/snacks/grown/ash_flora/cactus_fruit + harvest = /obj/item/food/grown/ash_flora/cactus_fruit needs_sharp_harvest = FALSE harvest_amount_high = 2 harvest_time = 10 @@ -184,7 +184,7 @@ . = ..() icon_state = "basalt[rand(1, 4)]" -/obj/item/food/snacks/grown/ash_flora +/obj/item/food/grown/ash_flora name = "mushroom shavings" desc = "Some shavings from a tall mushroom. With enough, might serve as a bowl." icon = 'icons/obj/lavaland/ash_flora.dmi' @@ -195,36 +195,36 @@ seed = /obj/item/seeds/lavaland/polypore wine_power = 0.2 -/obj/item/food/snacks/grown/ash_flora/Initialize(mapload) +/obj/item/food/grown/ash_flora/Initialize(mapload) . = ..() pixel_x = rand(-4, 4) pixel_y = rand(-4, 4) /// for actual crafting -/obj/item/food/snacks/grown/ash_flora/shavings +/obj/item/food/grown/ash_flora/shavings -/obj/item/food/snacks/grown/ash_flora/mushroom_leaf +/obj/item/food/grown/ash_flora/mushroom_leaf name = "mushroom leaf" desc = "A leaf, from a mushroom." icon_state = "mushroom_leaf" seed = /obj/item/seeds/lavaland/porcini wine_power = 0.4 -/obj/item/food/snacks/grown/ash_flora/mushroom_cap +/obj/item/food/grown/ash_flora/mushroom_cap name = "mushroom cap" desc = "The cap of a large mushroom." icon_state = "mushroom_cap" seed = /obj/item/seeds/lavaland/inocybe wine_power = 0.7 -/obj/item/food/snacks/grown/ash_flora/mushroom_stem +/obj/item/food/grown/ash_flora/mushroom_stem name = "mushroom stem" desc = "A long mushroom stem. It's slightly glowing." icon_state = "mushroom_stem" seed = /obj/item/seeds/lavaland/ember wine_power = 0.6 -/obj/item/food/snacks/grown/ash_flora/cactus_fruit +/obj/item/food/grown/ash_flora/cactus_fruit name = "cactus fruit" desc = "A cactus fruit covered in a thick, reddish skin. And some ash." icon_state = "cactus_fruit" @@ -253,7 +253,7 @@ icon_state = "seed-cactus" species = "cactus" plantname = "Fruiting Cactus" - product = /obj/item/food/snacks/grown/ash_flora/cactus_fruit + product = /obj/item/food/grown/ash_flora/cactus_fruit genes = list(/datum/plant_gene/trait/fire_resistance) growing_icon = 'icons/obj/hydroponics/growing_fruits.dmi' growthstages = 2 @@ -265,7 +265,7 @@ icon_state = "mycelium-polypore" species = "polypore" plantname = "Polypore Mushrooms" - product = /obj/item/food/snacks/grown/ash_flora/shavings + product = /obj/item/food/grown/ash_flora/shavings genes = list(/datum/plant_gene/trait/plant_type/fungal_metabolism, /datum/plant_gene/trait/fire_resistance) growing_icon = 'icons/obj/hydroponics/growing_mushrooms.dmi' reagents_add = list("sugar" = 0.06, "ethanol" = 0.04, "stabilizing_agent" = 0.06, "minttoxin" = 0.02) @@ -276,7 +276,7 @@ icon_state = "mycelium-porcini" species = "porcini" plantname = "Porcini Mushrooms" - product = /obj/item/food/snacks/grown/ash_flora/mushroom_leaf + product = /obj/item/food/grown/ash_flora/mushroom_leaf genes = list(/datum/plant_gene/trait/plant_type/fungal_metabolism, /datum/plant_gene/trait/fire_resistance) growing_icon = 'icons/obj/hydroponics/growing_mushrooms.dmi' reagents_add = list("nutriment" = 0.06, "vitfro" = 0.04, "nicotine" = 0.04) @@ -288,7 +288,7 @@ icon_state = "mycelium-inocybe" species = "inocybe" plantname = "Inocybe Mushrooms" - product = /obj/item/food/snacks/grown/ash_flora/mushroom_cap + product = /obj/item/food/grown/ash_flora/mushroom_cap genes = list(/datum/plant_gene/trait/plant_type/fungal_metabolism, /datum/plant_gene/trait/fire_resistance) growing_icon = 'icons/obj/hydroponics/growing_mushrooms.dmi' reagents_add = list("lsd" = 0.04, "entpoly" = 0.08, "psilocybin" = 0.04) @@ -299,7 +299,7 @@ icon_state = "mycelium-ember" species = "ember" plantname = "Embershroom Mushrooms" - product = /obj/item/food/snacks/grown/ash_flora/mushroom_stem + product = /obj/item/food/grown/ash_flora/mushroom_stem genes = list(/datum/plant_gene/trait/plant_type/fungal_metabolism, /datum/plant_gene/trait/glow, /datum/plant_gene/trait/fire_resistance) growing_icon = 'icons/obj/hydroponics/growing_mushrooms.dmi' reagents_add = list("tinlux" = 0.04, "vitamin" = 0.02, "space_drugs" = 0.02) @@ -310,7 +310,7 @@ /datum/crafting_recipe/mushroom_bowl name = "Mushroom Bowl" result = list(/obj/item/reagent_containers/drinks/mushroom_bowl) - reqs = list(/obj/item/food/snacks/grown/ash_flora/shavings = 5) + reqs = list(/obj/item/food/grown/ash_flora/shavings = 5) time = 30 category = CAT_PRIMAL diff --git a/code/modules/mining/machine_redemption.dm b/code/modules/mining/machine_redemption.dm index e4ce7921dcaa..6d21ffd940c1 100644 --- a/code/modules/mining/machine_redemption.dm +++ b/code/modules/mining/machine_redemption.dm @@ -181,8 +181,9 @@ // Interactions /obj/machinery/mineral/ore_redemption/attackby(obj/item/I, mob/user, params) - if(exchange_parts(user, I)) - return + if(istype(I, /obj/item/storage/part_replacer)) + return ..() + if(!has_power()) return ..() @@ -202,18 +203,20 @@ add_fingerprint(usr) return - else if(istype(I, /obj/item/disk/design_disk)) + if(istype(I, /obj/item/disk/design_disk)) if(!user.drop_item()) return I.forceMove(src) inserted_disk = I SStgui.update_uis(src) interact(user) - user.visible_message("[user] inserts [I] into [src].", - "You insert [I] into [src].") + user.visible_message( + "[user] inserts [I] into [src].", + "You insert [I] into [src]." + ) return - else if(istype(I, /obj/item/gripper)) + if(istype(I, /obj/item/gripper)) if(!try_refill_storage(user)) to_chat(user, "You fail to retrieve any sheets from [src].") return diff --git a/code/modules/mining/machine_vending.dm b/code/modules/mining/machine_vending.dm index 2b57ed4690b8..f5e1a869df43 100644 --- a/code/modules/mining/machine_vending.dm +++ b/code/modules/mining/machine_vending.dm @@ -320,7 +320,7 @@ EQUIPMENT("Extra ID", /obj/item/card/id/golem, 250), EQUIPMENT("Science Backpack", /obj/item/storage/backpack/science, 250), EQUIPMENT("Full Toolbelt", /obj/item/storage/belt/utility/full/multitool, 250), - EQUIPMENT("Monkey Cube", /obj/item/food/snacks/monkeycube, 250), + EQUIPMENT("Monkey Cube", /obj/item/food/monkeycube, 250), EQUIPMENT("Royal Cape of the Liberator", /obj/item/bedsheet/rd/royal_cape, 500), EQUIPMENT("Grey Slime Extract", /obj/item/slime_extract/grey, 1000), EQUIPMENT("KA Trigger Modification Kit", /obj/item/borg/upgrade/modkit/trigger_guard, 1000), @@ -356,9 +356,9 @@ EQUIPMENT("Medical Marijuana", /obj/item/storage/fancy/cigarettes/cigpack_med, 250), EQUIPMENT("Cigar", /obj/item/clothing/mask/cigarette/cigar/havana, 150), EQUIPMENT("Box of matches", /obj/item/storage/fancy/matches, 50), - EQUIPMENT("Cheeseburger", /obj/item/food/snacks/burger/cheese, 150), - EQUIPMENT("Big Burger", /obj/item/food/snacks/burger/bigbite, 250), - EQUIPMENT("Recycled Prisoner", /obj/item/food/snacks/soylentgreen, 500), + EQUIPMENT("Cheeseburger", /obj/item/food/burger/cheese, 150), + EQUIPMENT("Big Burger", /obj/item/food/burger/bigbite, 250), + EQUIPMENT("Recycled Prisoner", /obj/item/food/soylentgreen, 500), EQUIPMENT("Crayons", /obj/item/storage/fancy/crayons, 350), EQUIPMENT("Plushie", /obj/random/plushie, 750), EQUIPMENT("Dnd set", /obj/item/storage/box/characters, 500), diff --git a/code/modules/mob/hear_say.dm b/code/modules/mob/hear_say.dm index e5a281851a0a..af923e9eaa4e 100644 --- a/code/modules/mob/hear_say.dm +++ b/code/modules/mob/hear_say.dm @@ -106,7 +106,7 @@ if(speaker == src) for(var/datum/multilingual_say_piece/SP in message_pieces) if(SP.speaking && SP.speaking.flags & INNATE) - custom_emote(EMOTE_AUDIBLE, message_clean, TRUE) + emote("me", EMOTE_AUDIBLE, message_clean, TRUE) return if(!can_hear()) diff --git a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm index 34462f3f988b..6a43c6e32487 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm @@ -3,7 +3,7 @@ name = "alien" icon_state = "alien_s" - butcher_results = list(/obj/item/food/snacks/monstermeat/xenomeat = 5, /obj/item/stack/sheet/animalhide/xeno = 1) + butcher_results = list(/obj/item/food/monstermeat/xenomeat = 5, /obj/item/stack/sheet/animalhide/xeno = 1) var/caste = "" var/alt_icon = 'icons/mob/alienleap.dmi' //used to switch between the two alien icon files. var/custom_pixel_x_offset = 0 //for admin fuckery. diff --git a/code/modules/mob/living/carbon/alien/larva/larva.dm b/code/modules/mob/living/carbon/alien/larva/larva.dm index 0432caf1ea8a..805d613b4afd 100644 --- a/code/modules/mob/living/carbon/alien/larva/larva.dm +++ b/code/modules/mob/living/carbon/alien/larva/larva.dm @@ -7,7 +7,7 @@ maxHealth = 25 health = 25 - butcher_results = list(/obj/item/food/snacks/monstermeat/xenomeat = 1) + butcher_results = list(/obj/item/food/monstermeat/xenomeat = 1) density = FALSE var/temperature_resistance = T0C+75 diff --git a/code/modules/mob/living/carbon/carbon_procs.dm b/code/modules/mob/living/carbon/carbon_procs.dm index fb7f32cabd3c..1c92114c7582 100644 --- a/code/modules/mob/living/carbon/carbon_procs.dm +++ b/code/modules/mob/living/carbon/carbon_procs.dm @@ -1094,7 +1094,7 @@ GLOBAL_LIST_INIT(ventcrawl_machinery, list(/obj/machinery/atmospherics/unary/ven return FALSE var/fullness = nutrition + 10 - if(istype(to_eat, /obj/item/food/snacks)) + if(istype(to_eat, /obj/item/food)) for(var/datum/reagent/consumable/C in reagents.reagent_list) // We add the nutrition value of what we're currently digesting fullness += C.nutriment_factor * C.volume / (C.metabolization_rate * metabolism_efficiency) diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm index 44ecca61d2b0..7ad0690d6d7d 100644 --- a/code/modules/mob/living/carbon/human/human_defense.dm +++ b/code/modules/mob/living/carbon/human/human_defense.dm @@ -462,7 +462,7 @@ emp_act return FALSE if(HAS_TRAIT(I, TRAIT_BUTCHERS_HUMANS) && stat == DEAD && user.a_intent == INTENT_HARM) - var/obj/item/food/snacks/meat/human/newmeat = new /obj/item/food/snacks/meat/human(get_turf(loc)) + var/obj/item/food/meat/human/newmeat = new /obj/item/food/meat/human(get_turf(loc)) newmeat.name = real_name + newmeat.name newmeat.subjectname = real_name newmeat.subjectjob = job diff --git a/code/modules/mob/living/carbon/human/human_life.dm b/code/modules/mob/living/carbon/human/human_life.dm index bbe2a63f4717..6da9324218fc 100644 --- a/code/modules/mob/living/carbon/human/human_life.dm +++ b/code/modules/mob/living/carbon/human/human_life.dm @@ -499,6 +499,65 @@ return min(1,thermal_protection) +//This proc returns a number made up of the flags for body parts which you are protected on. (such as HEAD, UPPER_TORSO, LOWER_TORSO, etc. See setup.dm for the full list) +/mob/living/carbon/human/proc/get_rad_protection_flags() + var/rad_protection_flags = 0 + //Handle normal clothing + if(head) + if(head.flags_2 & RAD_PROTECT_CONTENTS_2) + rad_protection_flags |= head.body_parts_covered + if(wear_suit) + if(wear_suit.flags_2 & RAD_PROTECT_CONTENTS_2) + rad_protection_flags |= wear_suit.body_parts_covered + if(w_uniform) + if(w_uniform.flags_2 & RAD_PROTECT_CONTENTS_2) + rad_protection_flags |= w_uniform.body_parts_covered + if(shoes) + if(shoes.flags_2 & RAD_PROTECT_CONTENTS_2) + rad_protection_flags |= shoes.body_parts_covered + if(gloves) + if(gloves.flags_2 & RAD_PROTECT_CONTENTS_2) + rad_protection_flags |= gloves.body_parts_covered + if(wear_mask) + if(wear_mask.flags_2 & RAD_PROTECT_CONTENTS_2) + rad_protection_flags |= wear_mask.body_parts_covered + + return rad_protection_flags + +/mob/living/carbon/human/proc/get_rad_protection() + + if(HAS_TRAIT(src, TRAIT_RADIMMUNE)) + return 1 + + var/rad_protection_flags = get_rad_protection_flags() + + var/rad_protection = 0 + if(rad_protection_flags) + if(rad_protection_flags & HEAD) + rad_protection += THERMAL_PROTECTION_HEAD //This is correct. This uses the same percent defines as thermal protection. + if(rad_protection_flags & UPPER_TORSO) + rad_protection += THERMAL_PROTECTION_UPPER_TORSO + if(rad_protection_flags & LOWER_TORSO) + rad_protection += THERMAL_PROTECTION_LOWER_TORSO + if(rad_protection_flags & LEG_LEFT) + rad_protection += THERMAL_PROTECTION_LEG_LEFT + if(rad_protection_flags & LEG_RIGHT) + rad_protection += THERMAL_PROTECTION_LEG_RIGHT + if(rad_protection_flags & FOOT_LEFT) + rad_protection += THERMAL_PROTECTION_FOOT_LEFT + if(rad_protection_flags & FOOT_RIGHT) + rad_protection += THERMAL_PROTECTION_FOOT_RIGHT + if(rad_protection_flags & ARM_LEFT) + rad_protection += THERMAL_PROTECTION_ARM_LEFT + if(rad_protection_flags & ARM_RIGHT) + rad_protection += THERMAL_PROTECTION_ARM_RIGHT + if(rad_protection_flags & HAND_LEFT) + rad_protection += THERMAL_PROTECTION_HAND_LEFT + if(rad_protection_flags & HAND_RIGHT) + rad_protection += THERMAL_PROTECTION_HAND_RIGHT + + + return min(1,rad_protection) /mob/living/carbon/human/proc/get_covered_bodyparts() var/covered = 0 diff --git a/code/modules/mob/living/carbon/human/human_update_icons.dm b/code/modules/mob/living/carbon/human/human_update_icons.dm index bbacc1e6cd76..88c474d59995 100644 --- a/code/modules/mob/living/carbon/human/human_update_icons.dm +++ b/code/modules/mob/living/carbon/human/human_update_icons.dm @@ -564,6 +564,8 @@ GLOBAL_LIST_EMPTY(damage_icon_parts) update_fire() update_icons() update_emissive_block() + if(player_logged) //make sure the SSD overlay stays + overlays += image('icons/effects/effects.dmi', icon_state = "zzz_glow") /* --------------------------------------- */ //vvvvvv UPDATE_INV PROCS vvvvvv diff --git a/code/modules/mob/living/carbon/human/species/_species.dm b/code/modules/mob/living/carbon/human/species/_species.dm index 0b13b6f7d3a3..28cc9cf6133b 100644 --- a/code/modules/mob/living/carbon/human/species/_species.dm +++ b/code/modules/mob/living/carbon/human/species/_species.dm @@ -1168,3 +1168,7 @@ It'll return null if the organ doesn't correspond, so include null checks when u add_attack_logs(user, target, "vampirebit") return TRUE //end vampire codes + +/// Is this species able to be legion infested? +/datum/species/proc/can_be_legion_infested() + return TRUE diff --git a/code/modules/mob/living/carbon/human/species/golem.dm b/code/modules/mob/living/carbon/human/species/golem.dm index da0b3470b65b..478646c32889 100644 --- a/code/modules/mob/living/carbon/human/species/golem.dm +++ b/code/modules/mob/living/carbon/human/species/golem.dm @@ -707,6 +707,9 @@ new /obj/structure/cloth_pile(get_turf(H), H) ..() +/datum/species/golem/cloth/can_be_legion_infested() + return FALSE // can't infest a pile of cloth, + /obj/structure/cloth_pile name = "pile of bandages" desc = "It emits a strange aura, as if there was still life within it..." diff --git a/code/modules/mob/living/carbon/human/species/monkey.dm b/code/modules/mob/living/carbon/human/species/monkey.dm index e632f68c3f6f..cbb59cf0f040 100644 --- a/code/modules/mob/living/carbon/human/species/monkey.dm +++ b/code/modules/mob/living/carbon/human/species/monkey.dm @@ -64,7 +64,7 @@ ..() H.real_name = get_random_name() H.name = H.real_name - H.butcher_results = list(/obj/item/food/snacks/meat/monkey = 5) + H.butcher_results = list(/obj/item/food/meat/monkey = 5) /datum/species/monkey/handle_dna(mob/living/carbon/human/H, remove) ..() diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index ddd641ccefb6..c9cf61fc8a4a 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -1056,11 +1056,13 @@ amount -= RAD_BACKGROUND_RADIATION // This will always be at least 1 because of how skin protection is calculated var/blocked = getarmor(null, RAD) - + if(blocked == INFINITY) // Full protection, go no further. + return if(amount > RAD_BURN_THRESHOLD) apply_damage(RAD_BURN_CURVE(amount), BURN, null, blocked) - apply_effect((amount * RAD_MOB_COEFFICIENT) / max(1, (radiation ** 2) * RAD_OVERDOSE_REDUCTION), IRRADIATE, blocked) + + apply_effect((amount * RAD_MOB_COEFFICIENT) / max(1, (radiation ** 2) * RAD_OVERDOSE_REDUCTION), IRRADIATE, ARMOUR_VALUE_TO_PERCENTAGE(blocked)) /mob/living/proc/fakefireextinguish() return @@ -1160,3 +1162,7 @@ if(istype(mover, /obj/singularity/energy_ball)) dust() return ..() + +/// Can a mob interact with the apc remotely like a pulse demon, cyborg, or AI? +/mob/living/proc/can_remote_apc_interface(obj/machinery/power/apc/ourapc) + return FALSE diff --git a/code/modules/mob/living/living_defense.dm b/code/modules/mob/living/living_defense.dm index 54b2220f82fb..13b6818105d6 100644 --- a/code/modules/mob/living/living_defense.dm +++ b/code/modules/mob/living/living_defense.dm @@ -299,10 +299,7 @@ for(var/obj/item/grab/G in grabbed_by) if(G.assailant == user) - if(holder_type) // SS220 EDIT START - get_scooped(user) - else - to_chat(user, "Вы уже схватили [src.name].") // SS220 EDIT END + to_chat(user, "You already grabbed [src].") return add_attack_logs(user, src, "Grabbed passively", ATKLOG_ALL) diff --git a/code/modules/mob/living/silicon/ai/ai_mob.dm b/code/modules/mob/living/silicon/ai/ai_mob.dm index 7c2f24e244a5..965062ff0381 100644 --- a/code/modules/mob/living/silicon/ai/ai_mob.dm +++ b/code/modules/mob/living/silicon/ai/ai_mob.dm @@ -960,11 +960,13 @@ GLOBAL_LIST_INIT(ai_verbs_default, list( // I would love to scope this locally to the AI class, however its used by holopads as well // I wish we had nice OOP -aa07 -/proc/getHologramIcon(icon/A, safety = TRUE) // If safety is on, a new icon is not created. +// hi squidward I'm stealing this for a space ruin -qwerty +/proc/getHologramIcon(icon/A, safety = TRUE, colour = rgb(125, 180, 225), opacity = 0.5, colour_blocking = FALSE) // If safety is on, a new icon is not created. var/icon/flat_icon = safety ? A : new(A) // Has to be a new icon to not constantly change the same icon. var/icon/alpha_mask - flat_icon.ColorTone(rgb(125,180,225)) // Let's make it bluish. - flat_icon.ChangeOpacity(0.5) // Make it half transparent. + if(colour && !colour_blocking) + flat_icon.ColorTone(colour) // Let's make it bluish. + flat_icon.ChangeOpacity(opacity) // Make it half transparent. if(A.Height() == 64) alpha_mask = new('icons/mob/ancient_machine.dmi', "scanline2") //Scaline for tall icons. @@ -1519,6 +1521,13 @@ GLOBAL_LIST_INIT(ai_verbs_default, list( return FALSE return TRUE +/mob/living/silicon/ai/can_remote_apc_interface(obj/machinery/power/apc/ourapc) + if(ourapc.hacked_by_ruin_AI || ourapc.aidisabled) + return FALSE + if(ourapc.malfhack && istype(ourapc.malfai) && (ourapc.malfai != src && ourapc.malfai != parent)) + return FALSE + return TRUE + /mob/living/silicon/ai/proc/blurb_it() addtimer(CALLBACK(src, TYPE_PROC_REF(/mob/living/silicon/ai, show_ai_blurb)), 1 SECONDS) diff --git a/code/modules/mob/living/silicon/robot/robot_mob.dm b/code/modules/mob/living/silicon/robot/robot_mob.dm index d0600355387a..ed52c535fed8 100644 --- a/code/modules/mob/living/silicon/robot/robot_mob.dm +++ b/code/modules/mob/living/silicon/robot/robot_mob.dm @@ -63,8 +63,8 @@ GLOBAL_LIST_INIT(robot_verbs_default, list( var/emagged = FALSE /// Can the robot be emagged? var/is_emaggable = TRUE - /// Is the robot protected from the visual portion of flashbangs and flashes(1)? Are they protected from laser pointer (2)? - var/eye_protection = 0 + /// Is the robot protected from the visual portion of flashbangs and flashes? + var/eye_protection = FALSE /// Is the robot protected from the audio component of flashbangs? Prevents inflicting confusion. var/ear_protection = FALSE /// All incoming damage has this number subtracted from it. @@ -1500,7 +1500,7 @@ GLOBAL_LIST_INIT(robot_verbs_default, list( req_one_access = list(ACCESS_CENT_SPECOPS) ionpulse = TRUE pdahide = TRUE - eye_protection = 2 // Immunity to flashes and the visual part of flashbangs + eye_protection = TRUE // Immunity to flashes and the visual part of flashbangs ear_protection = TRUE // Immunity to the audio part of flashbangs damage_protection = 10 // Reduce all incoming damage by this number allow_rename = FALSE @@ -1592,7 +1592,7 @@ GLOBAL_LIST_INIT(robot_verbs_default, list( req_one_access = list(ACCESS_CENT_SPECOPS) ionpulse = TRUE pdahide = TRUE - eye_protection = 2 // Immunity to flashes and the visual part of flashbangs + eye_protection = TRUE // Immunity to flashes and the visual part of flashbangs ear_protection = TRUE // Immunity to the audio part of flashbangs emp_protection = TRUE // Immunity to EMP, due to heavy shielding damage_protection = 20 // Reduce all incoming damage by this number. Very high in the case of /destroyer borgs, since it is an admin-only borg. @@ -1763,3 +1763,13 @@ GLOBAL_LIST_INIT(robot_verbs_default, list( if(!cell) return externally_powered return cell.is_powered() || externally_powered + +/mob/living/silicon/robot/can_be_flashed(intensity, override_blindness_check) + return eye_protection + +/mob/living/silicon/robot/can_remote_apc_interface(obj/machinery/power/apc/ourapc) + if(ourapc.hacked_by_ruin_AI || ourapc.aidisabled) + return FALSE + if(ourapc.malfai && !(src in ourapc.malfai.connected_robots)) + return FALSE + return TRUE diff --git a/code/modules/mob/living/simple_animal/bot/mulebot.dm b/code/modules/mob/living/simple_animal/bot/mulebot.dm index 1216277afe60..368f9914c4b7 100644 --- a/code/modules/mob/living/simple_animal/bot/mulebot.dm +++ b/code/modules/mob/living/simple_animal/bot/mulebot.dm @@ -27,6 +27,10 @@ bot_purpose = "deliver crates and other packages between departments, as requested" req_access = list(ACCESS_CARGO) + /// The maximum amount of tiles the MULE can search via SSpathfinder before giving up. + /// Stored as a variable to allow VVing if there's any weirdness. + var/maximum_pathfind_range = 350 + suffix = "" @@ -606,7 +610,7 @@ // given an optional turf to avoid /mob/living/simple_animal/bot/mulebot/calc_path(turf/avoid = null) check_bot_access() - set_path(get_path_to(src, target, 250, access = access_card.access, exclude = avoid)) + set_path(get_path_to(src, target, max_distance = maximum_pathfind_range, access = access_card.access, exclude = avoid)) // sets the current destination // signals all beacons matching the delivery code diff --git a/code/modules/mob/living/simple_animal/constructs.dm b/code/modules/mob/living/simple_animal/constructs.dm index e972445cda12..cdb8d9cb0003 100644 --- a/code/modules/mob/living/simple_animal/constructs.dm +++ b/code/modules/mob/living/simple_animal/constructs.dm @@ -22,7 +22,7 @@ pressure_resistance = 100 universal_speak = TRUE AIStatus = AI_OFF //normal constructs don't have AI - loot = list(/obj/item/food/snacks/ectoplasm) + loot = list(/obj/item/food/ectoplasm) del_on_death = TRUE deathmessage = "collapses in a shattered heap." var/construct_type = "shade" diff --git a/code/modules/mob/living/simple_animal/friendly/bunny.dm b/code/modules/mob/living/simple_animal/friendly/bunny.dm index 09d55362d9fb..38a58be7f5f4 100644 --- a/code/modules/mob/living/simple_animal/friendly/bunny.dm +++ b/code/modules/mob/living/simple_animal/friendly/bunny.dm @@ -12,7 +12,7 @@ see_in_dark = 6 maxHealth = 10 health = 10 - butcher_results = list(/obj/item/food/snacks/meat = 1) + butcher_results = list(/obj/item/food/meat = 1) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" diff --git a/code/modules/mob/living/simple_animal/friendly/butterfly.dm b/code/modules/mob/living/simple_animal/friendly/butterfly.dm index 4489fc9be898..ba878cd423e3 100644 --- a/code/modules/mob/living/simple_animal/friendly/butterfly.dm +++ b/code/modules/mob/living/simple_animal/friendly/butterfly.dm @@ -21,7 +21,7 @@ ventcrawler = VENTCRAWLER_ALWAYS mob_size = MOB_SIZE_TINY mob_biotypes = MOB_ORGANIC | MOB_BUG - butcher_results = list(/obj/item/food/snacks/meat = 0) + butcher_results = list(/obj/item/food/meat = 0) gold_core_spawnable = FRIENDLY_SPAWN /mob/living/simple_animal/butterfly/Initialize(mapload) //Not the poor butterfly! diff --git a/code/modules/mob/living/simple_animal/friendly/cat.dm b/code/modules/mob/living/simple_animal/friendly/cat.dm index 36e23eeb11c5..5e8d62ee95d7 100644 --- a/code/modules/mob/living/simple_animal/friendly/cat.dm +++ b/code/modules/mob/living/simple_animal/friendly/cat.dm @@ -17,7 +17,7 @@ mob_size = MOB_SIZE_SMALL animal_species = /mob/living/simple_animal/pet/cat childtype = list(/mob/living/simple_animal/pet/cat/kitten) - butcher_results = list(/obj/item/food/snacks/meat = 3) + butcher_results = list(/obj/item/food/meat = 3) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" @@ -233,8 +233,8 @@ butcher_results = list( /obj/item/organ/internal/brain = 1, /obj/item/organ/internal/heart = 1, - /obj/item/food/snacks/birthdaycakeslice = 3, - /obj/item/food/snacks/meat/slab = 2 + /obj/item/food/birthdaycakeslice = 3, + /obj/item/food/meat/slab = 2 ) response_harm = "takes a bite out of" attacked_sound = "sound/items/eatfood.ogg" @@ -254,7 +254,7 @@ final_bites = 0 if(health < maxHealth) adjustBruteLoss(-4) - for(var/obj/item/food/snacks/donut/D in range(1, src)) + for(var/obj/item/food/donut/D in range(1, src)) if(D.icon_state != "donut2") D.name = "frosted donut" D.icon_state = "donut2" diff --git a/code/modules/mob/living/simple_animal/friendly/crab.dm b/code/modules/mob/living/simple_animal/friendly/crab.dm index 1e3b6089f8ac..97fc1d35055f 100644 --- a/code/modules/mob/living/simple_animal/friendly/crab.dm +++ b/code/modules/mob/living/simple_animal/friendly/crab.dm @@ -10,7 +10,7 @@ emote_see = list("clacks") speak_chance = 1 turns_per_move = 5 - butcher_results = list(/obj/item/food/snacks/meat = 1) + butcher_results = list(/obj/item/food/meat = 1) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "stomps" diff --git a/code/modules/mob/living/simple_animal/friendly/deer.dm b/code/modules/mob/living/simple_animal/friendly/deer.dm index 745bede98981..3bba3bfeeba9 100644 --- a/code/modules/mob/living/simple_animal/friendly/deer.dm +++ b/code/modules/mob/living/simple_animal/friendly/deer.dm @@ -11,7 +11,7 @@ speak_chance = 1 turns_per_move = 5 see_in_dark = 0 //I'm so funny - butcher_results = list(/obj/item/food/snacks/meat = 4) + butcher_results = list(/obj/item/food/meat = 4) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" diff --git a/code/modules/mob/living/simple_animal/friendly/diona_nymph.dm b/code/modules/mob/living/simple_animal/friendly/diona_nymph.dm index ec8c532b4510..1637a02c8ce3 100644 --- a/code/modules/mob/living/simple_animal/friendly/diona_nymph.dm +++ b/code/modules/mob/living/simple_animal/friendly/diona_nymph.dm @@ -213,7 +213,7 @@ return TRUE // Consumes plant matter other than weeds to evolve -/mob/living/simple_animal/diona/proc/consume(obj/item/food/snacks/grown/G) +/mob/living/simple_animal/diona/proc/consume(obj/item/food/grown/G) if(nutrition >= nutrition_need) // Prevents griefing by overeating plant items without evolving. to_chat(src, "You're too full to consume this! Perhaps it's time to grow bigger...") else diff --git a/code/modules/mob/living/simple_animal/friendly/dog.dm b/code/modules/mob/living/simple_animal/friendly/dog.dm index 6c18de8aafa2..bb4635466d1a 100644 --- a/code/modules/mob/living/simple_animal/friendly/dog.dm +++ b/code/modules/mob/living/simple_animal/friendly/dog.dm @@ -70,7 +70,7 @@ icon_state = "corgi" icon_living = "corgi" icon_dead = "corgi_dead" - butcher_results = list(/obj/item/food/snacks/meat/corgi = 3, /obj/item/stack/sheet/animalhide/corgi = 1) + butcher_results = list(/obj/item/food/meat/corgi = 3, /obj/item/stack/sheet/animalhide/corgi = 1) childtype = list(/mob/living/simple_animal/pet/dog/corgi/puppy = 95, /mob/living/simple_animal/pet/dog/corgi/puppy/void = 5) animal_species = /mob/living/simple_animal/pet/dog collar_type = "corgi" @@ -435,7 +435,7 @@ stop_automated_movement = FALSE var/obj/item/possible_target = null for(var/I in snack_range) - if(istype(I, /obj/item/food/snacks)) // Noms + if(istype(I, /obj/item/food)) // Noms possible_target = I break else if(istype(I, /obj/item/paper)) // Important noms @@ -652,7 +652,7 @@ icon_state = "pug" icon_living = "pug" icon_dead = "pug_dead" - butcher_results = list(/obj/item/food/snacks/meat/pug = 3) + butcher_results = list(/obj/item/food/meat/pug = 3) collar_type = "pug" /mob/living/simple_animal/pet/dog/pug/handle_automated_movement() diff --git a/code/modules/mob/living/simple_animal/friendly/farm_animals.dm b/code/modules/mob/living/simple_animal/friendly/farm_animals.dm index 451bf2ee0f75..e8064e07b772 100644 --- a/code/modules/mob/living/simple_animal/friendly/farm_animals.dm +++ b/code/modules/mob/living/simple_animal/friendly/farm_animals.dm @@ -12,7 +12,7 @@ speak_chance = 1 turns_per_move = 5 see_in_dark = 6 - butcher_results = list(/obj/item/food/snacks/meat = 4) + butcher_results = list(/obj/item/food/meat = 4) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" @@ -122,7 +122,7 @@ speak_chance = 1 turns_per_move = 5 see_in_dark = 6 - butcher_results = list(/obj/item/food/snacks/meat/slab = 6) + butcher_results = list(/obj/item/food/meat/slab = 6) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" @@ -202,7 +202,7 @@ density = FALSE speak_chance = 2 turns_per_move = 2 - butcher_results = list(/obj/item/food/snacks/meat/chicken = 1) + butcher_results = list(/obj/item/food/meat/chicken = 1) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" @@ -267,9 +267,9 @@ GLOBAL_VAR_INIT(chicken_count, 0) density = FALSE speak_chance = 2 turns_per_move = 3 - butcher_results = list(/obj/item/food/snacks/meat/chicken = 2) - var/egg_type = /obj/item/food/snacks/egg - var/food_type = /obj/item/food/snacks/grown/wheat + butcher_results = list(/obj/item/food/meat/chicken = 2) + var/egg_type = /obj/item/food/egg + var/food_type = /obj/item/food/grown/wheat response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" @@ -341,7 +341,7 @@ GLOBAL_VAR_INIT(chicken_count, 0) if(GLOB.chicken_count < MAX_CHICKENS && prob(25)) START_PROCESSING(SSobj, E) -/obj/item/food/snacks/egg/process() +/obj/item/food/egg/process() if(isturf(loc)) amount_grown += rand(1,2) if(amount_grown >= 100) @@ -392,7 +392,7 @@ GLOBAL_VAR_INIT(chicken_count, 0) speak_chance = 1 turns_per_move = 5 see_in_dark = 6 - butcher_results = list(/obj/item/food/snacks/meat/ham = 6) + butcher_results = list(/obj/item/food/meat/ham = 6) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" @@ -418,7 +418,7 @@ GLOBAL_VAR_INIT(chicken_count, 0) speak_chance = 1 turns_per_move = 5 see_in_dark = 6 - butcher_results = list(/obj/item/food/snacks/meat = 4) + butcher_results = list(/obj/item/food/meat = 4) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" @@ -443,7 +443,7 @@ GLOBAL_VAR_INIT(chicken_count, 0) speak_chance = 1 turns_per_move = 5 see_in_dark = 6 - butcher_results = list(/obj/item/food/snacks/meat = 6) + butcher_results = list(/obj/item/food/meat = 6) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" @@ -468,7 +468,7 @@ GLOBAL_VAR_INIT(chicken_count, 0) speak_chance = 1 turns_per_move = 5 see_in_dark = 6 - butcher_results = list(/obj/item/food/snacks/meat = 6) + butcher_results = list(/obj/item/food/meat = 6) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" @@ -493,7 +493,7 @@ GLOBAL_VAR_INIT(chicken_count, 0) speak_chance = 1 turns_per_move = 5 see_in_dark = 6 - butcher_results = list(/obj/item/food/snacks/meat = 6) + butcher_results = list(/obj/item/food/meat = 6) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" diff --git a/code/modules/mob/living/simple_animal/friendly/fox.dm b/code/modules/mob/living/simple_animal/friendly/fox.dm index 329d43fb7d06..a0ce051ac0fc 100644 --- a/code/modules/mob/living/simple_animal/friendly/fox.dm +++ b/code/modules/mob/living/simple_animal/friendly/fox.dm @@ -13,7 +13,7 @@ speak_chance = 1 turns_per_move = 5 see_in_dark = 6 - butcher_results = list(/obj/item/food/snacks/meat = 3) + butcher_results = list(/obj/item/food/meat = 3) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" diff --git a/code/modules/mob/living/simple_animal/friendly/lizard.dm b/code/modules/mob/living/simple_animal/friendly/lizard.dm index 1203cc7a72f9..dca520184177 100644 --- a/code/modules/mob/living/simple_animal/friendly/lizard.dm +++ b/code/modules/mob/living/simple_animal/friendly/lizard.dm @@ -22,7 +22,7 @@ mob_size = MOB_SIZE_SMALL can_hide = TRUE pass_door_while_hidden = TRUE - butcher_results = list(/obj/item/food/snacks/meat = 1) + butcher_results = list(/obj/item/food/meat = 1) can_collar = TRUE mob_biotypes = MOB_ORGANIC | MOB_BEAST | MOB_REPTILE gold_core_spawnable = FRIENDLY_SPAWN diff --git a/code/modules/mob/living/simple_animal/friendly/mouse.dm b/code/modules/mob/living/simple_animal/friendly/mouse.dm index f6e67037be3f..04ba1742b51b 100644 --- a/code/modules/mob/living/simple_animal/friendly/mouse.dm +++ b/code/modules/mob/living/simple_animal/friendly/mouse.dm @@ -16,7 +16,7 @@ see_in_dark = 6 maxHealth = 5 health = 5 - butcher_results = list(/obj/item/food/snacks/meat = 1) + butcher_results = list(/obj/item/food/meat = 1) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "stamps on" @@ -92,7 +92,7 @@ ..() /mob/living/simple_animal/mouse/start_pulling(atom/movable/AM, state, force = pull_force, show_message = FALSE)//Prevents mouse from pulling things - if(istype(AM, /obj/item/food/snacks/cheesewedge)) + if(istype(AM, /obj/item/food/cheesewedge)) return ..() // Get dem if(show_message) to_chat(src, "You are too small to pull anything except cheese.") diff --git a/code/modules/mob/living/simple_animal/friendly/nian_caterpillar.dm b/code/modules/mob/living/simple_animal/friendly/nian_caterpillar.dm index 40dcd027033b..166b06f23e36 100644 --- a/code/modules/mob/living/simple_animal/friendly/nian_caterpillar.dm +++ b/code/modules/mob/living/simple_animal/friendly/nian_caterpillar.dm @@ -10,7 +10,7 @@ mob_size = MOB_SIZE_SMALL ventcrawler = VENTCRAWLER_ALWAYS atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) - butcher_results = list(/obj/item/food/snacks/meat = 1) + butcher_results = list(/obj/item/food/meat = 1) minbodytemp = 0 blood_color = "#b9ae9c" @@ -102,7 +102,7 @@ qdel(src) return TRUE -/mob/living/simple_animal/nian_caterpillar/proc/consume(obj/item/food/snacks/G) +/mob/living/simple_animal/nian_caterpillar/proc/consume(obj/item/food/G) if(nutrition >= nutrition_need) // Prevents griefing by overeating food items without evolving. return to_chat(src, "You're too full to consume this! Perhaps it's time to grow bigger...") visible_message("[src] ravenously consumes [G].", "You ravenously devour [G].") diff --git a/code/modules/mob/living/simple_animal/friendly/sloth.dm b/code/modules/mob/living/simple_animal/friendly/sloth.dm index 0f094e9d81a8..1f911f1a10db 100644 --- a/code/modules/mob/living/simple_animal/friendly/sloth.dm +++ b/code/modules/mob/living/simple_animal/friendly/sloth.dm @@ -13,7 +13,7 @@ faction = list("neutral", "jungle") speak_chance = 1 turns_per_move = 5 - butcher_results = list(/obj/item/food/snacks/meat = 3) + butcher_results = list(/obj/item/food/meat = 3) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" diff --git a/code/modules/mob/living/simple_animal/hostile/alien_types.dm b/code/modules/mob/living/simple_animal/hostile/alien_types.dm index aacb7a71810c..b08d371a9342 100644 --- a/code/modules/mob/living/simple_animal/hostile/alien_types.dm +++ b/code/modules/mob/living/simple_animal/hostile/alien_types.dm @@ -11,7 +11,7 @@ response_disarm = "shoves" response_harm = "hits" speed = 0 - butcher_results = list(/obj/item/food/snacks/monstermeat/xenomeat= 3, /obj/item/stack/sheet/animalhide/xeno = 1) + butcher_results = list(/obj/item/food/monstermeat/xenomeat= 3, /obj/item/stack/sheet/animalhide/xeno = 1) maxHealth = 125 health = 125 harm_intent_damage = 5 @@ -92,7 +92,7 @@ retreat_distance = 5 minimum_distance = 5 move_to_delay = 4 - butcher_results = list(/obj/item/food/snacks/monstermeat/xenomeat= 4, /obj/item/stack/sheet/animalhide/xeno = 1) + butcher_results = list(/obj/item/food/monstermeat/xenomeat= 4, /obj/item/stack/sheet/animalhide/xeno = 1) projectiletype = /obj/item/projectile/neurotox projectilesound = 'sound/weapons/pierce.ogg' status_flags = 0 @@ -140,7 +140,7 @@ move_to_delay = 4 maxHealth = 400 health = 400 - butcher_results = list(/obj/item/food/snacks/monstermeat/xenomeat= 10, /obj/item/stack/sheet/animalhide/xeno = 2) + butcher_results = list(/obj/item/food/monstermeat/xenomeat= 10, /obj/item/stack/sheet/animalhide/xeno = 2) mob_size = MOB_SIZE_LARGE /obj/item/projectile/neurotox diff --git a/code/modules/mob/living/simple_animal/hostile/bat.dm b/code/modules/mob/living/simple_animal/hostile/bat.dm index c0d064319dd4..1604aab392e1 100644 --- a/code/modules/mob/living/simple_animal/hostile/bat.dm +++ b/code/modules/mob/living/simple_animal/hostile/bat.dm @@ -9,7 +9,7 @@ mob_biotypes = MOB_ORGANIC | MOB_BEAST speak_chance = 0 turns_per_move = 3 - butcher_results = list(/obj/item/food/snacks/meat = 1) + butcher_results = list(/obj/item/food/meat = 1) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "hits" diff --git a/code/modules/mob/living/simple_animal/hostile/bear.dm b/code/modules/mob/living/simple_animal/hostile/bear.dm index 6ed8a93ac389..2172fa667ead 100644 --- a/code/modules/mob/living/simple_animal/hostile/bear.dm +++ b/code/modules/mob/living/simple_animal/hostile/bear.dm @@ -14,7 +14,7 @@ speak_chance = 1 turns_per_move = 5 see_in_dark = 6 - butcher_results = list(/obj/item/food/snacks/monstermeat/bearmeat = 5, /obj/item/clothing/head/bearpelt = 1) + butcher_results = list(/obj/item/food/monstermeat/bearmeat = 5, /obj/item/clothing/head/bearpelt = 1) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "hits" @@ -44,14 +44,14 @@ icon_state = "black_bear" icon_living = "black_bear" icon_dead = "black_bear_dead" - butcher_results = list(/obj/item/food/snacks/monstermeat/bearmeat = 5, /obj/item/clothing/head/bearpelt/black = 1) + butcher_results = list(/obj/item/food/monstermeat/bearmeat = 5, /obj/item/clothing/head/bearpelt/black = 1) /mob/living/simple_animal/hostile/bear/brown name = "brown bear" icon_state = "brown_bear" icon_living = "brown_bear" icon_dead = "brown_bear_dead" - butcher_results = list(/obj/item/food/snacks/monstermeat/bearmeat = 5, /obj/item/clothing/head/bearpelt/brown = 1) + butcher_results = list(/obj/item/food/monstermeat/bearmeat = 5, /obj/item/clothing/head/bearpelt/brown = 1) /mob/living/simple_animal/hostile/bear/polar name = "polar bear" @@ -59,7 +59,7 @@ icon_state = "polar_bear" icon_living = "polar_bear" icon_dead = "polar_bear_dead" - butcher_results = list(/obj/item/food/snacks/monstermeat/bearmeat = 5, /obj/item/clothing/head/bearpelt/polar = 1) + butcher_results = list(/obj/item/food/monstermeat/bearmeat = 5, /obj/item/clothing/head/bearpelt/polar = 1) //SPACE BEARS! SQUEEEEEEEE~ OW! FUCK! IT BIT MY HAND OFF!! /mob/living/simple_animal/hostile/bear/Hudson @@ -68,7 +68,7 @@ icon_state = "combat_bear" icon_living = "combat_bear" icon_dead = "combat_bear_dead" - butcher_results = list(/obj/item/food/snacks/monstermeat/bearmeat = 5, /obj/item/clothing/head/bearpelt/brown = 1) + butcher_results = list(/obj/item/food/monstermeat/bearmeat = 5, /obj/item/clothing/head/bearpelt/brown = 1) /mob/living/simple_animal/hostile/bear/Hudson/Initialize(mapload) . = ..() diff --git a/code/modules/mob/living/simple_animal/hostile/carp.dm b/code/modules/mob/living/simple_animal/hostile/carp.dm index 5b6eb1a47025..2f402fbe4446 100644 --- a/code/modules/mob/living/simple_animal/hostile/carp.dm +++ b/code/modules/mob/living/simple_animal/hostile/carp.dm @@ -11,7 +11,7 @@ mob_biotypes = MOB_ORGANIC | MOB_BEAST speak_chance = 0 turns_per_move = 5 - butcher_results = list(/obj/item/food/snacks/carpmeat = 2) + butcher_results = list(/obj/item/food/carpmeat = 2) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "hits" diff --git a/code/modules/mob/living/simple_animal/hostile/feral_cat.dm b/code/modules/mob/living/simple_animal/hostile/feral_cat.dm index 3f8204a152e3..4fe530dd62ea 100644 --- a/code/modules/mob/living/simple_animal/hostile/feral_cat.dm +++ b/code/modules/mob/living/simple_animal/hostile/feral_cat.dm @@ -18,7 +18,7 @@ speak_chance = 1 turns_per_move = 5 see_in_dark = 6 - butcher_results = list(/obj/item/food/snacks/meat/slab = 2) + butcher_results = list(/obj/item/food/meat/slab = 2) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" diff --git a/code/modules/mob/living/simple_animal/hostile/giant_spider.dm b/code/modules/mob/living/simple_animal/hostile/giant_spider.dm index 5bf5fd48a314..e492428dacc9 100644 --- a/code/modules/mob/living/simple_animal/hostile/giant_spider.dm +++ b/code/modules/mob/living/simple_animal/hostile/giant_spider.dm @@ -14,7 +14,7 @@ see_in_dark = 8 lighting_alpha = LIGHTING_PLANE_ALPHA_MOSTLY_VISIBLE footstep_type = FOOTSTEP_MOB_CLAW - butcher_results = list(/obj/item/food/snacks/monstermeat/spidermeat = 2, /obj/item/food/snacks/monstermeat/spiderleg = 8) + butcher_results = list(/obj/item/food/monstermeat/spidermeat = 2, /obj/item/food/monstermeat/spiderleg = 8) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "hits" @@ -65,7 +65,7 @@ icon_state = "nurse" icon_living = "nurse" icon_dead = "nurse_dead" - butcher_results = list(/obj/item/food/snacks/monstermeat/spidermeat = 2, /obj/item/food/snacks/monstermeat/spiderleg = 8, /obj/item/food/snacks/monstermeat/spidereggs = 4) + butcher_results = list(/obj/item/food/monstermeat/spidermeat = 2, /obj/item/food/monstermeat/spiderleg = 8, /obj/item/food/monstermeat/spidereggs = 4) maxHealth = 40 health = 40 diff --git a/code/modules/mob/living/simple_animal/hostile/gorilla/gorilla.dm b/code/modules/mob/living/simple_animal/hostile/gorilla/gorilla.dm index 9f8acaacb5c6..351365207bbf 100644 --- a/code/modules/mob/living/simple_animal/hostile/gorilla/gorilla.dm +++ b/code/modules/mob/living/simple_animal/hostile/gorilla/gorilla.dm @@ -9,7 +9,7 @@ speak_chance = 80 maxHealth = 220 health = 220 - butcher_results = list(/obj/item/food/snacks/meat/slab/gorilla = 4) + butcher_results = list(/obj/item/food/meat/slab/gorilla = 4) response_help = "prods" response_disarm = "challenges" response_harm = "thumps" diff --git a/code/modules/mob/living/simple_animal/hostile/hostile.dm b/code/modules/mob/living/simple_animal/hostile/hostile.dm index 4c3cf14fd3fe..b94de5402a04 100644 --- a/code/modules/mob/living/simple_animal/hostile/hostile.dm +++ b/code/modules/mob/living/simple_animal/hostile/hostile.dm @@ -334,7 +334,7 @@ /mob/living/simple_animal/hostile/proc/Aggro() vision_range = aggro_vision_range if(target && length(emote_taunt) && prob(taunt_chance)) - custom_emote(EMOTE_VISIBLE, "[pick(emote_taunt)] at [target].") + emote("me", EMOTE_VISIBLE, "[pick(emote_taunt)] at [target].") taunt_chance = max(taunt_chance-7,2) /mob/living/simple_animal/hostile/proc/LoseAggro() diff --git a/code/modules/mob/living/simple_animal/hostile/jungle_animals.dm b/code/modules/mob/living/simple_animal/hostile/jungle_animals.dm index b81f9c2dff4a..16220e1d5609 100644 --- a/code/modules/mob/living/simple_animal/hostile/jungle_animals.dm +++ b/code/modules/mob/living/simple_animal/hostile/jungle_animals.dm @@ -14,7 +14,7 @@ mob_biotypes = MOB_ORGANIC | MOB_BEAST speak_chance = 0 turns_per_move = 3 - butcher_results = list(/obj/item/food/snacks/meat = 3) + butcher_results = list(/obj/item/food/meat = 3) faction = list("hostile", "jungle") response_help = "pets the" response_disarm = "gently pushes aside the" diff --git a/code/modules/mob/living/simple_animal/hostile/killertomato.dm b/code/modules/mob/living/simple_animal/hostile/killertomato.dm index b8c1b2b3097c..46d359a6a1fc 100644 --- a/code/modules/mob/living/simple_animal/hostile/killertomato.dm +++ b/code/modules/mob/living/simple_animal/hostile/killertomato.dm @@ -10,7 +10,7 @@ maxHealth = 30 health = 30 see_in_dark = 3 - butcher_results = list(/obj/item/food/snacks/meat/tomatomeat = 2) + butcher_results = list(/obj/item/food/meat/tomatomeat = 2) response_help = "prods" response_disarm = "pushes aside" response_harm = "smacks" diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/ancient_robot.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/ancient_robot.dm index 6452c4408234..6e33ab51bc9c 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/ancient_robot.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/ancient_robot.dm @@ -240,7 +240,7 @@ Difficulty: Hard . = ..() var/newcolor = rgb(241, 137, 172) add_atom_colour(newcolor, TEMPORARY_COLOUR_PRIORITY) - beam_it_up() + addtimer(CALLBACK(src, PROC_REF(beam_it_up)), 0) /obj/effect/vetus_laser/ex_act(severity) return diff --git a/code/modules/mob/living/simple_animal/hostile/mining/goliath.dm b/code/modules/mob/living/simple_animal/hostile/mining/goliath.dm index 2134fcff55bf..53b469dd4b32 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining/goliath.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining/goliath.dm @@ -90,7 +90,7 @@ throw_message = "does nothing to the tough hide of the" pre_attack_icon = "goliath2" crusher_loot = /obj/item/crusher_trophy/goliath_tentacle - butcher_results = list(/obj/item/food/snacks/monstermeat/goliath = 2, /obj/item/stack/sheet/animalhide/goliath_hide = 1, /obj/item/stack/sheet/bone = 2) + butcher_results = list(/obj/item/food/monstermeat/goliath = 2, /obj/item/stack/sheet/animalhide/goliath_hide = 1, /obj/item/stack/sheet/bone = 2) loot = list() stat_attack = UNCONSCIOUS robust_searching = TRUE @@ -109,7 +109,7 @@ pre_attack_icon = "Goliath_preattack" throw_message = "does nothing to the rocky hide of the" loot = list(/obj/item/stack/sheet/animalhide/goliath_hide) //A throwback to the asteroid days - butcher_results = list(/obj/item/food/snacks/monstermeat/goliath= 2, /obj/item/stack/sheet/bone = 2) + butcher_results = list(/obj/item/food/monstermeat/goliath= 2, /obj/item/stack/sheet/bone = 2) crusher_loot = /obj/item/crusher_trophy/goliath_tentacle/ancient crusher_drop_mod = 100 //These things are rare (1/100 per spawner). You shouldn't have to hope for another stroke of luck to get it's trophy after finding it wander = FALSE diff --git a/code/modules/mob/living/simple_animal/hostile/mining/hivelord.dm b/code/modules/mob/living/simple_animal/hostile/mining/hivelord.dm index 932d718e908c..02f2d897d5ed 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining/hivelord.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining/hivelord.dm @@ -246,6 +246,8 @@ ..() /mob/living/simple_animal/hostile/asteroid/hivelordbrood/legion/proc/infest(mob/living/carbon/human/H) + if(H?.dna?.species && !H.dna.species.can_be_legion_infested()) + return visible_message("[name] burrows into the flesh of [H]!") var/mob/living/simple_animal/hostile/asteroid/hivelord/legion/L if(HAS_TRAIT(H, TRAIT_DWARF)) //dwarf legions aren't just fluff! @@ -387,7 +389,7 @@ belt = null backpack_contents = list() if(prob(70)) - backpack_contents += pick(/obj/item/stamp/clown, /obj/item/reagent_containers/spray/waterflower, /obj/item/food/snacks/grown/banana, /obj/item/megaphone) + backpack_contents += pick(/obj/item/stamp/clown, /obj/item/reagent_containers/spray/waterflower, /obj/item/food/grown/banana, /obj/item/megaphone) if(prob(30)) backpack_contents += list(/obj/item/stack/sheet/mineral/bananium = pickweight(list(1 = 3, 2 = 2, 3 = 1))) if(prob(10)) diff --git a/code/modules/mob/living/simple_animal/hostile/mushroom.dm b/code/modules/mob/living/simple_animal/hostile/mushroom.dm index 0dcd454410e6..09672c296391 100644 --- a/code/modules/mob/living/simple_animal/hostile/mushroom.dm +++ b/code/modules/mob/living/simple_animal/hostile/mushroom.dm @@ -9,7 +9,7 @@ turns_per_move = 1 maxHealth = 10 health = 10 - butcher_results = list(/obj/item/food/snacks/hugemushroomslice = 1) + butcher_results = list(/obj/item/food/hugemushroomslice = 1) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "whacks" @@ -152,7 +152,7 @@ bruised = 1 /mob/living/simple_animal/hostile/mushroom/attackby(obj/item/I as obj, mob/user as mob, params) - if(istype(I, /obj/item/food/snacks/grown/mushroom)) + if(istype(I, /obj/item/food/grown/mushroom)) if(stat == DEAD && !recovery_cooldown) Recover() qdel(I) @@ -182,7 +182,7 @@ /mob/living/simple_animal/hostile/mushroom/harvest() var/counter for(counter=0, counter<=powerlevel, counter++) - var/obj/item/food/snacks/hugemushroomslice/S = new (src.loc) + var/obj/item/food/hugemushroomslice/S = new (src.loc) S.reagents.add_reagent("psilocybin", powerlevel) S.reagents.add_reagent("omnizine", powerlevel) S.reagents.add_reagent("synaptizine", powerlevel) diff --git a/code/modules/mob/living/simple_animal/hostile/retaliate/fish.dm b/code/modules/mob/living/simple_animal/hostile/retaliate/fish.dm index 53e5e125a1a0..eafb92e7dab0 100644 --- a/code/modules/mob/living/simple_animal/hostile/retaliate/fish.dm +++ b/code/modules/mob/living/simple_animal/hostile/retaliate/fish.dm @@ -8,7 +8,7 @@ mob_biotypes = MOB_ORGANIC | MOB_BEAST speak_chance = 0 turns_per_move = 5 - butcher_results = list(/obj/item/food/snacks/carpmeat = 1) + butcher_results = list(/obj/item/food/carpmeat = 1) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "hits" @@ -68,7 +68,7 @@ melee_damage_lower = 2 melee_damage_upper = 2 speak_emote = list("blurps") - butcher_results = list(/obj/item/food/snacks/salmonmeat = 1) + butcher_results = list(/obj/item/food/salmonmeat = 1) atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) minbodytemp = 0 diff --git a/code/modules/mob/living/simple_animal/hostile/retaliate/kangaroo.dm b/code/modules/mob/living/simple_animal/hostile/retaliate/kangaroo.dm index eafab4122475..faed781ee1cc 100644 --- a/code/modules/mob/living/simple_animal/hostile/retaliate/kangaroo.dm +++ b/code/modules/mob/living/simple_animal/hostile/retaliate/kangaroo.dm @@ -13,7 +13,7 @@ emote_hear = list("bark") maxHealth = 150 health = 150 - butcher_results = list(/obj/item/food/snacks/meat/kangaroo = 6) + butcher_results = list(/obj/item/food/meat/kangaroo = 6) harm_intent_damage = 3 melee_damage_lower = 5 // avg damage 12.5 without kick, (12.5+12.5+60)/3=25 with kick melee_damage_upper = 20 diff --git a/code/modules/mob/living/simple_animal/hostile/retaliate/undead.dm b/code/modules/mob/living/simple_animal/hostile/retaliate/undead.dm index 91ffa0591cc8..04670f69d5ab 100644 --- a/code/modules/mob/living/simple_animal/hostile/retaliate/undead.dm +++ b/code/modules/mob/living/simple_animal/hostile/retaliate/undead.dm @@ -51,7 +51,7 @@ pressure_resistance = 300 gold_core_spawnable = NO_SPAWN //too spooky for science faction = list("undead") // did I mention ghost - loot = list(/obj/item/food/snacks/ectoplasm) + loot = list(/obj/item/food/ectoplasm) del_on_death = TRUE /mob/living/simple_animal/hostile/retaliate/ghost/Process_Spacemove(check_drift = 0) diff --git a/code/modules/mob/living/simple_animal/hostile/syndicate_mobs.dm b/code/modules/mob/living/simple_animal/hostile/syndicate_mobs.dm index b62b112d8bdd..ec58ef89db05 100644 --- a/code/modules/mob/living/simple_animal/hostile/syndicate_mobs.dm +++ b/code/modules/mob/living/simple_animal/hostile/syndicate_mobs.dm @@ -38,12 +38,7 @@ /mob/living/simple_animal/hostile/syndicate/Initialize(mapload) . = ..() if(prob(50)) - loot = list(/obj/effect/mob_spawn/human/corpse/syndicatesoldier, - /obj/item/salvage/loot/syndicate, - /obj/effect/decal/cleanable/blood/innards, - /obj/effect/decal/cleanable/blood, - /obj/effect/gibspawner/generic, - /obj/effect/gibspawner/generic) + loot += /obj/item/salvage/loot/syndicate /mob/living/simple_animal/hostile/syndicate/Aggro() . = ..() @@ -308,12 +303,7 @@ speed = 2 projectiletype = /obj/item/projectile/bullet/sniper/penetrator // Ignores cover. projectilesound = 'sound/weapons/gunshots/gunshot_sniper.ogg' - loot = list(/obj/effect/mob_spawn/human/corpse/syndicatequartermaster, - /obj/item/salvage/loot/syndicate, - /obj/effect/decal/cleanable/blood/innards, - /obj/effect/decal/cleanable/blood, - /obj/effect/gibspawner/generic, - /obj/effect/gibspawner/generic) + loot |= /obj/item/salvage/loot/syndicate return INITIALIZE_HINT_LATELOAD /mob/living/simple_animal/hostile/syndicate/melee/autogib/depot/armory/LateInitialize() @@ -358,7 +348,6 @@ speed = 1.5 death_sound = 'sound/mecha/mechmove03.ogg' loot = list(/obj/effect/mob_spawn/human/corpse/syndicatecommando, - /obj/item/salvage/loot/syndicate, /obj/effect/decal/cleanable/blood/innards, /obj/effect/decal/cleanable/blood, /obj/effect/gibspawner/generic, @@ -367,15 +356,6 @@ /mob/living/simple_animal/hostile/syndicate/melee/space/Process_Spacemove(movement_dir = 0) return TRUE -/mob/living/simple_animal/hostile/syndicate/melee/space/Initialize(mapload) - . = ..() - if(prob(50)) - loot = list(/obj/effect/mob_spawn/human/corpse/syndicatecommando, - /obj/effect/decal/cleanable/blood/innards, - /obj/effect/decal/cleanable/blood, - /obj/effect/gibspawner/generic, - /obj/effect/gibspawner/generic) - /mob/living/simple_animal/hostile/syndicate/ranged ranged = TRUE rapid = 2 @@ -394,16 +374,6 @@ speed = 1.5 death_sound = 'sound/mecha/mechmove03.ogg' loot = list(/obj/effect/mob_spawn/human/corpse/syndicatecommando, - /obj/item/salvage/loot/syndicate, - /obj/effect/decal/cleanable/blood/innards, - /obj/effect/decal/cleanable/blood, - /obj/effect/gibspawner/generic, - /obj/effect/gibspawner/generic) - -/mob/living/simple_animal/hostile/syndicate/ranged/space/Initialize(mapload) - . = ..() - if(prob(50)) - loot = list(/obj/effect/mob_spawn/human/corpse/syndicatecommando, /obj/effect/decal/cleanable/blood/innards, /obj/effect/decal/cleanable/blood, /obj/effect/gibspawner/generic, diff --git a/code/modules/mob/living/simple_animal/hostile/winter_mobs.dm b/code/modules/mob/living/simple_animal/hostile/winter_mobs.dm index 045b6327360d..dd5f2b1b4d25 100644 --- a/code/modules/mob/living/simple_animal/hostile/winter_mobs.dm +++ b/code/modules/mob/living/simple_animal/hostile/winter_mobs.dm @@ -59,7 +59,7 @@ icon_state = "reindeer" icon_living = "reindeer" icon_dead = "reindeer-dead" - butcher_results = list(/obj/item/food/snacks/meat = 3) + butcher_results = list(/obj/item/food/meat = 3) maxHealth = 80 health = 80 melee_damage_lower = 5 diff --git a/code/modules/mob/living/simple_animal/parrot.dm b/code/modules/mob/living/simple_animal/parrot.dm index eea64c99c9e5..d63f481468e3 100644 --- a/code/modules/mob/living/simple_animal/parrot.dm +++ b/code/modules/mob/living/simple_animal/parrot.dm @@ -49,7 +49,7 @@ speak_chance = 1//1% (1 in 100) chance every tick; So about once per 150 seconds, assuming an average tick is 1.5s turns_per_move = 5 - butcher_results = list(/obj/item/food/snacks/cracker = 3) + butcher_results = list(/obj/item/food/cracker = 3) response_help = "pets" response_disarm = "gently moves aside" diff --git a/code/modules/mob/living/simple_animal/shade.dm b/code/modules/mob/living/simple_animal/shade.dm index ce0294ae6a5a..54cd08666f0e 100644 --- a/code/modules/mob/living/simple_animal/shade.dm +++ b/code/modules/mob/living/simple_animal/shade.dm @@ -28,7 +28,7 @@ faction = list("cult") status_flags = CANPUSH flying = TRUE - loot = list(/obj/item/food/snacks/ectoplasm) + loot = list(/obj/item/food/ectoplasm) del_on_death = TRUE deathmessage = "lets out a contented sigh as their form unwinds." var/holy = FALSE diff --git a/code/modules/mod/mod_control.dm b/code/modules/mod/mod_control.dm index 5198dab0ed16..8b58152f4f15 100644 --- a/code/modules/mod/mod_control.dm +++ b/code/modules/mod/mod_control.dm @@ -148,6 +148,7 @@ part.max_heat_protection_temperature = theme.max_heat_protection_temperature part.min_cold_protection_temperature = theme.min_cold_protection_temperature part.siemens_coefficient = theme.siemens_coefficient + part.flags_2 = theme.flag_2_flags for(var/obj/item/part as anything in mod_parts) RegisterSignal(part, COMSIG_OBJ_DECONSTRUCT, PROC_REF(on_part_destruction)) //look into RegisterSignal(part, COMSIG_PARENT_QDELETING, PROC_REF(on_part_deletion)) diff --git a/code/modules/mod/mod_theme.dm b/code/modules/mod/mod_theme.dm index d838482bbf30..d841c96b886e 100644 --- a/code/modules/mod/mod_theme.dm +++ b/code/modules/mod/mod_theme.dm @@ -27,6 +27,8 @@ var/obj/item/mod/armor/armor_type_2 = null /// Resistance flags shared across the MOD parts. var/resistance_flags = NONE + /// Flag_2 flags to apply to the modsuit parts. + var/flag_2_flags = NONE /// Atom flags shared across the MOD parts. var/atom_flags = NONE /// Max heat protection shared across the MOD parts. @@ -230,6 +232,7 @@ default_skin = "advanced" armor_type_1 = /obj/item/mod/armor/mod_theme_advanced resistance_flags = FIRE_PROOF + flag_2_flags = RAD_PROTECT_CONTENTS_2 max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT complexity_max = DEFAULT_MAX_COMPLEXITY - 3 charge_drain = DEFAULT_CHARGE_DRAIN * 1.5 @@ -913,7 +916,7 @@ All rights reserved, tampering with suit will void warranty." default_skin = "syndicate" armor_type_1 = /obj/item/mod/armor/mod_theme_syndicate - + flag_2_flags = RAD_PROTECT_CONTENTS_2 max_heat_protection_temperature = FIRE_SUIT_MAX_TEMP_PROTECT siemens_coefficient = 0 slowdown_inactive = 1 @@ -1001,6 +1004,7 @@ default_skin = "elite" armor_type_1 = /obj/item/mod/armor/mod_theme_elite resistance_flags = FIRE_PROOF | ACID_PROOF + flag_2_flags = RAD_PROTECT_CONTENTS_2 max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT siemens_coefficient = 0 slowdown_inactive = 1 @@ -1120,6 +1124,7 @@ armor_type_1 = /obj/item/mod/armor/mod_theme_responsory resistance_flags = FIRE_PROOF + flag_2_flags = RAD_PROTECT_CONTENTS_2 max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT siemens_coefficient = 0 slowdown_inactive = 0.5 @@ -1201,6 +1206,7 @@ default_skin = "apocryphal" armor_type_1 = /obj/item/mod/armor/mod_theme_apocryphal resistance_flags = FIRE_PROOF | ACID_PROOF + flag_2_flags = RAD_PROTECT_CONTENTS_2 ui_theme = "malfunction" max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT siemens_coefficient = 0 @@ -1257,7 +1263,7 @@ default_skin = "corporate" armor_type_1 = /obj/item/mod/armor/mod_theme_corporate resistance_flags = FIRE_PROOF | ACID_PROOF - + flag_2_flags = RAD_PROTECT_CONTENTS_2 max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT siemens_coefficient = 0 slowdown_inactive = 0.5 @@ -1310,7 +1316,7 @@ default_skin = "debug" armor_type_1 = /obj/item/mod/armor/mod_theme_debug resistance_flags = FIRE_PROOF | ACID_PROOF - + flag_2_flags = RAD_PROTECT_CONTENTS_2 max_heat_protection_temperature = FIRE_SUIT_MAX_TEMP_PROTECT complexity_max = 50 siemens_coefficient = 0 @@ -1362,7 +1368,7 @@ default_skin = "debug" armor_type_1 = /obj/item/mod/armor/mod_theme_administrative resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF - + flag_2_flags = RAD_PROTECT_CONTENTS_2 max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT complexity_max = 1000 charge_drain = DEFAULT_CHARGE_DRAIN * 0 diff --git a/code/modules/mod/modules/modules_engineering.dm b/code/modules/mod/modules/modules_engineering.dm index 82094de73c80..0c0b08b8ebd2 100644 --- a/code/modules/mod/modules/modules_engineering.dm +++ b/code/modules/mod/modules/modules_engineering.dm @@ -248,7 +248,7 @@ if(reagents.total_volume < 10) to_chat(user, "You need at least 10 units of water to use the metal foam synthesizer!") return - var/obj/effect/particle_effect/foam/F = new/obj/effect/particle_effect/foam(get_turf(target), 1) + var/obj/effect/particle_effect/foam/metal/F = new /obj/effect/particle_effect/foam/metal(get_turf(target), TRUE) F.spread_amount = 0 reagents.remove_any(10) metal_synthesis_charge-- diff --git a/code/modules/mod/modules/modules_general.dm b/code/modules/mod/modules/modules_general.dm index dfd3efc632e3..f4f6624fec1b 100644 --- a/code/modules/mod/modules/modules_general.dm +++ b/code/modules/mod/modules/modules_general.dm @@ -287,7 +287,7 @@ incompatible_modules = list(/obj/item/mod/module/dispenser) cooldown_time = 5 SECONDS /// Path we dispense. - var/dispense_type = /obj/item/food/snacks/burger/cheese + var/dispense_type = /obj/item/food/burger/cheese /// Time it takes for us to dispense. var/dispense_time = 0 SECONDS diff --git a/code/modules/paperwork/paper_bundle.dm b/code/modules/paperwork/paper_bundle.dm index 96f7b7ecf4f8..d28e071aa424 100644 --- a/code/modules/paperwork/paper_bundle.dm +++ b/code/modules/paperwork/paper_bundle.dm @@ -45,6 +45,7 @@ var/mob/living/carbon/human/H = user H.update_inv_l_hand() H.update_inv_r_hand() + else if(istype(W, /obj/item/photo)) amount++ photos++ @@ -53,8 +54,10 @@ to_chat(user, "You add [(W.name == "photo") ? "the photo" : W.name] to [(src.name == "paper bundle") ? "the paper bundle" : src.name].") user.unEquip(W) W.loc = src + else if(W.get_heat()) burnpaper(W, user) + else if(istype(W, /obj/item/paper_bundle)) user.unEquip(W) for(var/obj/O in W) @@ -65,6 +68,7 @@ screen = 1 to_chat(user, "You add \the [W.name] to [(src.name == "paper bundle") ? "the paper bundle" : src.name].") qdel(W) + else if(is_pen(W) || istype(W, /obj/item/toy/crayon)) usr << browse("", "window=PaperBundle[UID()]") //Closes the dialog @@ -72,10 +76,6 @@ P.attackby(W, user, params) update_icon() - if(winget(usr, "PaperBundle[UID()]", "is-visible") == "true") // NOT MY FAULT IT IS A BUILT IN PROC PLEASE DO NOT HIT ME - attack_self(usr) //Update the browsed page. - add_fingerprint(usr) - return /obj/item/paper_bundle/proc/burnpaper(obj/item/heating_object, mob/user) var/class = "warning" @@ -136,7 +136,6 @@ /obj/item/paper_bundle/attack_self(mob/user as mob) show_content(user) add_fingerprint(usr) - return /obj/item/paper_bundle/Topic(href, href_list) if(..()) diff --git a/code/modules/power/apc/apc.dm b/code/modules/power/apc/apc.dm index 8aecb4e0a8fc..8703241cb0b3 100644 --- a/code/modules/power/apc/apc.dm +++ b/code/modules/power/apc/apc.dm @@ -100,6 +100,9 @@ /// Being hijacked by a pulse demon? var/being_hijacked = FALSE + /// Are we immune to EMPS? + var/emp_proof = FALSE + /*** APC Malf AI Vars ****/ var/malfhack = FALSE //New var for my changes to AI malf. --NeoFite var/mob/living/silicon/ai/malfai = null //See above --NeoFite @@ -108,6 +111,9 @@ var/constructed = FALSE var/overload = 1 //used for the Blackout malf module + /// Are we hacked by a ruins malf AI? If so, it will act like a malf AI hacked APC, but silicons and malf AI's will not be able to interface with it. + var/hacked_by_ruin_AI = FALSE + /*** APC Overlay Vars ***/ var/update_state = -1 var/update_overlay = -1 @@ -485,12 +491,14 @@ return TRUE autoflag = 5 //why the hell is this being set to 5, fucking malf code -sirryan - if(issilicon(user)) - var/mob/living/silicon/ai/AI = user - var/mob/living/silicon/robot/robot = user - if(aidisabled || (malfhack && istype(malfai) && ((istype(AI) && (malfai != AI && malfai != AI.parent))) || (istype(robot) && malfai && !(robot in malfai.connected_robots)))) + if(issilicon(user) || ispulsedemon(user)) + if(hacked_by_ruin_AI) + to_chat(user, "The APC interface program has been completely corrupted, you are unable to interface with it!") + return FALSE + var/mob/living/L = user + if(!L.can_remote_apc_interface(src)) if(!loud) - to_chat(user, "\The [src] has AI control disabled!") + to_chat(user, "[src] has AI control disabled!") return FALSE else if((!in_range(src, user) || !isturf(loc))) @@ -903,7 +911,6 @@ if(L.nightshift_allowed) L.nightshift_enabled = nightshift_lights L.update(FALSE, play_sound = FALSE) - CHECK_TICK /obj/machinery/power/apc/proc/relock_callback() locked = TRUE @@ -947,6 +954,8 @@ /// ************* /obj/machinery/power/apc/emp_act(severity) + if(emp_proof) + return if(cell) cell.emp_act(severity) if(occupier) diff --git a/code/modules/power/apc/apc_overlay.dm b/code/modules/power/apc/apc_overlay.dm index 15b62f33cf2d..74fad68f4554 100644 --- a/code/modules/power/apc/apc_overlay.dm +++ b/code/modules/power/apc/apc_overlay.dm @@ -151,7 +151,7 @@ update_state |= UPSTATE_OPENED1 if(opened == APC_COVER_OFF) update_state |= UPSTATE_OPENED2 - else if(emagged || malfai || being_hijacked) + else if(emagged || malfai || being_hijacked || hacked_by_ruin_AI) update_state |= UPSTATE_BLUESCREEN else if(panel_open) update_state |= UPSTATE_WIREEXP diff --git a/code/modules/power/cell.dm b/code/modules/power/cell.dm index 21205d03a3df..e94b02f1d272 100644 --- a/code/modules/power/cell.dm +++ b/code/modules/power/cell.dm @@ -295,6 +295,9 @@ origin_tech = "powerstorage=10;bluespace=10" self_recharge = TRUE +/obj/item/stock_parts/cell/bluespace/trapped + rigged = TRUE + /obj/item/stock_parts/cell/infinite name = "infinite-capacity power cell!" icon_state = "icell" diff --git a/code/modules/power/engines/singularity/emitter.dm b/code/modules/power/engines/singularity/emitter.dm index 096ccebc485c..7cd160a97c16 100644 --- a/code/modules/power/engines/singularity/emitter.dm +++ b/code/modules/power/engines/singularity/emitter.dm @@ -147,25 +147,23 @@ step(src, get_dir(M, src)) /obj/machinery/power/emitter/attackby(obj/item/I, mob/user, params) - if(istype(I, /obj/item/card/id) || istype(I, /obj/item/pda)) - if(emagged) - to_chat(user, "The lock seems to be broken.") - return - if(allowed(user)) - if(active) - locked = !locked - to_chat(user, "The controls are now [locked ? "locked" : "unlocked"].") - else - locked = FALSE //just in case it somehow gets locked - to_chat(user, "The controls can only be locked when [src] is online!") - else - to_chat(user, "Access denied.") + if(!istype(I, /obj/item/card/id) || !istype(I, /obj/item/pda)) + return ..() + + if(emagged) + to_chat(user, "The lock seems to be broken.") return - if(exchange_parts(user, I)) + if(!allowed(user)) + to_chat(user, "Access denied.") return - return ..() + if(active) + locked = !locked + to_chat(user, "The controls are now [locked ? "locked" : "unlocked"].") + else + locked = FALSE //just in case it somehow gets locked + to_chat(user, "The controls can only be locked when [src] is online!") /obj/machinery/power/emitter/wrench_act(mob/living/user, obj/item/I) . = TRUE diff --git a/code/modules/power/engines/tesla/coil.dm b/code/modules/power/engines/tesla/coil.dm index d200ddc904dc..15b5120a33ab 100644 --- a/code/modules/power/engines/tesla/coil.dm +++ b/code/modules/power/engines/tesla/coil.dm @@ -44,12 +44,8 @@ . += "The status display reads: Power generation at [input_power_multiplier*100]%.
Shock interval at [zap_cooldown*0.1] seconds.
" /obj/machinery/power/tesla_coil/attackby(obj/item/W, mob/user, params) - if(exchange_parts(user, W)) - return - - else if(istype(W, /obj/item/assembly/signaler) && panel_open) + if(istype(W, /obj/item/assembly/signaler) && panel_open) wires.Interact(user) - else return ..() diff --git a/code/modules/power/generators/portable generators/pacman.dm b/code/modules/power/generators/portable generators/pacman.dm index 5e7b71029643..8111f4dd2702 100644 --- a/code/modules/power/generators/portable generators/pacman.dm +++ b/code/modules/power/generators/portable generators/pacman.dm @@ -198,15 +198,13 @@ if(amount < 1) to_chat(user, "[src] is full!") return + to_chat(user, "You add [amount] sheet\s to [src].") sheets += amount addstack.use(amount) SStgui.update_uis(src) return - if(!active) - if(istype(O, /obj/item/storage/part_replacer) && panel_open) - exchange_parts(user, O) - return + return ..() /obj/machinery/power/port_gen/pacman/crowbar_act(mob/living/user, obj/item/I) diff --git a/code/modules/power/generators/turbine.dm b/code/modules/power/generators/turbine.dm index 591cd54a04b8..8e0ac11eddb9 100644 --- a/code/modules/power/generators/turbine.dm +++ b/code/modules/power/generators/turbine.dm @@ -145,8 +145,6 @@ stat |= BROKEN return - if(exchange_parts(user, I)) - return return ..() /obj/machinery/power/compressor/crowbar_act(mob/user, obj/item/I) @@ -352,11 +350,9 @@ stat |= BROKEN return - if(exchange_parts(user, I)) - return - if(default_deconstruction_crowbar(user, I)) return + return ..() /obj/machinery/power/turbine/attack_hand(mob/user) diff --git a/code/modules/power/lights.dm b/code/modules/power/lights.dm index e0cc4c372a3d..6c9db8515eab 100644 --- a/code/modules/power/lights.dm +++ b/code/modules/power/lights.dm @@ -825,9 +825,11 @@ // explode the light /obj/machinery/light/proc/explode() - var/turf/T = get_turf(loc) break_light_tube() // break it first to give a warning - sleep(2) + addtimer(CALLBACK(src, PROC_REF(actually_explode)), 2) + +/obj/machinery/light/proc/actually_explode() + var/turf/T = get_turf(loc) explosion(T, 0, 0, 2, 2) qdel(src) diff --git a/code/modules/power/smes.dm b/code/modules/power/smes.dm index bd5e87338625..e93791afb084 100644 --- a/code/modules/power/smes.dm +++ b/code/modules/power/smes.dm @@ -1,35 +1,39 @@ -// the SMES -// stores power - #define SMESMAXCHARGELEVEL 200000 #define SMESMAXOUTPUT 200000 #define SMESRATE 0.05 // rate of internal charge to external power - - /obj/machinery/power/smes name = "power storage unit" desc = "A high-capacity superconducting magnetic energy storage (SMES) unit." icon_state = "smes" density = TRUE - var/capacity = 5e6 // maximum charge - var/charge = 0 // actual charge - - var/input_attempt = TRUE // 1 = attempting to charge, 0 = not attempting to charge - var/inputting = TRUE // 1 = actually inputting, 0 = not inputting - var/input_level = 50000 // amount of power the SMES attempts to charge by - var/input_level_max = 200000 // cap on input_level - var/input_available = 0 // amount of charge available from input last tick - - var/output_attempt = TRUE // 1 = attempting to output, 0 = not attempting to output - var/outputting = TRUE // 1 = actually outputting, 0 = not outputting - var/output_level = 50000 // amount of power the SMES attempts to output - var/output_level_max = 200000 // cap on output_level - var/output_used = 0 // amount of power actually outputted. may be less than output_level if the powernet returns excess power - - var/name_tag = null - var/obj/machinery/power/terminal/terminal = null + /// Maximum charge of the SMES + var/capacity = 5e6 + /// Current charge level + var/charge = 0 + /// Set TRUE if SMES attempting to charge, FALSE if not + var/input_attempt = TRUE + /// Set TRUE if SMES is inputting, FALSE if not + var/inputting = TRUE + /// Amount of power the SMES attempts to charge by + var/input_level = 50000 + /// Maximum input level + var/input_level_max = 200000 + /// Charge amount available from input last tick + var/input_available = 0 + // TRUE = attempting to output, FALSE = not attempting to output + var/output_attempt = TRUE + /// TRUE = actually outputting, FALSE = not outputting + var/outputting = TRUE + /// Amount of power the SMES attempts to output + var/output_level = 50000 + /// Cap on output_level + var/output_level_max = 200000 + /// Amount of power actually outputted. may be less than output_level if the powernet returns excess power + var/output_used = 0 + /// The terminal that is connected to this SMES unit + var/obj/machinery/power/terminal/terminal /obj/machinery/power/smes/Initialize(mapload) . = ..() @@ -48,10 +52,10 @@ connect_to_network() dir_loop: - for(var/d in GLOB.cardinal) - var/turf/T = get_step(src, d) + for(var/direction in GLOB.cardinal) + var/turf/T = get_step(src, direction) for(var/obj/machinery/power/terminal/term in T) - if(term && term.dir == turn(d, 180)) + if(term && term.dir == turn(direction, 180)) terminal = term break dir_loop @@ -90,20 +94,20 @@ if(stat & BROKEN) return - . += "smes-op[outputting ? 1 : 0]" - . += "smes-oc[inputting ? 1 : 0]" + . += "smes-op[outputting ? TRUE : FALSE]" + . += "smes-oc[inputting ? TRUE : FALSE]" - var/charge_level = chargedisplay() + var/charge_level = charge_display() if(charge_level > 0) . += "smes-og[charge_level]" /obj/machinery/power/smes/attackby(obj/item/I, mob/user, params) - //opening using screwdriver + // Opening using screwdriver if(default_deconstruction_screwdriver(user, "[initial(icon_state)]-o", initial(icon_state), I)) update_icon() return - //changing direction using wrench + // Changing direction using wrench if(default_change_direction_wrench(user, I)) terminal = null var/turf/T = get_step(src, dir) @@ -120,26 +124,22 @@ update_icon() return - //exchanging parts using the RPE - if(exchange_parts(user, I)) - return - - //building and linking a terminal + // Building and linking a terminal if(istype(I, /obj/item/stack/cable_coil)) - var/dir = get_dir(user,src) - if(dir & (dir-1))//we don't want diagonal click + var/dir = get_dir(user, src) + if(dir & (dir - 1)) // Checks for diagonal interaction return - if(terminal) //is there already a terminal ? + if(terminal) // Checks for an existing terminal to_chat(user, "This SMES already has a power terminal!") return - if(!panel_open) //is the panel open ? + if(!panel_open) // Checks to see if the panel is closed to_chat(user, "You must open the maintenance panel first!") return var/turf/T = get_turf(user) - if(T.intact) //is the floor plating removed ? + if(T.intact) // Checks to see if floor plating is present to_chat(user, "You must first remove the floor plating!") return @@ -152,31 +152,33 @@ to_chat(user, "You must not be on the same tile as [src].") return - //Direction the terminal will face to - var/tempDir = get_dir(user, src) - switch(tempDir) + // Direction the terminal will face to + var/temporary_direction = get_dir(user, src) + switch(temporary_direction) if(NORTHEAST, SOUTHEAST) - tempDir = EAST + temporary_direction = EAST if(NORTHWEST, SOUTHWEST) - tempDir = WEST - var/turf/tempLoc = get_step(src, REVERSE_DIR(tempDir)) - if(isspaceturf(tempLoc)) + temporary_direction = WEST + var/turf/temporary_location = get_step(src, REVERSE_DIR(temporary_direction)) + + if(isspaceturf(temporary_location)) to_chat(user, "You can't build a terminal on space.") return - else if(istype(tempLoc)) - if(tempLoc.intact) + + else if(istype(temporary_location)) + if(temporary_location.intact) to_chat(user, "You must remove the floor plating first.") return to_chat(user, "You start adding cable to [src].") - playsound(loc, C.usesound, 50, 1) + playsound(loc, C.usesound, 50, TRUE) - if(do_after(user, 50, target = src)) + if(do_after(user, 5 SECONDS, target = src)) if(!terminal && panel_open) T = get_turf(user) var/obj/structure/cable/N = T.get_cable_node() //get the connecting node cable, if there's one if(prob(50) && electrocute_mob(usr, N, N, 1, TRUE)) //animate the electrocution if uncautious and unlucky - do_sparks(5, 1, src) + do_sparks(5, TRUE, src) return C.use(10) // make sure the cable gets used up @@ -184,11 +186,11 @@ "[user.name] adds the cables and connects the power terminal.",\ "You add the cables and connect the power terminal.") - make_terminal(user, tempDir, tempLoc) + make_terminal(user, temporary_direction, temporary_location) terminal.connect_to_network() return - //disassembling the terminal + // Disassembling the terminal if(istype(I, /obj/item/wirecutters) && terminal && panel_open) var/turf/T = get_turf(terminal) if(T.intact) //is the floor plating removed ? @@ -196,26 +198,27 @@ return to_chat(user, "You begin to dismantle the power terminal...") - playsound(src.loc, I.usesound, 50, 1) + playsound(src.loc, I.usesound, 50, TRUE) - if(do_after(user, 50 * I.toolspeed, target = src)) + if(do_after(user, 5 SECONDS * I.toolspeed, target = src)) if(terminal && panel_open) - if(prob(50) && electrocute_mob(usr, terminal.powernet, terminal, 1, TRUE)) //animate the electrocution if uncautious and unlucky - do_sparks(5, 1, src) + if(prob(50) && electrocute_mob(usr, terminal.powernet, terminal, 1, TRUE)) // Animate the electrocution if uncautious and unlucky + do_sparks(5, TRUE, src) return - //give the wires back and delete the terminal - new /obj/item/stack/cable_coil(T,10) + // Returns wires on deletion of the terminal + new /obj/item/stack/cable_coil(T, 10) user.visible_message(\ "[user.name] cuts the cables and dismantles the power terminal.",\ "You cut the cables and dismantle the power terminal.") - inputting = 0 //stop inputting, since we have don't have a terminal anymore + inputting = FALSE // Set input FALSE when the terminal no longer exists qdel(terminal) return - //crowbarring it ! + // Crowbarring it ! if(default_deconstruction_crowbar(user, I)) return + return ..() /obj/machinery/power/smes/disconnect_terminal() @@ -225,51 +228,51 @@ return TRUE return FALSE -/obj/machinery/power/smes/proc/make_terminal(user, tempDir, tempLoc) - // create a terminal object at the same position as original turf loc - // wires will attach to this - terminal = new /obj/machinery/power/terminal(tempLoc) - terminal.dir = tempDir +/obj/machinery/power/smes/proc/make_terminal(user, temporary_direction, temporary_location) + // Create a terminal object at the same position as original turf loc + // Wires will attach to this + terminal = new /obj/machinery/power/terminal(temporary_location) + terminal.dir = temporary_direction terminal.master = src /obj/machinery/power/smes/Destroy() if(SSticker && SSticker.current_state == GAME_STATE_PLAYING) var/area/area = get_area(src) if(area) - message_admins("SMES deleted at ([area.name])") + message_admins("SMES deleted at ([area.name])") log_game("SMES deleted at ([area.name])") - investigate_log("deleted at ([area.name])","singulo") + investigate_log("deleted at ([area.name])", "singulo") if(terminal) disconnect_terminal() return ..() -/obj/machinery/power/smes/proc/chargedisplay() +/obj/machinery/power/smes/proc/charge_display() return clamp(round(ceil(charge * 5 / capacity)), 0, 5) /obj/machinery/power/smes/process() if(stat & BROKEN) return - //store machine state to see if we need to update the icon overlays - var/last_disp = chargedisplay() + // Store machine state to see if we need to update the icon overlays + var/last_disp = charge_display() var/last_chrg = inputting var/last_onln = outputting - //inputting + // Inputting if(terminal && input_attempt) input_available = terminal.get_power_balance() if(inputting) - if(input_available > 0) // if there's power available, try to charge + if(input_available > 0) // Checks power availability before attempting to charge - var/load = min(min((capacity-charge)/SMESRATE, input_level), input_available) // charge at set rate, limited to spare capacity + var/load = min(min((capacity - charge) / SMESRATE, input_level), input_available) // Charge at set rate, limited to spare capacity - charge += load * SMESRATE // increase the charge + charge += load * SMESRATE // Increase the charge - terminal.consume_direct_power(load) // add the load to the terminal side network + terminal.consume_direct_power(load) // Add the load to the terminal side network - else // if not enough capcity - inputting = FALSE // stop inputting + else + inputting = FALSE // Set inputting FALSE if not enough capacity else if(input_attempt && input_available > 0) @@ -280,13 +283,13 @@ //outputting if(output_attempt && powernet) if(outputting) - output_used = min( charge/SMESRATE, output_level) //limit output to that stored - if(produce_direct_power(output_used)) // add output to powernet if it exists (smes side) - charge -= output_used*SMESRATE // reduce the storage (may be recovered in /restore() if excessive) + output_used = min( charge/SMESRATE, output_level) // Limit output to that stored + if(produce_direct_power(output_used)) // Add output to powernet if it exists (smes side) + charge -= output_used * SMESRATE // Reduce the storage (may be recovered in /restore() if excessive) else outputting = FALSE - if(output_used < 0.0001) // either from no charge or set to 0 + if(output_used < 0.0001) // Either from no charge or set to 0 outputting = FALSE investigate_log("lost power and turned off", "singulo") else if(output_attempt && charge > output_level && output_level > 0) @@ -296,14 +299,13 @@ else outputting = FALSE - // only update icon if state changed - if(last_disp != chargedisplay() || last_chrg != inputting || last_onln != outputting) + // Only update icon if state changed + if(last_disp != charge_display() || last_chrg != inputting || last_onln != outputting) update_icon() - -// called after all power processes are finished -// restores charge level to smes if there was excess this ptick +// Called after all power processes are finished +// Restores charge level to smes if there was excess this ptick /obj/machinery/power/smes/proc/restore() if(stat & BROKEN) return @@ -312,22 +314,22 @@ output_used = 0 return - var/excess = powernet.excess_power // this was how much wasn't used on the network last ptick, minus any removed by other SMESes + var/excess = powernet.excess_power // This was how much wasn't used on the network last ptick, minus any removed by other SMESes - excess = min(output_used, excess) // clamp it to how much was actually output by this SMES last ptick + excess = min(output_used, excess) // Clamp it to how much was actually output by this SMES last ptick - excess = min((capacity-charge)/SMESRATE, excess) // for safety, also limit recharge by space capacity of SMES (shouldn't happen) + excess = min((capacity-charge)/SMESRATE, excess) // For safety, also limit recharge by space capacity of SMES (shouldn't happen) // now recharge this amount - var/clev = chargedisplay() + var/clev = charge_display() - charge += excess * SMESRATE // restore unused power - powernet.excess_power -= excess // remove the excess from the powernet, so later SMESes don't try to use it + charge += excess * SMESRATE // Restore unused power + powernet.excess_power -= excess // Remove the excess from the powernet, so later SMESes don't try to use it output_used -= excess - if(clev != chargedisplay()) //if needed updates the icons overlay + if(clev != charge_display()) // If needed updates the icons overlay update_icon() return @@ -356,7 +358,7 @@ /obj/machinery/power/smes/ui_data(mob/user) var/list/data = list( "capacity" = capacity, - "capacityPercent" = round(100*charge/capacity, 0.1), + "capacityPercent" = round(100 * charge / capacity, 0.1), "charge" = charge, "inputAttempt" = input_attempt, "inputting" = inputting, @@ -423,32 +425,6 @@ /obj/machinery/power/smes/proc/log_smes(mob/user) investigate_log("input/output; [input_level>output_level?"":""][input_level]/[output_level] | Charge: [charge] | Output-mode: [output_attempt?"on":"off"] | Input-mode: [input_attempt?"auto":"off"] by [user ? key_name(user) : "outside forces"]", "singulo") -/obj/machinery/power/smes/proc/ion_act() - if(is_station_level(src.z)) - if(prob(1)) //explosion - for(var/mob/M in viewers(src)) - M.show_message("[src] is making strange noises!", 3, "You hear sizzling electronics.", 2) - sleep(10*pick(4,5,6,7,10,14)) - var/datum/effect_system/smoke_spread/smoke = new - smoke.set_up(3, FALSE, loc) - smoke.attach(src) - smoke.start() - explosion(src.loc, -1, 0, 1, 3, 1, 0) - qdel(src) - return - if(prob(15)) //Power drain - do_sparks(3, 1, src) - if(prob(50)) - emp_act(1) - else - emp_act(2) - if(prob(5)) //smoke only - var/datum/effect_system/smoke_spread/smoke = new - smoke.set_up(3, FALSE, loc) - smoke.attach(src) - smoke.start() - - /obj/machinery/power/smes/proc/inputting(do_input) input_attempt = do_input if(!input_attempt) @@ -464,7 +440,7 @@ outputting(rand(0, 1)) output_level = rand(0, output_level_max) input_level = rand(0, input_level_max) - charge -= 1e6/severity + charge -= 1e6 / severity if(charge < 0) charge = 0 update_icon() @@ -486,6 +462,5 @@ ..() #undef SMESRATE - #undef SMESMAXCHARGELEVEL #undef SMESMAXOUTPUT diff --git a/code/modules/projectiles/firing.dm b/code/modules/projectiles/firing.dm index 3e02f5fafafc..c63ef6943ff8 100644 --- a/code/modules/projectiles/firing.dm +++ b/code/modules/projectiles/firing.dm @@ -43,6 +43,7 @@ BB.ammo_casing = src if(target && get_dist(user, target) <= 1) //Point blank shot must always hit + BB.starting = curloc BB.prehit(target) target.bullet_act(BB, BB.def_zone) QDEL_NULL(BB) diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index a484e60849bf..0b877bd3b45b 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -153,7 +153,7 @@ user.visible_message("[user] fires [src] point blank at [target]!", "You fire [src] point blank at [target]!", "You hear \a [fire_sound_text]!") else user.visible_message("[user] fires [src]!", "You fire [src]!", "You hear \a [fire_sound_text]!") - if(chambered.muzzle_flash_effect) + if(chambered?.muzzle_flash_effect) var/obj/effect/temp_visual/target_angled/muzzle_flash/effect = new chambered.muzzle_flash_effect(get_turf(src), target, muzzle_flash_time) effect.alpha = min(255, muzzle_strength * 255) if(chambered.muzzle_flash_color) diff --git a/code/modules/projectiles/guns/chaos_bolt.dm b/code/modules/projectiles/guns/chaos_bolt.dm index 0169a344d91b..3466cc29581e 100644 --- a/code/modules/projectiles/guns/chaos_bolt.dm +++ b/code/modules/projectiles/guns/chaos_bolt.dm @@ -147,7 +147,7 @@ explosion(get_turf(H), 1, 1, 1, cause = "staff of chaos lethal explosion effect") if("cheese morphed") H.visible_message("[H] transforms into cheese!", "You've been transformed into cheese!") - new /obj/item/food/snacks/cheesewedge(get_turf(H)) + new /obj/item/food/cheesewedge(get_turf(H)) qdel(H) if("supermattered") var/obj/machinery/atmospherics/supermatter_crystal/supercrystal = GLOB.main_supermatter_engine @@ -321,13 +321,13 @@ if("toy revolver") item_to_summon = /obj/item/gun/projectile/revolver/capgun/chaosprank if("cheese") - item_to_summon = /obj/item/food/snacks/cheesewedge + item_to_summon = /obj/item/food/cheesewedge explosion_amount = rand(5, 10) if("food") target.visible_message("Food scatters around [target]!", "A bunch of food scatters around you!") var/limit = rand(5, 10) for(var/i in 1 to limit) - var/type = pick(typesof(/obj/item/food/snacks)) + var/type = pick(typesof(/obj/item/food)) var/obj/item/I = new type(get_turf(target)) INVOKE_ASYNC(I, TYPE_PROC_REF(/atom/movable, throw_at), pick(oview(7, get_turf(src))), 10, 1) @@ -347,7 +347,7 @@ item_to_summon = /obj/item/banhammer explosion_amount = rand(2, 5) if("banana") - item_to_summon = /obj/item/food/snacks/grown/banana + item_to_summon = /obj/item/food/grown/banana /** * Picks a random gift to be given to mob/living/target. Should be valuable and/or threatening to the wizard. @@ -369,7 +369,7 @@ if("tarot deck") item_to_summon = /obj/item/tarot_generator if("bluespace banana") - item_to_summon = /obj/item/food/snacks/grown/banana/bluespace + item_to_summon = /obj/item/food/grown/banana/bluespace if("banana grenade") item_to_summon = /obj/item/grenade/clown_grenade if("disco ball") diff --git a/code/modules/projectiles/guns/throw/crossbow.dm b/code/modules/projectiles/guns/throw/crossbow.dm index 77dc3dbd5ea2..dea520d410cf 100644 --- a/code/modules/projectiles/guns/throw/crossbow.dm +++ b/code/modules/projectiles/guns/throw/crossbow.dm @@ -157,7 +157,7 @@ /obj/item/gun/throw/crossbow/french name = "french powered crossbow" icon_state = "fcrossbow" - valid_projectile_type = /obj/item/food/snacks/baguette + valid_projectile_type = /obj/item/food/baguette /obj/item/gun/throw/crossbow/french/modify_projectile(obj/item/I, on_chamber = 0) return diff --git a/code/modules/projectiles/guns/throw/pielauncher.dm b/code/modules/projectiles/guns/throw/pielauncher.dm index 7f70d9990986..ac4a5c8540d1 100644 --- a/code/modules/projectiles/guns/throw/pielauncher.dm +++ b/code/modules/projectiles/guns/throw/pielauncher.dm @@ -8,7 +8,7 @@ force = 5 clumsy_check = FALSE - valid_projectile_type = /obj/item/food/snacks/pie + valid_projectile_type = /obj/item/food/pie max_capacity = 5 projectile_speed = 2 projectile_range = 30 @@ -17,7 +17,7 @@ /obj/item/gun/throw/piecannon/Initialize(mapload) . = ..() for(var/i in 1 to max_capacity) - var/obj/item/food/snacks/pie/P = new (src) + var/obj/item/food/pie/P = new (src) loaded_projectiles += P process_chamber() diff --git a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm index c25ac76b036e..28472534504e 100644 --- a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm +++ b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm @@ -235,20 +235,20 @@ add_fingerprint(usr) /obj/machinery/chem_dispenser/attackby(obj/item/I, mob/user, params) - if(exchange_parts(user, I)) + if(istype(I, /obj/item/storage/part_replacer)) + . = ..() SStgui.update_uis(src) return - //if(isrobot(user)) // SS220 EDIT - // return - if((istype(I, /obj/item/reagent_containers/glass) || istype(I, /obj/item/reagent_containers/drinks)) && user.a_intent != INTENT_HARM) if(panel_open) to_chat(user, "Close the maintenance panel first.") return + if(!user.drop_item()) to_chat(user, "[I] is stuck to you!") return + I.forceMove(src) if(beaker) to_chat(usr, "You swap [I] with [beaker].") diff --git a/code/modules/reagents/chemistry/machinery/chem_heater.dm b/code/modules/reagents/chemistry/machinery/chem_heater.dm index bcd6c58f3431..bdbad39598cb 100644 --- a/code/modules/reagents/chemistry/machinery/chem_heater.dm +++ b/code/modules/reagents/chemistry/machinery/chem_heater.dm @@ -63,23 +63,20 @@ stat |= NOPOWER /obj/machinery/chem_heater/attackby(obj/item/I, mob/user) - //if(isrobot(user)) // SS220 EDIT - // return - if(istype(I, /obj/item/reagent_containers/glass) && user.a_intent != INTENT_HARM) if(beaker) to_chat(user, "A beaker is already loaded into the machine.") return - if(user.drop_item()) - beaker = I - I.forceMove(src) - to_chat(user, "You add the beaker to the machine!") - icon_state = "mixer1b" - SStgui.update_uis(src) + if(!user.drop_item()) + to_chat(user, "[I] is stuck to you!") return - if(exchange_parts(user, I)) + beaker = I + I.forceMove(src) + to_chat(user, "You add the beaker to the machine!") + icon_state = "mixer1b" + SStgui.update_uis(src) return return ..() diff --git a/code/modules/reagents/chemistry/machinery/chem_master.dm b/code/modules/reagents/chemistry/machinery/chem_master.dm index c90faeb4e0ef..6f6feaa4bfb2 100644 --- a/code/modules/reagents/chemistry/machinery/chem_master.dm +++ b/code/modules/reagents/chemistry/machinery/chem_master.dm @@ -112,8 +112,8 @@ update_icon() /obj/machinery/chem_master/attackby(obj/item/I, mob/user, params) - if(exchange_parts(user, I)) - return + if(istype(I, /obj/item/storage/part_replacer)) + return ..() if(panel_open) to_chat(user, "You can't use [src] while it's panel is opened!") @@ -123,6 +123,7 @@ if(!user.drop_item()) to_chat(user, "[I] is stuck to you!") return + I.forceMove(src) if(beaker) to_chat(usr, "You swap [I] with [beaker] inside.") diff --git a/code/modules/reagents/chemistry/machinery/reagentgrinder.dm b/code/modules/reagents/chemistry/machinery/reagentgrinder.dm index 195ee442f91e..85376f0d8e2e 100644 --- a/code/modules/reagents/chemistry/machinery/reagentgrinder.dm +++ b/code/modules/reagents/chemistry/machinery/reagentgrinder.dm @@ -32,21 +32,21 @@ /obj/item/stack/sheet/saltpetre_crystal = list("saltpetre" = 8), // Blender Stuff - /obj/item/food/snacks/grown/tomato = list("ketchup" = 0), - /obj/item/food/snacks/grown/wheat = list("flour" = -5), - /obj/item/food/snacks/grown/oat = list("flour" = -5), - /obj/item/food/snacks/grown/cherries = list("cherryjelly" = 0), - /obj/item/food/snacks/grown/bluecherries = list("bluecherryjelly" = 0), - /obj/item/food/snacks/egg = list("egg" = -5), - /obj/item/food/snacks/grown/rice = list("rice" = -5), - /obj/item/food/snacks/grown/olive = list("olivepaste" = 0, "sodiumchloride" = 0), - /obj/item/food/snacks/grown/peanuts = list("peanutbutter" = 0), + /obj/item/food/grown/tomato = list("ketchup" = 0), + /obj/item/food/grown/wheat = list("flour" = -5), + /obj/item/food/grown/oat = list("flour" = -5), + /obj/item/food/grown/cherries = list("cherryjelly" = 0), + /obj/item/food/grown/bluecherries = list("bluecherryjelly" = 0), + /obj/item/food/egg = list("egg" = -5), + /obj/item/food/grown/rice = list("rice" = -5), + /obj/item/food/grown/olive = list("olivepaste" = 0, "sodiumchloride" = 0), + /obj/item/food/grown/peanuts = list("peanutbutter" = 0), // Grinder stuff, but only if dry - /obj/item/food/snacks/grown/coffee/robusta = list("coffeepowder" = 0, "morphine" = 0), - /obj/item/food/snacks/grown/coffee = list("coffeepowder" = 0), - /obj/item/food/snacks/grown/tea/astra = list("teapowder" = 0, "salglu_solution" = 0), - /obj/item/food/snacks/grown/tea = list("teapowder" = 0), + /obj/item/food/grown/coffee/robusta = list("coffeepowder" = 0, "morphine" = 0), + /obj/item/food/grown/coffee = list("coffeepowder" = 0), + /obj/item/food/grown/tea/astra = list("teapowder" = 0, "salglu_solution" = 0), + /obj/item/food/grown/tea = list("teapowder" = 0), // All types that you can put into the grinder to transfer the reagents to the beaker. !Put all recipes above this.! /obj/item/slime_extract = list(), @@ -59,32 +59,32 @@ var/list/juice_items = list ( // Juicer Stuff - /obj/item/food/snacks/grown/soybeans = list("soymilk" = 0), - /obj/item/food/snacks/grown/corn = list("corn_starch" = 0), - /obj/item/food/snacks/grown/tomato = list("tomatojuice" = 0), - /obj/item/food/snacks/grown/carrot = list("carrotjuice" = 0), - /obj/item/food/snacks/grown/berries = list("berryjuice" = 0), - /obj/item/food/snacks/grown/banana = list("banana" = 0), - /obj/item/food/snacks/grown/potato = list("potato" = 0), - /obj/item/food/snacks/grown/citrus/lemon = list("lemonjuice" = 0), - /obj/item/food/snacks/grown/citrus/orange = list("orangejuice" = 0), - /obj/item/food/snacks/grown/citrus/lime = list("limejuice" = 0), - /obj/item/food/snacks/grown/watermelon = list("watermelonjuice" = 0), - /obj/item/food/snacks/watermelonslice = list("watermelonjuice" = 0), - /obj/item/food/snacks/grown/berries/poison = list("poisonberryjuice" = 0), - /obj/item/food/snacks/grown/pumpkin/blumpkin = list("blumpkinjuice" = 0), // Order is important here as blumpkin is a subtype of pumpkin, if switched blumpkins will produce pumpkin juice - /obj/item/food/snacks/grown/pumpkin = list("pumpkinjuice" = 0), - /obj/item/food/snacks/grown/apple = list("applejuice" = 0), - /obj/item/food/snacks/grown/grapes = list("grapejuice" = 0), - /obj/item/food/snacks/grown/pineapple = list("pineapplejuice" = 0) + /obj/item/food/grown/soybeans = list("soymilk" = 0), + /obj/item/food/grown/corn = list("corn_starch" = 0), + /obj/item/food/grown/tomato = list("tomatojuice" = 0), + /obj/item/food/grown/carrot = list("carrotjuice" = 0), + /obj/item/food/grown/berries = list("berryjuice" = 0), + /obj/item/food/grown/banana = list("banana" = 0), + /obj/item/food/grown/potato = list("potato" = 0), + /obj/item/food/grown/citrus/lemon = list("lemonjuice" = 0), + /obj/item/food/grown/citrus/orange = list("orangejuice" = 0), + /obj/item/food/grown/citrus/lime = list("limejuice" = 0), + /obj/item/food/grown/watermelon = list("watermelonjuice" = 0), + /obj/item/food/watermelonslice = list("watermelonjuice" = 0), + /obj/item/food/grown/berries/poison = list("poisonberryjuice" = 0), + /obj/item/food/grown/pumpkin/blumpkin = list("blumpkinjuice" = 0), // Order is important here as blumpkin is a subtype of pumpkin, if switched blumpkins will produce pumpkin juice + /obj/item/food/grown/pumpkin = list("pumpkinjuice" = 0), + /obj/item/food/grown/apple = list("applejuice" = 0), + /obj/item/food/grown/grapes = list("grapejuice" = 0), + /obj/item/food/grown/pineapple = list("pineapplejuice" = 0) ) var/list/dried_items = list( // Grinder stuff, but only if dry, - /obj/item/food/snacks/grown/coffee/robusta = list("coffeepowder" = 0, "morphine" = 0), - /obj/item/food/snacks/grown/coffee = list("coffeepowder" = 0), - /obj/item/food/snacks/grown/tea/astra = list("teapowder" = 0, "salglu_solution" = 0), - /obj/item/food/snacks/grown/tea = list("teapowder" = 0) + /obj/item/food/grown/coffee/robusta = list("coffeepowder" = 0, "morphine" = 0), + /obj/item/food/grown/coffee = list("coffeepowder" = 0), + /obj/item/food/grown/tea/astra = list("teapowder" = 0, "salglu_solution" = 0), + /obj/item/food/grown/tea = list("teapowder" = 0) ) var/list/holdingitems = list() @@ -157,7 +157,8 @@ default_unfasten_wrench(user, I) /obj/machinery/reagentgrinder/attackby(obj/item/I, mob/user, params) - if(exchange_parts(user, I)) + if(istype(I, /obj/item/storage/part_replacer)) + ..() SStgui.update_uis(src) return @@ -169,6 +170,7 @@ else if(!user.drop_item()) return FALSE + beaker = I beaker.loc = src update_icon(UPDATE_ICON_STATE) @@ -176,8 +178,8 @@ return TRUE // No afterattack if(is_type_in_list(I, dried_items)) - if(istype(I, /obj/item/food/snacks/grown)) - var/obj/item/food/snacks/grown/G = I + if(istype(I, /obj/item/food/grown)) + var/obj/item/food/grown/G = I if(!G.dry) to_chat(user, "You must dry that first!") return FALSE @@ -206,6 +208,7 @@ if(length(B.contents) == original_contents_len) to_chat(user, "Nothing in [B] can be put into the All-In-One grinder.") return FALSE + else if(!length(B.contents)) to_chat(user, "You empty all of [B]'s contents into the All-In-One grinder.") else @@ -353,7 +356,7 @@ if(istype(O, i)) return blend_items[i] -/obj/machinery/reagentgrinder/proc/get_special_juice(obj/item/food/snacks/O) +/obj/machinery/reagentgrinder/proc/get_special_juice(obj/item/food/O) for(var/i in juice_items) if(istype(O, i)) return juice_items[i] @@ -366,7 +369,7 @@ else return round(O.seed.potency) -/obj/machinery/reagentgrinder/proc/get_juice_amount(obj/item/food/snacks/grown/O) +/obj/machinery/reagentgrinder/proc/get_juice_amount(obj/item/food/grown/O) if(!istype(O) || !O.seed) return 5 else if(O.seed.potency == -1) @@ -396,7 +399,7 @@ SStgui.update_uis(src) // Snacks - for(var/obj/item/food/snacks/O in holdingitems) + for(var/obj/item/food/O in holdingitems) var/list/special_juice = get_special_juice(O) if(!length(special_juice)) continue // Ignore food that doesn't juice into anything @@ -431,7 +434,7 @@ SStgui.update_uis(src) // Snacks and Plants - for(var/obj/item/food/snacks/O in holdingitems) + for(var/obj/item/food/O in holdingitems) var/list/special_blend = get_special_blend(O) for(var/r_id in special_blend) var/space = beaker.reagents.maximum_volume - beaker.reagents.total_volume diff --git a/code/modules/reagents/chemistry/reagents/food_reagents.dm b/code/modules/reagents/chemistry/reagents/food_reagents.dm index c4719868392a..a983c66b1a00 100644 --- a/code/modules/reagents/chemistry/reagents/food_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/food_reagents.dm @@ -567,7 +567,7 @@ /datum/reagent/consumable/chocolate/reaction_turf(turf/T, volume) if(volume >= 5 && !isspaceturf(T)) - new /obj/item/food/snacks/choc_pile(T) + new /obj/item/food/choc_pile(T) /datum/reagent/consumable/mugwort name = "Mugwort" @@ -635,7 +635,7 @@ /datum/reagent/consumable/cheese/reaction_turf(turf/T, volume) if(volume >= 5 && !isspaceturf(T)) - new /obj/item/food/snacks/cheesewedge(T) + new /obj/item/food/cheesewedge(T) /datum/reagent/consumable/fake_cheese name = "Cheese substitute" @@ -677,7 +677,7 @@ /datum/reagent/consumable/weird_cheese/reaction_turf(turf/T, volume) if(volume >= 5 && !isspaceturf(T)) - new /obj/item/food/snacks/weirdcheesewedge(T) + new /obj/item/food/weirdcheesewedge(T) /datum/reagent/consumable/beans name = "Refried beans" @@ -905,11 +905,11 @@ /datum/reagent/ectoplasm/reaction_turf(turf/T, volume) if(volume >= 10 && !isspaceturf(T)) - new /obj/item/food/snacks/ectoplasm(T) + new /obj/item/food/ectoplasm(T) /datum/reagent/consumable/bread/reaction_turf(turf/T, volume) if(volume >= 5 && !isspaceturf(T)) - new /obj/item/food/snacks/breadslice(T) + new /obj/item/food/breadslice(T) /datum/reagent/soap name = "Soap" diff --git a/code/modules/reagents/chemistry/reagents/water.dm b/code/modules/reagents/chemistry/reagents/water.dm index c5c811b7a678..9c5388ac9299 100644 --- a/code/modules/reagents/chemistry/reagents/water.dm +++ b/code/modules/reagents/chemistry/reagents/water.dm @@ -141,11 +141,11 @@ data["cloneable"] = 0 // On mix, consider the genetic sampling unviable for pod cloning, or else we won't know who's even getting cloned if(type_mismatch || species_mismatch) - data["species"] = "Coagulated blood" + data["species"] = "Coagulated" data["blood_type"] = "UNUSABLE!" data["species_only"] = species_unique else if(!same_species) // Same blood type, species-agnostic, but we're still mixing blood of different species - data["species"] = "Mixed humanoid blood" + data["species"] = "Mixed Humanoid" if(data["viruses"] || mix_data["viruses"]) var/list/mix1 = data["viruses"] diff --git a/code/modules/reagents/chemistry/recipes/food_reactions.dm b/code/modules/reagents/chemistry/recipes/food_reactions.dm index b91a8a25bccb..4a0ab9df0074 100644 --- a/code/modules/reagents/chemistry/recipes/food_reactions.dm +++ b/code/modules/reagents/chemistry/recipes/food_reactions.dm @@ -10,7 +10,7 @@ /datum/chemical_reaction/tofu/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) for(var/i = 1, i <= created_volume, i++) - new /obj/item/food/snacks/tofu(location) + new /obj/item/food/tofu(location) /datum/chemical_reaction/chocolate_bar name = "Chocolate Bar" @@ -22,7 +22,7 @@ /datum/chemical_reaction/chocolate_bar/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) for(var/i = 1, i <= created_volume, i++) - new /obj/item/food/snacks/chocolatebar(location) + new /obj/item/food/chocolatebar(location) /datum/chemical_reaction/chocolate_bar2 name = "Chocolate Bar" @@ -34,7 +34,7 @@ /datum/chemical_reaction/chocolate_bar2/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) for(var/i = 1, i <= created_volume, i++) - new /obj/item/food/snacks/chocolatebar(location) + new /obj/item/food/chocolatebar(location) /datum/chemical_reaction/soysauce name = "Soy Sauce" @@ -75,7 +75,7 @@ /datum/chemical_reaction/cheesewheel/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) for(var/i = 1, i <= created_volume, i++) - new /obj/item/food/snacks/sliceable/cheesewheel(location) + new /obj/item/food/sliceable/cheesewheel(location) /datum/chemical_reaction/syntiflesh name = "Syntiflesh" @@ -87,7 +87,7 @@ /datum/chemical_reaction/syntiflesh/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) for(var/i = 1, i <= created_volume, i++) - new /obj/item/food/snacks/meat/syntiflesh(location) + new /obj/item/food/meat/syntiflesh(location) /datum/chemical_reaction/hot_ramen name = "Hot Ramen" @@ -114,7 +114,7 @@ /datum/chemical_reaction/dough/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) for(var/i in 1 to created_volume) - new /obj/item/food/snacks/dough(location) + new /obj/item/food/dough(location) ///Cookies by Ume @@ -129,7 +129,7 @@ /datum/chemical_reaction/cookiedough/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) for(var/i in 1 to created_volume) - new /obj/item/food/snacks/cookiedough(location) + new /obj/item/food/cookiedough(location) /datum/chemical_reaction/corn_syrup @@ -183,7 +183,7 @@ /datum/chemical_reaction/weird_cheese/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) for(var/i in 1 to created_volume) - new /obj/item/food/snacks/weirdcheesewedge(location) + new /obj/item/food/weirdcheesewedge(location) /datum/chemical_reaction/hydrogenated_soybeanoil name = "Partially hydrogenated space-soybean oil" diff --git a/code/modules/reagents/chemistry/recipes/others.dm b/code/modules/reagents/chemistry/recipes/others.dm index e60da3a4409c..50c817a6d894 100644 --- a/code/modules/reagents/chemistry/recipes/others.dm +++ b/code/modules/reagents/chemistry/recipes/others.dm @@ -260,7 +260,7 @@ /datum/chemical_reaction/meatification/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) - new /obj/item/food/snacks/meat/slab/meatproduct(location) + new /obj/item/food/meat/slab/meatproduct(location) /datum/chemical_reaction/lye name = "lye" diff --git a/code/modules/reagents/chemistry/recipes/slime_extracts.dm b/code/modules/reagents/chemistry/recipes/slime_extracts.dm index d308b3d95394..5e1c90749583 100644 --- a/code/modules/reagents/chemistry/recipes/slime_extracts.dm +++ b/code/modules/reagents/chemistry/recipes/slime_extracts.dm @@ -38,7 +38,7 @@ /datum/chemical_reaction/slimemonkey/on_reaction(datum/reagents/holder) SSblackbox.record_feedback("tally", "slime_cores_used", 1, type) for(var/i = 1, i <= 3, i++) - var/obj/item/food/snacks/monkeycube/M = new /obj/item/food/snacks/monkeycube + var/obj/item/food/monkeycube/M = new /obj/item/food/monkeycube M.forceMove(get_turf(holder.my_atom)) //Green @@ -149,37 +149,37 @@ SSblackbox.record_feedback("tally", "slime_cores_used", 1, type) var/list/blocked = list( - /obj/item/food/snacks, - /obj/item/food/snacks/breadslice, - /obj/item/food/snacks/sliceable, - /obj/item/food/snacks/sliceable/pizza, - /obj/item/food/snacks/margheritapizzaslice, - /obj/item/food/snacks/meatpizzaslice, - /obj/item/food/snacks/mushroompizzaslice, - /obj/item/food/snacks/vegetablepizzaslice, - /obj/item/food/snacks/cheesepizzaslice, - /obj/item/food/snacks/garlicpizzaslice, - /obj/item/food/snacks/donkpocketpizzaslice, - /obj/item/food/snacks/dankpizzaslice, - /obj/item/food/snacks/macpizzaslice, - /obj/item/food/snacks/firecrackerpizzaslice, - /obj/item/food/snacks/pestopizzaslice, - /obj/item/food/snacks/pepperonipizzaslice, - /obj/item/food/snacks/meat, - /obj/item/food/snacks/meat/slab, - /obj/item/food/snacks/grown, - /obj/item/food/snacks/grown/shell, - /obj/item/food/snacks/grown/mushroom, - /obj/item/food/snacks/deepfryholder, - /obj/item/food/snacks/chinese, - /obj/item/food/snacks/human, - /obj/item/food/snacks/monstermeat, - /obj/item/food/snacks/meatsteak/stimulating, - /obj/item/food/snacks/egg/watcher + /obj/item/food, + /obj/item/food/breadslice, + /obj/item/food/sliceable, + /obj/item/food/sliceable/pizza, + /obj/item/food/margheritapizzaslice, + /obj/item/food/meatpizzaslice, + /obj/item/food/mushroompizzaslice, + /obj/item/food/vegetablepizzaslice, + /obj/item/food/cheesepizzaslice, + /obj/item/food/garlicpizzaslice, + /obj/item/food/donkpocketpizzaslice, + /obj/item/food/dankpizzaslice, + /obj/item/food/macpizzaslice, + /obj/item/food/firecrackerpizzaslice, + /obj/item/food/pestopizzaslice, + /obj/item/food/pepperonipizzaslice, + /obj/item/food/meat, + /obj/item/food/meat/slab, + /obj/item/food/grown, + /obj/item/food/grown/shell, + /obj/item/food/grown/mushroom, + /obj/item/food/deepfryholder, + /obj/item/food/chinese, + /obj/item/food/human, + /obj/item/food/monstermeat, + /obj/item/food/meatsteak/stimulating, + /obj/item/food/egg/watcher ) - blocked |= typesof(/obj/item/food/snacks/customizable) + blocked |= typesof(/obj/item/food/customizable) - var/list/borks = typesof(/obj/item/food/snacks) - blocked + var/list/borks = typesof(/obj/item/food) - blocked // BORK BORK BORK playsound(get_turf(holder.my_atom), 'sound/effects/phasein.ogg', 100, 1) diff --git a/code/modules/research/circuitprinter.dm b/code/modules/research/circuitprinter.dm index e24bb0303916..4728e195f695 100644 --- a/code/modules/research/circuitprinter.dm +++ b/code/modules/research/circuitprinter.dm @@ -75,15 +75,17 @@ using metal and glass, it uses glass and reagents (usually sulfuric acis). return round(A / max(1, (all_materials[M] * efficiency_coeff))) /obj/machinery/r_n_d/circuit_imprinter/attackby(obj/item/O as obj, mob/user as mob, params) - if(exchange_parts(user, O)) - return + if(istype(O, /obj/item/storage/part_replacer)) + return ..() + if(panel_open) to_chat(user, "You can't load [src] while it's opened.") return + if(O.is_open_container()) return FALSE - else - return ..() + + return ..() /obj/machinery/r_n_d/circuit_imprinter/crowbar_act(mob/living/user, obj/item/I) if(!panel_open) diff --git a/code/modules/research/designs/biogenerator_designs.dm b/code/modules/research/designs/biogenerator_designs.dm index a067cdbbbaec..4cfa6c723c94 100644 --- a/code/modules/research/designs/biogenerator_designs.dm +++ b/code/modules/research/designs/biogenerator_designs.dm @@ -56,7 +56,7 @@ id = "mcube" build_type = BIOGENERATOR materials = list(MAT_BIOMASS = 250) - build_path = /obj/item/food/snacks/monkeycube + build_path = /obj/item/food/monkeycube category = list("initial", "Food") /datum/design/farwa_cube @@ -64,7 +64,7 @@ id = "fcube" build_type = BIOGENERATOR materials = list(MAT_BIOMASS = 250) - build_path = /obj/item/food/snacks/monkeycube/farwacube + build_path = /obj/item/food/monkeycube/farwacube category = list("initial", "Food") /datum/design/wolpin_cube @@ -72,7 +72,7 @@ id = "wcube" build_type = BIOGENERATOR materials = list(MAT_BIOMASS = 250) - build_path = /obj/item/food/snacks/monkeycube/wolpincube + build_path = /obj/item/food/monkeycube/wolpincube category = list("initial", "Food") /datum/design/stok_cube @@ -80,7 +80,7 @@ id = "scube" build_type = BIOGENERATOR materials = list(MAT_BIOMASS = 250) - build_path = /obj/item/food/snacks/monkeycube/stokcube + build_path = /obj/item/food/monkeycube/stokcube category = list("initial", "Food") /datum/design/neaera_cube @@ -88,7 +88,7 @@ id = "ncube" build_type = BIOGENERATOR materials = list(MAT_BIOMASS = 250) - build_path = /obj/item/food/snacks/monkeycube/neaeracube + build_path = /obj/item/food/monkeycube/neaeracube category = list("initial", "Food") /datum/design/nian_wormecube @@ -96,7 +96,7 @@ id = "nwcube" build_type = BIOGENERATOR materials = list(MAT_BIOMASS = 250) - build_path = /obj/item/food/snacks/monkeycube/nian_wormecube + build_path = /obj/item/food/monkeycube/nian_wormecube category = list("initial", "Food") /datum/design/ez_nut diff --git a/code/modules/research/destructive_analyzer.dm b/code/modules/research/destructive_analyzer.dm index 4b1dd9d3eae5..ffb50d0c5e8d 100644 --- a/code/modules/research/destructive_analyzer.dm +++ b/code/modules/research/destructive_analyzer.dm @@ -49,6 +49,9 @@ Note: Must be placed within 3 tiles of the R&D Console /obj/machinery/r_n_d/destructive_analyzer/attackby(obj/item/O as obj, mob/user as mob, params) + if(istype(O, /obj/item/storage/part_replacer)) + return ..() + if(default_deconstruction_screwdriver(user, "d_analyzer_t", "d_analyzer", O)) if(linked_console) linked_console.linked_destroy = null @@ -73,13 +76,16 @@ Note: Must be placed within 3 tiles of the R&D Console if(!O.origin_tech) to_chat(user, "This doesn't seem to have a tech origin!") return + var/list/temp_tech = ConvertReqString2List(O.origin_tech) if(length(temp_tech) == 0) to_chat(user, "You cannot deconstruct this item!") return + if(!user.drop_item()) to_chat(user, "[O] is stuck to your hand, you cannot put it in [src]!") return + busy = TRUE loaded_item = O O.loc = src diff --git a/code/modules/research/experimentor.dm b/code/modules/research/experimentor.dm index 1784c5849709..edadddf3648f 100644 --- a/code/modules/research/experimentor.dm +++ b/code/modules/research/experimentor.dm @@ -99,8 +99,8 @@ return TRUE /obj/machinery/r_n_d/experimentor/attackby(obj/item/O, mob/user, params) - if(exchange_parts(user, O)) - return + if(istype(O, /obj/item/storage/part_replacer)) + return ..() if(!checkCircumstances(O)) to_chat(user, "[O] is not yet valid for [src] and must be completed!") @@ -118,12 +118,15 @@ if(!O.origin_tech) to_chat(user, "This doesn't seem to have a tech origin!") return + var/list/temp_tech = ConvertReqString2List(O.origin_tech) if(length(temp_tech) == 0) to_chat(user, "You cannot experiment on this item!") return + if(!user.drop_item()) return + loaded_item = O O.loc = src to_chat(user, "You add [O] to the machine.") diff --git a/code/modules/research/protolathe.dm b/code/modules/research/protolathe.dm index 8708de882fca..eb0e7f7c2c9a 100644 --- a/code/modules/research/protolathe.dm +++ b/code/modules/research/protolathe.dm @@ -77,23 +77,23 @@ Note: Must be placed west/left of and R&D console to function. return A /obj/machinery/r_n_d/protolathe/attackby(obj/item/O as obj, mob/user as mob, params) + if(istype(O, /obj/item/storage/part_replacer)) + return ..() + if(default_deconstruction_screwdriver(user, "protolathe_t", "protolathe", O)) if(linked_console) linked_console.linked_lathe = null linked_console = null return FALSE - if(exchange_parts(user, O)) - return FALSE - if(panel_open) to_chat(user, "You can't load [src] while it's opened.") return TRUE if(O.is_open_container()) return FALSE - else - return ..() + + return ..() /obj/machinery/r_n_d/protolathe/crowbar_act(mob/living/user, obj/item/I) if(!panel_open) diff --git a/code/modules/research/server.dm b/code/modules/research/server.dm index bf5e7e72d116..7cad823802a4 100644 --- a/code/modules/research/server.dm +++ b/code/modules/research/server.dm @@ -147,11 +147,6 @@ removed.set_temperature(min((removed.temperature() * heat_capacity + server.heating_power) / heat_capacity, 1000)) env.merge(removed) -/obj/machinery/r_n_d/server/attackby(obj/item/O as obj, mob/user as mob, params) - if(exchange_parts(user, O)) - return TRUE - return ..() - /obj/machinery/r_n_d/server/crowbar_act(mob/living/user, obj/item/I) if(!panel_open) return diff --git a/code/modules/research/xenobiology/xenobio_camera.dm b/code/modules/research/xenobiology/xenobio_camera.dm index 8e7983677ea7..321ac482dce4 100644 --- a/code/modules/research/xenobiology/xenobio_camera.dm +++ b/code/modules/research/xenobiology/xenobio_camera.dm @@ -177,7 +177,7 @@ return ..() /obj/machinery/computer/camera_advanced/xenobio/attackby(obj/item/O, mob/user, params) - if(istype(O, /obj/item/food/snacks/monkeycube)) + if(istype(O, /obj/item/food/monkeycube)) if(user.drop_item()) monkeys++ to_chat(user, "You feed [O] to [src]. It now has [monkeys] monkey cubes stored.") @@ -192,7 +192,7 @@ else if(istype(O, /obj/item/storage/bag) || istype(O, /obj/item/storage/box)) var/obj/item/storage/P = O var/loaded = 0 - for(var/obj/item/food/snacks/monkeycube/MC in P.contents) + for(var/obj/item/food/monkeycube/MC in P.contents) loaded = 1 monkeys++ P.remove_from_storage(MC) @@ -282,17 +282,17 @@ else if(X.monkeys >= 1) var/mob/living/carbon/human/monkey/food switch(recycler.cube_type) - if(/obj/item/food/snacks/monkeycube) // Regular monkey + if(/obj/item/food/monkeycube) // Regular monkey food = new /mob/living/carbon/human/monkey(remote_eye.loc) - if(/obj/item/food/snacks/monkeycube/nian_wormecube) // Worme + if(/obj/item/food/monkeycube/nian_wormecube) // Worme food = new /mob/living/carbon/human/nian_worme(remote_eye.loc) - if(/obj/item/food/snacks/monkeycube/farwacube) // Farwa + if(/obj/item/food/monkeycube/farwacube) // Farwa food = new /mob/living/carbon/human/farwa(remote_eye.loc) - if(/obj/item/food/snacks/monkeycube/stokcube) // Stok + if(/obj/item/food/monkeycube/stokcube) // Stok food = new /mob/living/carbon/human/stok(remote_eye.loc) - if(/obj/item/food/snacks/monkeycube/neaeracube) // Neara + if(/obj/item/food/monkeycube/neaeracube) // Neara food = new /mob/living/carbon/human/neara(remote_eye.loc) - if(/obj/item/food/snacks/monkeycube/wolpincube) // Wolpin + if(/obj/item/food/monkeycube/wolpincube) // Wolpin food = new /mob/living/carbon/human/wolpin(remote_eye.loc) SSmobs.cubemonkeys += food food.LAssailant = C @@ -494,17 +494,17 @@ if(X.monkeys >= 1) var/mob/living/carbon/human/monkey/food switch(recycler.cube_type) - if(/obj/item/food/snacks/monkeycube) // Regular monkey + if(/obj/item/food/monkeycube) // Regular monkey food = new /mob/living/carbon/human/monkey(T) - if(/obj/item/food/snacks/monkeycube/nian_wormecube) // Worme + if(/obj/item/food/monkeycube/nian_wormecube) // Worme food = new /mob/living/carbon/human/nian_worme(T) - if(/obj/item/food/snacks/monkeycube/farwacube) // Farwa + if(/obj/item/food/monkeycube/farwacube) // Farwa food = new /mob/living/carbon/human/farwa(T) - if(/obj/item/food/snacks/monkeycube/stokcube) // Stok + if(/obj/item/food/monkeycube/stokcube) // Stok food = new /mob/living/carbon/human/stok(T) - if(/obj/item/food/snacks/monkeycube/neaeracube) // Neara + if(/obj/item/food/monkeycube/neaeracube) // Neara food = new /mob/living/carbon/human/neara(T) - if(/obj/item/food/snacks/monkeycube/wolpincube) // Wolpin + if(/obj/item/food/monkeycube/wolpincube) // Wolpin food = new /mob/living/carbon/human/wolpin(T) food.LAssailant = C X.monkeys-- diff --git a/code/modules/ruins/lavalandruin_code/puzzle.dm b/code/modules/ruins/lavalandruin_code/puzzle.dm index 882390fe9f56..5ee35c7fa259 100644 --- a/code/modules/ruins/lavalandruin_code/puzzle.dm +++ b/code/modules/ruins/lavalandruin_code/puzzle.dm @@ -7,7 +7,7 @@ var/list/elements var/floor_type = /turf/simulated/floor/vault/lavaland_air var/finished = FALSE - var/reward_type = /obj/item/food/snacks/cookie + var/reward_type = /obj/item/food/cookie var/element_type = /obj/structure/puzzle_element var/auto_setup = TRUE var/empty_tile_id diff --git a/code/modules/ruins/lavalandruin_code/seed_vault.dm b/code/modules/ruins/lavalandruin_code/seed_vault.dm index 54b7f64c2f54..261c22ef4882 100644 --- a/code/modules/ruins/lavalandruin_code/seed_vault.dm +++ b/code/modules/ruins/lavalandruin_code/seed_vault.dm @@ -2,7 +2,7 @@ name = "seed vault seeds" lootcount = 1 - loot = list(/obj/item/food/snacks/grown/mushroom/glowshroom/glowcap = 10, + loot = list(/obj/item/food/grown/mushroom/glowshroom/glowcap = 10, /obj/item/seeds/cherry/bomb = 10, /obj/item/seeds/berry/glow = 10, /obj/item/seeds/sunflower/moonflower = 8 diff --git a/code/modules/station_goals/bluespace_tap.dm b/code/modules/station_goals/bluespace_tap.dm index 26e608a566ab..c488d6fd82fa 100644 --- a/code/modules/station_goals/bluespace_tap.dm +++ b/code/modules/station_goals/bluespace_tap.dm @@ -153,25 +153,25 @@ name = "fancy food" lootcount = 3 loot = list( - /obj/item/food/snacks/wingfangchu, - /obj/item/food/snacks/hotdog, - /obj/item/food/snacks/sliceable/turkey, - /obj/item/food/snacks/plumphelmetbiscuit, - /obj/item/food/snacks/appletart, - /obj/item/food/snacks/sliceable/cheesecake, - /obj/item/food/snacks/sliceable/bananacake, - /obj/item/food/snacks/sliceable/chocolatecake, - /obj/item/food/snacks/soup/meatballsoup, - /obj/item/food/snacks/soup/mysterysoup, - /obj/item/food/snacks/soup/stew, - /obj/item/food/snacks/soup/hotchili, - /obj/item/food/snacks/burrito, - /obj/item/food/snacks/fishburger, - /obj/item/food/snacks/cubancarp, - /obj/item/food/snacks/fishandchips, - /obj/item/food/snacks/meatpie, + /obj/item/food/wingfangchu, + /obj/item/food/hotdog, + /obj/item/food/sliceable/turkey, + /obj/item/food/plumphelmetbiscuit, + /obj/item/food/appletart, + /obj/item/food/sliceable/cheesecake, + /obj/item/food/sliceable/bananacake, + /obj/item/food/sliceable/chocolatecake, + /obj/item/food/soup/meatballsoup, + /obj/item/food/soup/mysterysoup, + /obj/item/food/soup/stew, + /obj/item/food/soup/hotchili, + /obj/item/food/burrito, + /obj/item/food/fishburger, + /obj/item/food/cubancarp, + /obj/item/food/fishandchips, + /obj/item/food/meatpie, /obj/item/pizzabox/hawaiian, //it ONLY gives hawaiian. MUHAHAHA - /obj/item/food/snacks/sliceable/xenomeatbread //maybe add some dangerous/special food here, ie robobuger? + /obj/item/food/sliceable/xenomeatbread //maybe add some dangerous/special food here, ie robobuger? ) #define kW *1000 diff --git a/code/modules/station_goals/secondary/kitchen/random_bulk_food.dm b/code/modules/station_goals/secondary/kitchen/random_bulk_food.dm index cc3296af2f17..65141215e627 100644 --- a/code/modules/station_goals/secondary/kitchen/random_bulk_food.dm +++ b/code/modules/station_goals/secondary/kitchen/random_bulk_food.dm @@ -3,14 +3,14 @@ department = "Kitchen" progress_type = /datum/secondary_goal_progress/random_bulk_food abstract = FALSE - var/obj/item/food/snacks/food_type + var/obj/item/food/food_type var/amount var/reward /datum/station_goal/secondary/random_bulk_food/randomize_params() var/list/valid_food = list() - for(var/S in subtypesof(/obj/item/food/snacks)) - var/obj/item/food/snacks/candidate = S + for(var/S in subtypesof(/obj/item/food)) + var/obj/item/food/candidate = S if(initial(candidate.goal_difficulty) == FOOD_GOAL_SKIP) continue if(initial(candidate.goal_difficulty) == FOOD_GOAL_EXCESSIVE) @@ -18,7 +18,7 @@ valid_food += candidate if(!valid_food) - food_type = /obj/item/food/snacks/cheesewedge + food_type = /obj/item/food/cheesewedge amount = 50 return @@ -39,7 +39,7 @@ /datum/secondary_goal_progress/random_bulk_food - var/obj/item/food/snacks/food_type + var/obj/item/food/food_type var/needed var/sent = 0 var/sent_this_shipment = 0 diff --git a/code/modules/station_goals/secondary/science/random_ripley.dm b/code/modules/station_goals/secondary/science/random_ripley.dm index 33d63b6cf32b..3486ea8b3eef 100644 --- a/code/modules/station_goals/secondary/science/random_ripley.dm +++ b/code/modules/station_goals/secondary/science/random_ripley.dm @@ -38,7 +38,7 @@ /datum/secondary_goal_progress/random_ripley - var/obj/item/food/snacks/food_type + var/obj/item/food/food_type var/list/modules var/sent = FALSE diff --git a/code/modules/station_goals/shield.dm b/code/modules/station_goals/shield.dm index a1e487034ab4..aef290bc8493 100644 --- a/code/modules/station_goals/shield.dm +++ b/code/modules/station_goals/shield.dm @@ -173,7 +173,7 @@ if(!emagged && space_los(M)) Beam(get_turf(M), icon_state = "sat_beam", time = 5, maxdistance = kill_range) if(istype(M, /obj/effect/space_dust/meaty)) - new /obj/item/food/snacks/meatsteak(get_turf(M)) + new /obj/item/food/meatsteak(get_turf(M)) qdel(M) /obj/machinery/satellite/meteor_shield/toggle(user) diff --git a/code/modules/supply/supply_packs/pack_organic.dm b/code/modules/supply/supply_packs/pack_organic.dm index 017ad9b3324e..eb2ddabe4dc0 100644 --- a/code/modules/supply/supply_packs/pack_organic.dm +++ b/code/modules/supply/supply_packs/pack_organic.dm @@ -19,10 +19,10 @@ /obj/item/mixing_bowl, /obj/item/reagent_containers/condiment/enzyme, /obj/item/reagent_containers/condiment/sugar, - /obj/item/food/snacks/meat/monkey, - /obj/item/food/snacks/grown/banana, - /obj/item/food/snacks/grown/banana, - /obj/item/food/snacks/grown/banana) + /obj/item/food/meat/monkey, + /obj/item/food/grown/banana, + /obj/item/food/grown/banana, + /obj/item/food/grown/banana) cost = 250 containername = "food crate" announce_beacons = list("Kitchen" = list("Kitchen")) @@ -40,18 +40,18 @@ /// its a bit hacky... /datum/supply_packs/misc/randomised/ingredients num_contained = 25 - contains = list(/obj/item/food/snacks/grown/wheat, - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/grown/potato, - /obj/item/food/snacks/grown/carrot, - /obj/item/food/snacks/grown/pumpkin, - /obj/item/food/snacks/grown/chili, - /obj/item/food/snacks/grown/cocoapod, - /obj/item/food/snacks/grown/corn, - /obj/item/food/snacks/grown/eggplant, - /obj/item/food/snacks/grown/apple, - /obj/item/food/snacks/grown/banana, - /obj/item/food/snacks/grown/cherries) + contains = list(/obj/item/food/grown/wheat, + /obj/item/food/grown/tomato, + /obj/item/food/grown/potato, + /obj/item/food/grown/carrot, + /obj/item/food/grown/pumpkin, + /obj/item/food/grown/chili, + /obj/item/food/grown/cocoapod, + /obj/item/food/grown/corn, + /obj/item/food/grown/eggplant, + /obj/item/food/grown/apple, + /obj/item/food/grown/banana, + /obj/item/food/grown/cherries) name = "Ingredient Crate" cost = 300 containername = "ingredient crate" diff --git a/code/modules/surgery/organs/organ_datums/heart_datum.dm b/code/modules/surgery/organs/organ_datums/heart_datum.dm index 1c18c21bed53..d32081ee6b47 100644 --- a/code/modules/surgery/organs/organ_datums/heart_datum.dm +++ b/code/modules/surgery/organs/organ_datums/heart_datum.dm @@ -39,7 +39,7 @@ if(!linked_organ.owner) change_beating(FALSE) -/datum/organ/heart/on_prepare_eat(obj/item/food/snacks/organ/snorgan) +/datum/organ/heart/on_prepare_eat(obj/item/food/organ/snorgan) snorgan.icon_state = linked_organ.dead_icon /// A subtype that is always beating. Abductor glands and demon hearts use this. diff --git a/code/modules/surgery/organs/organ_datums/lung_datum.dm b/code/modules/surgery/organs/organ_datums/lung_datum.dm index cd63160e00bd..ddf0a8f249a2 100644 --- a/code/modules/surgery/organs/organ_datums/lung_datum.dm +++ b/code/modules/surgery/organs/organ_datums/lung_datum.dm @@ -308,7 +308,7 @@ linked_organ.owner.AdjustLoseBreath(10 SECONDS) -/datum/organ/lungs/on_prepare_eat(obj/item/food/snacks/organ/snorgan) +/datum/organ/lungs/on_prepare_eat(obj/item/food/organ/snorgan) snorgan.reagents.add_reagent("salbutamol", 5) diff --git a/code/modules/surgery/organs/organ_datums/organ_datum.dm b/code/modules/surgery/organs/organ_datums/organ_datum.dm index 7872b984af11..a48df727a1e0 100644 --- a/code/modules/surgery/organs/organ_datums/organ_datum.dm +++ b/code/modules/surgery/organs/organ_datums/organ_datum.dm @@ -32,5 +32,5 @@ /datum/organ/proc/on_necrotize() return FALSE -/datum/organ/proc/on_prepare_eat(obj/item/food/snacks/organ/snorgan) +/datum/organ/proc/on_prepare_eat(obj/item/food/organ/snorgan) return FALSE diff --git a/code/modules/surgery/organs/organ_internal.dm b/code/modules/surgery/organs/organ_internal.dm index c9223594c2f6..c53f1285d552 100644 --- a/code/modules/surgery/organs/organ_internal.dm +++ b/code/modules/surgery/organs/organ_internal.dm @@ -164,7 +164,7 @@ /obj/item/organ/internal/proc/prepare_eat() if(is_robotic()) return //no eating cybernetic implants! - var/obj/item/food/snacks/organ/S = new + var/obj/item/food/organ/S = new S.name = name S.desc = desc S.icon = icon @@ -191,7 +191,7 @@ /obj/item/organ/internal/attack(mob/living/carbon/M, mob/user) if(M == user && ishuman(user)) var/mob/living/carbon/human/H = user - var/obj/item/food/snacks/S = prepare_eat() + var/obj/item/food/S = prepare_eat() if(S) H.drop_item() H.put_in_active_hand(S) diff --git a/code/modules/surgery/organs_internal.dm b/code/modules/surgery/organs_internal.dm index ad26db7047a9..b850e789f921 100644 --- a/code/modules/surgery/organs_internal.dm +++ b/code/modules/surgery/organs_internal.dm @@ -388,11 +388,11 @@ name = "implant an organ" allowed_tools = list( /obj/item/organ/internal = 100, - /obj/item/food/snacks/organ = 0 // there for the flavor text + /obj/item/food/organ = 0 // there for the flavor text ) /datum/surgery_step/internal/manipulate_organs/implant/begin_step(mob/living/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) - if(istype(tool, /obj/item/food/snacks/organ)) + if(istype(tool, /obj/item/food/organ)) to_chat(user, "[tool] was bitten by someone! It's too damaged to use!") return SURGERY_BEGINSTEP_SKIP diff --git a/code/modules/telesci/telepad.dm b/code/modules/telesci/telepad.dm index 002530787f0b..e6975d8b1951 100644 --- a/code/modules/telesci/telepad.dm +++ b/code/modules/telesci/telepad.dm @@ -35,11 +35,6 @@ E += C.rating efficiency = E -/obj/machinery/telepad/attackby(obj/item/I, mob/user, params) - if(exchange_parts(user, I)) - return - return ..() - /obj/machinery/telepad/screwdriver_act(mob/user, obj/item/I) . = TRUE default_deconstruction_screwdriver(user, "pad-idle-o", "pad-idle", I) diff --git a/config/example/config.toml b/config/example/config.toml index 6be7e6d2adae..3acd78d30948 100644 --- a/config/example/config.toml +++ b/config/example/config.toml @@ -694,6 +694,7 @@ active_space_ruins = [ "_maps/map_files/RandomRuins/SpaceRuins/voyager.dmm", "_maps/map_files/RandomRuins/SpaceRuins/wreckedcargoship.dmm", "_maps/map_files/RandomRuins/SpaceRuins/abandoned_engi_sat.dmm", + "_maps/map_files/RandomRuins/SpaceRuins/telecomns_returns.dmm", "_maps/map_files/RandomRuins/SpaceRuins/casino.dmm", "_maps/map_files/RandomRuins/SpaceRuins/rocky_motel.dmm", ## SS220 Ruins diff --git a/config/names/codeword_locations.txt b/config/names/codeword_locations.txt new file mode 100644 index 000000000000..72ae2c75747b --- /dev/null +++ b/config/names/codeword_locations.txt @@ -0,0 +1,22 @@ +armory +arrivals +atmospherics +bar +botany +bridge +brig +cargo +chemistry +departures +dormitories +engineering +genetics +holodeck +kitchen +library +maintenance +medbay +morgue +robotics +science +xenobiology \ No newline at end of file diff --git a/config/names/codeword_nouns.txt b/config/names/codeword_nouns.txt new file mode 100644 index 000000000000..8538ca0dd575 --- /dev/null +++ b/config/names/codeword_nouns.txt @@ -0,0 +1,51 @@ +anger +beauty +belief +box +bravery +brilliance +camera +charity +compassion +courage +crate +culture +deceit +dedication +diamond +dream +education +faith +friendship +glass +gold +hate +honesty +hospitality +information +integrity +iron +justice +knowledge +laser +leisure +liberty +love +loyalty +misery +pain +peace +plasma +pride +progress +relaxation +robot +skill +success +sympathy +thought +titanium +trouble +trust +truth +wire \ No newline at end of file diff --git a/icons/mob/clothing/back.dmi b/icons/mob/clothing/back.dmi index 3eea2f356ae1..da1d99887947 100644 Binary files a/icons/mob/clothing/back.dmi and b/icons/mob/clothing/back.dmi differ diff --git a/icons/obj/airlock_spawner.dmi b/icons/obj/airlock_spawner.dmi index 9815b3f42b1c..d77e3685c986 100644 Binary files a/icons/obj/airlock_spawner.dmi and b/icons/obj/airlock_spawner.dmi differ diff --git a/icons/obj/assemblies.dmi b/icons/obj/assemblies.dmi index 6834c81aa629..782b8a68a5ca 100644 Binary files a/icons/obj/assemblies.dmi and b/icons/obj/assemblies.dmi differ diff --git a/icons/obj/device.dmi b/icons/obj/device.dmi index a5928c58d81a..0d83d8d98168 100644 Binary files a/icons/obj/device.dmi and b/icons/obj/device.dmi differ diff --git a/icons/obj/stationobjs.dmi b/icons/obj/stationobjs.dmi index 6da7f5315653..38a92bfcb7ae 100644 Binary files a/icons/obj/stationobjs.dmi and b/icons/obj/stationobjs.dmi differ diff --git a/modular_ss220/food/code/drinks.dm b/modular_ss220/food/code/drinks.dm index 4d6b2a9f25c8..70aafa4bd9e7 100644 --- a/modular_ss220/food/code/drinks.dm +++ b/modular_ss220/food/code/drinks.dm @@ -654,7 +654,7 @@ playsound(src, 'sound/effects/bubbles.ogg', 50, TRUE) /obj/structure/fermenting_barrel/attackby(obj/item/I, mob/user, params) - if(istype(I, /obj/item/food/snacks/sliceable/bread)) + if(istype(I, /obj/item/food/sliceable/bread)) if(!user.drop_item()) to_chat(user, "[I] is stuck to your hand!") return FALSE diff --git a/modular_ss220/food/code/food/food.dm b/modular_ss220/food/code/food/food.dm index 10a89690332a..15a4896db08c 100644 --- a/modular_ss220/food/code/food/food.dm +++ b/modular_ss220/food/code/food/food.dm @@ -1,7 +1,7 @@ // Reagent Grinder /obj/machinery/reagentgrinder/Initialize(mapload) . = ..() - blend_items = list(/obj/item/food/snacks/grown/buckwheat = list("buckwheat" = -5)) + blend_items + blend_items = list(/obj/item/food/grown/buckwheat = list("buckwheat" = -5)) + blend_items // Vending /obj/machinery/economy/vending/dinnerware/Initialize(mapload) @@ -11,15 +11,15 @@ /obj/machinery/economy/vending/snack/Initialize(mapload) products += list( - /obj/item/food/snacks/doshik = 6, - /obj/item/food/snacks/doshik_spicy = 6,) + /obj/item/food/doshik = 6, + /obj/item/food/doshik_spicy = 6,) prices += list( - /obj/item/food/snacks/doshik = 100, - /obj/item/food/snacks/doshik_spicy = 120,) + /obj/item/food/doshik = 100, + /obj/item/food/doshik_spicy = 120,) . = ..() // Boiled Buckwheat -/obj/item/food/snacks/boiledbuckwheat +/obj/item/food/boiledbuckwheat name = "варёная гречка" desc = "Это просто варёная гречка, ничего необычного." icon = 'modular_ss220/food/icons/food.dmi' @@ -31,10 +31,10 @@ /datum/recipe/microwave/boiledbuckwheat reagents = list("water" = 5, "buckwheat" = 10) - result = /obj/item/food/snacks/boiledbuckwheat + result = /obj/item/food/boiledbuckwheat // Merchant Buckwheat -/obj/item/food/snacks/buckwheat_merchant +/obj/item/food/buckwheat_merchant name = "гречка по-купечески" desc = "Тушёная гречка с овощами и мясом." icon = 'modular_ss220/food/icons/food.dmi' @@ -47,13 +47,13 @@ /datum/recipe/microwave/buckwheat_merchant reagents = list("water" = 5, "buckwheat" = 10) items = list( - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/grown/carrot, - /obj/item/food/snacks/meat) - result = /obj/item/food/snacks/buckwheat_merchant + /obj/item/food/grown/tomato, + /obj/item/food/grown/carrot, + /obj/item/food/meat) + result = /obj/item/food/buckwheat_merchant // Olivier Salad -/obj/item/food/snacks/oliviersalad +/obj/item/food/oliviersalad name = "салат оливье" desc = "Не трогай, это на новый год!" icon = 'modular_ss220/food/icons/food.dmi' @@ -67,15 +67,15 @@ /datum/recipe/microwave/oliviersalad reagents = list("cream" = 10, "sodiumchloride" = 5) items = list( - /obj/item/food/snacks/pickles, - /obj/item/food/snacks/boiledegg, - /obj/item/food/snacks/grown/potato, - /obj/item/food/snacks/grown/carrot, - /obj/item/food/snacks/sausage) - result = /obj/item/food/snacks/oliviersalad + /obj/item/food/pickles, + /obj/item/food/boiledegg, + /obj/item/food/grown/potato, + /obj/item/food/grown/carrot, + /obj/item/food/sausage) + result = /obj/item/food/oliviersalad // Weird Olivier Salad -/obj/item/food/snacks/weirdoliviersalad +/obj/item/food/weirdoliviersalad name = "странный салат оливье" desc = "Что ты сделал с этим оливье, чудовище?" icon = 'modular_ss220/food/icons/food.dmi' @@ -89,16 +89,16 @@ /datum/recipe/microwave/weirdoliviersalad reagents = list("cream" = 10, "sodiumchloride" = 5) items = list( - /obj/item/food/snacks/pickles, - /obj/item/food/snacks/boiledegg, - /obj/item/food/snacks/grown/potato, - /obj/item/food/snacks/grown/carrot, - /obj/item/food/snacks/sausage, - /obj/item/food/snacks/grown/apple) - result = /obj/item/food/snacks/weirdoliviersalad + /obj/item/food/pickles, + /obj/item/food/boiledegg, + /obj/item/food/grown/potato, + /obj/item/food/grown/carrot, + /obj/item/food/sausage, + /obj/item/food/grown/apple) + result = /obj/item/food/weirdoliviersalad // Vegetable Salad -/obj/item/food/snacks/vegisalad +/obj/item/food/vegisalad name = "овощной салат" desc = "Идеальная комбинация томатов и огурцов." icon = 'modular_ss220/food/icons/food.dmi' @@ -112,23 +112,23 @@ /datum/recipe/microwave/vegisalad reagents = list("cream" = 10, "sodiumchloride" = 5) items = list( - /obj/item/food/snacks/grown/cucumber, - /obj/item/food/snacks/grown/tomato) - result = /obj/item/food/snacks/vegisalad + /obj/item/food/grown/cucumber, + /obj/item/food/grown/tomato) + result = /obj/item/food/vegisalad // Pickles -/obj/item/food/snacks/pickles +/obj/item/food/pickles name = "маринованные огурцы" desc = "Черт, тут много маринованных огурчиков." icon = 'modular_ss220/food/icons/food.dmi' icon_state = "pickles" - trash = /obj/item/food/snacks/brine + trash = /obj/item/food/brine filling_color = "#C2CFAB" bitesize = 8 list_reagents = list("nutriment" = 2, "vitamin" = 1) tastes = list("маринованые огурцы" = 1) -/obj/item/food/snacks/brine +/obj/item/food/brine name = "рассол" desc = "Самое то после бурной ночи." consume_sound = 'sound/items/drink.ogg' @@ -141,9 +141,9 @@ /datum/crafting_recipe/pickles name = "Маринованные огурцы" - result = list(/obj/item/food/snacks/pickles) + result = list(/obj/item/food/pickles) reqs = list( - /obj/item/food/snacks/grown/cucumber = 3, + /obj/item/food/grown/cucumber = 3, /datum/reagent/water = 10, /datum/reagent/consumable/sodiumchloride = 10) time = 1 SECONDS @@ -151,7 +151,7 @@ subcategory = CAT_MISCFOOD // Pickle Soup -/obj/item/food/snacks/soup/rassolnik +/obj/item/food/soup/rassolnik name = "рассольник" desc = "Популярен в СССП." icon = 'modular_ss220/food/icons/food.dmi' @@ -163,12 +163,12 @@ /datum/recipe/microwave/rassolnik reagents = list("water" = 10, "rice" = 5) items = list( - /obj/item/food/snacks/grown/potato, - /obj/item/food/snacks/grown/cucumber) - result = /obj/item/food/snacks/soup/rassolnik + /obj/item/food/grown/potato, + /obj/item/food/grown/cucumber) + result = /obj/item/food/soup/rassolnik // Doner -/obj/item/food/snacks/shawarma +/obj/item/food/shawarma name = "шаурма" desc = "Великолепное сочетание мяса с гриля и свежих овощей. Не спрашивайте о мясе." icon = 'modular_ss220/food/icons/food.dmi' @@ -180,17 +180,17 @@ /datum/recipe/microwave/shawarma reagents = list("sodiumchloride" = 1, "blackpepper" = 1) items = list( - /obj/item/food/snacks/meatsteak, - /obj/item/food/snacks/meatsteak, - /obj/item/food/snacks/grown/cabbage, - /obj/item/food/snacks/onion_slice, - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/grown/carrot, - /obj/item/food/snacks/sliceable/flatdough) - result = /obj/item/food/snacks/shawarma + /obj/item/food/meatsteak, + /obj/item/food/meatsteak, + /obj/item/food/grown/cabbage, + /obj/item/food/onion_slice, + /obj/item/food/grown/tomato, + /obj/item/food/grown/carrot, + /obj/item/food/sliceable/flatdough) + result = /obj/item/food/shawarma // Doner - Cheese -/obj/item/food/snacks/doner_cheese +/obj/item/food/doner_cheese name = "сырная шаурма" desc = "Фирменное блюдо от шеф-повара - мясо с гриля и свежие овощи с теплым сырным соусом. Вкусно!" icon = 'modular_ss220/food/icons/food.dmi' @@ -202,17 +202,17 @@ /datum/recipe/microwave/doner_cheese reagents = list("sodiumchloride" = 1, "blackpepper" = 1) items = list( - /obj/item/food/snacks/meatsteak, - /obj/item/food/snacks/meatsteak, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/grown/cabbage, - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/sliceable/flatdough) - result = /obj/item/food/snacks/doner_cheese + /obj/item/food/meatsteak, + /obj/item/food/meatsteak, + /obj/item/food/cheesewedge, + /obj/item/food/cheesewedge, + /obj/item/food/grown/cabbage, + /obj/item/food/grown/tomato, + /obj/item/food/sliceable/flatdough) + result = /obj/item/food/doner_cheese // Doner - Mushroom -/obj/item/food/snacks/doner_mushroom +/obj/item/food/doner_mushroom name = "шаурма с грибами" desc = "Мясо с гриля, свежие овощи и грибы. Грибы немного вытеснили мясо, но всё так же вкусно!" icon = 'modular_ss220/food/icons/food.dmi' @@ -224,19 +224,19 @@ /datum/recipe/microwave/doner_mushroom reagents = list("sodiumchloride" = 1, "blackpepper" = 1) items = list( - /obj/item/food/snacks/meatsteak, - /obj/item/food/snacks/grown/mushroom, - /obj/item/food/snacks/grown/mushroom, - /obj/item/food/snacks/grown/mushroom, - /obj/item/food/snacks/grown/cabbage, - /obj/item/food/snacks/onion_slice, - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/grown/carrot, - /obj/item/food/snacks/sliceable/flatdough) - result = /obj/item/food/snacks/doner_mushroom + /obj/item/food/meatsteak, + /obj/item/food/grown/mushroom, + /obj/item/food/grown/mushroom, + /obj/item/food/grown/mushroom, + /obj/item/food/grown/cabbage, + /obj/item/food/onion_slice, + /obj/item/food/grown/tomato, + /obj/item/food/grown/carrot, + /obj/item/food/sliceable/flatdough) + result = /obj/item/food/doner_mushroom // Doner - Vegetable -/obj/item/food/snacks/doner_vegan +/obj/item/food/doner_vegan name = "овощная шаурма" desc = "Свежие овощи, завернутые в длинный рулет. Мясо в комплект не входит!" icon = 'modular_ss220/food/icons/food.dmi' @@ -248,30 +248,30 @@ /datum/recipe/microwave/doner_vegan reagents = list("sodiumchloride" = 1, "blackpepper" = 1) items = list( - /obj/item/food/snacks/grown/cabbage, - /obj/item/food/snacks/onion_slice, - /obj/item/food/snacks/onion_slice, - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/grown/carrot, - /obj/item/food/snacks/grown/carrot, - /obj/item/food/snacks/sliceable/flatdough) - result = /obj/item/food/snacks/doner_vegan + /obj/item/food/grown/cabbage, + /obj/item/food/onion_slice, + /obj/item/food/onion_slice, + /obj/item/food/grown/tomato, + /obj/item/food/grown/tomato, + /obj/item/food/grown/carrot, + /obj/item/food/grown/carrot, + /obj/item/food/sliceable/flatdough) + result = /obj/item/food/doner_vegan // Slime Pie -/obj/item/food/snacks/sliceable/slimepie +/obj/item/food/sliceable/slimepie name = "слаймовый пирог" desc = "Блюрп блоб блуп блеп блоп. Можно нарезать." icon = 'modular_ss220/food/icons/food.dmi' icon_state = "slimepie" - slice_path = /obj/item/food/snacks/slimepieslice + slice_path = /obj/item/food/slimepieslice slices_num = 5 bitesize = 3 filling_color = "#00d9ff" list_reagents = list("nutriment" = 12, "vitamin" = 4) tastes = list("слизь" = 5, "сладость" = 1, "желе" = 1) -/obj/item/food/snacks/slimepieslice +/obj/item/food/slimepieslice name = "кусочек слаймового пирога" desc = "Блюрп блоб блуп блеп блоп." icon = 'modular_ss220/food/icons/food.dmi' @@ -283,10 +283,10 @@ /datum/recipe/oven/slimepie reagents = list("custard" = 1, "milk" = 5, "sugar" = 15) items = list(/obj/item/organ/internal/brain/slime) - result = /obj/item/food/snacks/sliceable/slimepie + result = /obj/item/food/sliceable/slimepie // Kidan Ragu -/obj/item/food/snacks/kidanragu +/obj/item/food/kidanragu name = "острое хитиновое рагу" desc = "Рагу из очень жесткого хитинового мяса и тушеных овощей." icon = 'modular_ss220/food/icons/food.dmi' @@ -298,25 +298,25 @@ reagents = list("water" = 10, "sodiumchloride" = 1) items = list( /obj/item/organ/internal/heart/kidan, - /obj/item/food/snacks/grown/potato, - /obj/item/food/snacks/grown/potato, - /obj/item/food/snacks/grown/carrot, - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/grown/chili) - result = /obj/item/food/snacks/kidanragu + /obj/item/food/grown/potato, + /obj/item/food/grown/potato, + /obj/item/food/grown/carrot, + /obj/item/food/grown/tomato, + /obj/item/food/grown/chili) + result = /obj/item/food/kidanragu // Fried Unathi Meat -/obj/item/food/snacks/sliceable/lizard +/obj/item/food/sliceable/lizard name = "жареное мясо унатха" desc = "Сочный стейк из мяса крупной ящерицы, вызывающий желание полежать на теплых камнях. Можно нарезать." icon = 'modular_ss220/food/icons/food.dmi' icon_state = "lizard_steak" - slice_path = /obj/item/food/snacks/lizardslice + slice_path = /obj/item/food/lizardslice slices_num = 5 list_reagents = list("protein" = 20, "nutriment" = 10, "vitamin" = 5) tastes = list("мясо ящерицы" = 4, "курятина" = 2) -/obj/item/food/snacks/lizardslice +/obj/item/food/lizardslice name = "стейк из унатха" desc = "Порция мяса унатхи." icon = 'modular_ss220/food/icons/food.dmi' @@ -327,7 +327,7 @@ /datum/deepfryer_special/unathi input = /obj/item/organ/external - output = /obj/item/food/snacks/sliceable/lizard + output = /obj/item/food/sliceable/lizard /datum/deepfryer_special/unathi/validate(obj/item/I) if(!..()) @@ -336,7 +336,7 @@ return istype(E.dna.species, /datum/species/unathi) // Tajaroni -/obj/item/food/snacks/tajaroni +/obj/item/food/tajaroni name = "таярони" desc = "Острая вяленая колбаса с перцем и... Оно только что мяукнуло?" icon = 'modular_ss220/food/icons/food.dmi' @@ -346,7 +346,7 @@ /datum/deepfryer_special/tajaroni input = /obj/item/organ/external - output = /obj/item/food/snacks/tajaroni + output = /obj/item/food/tajaroni /datum/deepfryer_special/tajaroni/validate(obj/item/I) if(!..()) @@ -355,7 +355,7 @@ return istype(E.dna.species, /datum/species/tajaran) // Vulpixes -/obj/item/food/snacks/vulpix +/obj/item/food/vulpix name = "вульпиксы" desc = "Аппетитно выглядящие мясные шарики в тесте... Главное - не думать о том, из кого они сделаны!" icon = 'modular_ss220/food/icons/food.dmi' @@ -366,13 +366,13 @@ /datum/recipe/oven/vuplix reagents = list("blackpepper" = 1, "sodiumchloride" = 1, "herbsmix" = 1, "tomato_sauce" = 1, "cream" = 5) items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/meat, + /obj/item/food/dough, + /obj/item/food/meat, /obj/item/organ/internal/liver/vulpkanin) - result = /obj/item/food/snacks/vulpix + result = /obj/item/food/vulpix // Cheese Vulpixes -/obj/item/food/snacks/vulpix/cheese +/obj/item/food/vulpix/cheese name = "сырные вульпиксы" desc = "Аппетитно выглядящие мясные шарики в тесте с начинкой из сыра... Главное - не думать о том, из кого они сделаны!" icon = 'modular_ss220/food/icons/food.dmi' @@ -383,14 +383,14 @@ /datum/recipe/oven/vulpixcheese reagents = list("blackpepper" = 1, "sodiumchloride" = 1, "herbsmix" = 1, "cheese_sauce" = 1, "cream" = 5) items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/meat, + /obj/item/food/dough, + /obj/item/food/meat, /obj/item/organ/internal/liver/vulpkanin, - /obj/item/food/snacks/cheesewedge) - result = /obj/item/food/snacks/vulpix/cheese + /obj/item/food/cheesewedge) + result = /obj/item/food/vulpix/cheese // Bacon Vulpixes -/obj/item/food/snacks/vulpix/bacon +/obj/item/food/vulpix/bacon name = "вульпиксы с беконом" desc = "Аппетитно выглядящие мясные шарики в тесте с начинкой... Главное - не думать о том, из кого они сделаны!" icon = 'modular_ss220/food/icons/food.dmi' @@ -401,15 +401,15 @@ /datum/recipe/oven/vulpixbacon reagents = list("blackpepper" = 1, "sodiumchloride" = 1, "herbsmix" = 1, "mushroom_sauce" = 1, "cream" = 5) items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/meat, + /obj/item/food/dough, + /obj/item/food/meat, /obj/item/organ/internal/liver/vulpkanin, - /obj/item/food/snacks/raw_bacon, - /obj/item/food/snacks/grown/mushroom) - result = /obj/item/food/snacks/vulpix/bacon + /obj/item/food/raw_bacon, + /obj/item/food/grown/mushroom) + result = /obj/item/food/vulpix/bacon // Chilli Vulpixes -/obj/item/food/snacks/vulpix/chilli +/obj/item/food/vulpix/chilli name = "вульпиксы-чилли" desc = "Аппетитно выглядящие мясные шарики в тесте... Главное - не думать о том, из кого они сделаны! Язык обжигает." icon = 'modular_ss220/food/icons/food.dmi' @@ -420,24 +420,24 @@ /datum/recipe/oven/vulpixchilli reagents = list("blackpepper" = 1, "sodiumchloride" = 1, "herbsmix" = 1, "diablo_sauce" = 1, "cream" = 5) items = list( - /obj/item/food/snacks/dough, - /obj/item/food/snacks/meat, + /obj/item/food/dough, + /obj/item/food/meat, /obj/item/organ/internal/liver/vulpkanin, - /obj/item/food/snacks/grown/chili) - result = /obj/item/food/snacks/vulpix/chilli + /obj/item/food/grown/chili) + result = /obj/item/food/vulpix/chilli // Seafood Pizza -/obj/item/food/snacks/sliceable/pizza/seafood +/obj/item/food/sliceable/pizza/seafood name = "пицца с морепродуктами" desc = "Дары космических озер, сыр и немного кислинки." icon = 'modular_ss220/food/icons/food.dmi' icon_state = "fishpizza" - slice_path = /obj/item/food/snacks/seapizzaslice + slice_path = /obj/item/food/seapizzaslice list_reagents = list("nutriment" = 30, "vitamin" = 15, "protein" = 15) filling_color = "#ffe45d" tastes = list("чеснок" = 1, "сыр" = 2, "морепродукты" = 1, "кислинка" = 1) -/obj/item/food/snacks/seapizzaslice +/obj/item/food/seapizzaslice name = "кусочек пиццы с морепродуктами" desc = "Аппетитный кусочек пиццы с морепродуктами и сыром..." icon = 'modular_ss220/food/icons/food.dmi' @@ -448,26 +448,26 @@ /datum/recipe/oven/seapizza reagents = list("herbsmix" = 1, "garlic_sauce" = 1) items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/salmonmeat, - /obj/item/food/snacks/salmonmeat, - /obj/item/food/snacks/boiled_shrimp, - /obj/item/food/snacks/grown/citrus/lemon) - result = /obj/item/food/snacks/sliceable/pizza/seafood + /obj/item/food/sliceable/flatdough, + /obj/item/food/cheesewedge, + /obj/item/food/salmonmeat, + /obj/item/food/salmonmeat, + /obj/item/food/boiled_shrimp, + /obj/item/food/grown/citrus/lemon) + result = /obj/item/food/sliceable/pizza/seafood // Bacon Pizza -/obj/item/food/snacks/sliceable/pizza/bacon +/obj/item/food/sliceable/pizza/bacon name = "пицца с беконом" desc = "Классическая пицца, один из ингредиентов которой был заменен на жареный бекон." icon = 'modular_ss220/food/icons/food.dmi' icon_state = "baconpizza" - slice_path = /obj/item/food/snacks/baconpizzaslice + slice_path = /obj/item/food/baconpizzaslice list_reagents = list("nutriment" = 40, "vitamin" = 5, "protein" = 15) filling_color = "#ffe45d" tastes = list("грибы" = 1, "сыр" = 2, "бекон" = 1) -/obj/item/food/snacks/baconpizzaslice +/obj/item/food/baconpizzaslice name = "кусочек пиццы с беконом" desc = "Аппетитный кусок пиццы с беконом и грибами..." icon = 'modular_ss220/food/icons/food.dmi' @@ -478,26 +478,26 @@ /datum/recipe/oven/baconpizza reagents = list("mushroom_sauce" = 1) items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/grown/mushroom, - /obj/item/food/snacks/grown/mushroom, - /obj/item/food/snacks/raw_bacon, - /obj/item/food/snacks/raw_bacon) - result = /obj/item/food/snacks/sliceable/pizza/bacon + /obj/item/food/sliceable/flatdough, + /obj/item/food/cheesewedge, + /obj/item/food/grown/mushroom, + /obj/item/food/grown/mushroom, + /obj/item/food/raw_bacon, + /obj/item/food/raw_bacon) + result = /obj/item/food/sliceable/pizza/bacon // Pizza Tajaroni -/obj/item/food/snacks/sliceable/pizza/tajaroni +/obj/item/food/sliceable/pizza/tajaroni name = "пицца с таярони" desc = "Острые колбаски таярони с сыром и оливками. Что из этого ужаснее, еще предстоит решить." icon = 'modular_ss220/food/icons/food.dmi' icon_state = "tajarpizza" - slice_path = /obj/item/food/snacks/tajpizzaslice + slice_path = /obj/item/food/tajpizzaslice list_reagents = list("nutriment" = 30, "vitamin" = 15, "protein" = 15) filling_color = "#ffe45d" tastes = list("томат" = 1, "сыр" = 2, "таярони" = 1, "оливки" = 1) -/obj/item/food/snacks/tajpizzaslice +/obj/item/food/tajpizzaslice name = "кусочек пиццы с таярони" desc = "Вкуснейший кусок пиццы с таярони и оливками..." icon = 'modular_ss220/food/icons/food.dmi' @@ -508,25 +508,25 @@ /datum/recipe/oven/tajarpizza reagents = list("herbsmix" = 1, "tomato_sauce" = 1, "blackpepper" = 1) items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/tajaroni, - /obj/item/food/snacks/grown/olive,) - result = /obj/item/food/snacks/sliceable/pizza/tajaroni + /obj/item/food/sliceable/flatdough, + /obj/item/food/cheesewedge, + /obj/item/food/cheesewedge, + /obj/item/food/tajaroni, + /obj/item/food/grown/olive,) + result = /obj/item/food/sliceable/pizza/tajaroni // Diablo Pizza -/obj/item/food/snacks/sliceable/pizza/diablo +/obj/item/food/sliceable/pizza/diablo name = "пицца 'Диабло'" desc = "Невероятно жгучая пицца с кусочками мяса, некоторые утверждают, что она может отправить вас в рэдспейс." icon = 'modular_ss220/food/icons/food.dmi' icon_state = "diablopizza" - slice_path = /obj/item/food/snacks/diablopizzaslice + slice_path = /obj/item/food/diablopizzaslice list_reagents = list("nutriment" = 30, "vitamin" = 15, "protein" = 15, "capsaicin" = 15) filling_color = "#ffe45d" tastes = list("остроту" = 1, "сыр" = 2, "мясо" = 1, "специи" = 1) -/obj/item/food/snacks/diablopizzaslice +/obj/item/food/diablopizzaslice name = "кусочек пиццы 'Диабло'" desc = "Аппетитный кусок пиццы с соусом 'Диабло' и мясом..." icon = 'modular_ss220/food/icons/food.dmi' @@ -537,16 +537,16 @@ /datum/recipe/oven/diablopizza reagents = list("herbsmix" = 1, "diablo_sauce" = 1) items = list( - /obj/item/food/snacks/sliceable/flatdough, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/grown/chili, - /obj/item/food/snacks/meatball, - /obj/item/food/snacks/meatball) - result = /obj/item/food/snacks/sliceable/pizza/diablo + /obj/item/food/sliceable/flatdough, + /obj/item/food/cheesewedge, + /obj/item/food/grown/tomato, + /obj/item/food/grown/chili, + /obj/item/food/meatball, + /obj/item/food/meatball) + result = /obj/item/food/sliceable/pizza/diablo // Doshik -/obj/item/food/snacks/doshik +/obj/item/food/doshik name = "дошик" desc = "Очень известная лапша быстрого приготовления. При открытии заваривается моментально. Вау." icon = 'modular_ss220/food/icons/food.dmi' @@ -557,7 +557,7 @@ junkiness = 25 tastes = list("курятина" = 1, "лапша" = 1) -/obj/item/food/snacks/doshik_spicy +/obj/item/food/doshik_spicy name = "острый дошик" desc = "Очень известная лапша быстрого приготовления. При открытии заваривается моментально. Вау. Кажется, что в ней есть острые специи." icon = 'modular_ss220/food/icons/food.dmi' @@ -575,19 +575,19 @@ desc = "Всё ещё вкусно пахнет." // Chocolate Cake -/obj/item/food/snacks/sliceable/choccherrycake +/obj/item/food/sliceable/choccherrycake name = "шоколадно-вишневый торт" desc = "Ещё один торт. Тем не менее." icon = 'modular_ss220/food/icons/food.dmi' icon_state = "choccherrycake" - slice_path = /obj/item/food/snacks/choccherrycakeslice + slice_path = /obj/item/food/choccherrycakeslice slices_num = 6 bitesize = 3 filling_color = "#5e1706" tastes = list("вишня" = 5, "сладость" = 1, "шоколад" = 1) list_reagents = list("nutriment" = 12, "sugar" = 4, "cocoa" = 4) -/obj/item/food/snacks/choccherrycakeslice +/obj/item/food/choccherrycakeslice name = "кусочек шоколадно-вишневого торта" desc = "Кусочек очередного торта. Подождите, что?" icon = 'modular_ss220/food/icons/food.dmi' @@ -598,28 +598,28 @@ /datum/recipe/oven/choccherrycake reagents = list("milk" = 5, "flour" = 15) items = list( - /obj/item/food/snacks/egg, - /obj/item/food/snacks/egg, - /obj/item/food/snacks/egg, - /obj/item/food/snacks/chocolatebar, - /obj/item/food/snacks/chocolatebar, - /obj/item/food/snacks/grown/cherries) - result = /obj/item/food/snacks/sliceable/choccherrycake + /obj/item/food/egg, + /obj/item/food/egg, + /obj/item/food/egg, + /obj/item/food/chocolatebar, + /obj/item/food/chocolatebar, + /obj/item/food/grown/cherries) + result = /obj/item/food/sliceable/choccherrycake // Noel -/obj/item/food/snacks/sliceable/noel +/obj/item/food/sliceable/noel name = "Bûche de Noël" desc = "Что?" icon = 'modular_ss220/food/icons/food.dmi' icon_state = "noel" trash = /obj/item/trash/tray - slice_path = /obj/item/food/snacks/noelslice + slice_path = /obj/item/food/noelslice slices_num = 5 filling_color = "#5e1706" tastes = list("шоколад" = 3, "сладость" = 2, "яйца" = 1, "ягоды" = 2) list_reagents = list("nutriment" = 6, "plantmatter" = 2, "cocoa" = 2, "cream" = 3, "sugar" = 3, "berryjuice" = 3) -/obj/item/food/snacks/noelslice +/obj/item/food/noelslice name = "кусочек Noël" desc = "Кусочек чего?" icon = 'modular_ss220/food/icons/food.dmi' @@ -631,16 +631,16 @@ /datum/recipe/oven/noel reagents = list("flour" = 15, "cream" = 10, "milk" = 5) items = list( - /obj/item/food/snacks/egg, - /obj/item/food/snacks/egg, - /obj/item/food/snacks/chocolatebar, - /obj/item/food/snacks/chocolatebar, - /obj/item/food/snacks/grown/berries, - /obj/item/food/snacks/grown/berries) - result = /obj/item/food/snacks/sliceable/noel + /obj/item/food/egg, + /obj/item/food/egg, + /obj/item/food/chocolatebar, + /obj/item/food/chocolatebar, + /obj/item/food/grown/berries, + /obj/item/food/grown/berries) + result = /obj/item/food/sliceable/noel // Sundae -/obj/item/food/snacks/sundae +/obj/item/food/sundae name = "Сандей" desc = "Сливочное удовольствие." icon = 'modular_ss220/food/icons/food.dmi' @@ -653,13 +653,13 @@ /datum/recipe/oven/sundae reagents = list("cream" = 10) items = list( - /obj/item/food/snacks/grown/cherries, - /obj/item/food/snacks/grown/banana, - /obj/item/food/snacks/doughslice) - result = /obj/item/food/snacks/sundae + /obj/item/food/grown/cherries, + /obj/item/food/grown/banana, + /obj/item/food/doughslice) + result = /obj/item/food/sundae // Bun-Bun -/obj/item/food/snacks/bunbun +/obj/item/food/bunbun name = "Бун-Бун" desc = "Маленькая хлебная обезьянка, сформованная из двух булочек для гамбургеров." icon = 'modular_ss220/food/icons/food.dmi' @@ -670,12 +670,12 @@ /datum/recipe/oven/bunbun items = list( - /obj/item/food/snacks/bun, - /obj/item/food/snacks/bun) - result = /obj/item/food/snacks/bunbun + /obj/item/food/bun, + /obj/item/food/bun) + result = /obj/item/food/bunbun // Tortilla -/obj/item/food/snacks/tortilla +/obj/item/food/tortilla name = "тортилья" desc = "Hasta la vista, baby" icon = 'modular_ss220/food/icons/food.dmi' @@ -688,11 +688,11 @@ /datum/recipe/microwave/tortilla reagents = list("flour" = 10) - items = list(/obj/item/food/snacks/grown/corn) - result = /obj/item/food/snacks/tortilla + items = list(/obj/item/food/grown/corn) + result = /obj/item/food/tortilla // Nachos -/obj/item/food/snacks/nachos +/obj/item/food/nachos name = "начос" desc = "Хола!" icon = 'modular_ss220/food/icons/food.dmi' @@ -705,11 +705,11 @@ /datum/recipe/microwave/nachos reagents = list("sodiumchloride" = 1) - items = list(/obj/item/food/snacks/tortilla) - result = /obj/item/food/snacks/nachos + items = list(/obj/item/food/tortilla) + result = /obj/item/food/nachos // Cheese Nachos -/obj/item/food/snacks/cheesenachos +/obj/item/food/cheesenachos name = "сырные начос" desc = "Сырное хола!" icon = 'modular_ss220/food/icons/food.dmi' @@ -723,12 +723,12 @@ /datum/recipe/microwave/cheesenachos reagents = list("sodiumchloride" = 1) items = list( - /obj/item/food/snacks/tortilla, - /obj/item/food/snacks/cheesewedge) - result = /obj/item/food/snacks/cheesenachos + /obj/item/food/tortilla, + /obj/item/food/cheesewedge) + result = /obj/item/food/cheesenachos // Cuban Nachos -/obj/item/food/snacks/cubannachos +/obj/item/food/cubannachos name = "кубинские начос" desc = "Очень острое хола!" icon = 'modular_ss220/food/icons/food.dmi' @@ -741,13 +741,13 @@ /datum/recipe/microwave/cubannachos items = list( - /obj/item/food/snacks/tortilla, - /obj/item/food/snacks/grown/chili, - /obj/item/food/snacks/grown/chili) - result = /obj/item/food/snacks/cubannachos + /obj/item/food/tortilla, + /obj/item/food/grown/chili, + /obj/item/food/grown/chili) + result = /obj/item/food/cubannachos // Carne Buritto -/obj/item/food/snacks/carneburrito +/obj/item/food/carneburrito name = "Carne de burrito asado" desc = "Как классический буррито, но с мясом." icon = 'modular_ss220/food/icons/food.dmi' @@ -759,14 +759,14 @@ /datum/recipe/microwave/carneburrito items = list( - /obj/item/food/snacks/tortilla, - /obj/item/food/snacks/grown/soybeans, - /obj/item/food/snacks/cutlet, - /obj/item/food/snacks/cutlet) - result = /obj/item/food/snacks/carneburrito + /obj/item/food/tortilla, + /obj/item/food/grown/soybeans, + /obj/item/food/cutlet, + /obj/item/food/cutlet) + result = /obj/item/food/carneburrito // Cheese Buritto -/obj/item/food/snacks/cheeseburrito +/obj/item/food/cheeseburrito name = "сырное буритто" desc = "Нужно ли здесь что-то говорить?" icon = 'modular_ss220/food/icons/food.dmi' @@ -778,13 +778,13 @@ /datum/recipe/microwave/cheeseburrito items = list( - /obj/item/food/snacks/tortilla, - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/cheesewedge) - result = /obj/item/food/snacks/cheeseburrito + /obj/item/food/tortilla, + /obj/item/food/cheesewedge, + /obj/item/food/cheesewedge) + result = /obj/item/food/cheeseburrito // Plasma Buritto -/obj/item/food/snacks/plasmaburrito +/obj/item/food/plasmaburrito name = "Fuego Plasma Burrito" desc = "Очень острое, амигос." icon = 'modular_ss220/food/icons/food.dmi' @@ -796,14 +796,14 @@ /datum/recipe/microwave/plasmaburrito items = list( - /obj/item/food/snacks/tortilla, - /obj/item/food/snacks/grown/soybeans, - /obj/item/food/snacks/grown/chili, - /obj/item/food/snacks/grown/chili) - result = /obj/item/food/snacks/plasmaburrito + /obj/item/food/tortilla, + /obj/item/food/grown/soybeans, + /obj/item/food/grown/chili, + /obj/item/food/grown/chili) + result = /obj/item/food/plasmaburrito // Pelmeni -/obj/item/food/snacks/pelmeni +/obj/item/food/pelmeni name = "пельмени" desc = "Мясо завёрнутое в тесто." icon = 'modular_ss220/food/icons/food.dmi' @@ -813,16 +813,16 @@ bitesize = 2 tastes = list("сырое мясо" = 1, "сырое тесто" = 1) -/obj/item/food/snacks/doughslice/attackby(obj/item/I, mob/user, params) - if(istype(I, /obj/item/food/snacks/rawcutlet)) - new /obj/item/food/snacks/pelmeni(src) +/obj/item/food/doughslice/attackby(obj/item/I, mob/user, params) + if(istype(I, /obj/item/food/rawcutlet)) + new /obj/item/food/pelmeni(src) to_chat(user, "Вы сделали немного пельменей.") qdel(src) qdel(I) else ..() -/obj/item/food/snacks/boiledpelmeni +/obj/item/food/boiledpelmeni name = "варёные пельмени" desc = "Мы не знаем, какой была Сибирь, но эти вкусные пельмени определенно прибыли оттуда." icon = 'modular_ss220/food/icons/food.dmi' @@ -835,11 +835,11 @@ /datum/recipe/microwave/pelmeni reagents = list("water" = 5) - items = list(/obj/item/food/snacks/pelmeni) - result = /obj/item/food/snacks/boiledpelmeni + items = list(/obj/item/food/pelmeni) + result = /obj/item/food/boiledpelmeni // Smoked Sausage -/obj/item/food/snacks/smokedsausage +/obj/item/food/smokedsausage name = "копчёная колбаска" desc = "Кусок копченой колбасы. Под пивко пойдёт." icon = 'modular_ss220/food/icons/food.dmi' @@ -849,21 +849,21 @@ /datum/recipe/oven/smokedsausage reagents = list("sodiumchloride" = 5, "blackpepper" = 5) - items = list(/obj/item/food/snacks/sausage) - result = /obj/item/food/snacks/smokedsausage + items = list(/obj/item/food/sausage) + result = /obj/item/food/smokedsausage // Salami -/obj/item/food/snacks/sliceable/salami +/obj/item/food/sliceable/salami name = "салями" desc = "Не лучший выбор для сэндвича." icon = 'modular_ss220/food/icons/food.dmi' icon_state = "salami" - slice_path = /obj/item/food/snacks/slice/salami + slice_path = /obj/item/food/slice/salami slices_num = 6 list_reagents = list("protein" = 12) tastes = list("мясо" = 3, "чеснок" = 1) -/obj/item/food/snacks/slice/salami +/obj/item/food/slice/salami name = "ломтик салями" desc = "Лучший выбор для сэндвича." icon = 'modular_ss220/food/icons/food.dmi' @@ -872,11 +872,11 @@ /datum/recipe/oven/salami reagents = list("garlic_sauce" = 5) - items = list(/obj/item/food/snacks/smokedsausage) - result = /obj/item/food/snacks/sliceable/salami + items = list(/obj/item/food/smokedsausage) + result = /obj/item/food/sliceable/salami // Fruit Cup -/obj/item/food/snacks/fruitcup +/obj/item/food/fruitcup name = "фруктовая кружка" desc = "Фруктовый салат со съедобной кружкой." icon = 'modular_ss220/food/icons/food.dmi' @@ -888,16 +888,16 @@ /datum/recipe/microwave/fruitcup items = list( - /obj/item/food/snacks/grown/apple, - /obj/item/food/snacks/grown/citrus/orange, - /obj/item/food/snacks/grown/ambrosia, - /obj/item/food/snacks/grown/banana, - /obj/item/food/snacks/grown/citrus/lemon, - /obj/item/food/snacks/grown/watermelon) - result = /obj/item/food/snacks/fruitcup + /obj/item/food/grown/apple, + /obj/item/food/grown/citrus/orange, + /obj/item/food/grown/ambrosia, + /obj/item/food/grown/banana, + /obj/item/food/grown/citrus/lemon, + /obj/item/food/grown/watermelon) + result = /obj/item/food/fruitcup // Jungle Salad -/obj/item/food/snacks/junglesalad +/obj/item/food/junglesalad name = "салат 'Джунгли'" desc = "Из глубин джунглей." icon = 'modular_ss220/food/icons/food.dmi' @@ -908,14 +908,14 @@ /datum/recipe/microwave/junglesalad items = list( - /obj/item/food/snacks/grown/apple, - /obj/item/food/snacks/grown/banana, - /obj/item/food/snacks/grown/banana, - /obj/item/food/snacks/grown/watermelon) - result = /obj/item/food/snacks/junglesalad + /obj/item/food/grown/apple, + /obj/item/food/grown/banana, + /obj/item/food/grown/banana, + /obj/item/food/grown/watermelon) + result = /obj/item/food/junglesalad // Delight Salad -/obj/item/food/snacks/delightsalad +/obj/item/food/delightsalad name = "cалат 'Восторг'" desc = "Настоящий цитрусовый восторг." icon = 'modular_ss220/food/icons/food.dmi' @@ -928,13 +928,13 @@ /datum/recipe/microwave/delightsalad items = list( - /obj/item/food/snacks/grown/citrus/lemon, - /obj/item/food/snacks/grown/citrus/orange, - /obj/item/food/snacks/grown/citrus/lime) - result = /obj/item/food/snacks/delightsalad + /obj/item/food/grown/citrus/lemon, + /obj/item/food/grown/citrus/orange, + /obj/item/food/grown/citrus/lime) + result = /obj/item/food/delightsalad // Chowmein -/obj/item/food/snacks/chowmein +/obj/item/food/chowmein name = "чау-мейн" desc = "Nihao!" icon = 'modular_ss220/food/icons/food.dmi' @@ -946,14 +946,14 @@ /datum/recipe/microwave/chowmein items = list( - /obj/item/food/snacks/boiledspaghetti, - /obj/item/food/snacks/cutlet, - /obj/item/food/snacks/grown/cabbage, - /obj/item/food/snacks/grown/carrot) - result = /obj/item/food/snacks/chowmein + /obj/item/food/boiledspaghetti, + /obj/item/food/cutlet, + /obj/item/food/grown/cabbage, + /obj/item/food/grown/carrot) + result = /obj/item/food/chowmein // Beef Noodles -/obj/item/food/snacks/beefnoodles +/obj/item/food/beefnoodles name = "лапша с говядиной" desc = "Так просто и так вкусно!" icon = 'modular_ss220/food/icons/food.dmi' @@ -965,14 +965,14 @@ /datum/recipe/microwave/beefnoodles items = list( - /obj/item/food/snacks/boiledspaghetti, - /obj/item/food/snacks/cutlet, - /obj/item/food/snacks/cutlet, - /obj/item/food/snacks/grown/cabbage) - result = /obj/item/food/snacks/beefnoodles + /obj/item/food/boiledspaghetti, + /obj/item/food/cutlet, + /obj/item/food/cutlet, + /obj/item/food/grown/cabbage) + result = /obj/item/food/beefnoodles // Father's Soup -/obj/item/food/snacks/fathersoup +/obj/item/food/fathersoup name = "батин суп" desc = "Адовое блюдо, усреднённый рецепт ибо вариаций масса. Ух бля." icon = 'modular_ss220/food/icons/food.dmi' @@ -986,15 +986,15 @@ /datum/recipe/oven/fathersoup reagents = list("flour" = 10, "blackpepper" = 5) items = list( - /obj/item/food/snacks/soup/tomatosoup, - /obj/item/food/snacks/grown/garlic, - /obj/item/food/snacks/grown/onion, - /obj/item/food/snacks/grown/ghost_chili, - /obj/item/food/snacks/grown/ghost_chili, - /obj/item/food/snacks/grown/tomato) - result = /obj/item/food/snacks/fathersoup - -/obj/item/food/snacks/fathersoup/On_Consume(mob/M, mob/user) + /obj/item/food/soup/tomatosoup, + /obj/item/food/grown/garlic, + /obj/item/food/grown/onion, + /obj/item/food/grown/ghost_chili, + /obj/item/food/grown/ghost_chili, + /obj/item/food/grown/tomato) + result = /obj/item/food/fathersoup + +/obj/item/food/fathersoup/On_Consume(mob/M, mob/user) . = ..() user.visible_message(span_notice("У [M] на лбу аж пот выступает.")) if(prob(33)) @@ -1020,11 +1020,11 @@ /obj/item/pizzabox/infinite/attack_self(mob/living/user) QDEL_NULL(pizza) if(ishuman(user)) - pizza = new /obj/item/food/snacks/sliceable/pizza/meatpizza(src) + pizza = new /obj/item/food/sliceable/pizza/meatpizza(src) . = ..() // Disk croutons -/obj/item/food/snacks/disk +/obj/item/food/disk name = "диск с сухариками" desc = "Вкуснейшие сухарики с запахом дымка!" icon = 'modular_ss220/food/icons/food.dmi' @@ -1045,7 +1045,7 @@ item_state = "chips" // Plov -/obj/item/food/snacks/plov +/obj/item/food/plov name = "плов с изюмом" desc = "Плов по тому самому рецепту с Земли, так ещё и с изюмом! Объедение." icon = 'modular_ss220/food/icons/food.dmi' @@ -1058,11 +1058,11 @@ /datum/recipe/oven/plov reagents = list("blackpepper" = 1) items = list( - /obj/item/food/snacks/boiledrice, - /obj/item/food/snacks/boiledrice, - /obj/item/food/snacks/grown/carrot, - /obj/item/food/snacks/meat, - /obj/item/food/snacks/meat, - /obj/item/food/snacks/grown/berries, + /obj/item/food/boiledrice, + /obj/item/food/boiledrice, + /obj/item/food/grown/carrot, + /obj/item/food/meat, + /obj/item/food/meat, + /obj/item/food/grown/berries, ) - result = /obj/item/food/snacks/plov + result = /obj/item/food/plov diff --git a/modular_ss220/food/code/food/ingredients.dm b/modular_ss220/food/code/food/ingredients.dm index f3da626f4da3..38097c374758 100644 --- a/modular_ss220/food/code/food/ingredients.dm +++ b/modular_ss220/food/code/food/ingredients.dm @@ -71,7 +71,7 @@ taste_description = "сухая приправа" // Slices -/obj/item/food/snacks/cucumberslice +/obj/item/food/cucumberslice name = "ломтик огурца" desc = "Нарезанный огурец, неожиданно, правда?" icon = 'modular_ss220/food/icons/food.dmi' @@ -93,8 +93,8 @@ /datum/recipe/microwave/tomato_sauce reagents = list("water" = 15, "sodiumchloride" = 1, "blackpepper" = 1, "herbsmix" = 1) items = list( - /obj/item/food/snacks/grown/garlic, - /obj/item/food/snacks/grown/tomato) + /obj/item/food/grown/garlic, + /obj/item/food/grown/tomato) result = /obj/item/reagent_containers/condiment/tomato_sauce // Diablo Sauce @@ -109,8 +109,8 @@ /datum/recipe/microwave/diablo_sauce reagents = list("water" = 15, "sodiumchloride" = 1, "blackpepper" = 2, "herbsmix" = 1) items = list( - /obj/item/food/snacks/grown/tomato, - /obj/item/food/snacks/grown/chili) + /obj/item/food/grown/tomato, + /obj/item/food/grown/chili) result = /obj/item/reagent_containers/condiment/diablo_sauce // Cheese Sauce @@ -125,8 +125,8 @@ /datum/recipe/microwave/cheese_sauce reagents = list("milk" = 15, "cream" = 5) items = list( - /obj/item/food/snacks/cheesewedge, - /obj/item/food/snacks/cheesewedge) + /obj/item/food/cheesewedge, + /obj/item/food/cheesewedge) result = /obj/item/reagent_containers/condiment/cheese_sauce // Mushroom Sauce @@ -141,8 +141,8 @@ /datum/recipe/microwave/mushroom_sauce reagents = list("milk" = 15, "cream" = 5, "sodiumchloride" = 1,) items = list( - /obj/item/food/snacks/grown/onion, - /obj/item/food/snacks/grown/mushroom) + /obj/item/food/grown/onion, + /obj/item/food/grown/mushroom) result = /obj/item/reagent_containers/condiment/mushroom_sauce // Garlic Sauce @@ -157,8 +157,8 @@ /datum/recipe/microwave/garlic_sauce reagents = list("water" = 15, "sodiumchloride" = 1, "herbsmix" = 1) items = list( - /obj/item/food/snacks/grown/garlic, - /obj/item/food/snacks/grown/cucumber) + /obj/item/food/grown/garlic, + /obj/item/food/grown/cucumber) result = /obj/item/reagent_containers/condiment/garlic_sauce // Custard @@ -172,7 +172,7 @@ /datum/recipe/microwave/custard reagents = list("sugar" = 10, "milk" = 10, "cream" = 5, "vanilla" = 5) - items = list(/obj/item/food/snacks/egg) + items = list(/obj/item/food/egg) result = /obj/item/reagent_containers/condiment/custard // Herbs diff --git a/modular_ss220/food/code/food/nails.dm b/modular_ss220/food/code/food/nails.dm index b45c706bc774..0803a4016a77 100644 --- a/modular_ss220/food/code/food/nails.dm +++ b/modular_ss220/food/code/food/nails.dm @@ -4,7 +4,7 @@ icon = 'modular_ss220/food/icons/food.dmi' icon_state = "nails" -/obj/item/food/snacks/nails +/obj/item/food/nails name = "жаренные гвозди" desc = "Жаренных гвоздей не хочешь, не?" icon = 'modular_ss220/food/icons/food.dmi' @@ -15,7 +15,7 @@ list_reagents = list("iron" = 8, "nutriment" = 1) tastes = list("гвозди" = 1) -/obj/item/food/snacks/nails/On_Consume(mob/living/carbon/human/user) +/obj/item/food/nails/On_Consume(mob/living/carbon/human/user) . = ..() to_chat(user, span_warning("Ты чувствуешь адскую боль во рту!")) playsound(user.loc, "bonebreak", 60, TRUE) @@ -42,4 +42,4 @@ /datum/deepfryer_special/nails input = /obj/item/nails - output = /obj/item/food/snacks/nails + output = /obj/item/food/nails diff --git a/modular_ss220/hydroponics/code/plants.dm b/modular_ss220/hydroponics/code/plants.dm index 53486c97e73c..04e78d27bf5d 100644 --- a/modular_ss220/hydroponics/code/plants.dm +++ b/modular_ss220/hydroponics/code/plants.dm @@ -17,10 +17,10 @@ species = "buckwheat" icon_dead = "buckwheat-dead" plantname = "Cтебли Гречки" - product = /obj/item/food/snacks/grown/buckwheat + product = /obj/item/food/grown/buckwheat mutatelist = list() -/obj/item/food/snacks/grown/buckwheat +/obj/item/food/grown/buckwheat seed = /obj/item/seeds/wheat/buckwheat name = "гречка" desc = "Finally, гречка." @@ -40,7 +40,7 @@ icon_state = "seed-cucumber" species = "cucumber" plantname = "Огуречный Куст" - product = /obj/item/food/snacks/grown/cucumber + product = /obj/item/food/grown/cucumber lifespan = 40 endurance = 70 potency = 30 @@ -54,14 +54,14 @@ genes = list(/datum/plant_gene/trait/repeated_harvest) reagents_add = list("water" = 0.15, "kelotane" = 0.04, "plantmatter" = 0.05) -/obj/item/food/snacks/grown/cucumber +/obj/item/food/grown/cucumber seed = /obj/item/seeds/cucumber name = "огурец" desc = "Сила земли!" icon = 'modular_ss220/hydroponics/icons/plants.dmi' icon_state = "cucumber" splat_type = /obj/effect/decal/cleanable/plant_smudge - slice_path = /obj/item/food/snacks/cucumberslice + slice_path = /obj/item/food/cucumberslice slices_num = 5 filling_color = "#47FF91" tastes = list("огурец" = 1) @@ -80,7 +80,7 @@ icon_state = "seed-charcolives" species = "charcolives" plantname = "Угливковое Деревце" - product = /obj/item/food/snacks/grown/olive/charcoal + product = /obj/item/food/grown/olive/charcoal growing_icon = 'modular_ss220/hydroponics/icons/growing.dmi' icon_grow = "charcolives-grow" icon_dead = "charcolives-dead" @@ -92,7 +92,7 @@ rarity = 30 reagents_add = list("charcoal" = 0.15, "plantmatter" = 0.05) -/obj/item/food/snacks/grown/olive/charcoal +/obj/item/food/grown/olive/charcoal seed = /obj/item/seeds/olive/charcoal name = "угливки" desc = "Это... маслины?" @@ -128,11 +128,11 @@ . = ..() mutatelist |= list(/obj/item/seeds/soya/peas_shooter) -/obj/item/food/snacks/grown/soybeans/Initialize(mapload) +/obj/item/food/grown/soybeans/Initialize(mapload) . = ..() trash = /obj/item/ammo_casing/peas_shooter -/obj/item/food/snacks/grown/soybeans/attack_self(mob/user) +/obj/item/food/grown/soybeans/attack_self(mob/user) . = ..() if(!do_after(user, 1.5 SECONDS, target = user)) return diff --git a/modular_ss220/jobs/code/donor/job/3_tier_jobs.dm b/modular_ss220/jobs/code/donor/job/3_tier_jobs.dm index b5f8b5ae02c1..c4e0a576872b 100644 --- a/modular_ss220/jobs/code/donor/job/3_tier_jobs.dm +++ b/modular_ss220/jobs/code/donor/job/3_tier_jobs.dm @@ -296,10 +296,10 @@ id = /obj/item/card/id/migrant backpack_contents = list( /obj/item/reagent_containers/drinks/bottle/tequila = 1, - /obj/item/food/snacks/taco = 6, - /obj/item/food/snacks/nachos = 3, - /obj/item/food/snacks/cheesenachos = 3, - /obj/item/food/snacks/cubannachos = 3, + /obj/item/food/taco = 6, + /obj/item/food/nachos = 3, + /obj/item/food/cheesenachos = 3, + /obj/item/food/cubannachos = 3, /obj/item/clothing/suit/poncho/red = 1, /obj/item/clothing/suit/poncho/green = 1, ) @@ -337,8 +337,8 @@ backpack_contents = list( /obj/item/reagent_containers/drinks/bottle/vodka = 1, /obj/item/storage/fancy/cigarettes/cigpack_random = 2, - /obj/item/food/snacks/doshik = 3, - /obj/item/food/snacks/doshik_spicy = 3, + /obj/item/food/doshik = 3, + /obj/item/food/doshik_spicy = 3, /obj/item/clothing/suit/mantle/old = 1, /obj/item/clothing/head/flatcap = 1, /obj/item/clothing/suit/browntrenchcoat = 1, diff --git a/modular_ss220/jobs/code/donor/job/5_tier_jobs.dm b/modular_ss220/jobs/code/donor/job/5_tier_jobs.dm index 4324185bcfd5..0701df6691a4 100644 --- a/modular_ss220/jobs/code/donor/job/5_tier_jobs.dm +++ b/modular_ss220/jobs/code/donor/job/5_tier_jobs.dm @@ -130,7 +130,7 @@ pda = /obj/item/pda/clown id = /obj/item/card/id/seclown backpack_contents = list( - /obj/item/food/snacks/grown/banana = 1, + /obj/item/food/grown/banana = 1, /obj/item/stamp/clown = 1, /obj/item/toy/crayon/rainbow = 1, /obj/item/storage/fancy/crayons = 1, diff --git a/modular_ss220/maps220/code/mobs.dm b/modular_ss220/maps220/code/mobs.dm index 6b6b9a03e2e4..50e697b4afdc 100644 --- a/modular_ss220/maps220/code/mobs.dm +++ b/modular_ss220/maps220/code/mobs.dm @@ -950,7 +950,7 @@ retreat_distance = 5 minimum_distance = 5 dodging = TRUE - butcher_results = list(/obj/item/food/snacks/monstermeat/xenomeat = 2) + butcher_results = list(/obj/item/food/monstermeat/xenomeat = 2) projectiletype = /obj/item/projectile/bullet/bullsquid projectilesound = 'modular_ss220/aesthetics_sounds/sound/mobs/bullsquid/goo_attack3.ogg' melee_damage_upper = 18 @@ -1002,7 +1002,7 @@ melee_damage_upper = 20 rapid_melee = 2 del_on_death = FALSE - butcher_results = list(/obj/item/food/snacks/monstermeat/xenomeat = 3) + butcher_results = list(/obj/item/food/monstermeat/xenomeat = 3) attack_sound = 'sound/weapons/bite.ogg' gold_core_spawnable = HOSTILE_SPAWN minbodytemp = 0 @@ -1344,7 +1344,7 @@ switch(RollForLoot) // 16% if(1 to 8) - pick(SynMobDrop = /obj/item/food/snacks/syndicake, + pick(SynMobDrop = /obj/item/food/syndicake, SynMobDrop = /obj/item/poster/random_contraband) // 14% if(8 to 15) @@ -1364,7 +1364,7 @@ if(24 to 27) pick(SynMobDrop = /obj/item/reagent_containers/patch/styptic/small, SynMobDrop = /obj/item/reagent_containers/patch/silver_sulf/small, - SynMobDrop = /obj/item/food/snacks/donkpocket) + SynMobDrop = /obj/item/food/donkpocket) // 4% if(27 to 29) pick(SynMobDrop = /obj/item/reagent_containers/patch/styptic, diff --git a/modular_ss220/maps220/code/spawners.dm b/modular_ss220/maps220/code/spawners.dm index da7235368176..dca1aea99037 100644 --- a/modular_ss220/maps220/code/spawners.dm +++ b/modular_ss220/maps220/code/spawners.dm @@ -4,23 +4,23 @@ /obj/effect/spawner/lootdrop/CCfood/desert lootcount = 5 loot = list( - /obj/item/food/snacks/baguette=10, - /obj/item/food/snacks/applepie=10, - /obj/item/food/snacks/bananabreadslice=10, - /obj/item/food/snacks/bananacakeslice=10, - /obj/item/food/snacks/carrotcakeslice=10, - /obj/item/food/snacks/croissant=10, + /obj/item/food/baguette=10, + /obj/item/food/applepie=10, + /obj/item/food/bananabreadslice=10, + /obj/item/food/bananacakeslice=10, + /obj/item/food/carrotcakeslice=10, + /obj/item/food/croissant=10, /obj/item/reagent_containers/drinks/cans/cola=10,""=70) /obj/effect/spawner/lootdrop/CCfood/meat lootcount = 5 loot = list( - /obj/item/food/snacks/lasagna=10, - /obj/item/food/snacks/burger/bigbite=10, - /obj/item/food/snacks/fishandchips=10, - /obj/item/food/snacks/fishburger=10, - /obj/item/food/snacks/hotdog=10, - /obj/item/food/snacks/meatpie=10, + /obj/item/food/lasagna=10, + /obj/item/food/burger/bigbite=10, + /obj/item/food/fishandchips=10, + /obj/item/food/fishburger=10, + /obj/item/food/hotdog=10, + /obj/item/food/meatpie=10, /obj/item/reagent_containers/drinks/cans/cola=10,""=70) /obj/effect/spawner/lootdrop/CCfood/alcohol @@ -126,9 +126,9 @@ /obj/item/assembly/igniter, /obj/item/storage/fancy/matches, /obj/item/match, - /obj/item/food/snacks/donut, - /obj/item/food/snacks/candy/candybar, - /obj/item/food/snacks/tastybread, + /obj/item/food/donut, + /obj/item/food/candy/candybar, + /obj/item/food/tastybread, /obj/item/reagent_containers/drinks/cans/dr_gibb, /obj/item/pen, /obj/item/screwdriver, diff --git a/modular_ss220/mobs/code/simple_animal/friendly/crab.dm b/modular_ss220/mobs/code/simple_animal/friendly/crab.dm index 04f3947f03ec..d2b4dcc9491c 100644 --- a/modular_ss220/mobs/code/simple_animal/friendly/crab.dm +++ b/modular_ss220/mobs/code/simple_animal/friendly/crab.dm @@ -18,7 +18,7 @@ response_harm = "щипает" health = 50 maxHealth = 50 - butcher_results = list(/obj/item/food/snacks/meat = 3) + butcher_results = list(/obj/item/food/meat = 3) /mob/living/simple_animal/crab/royal name = "королевский краб" @@ -32,7 +32,7 @@ response_harm = "щипает без уважения" health = 50 maxHealth = 50 - butcher_results = list(/obj/item/food/snacks/meat = 5) + butcher_results = list(/obj/item/food/meat = 5) /mob/living/simple_animal/crab/evil holder_type = /obj/item/holder/evilcrab diff --git a/modular_ss220/mobs/code/simple_animal/friendly/farm_animals.dm b/modular_ss220/mobs/code/simple_animal/friendly/farm_animals.dm index 8b8bde89b722..0613e4a03292 100644 --- a/modular_ss220/mobs/code/simple_animal/friendly/farm_animals.dm +++ b/modular_ss220/mobs/code/simple_animal/friendly/farm_animals.dm @@ -46,7 +46,7 @@ density = 0 speak_chance = 2 turns_per_move = 3 - butcher_results = list(/obj/item/food/snacks/meat = 4) + butcher_results = list(/obj/item/food/meat = 4) response_help = "pets the" response_disarm = "gently pushes aside the" response_harm = "kicks the" @@ -110,7 +110,7 @@ icon_living = "gosling" icon_dead = "gosling_dead" icon_resting = "gosling_rest" - butcher_results = list(/obj/item/food/snacks/meat = 3) + butcher_results = list(/obj/item/food/meat = 3) melee_damage_lower = 0 melee_damage_upper = 0 health = 20 diff --git a/modular_ss220/mobs/code/simple_animal/friendly/frog.dm b/modular_ss220/mobs/code/simple_animal/friendly/frog.dm index b788c50a6e5e..b5b181feddd6 100644 --- a/modular_ss220/mobs/code/simple_animal/friendly/frog.dm +++ b/modular_ss220/mobs/code/simple_animal/friendly/frog.dm @@ -21,7 +21,7 @@ maxHealth = 10 health = 10 blood_volume = BLOOD_VOLUME_SURVIVE - butcher_results = list(/obj/item/food/snacks/monstermeat/lizardmeat = 1) + butcher_results = list(/obj/item/food/monstermeat/lizardmeat = 1) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "stamps on" diff --git a/modular_ss220/mobs/code/simple_animal/friendly/moth.dm b/modular_ss220/mobs/code/simple_animal/friendly/moth.dm index 554e4fbc4017..36df5bb8a82d 100644 --- a/modular_ss220/mobs/code/simple_animal/friendly/moth.dm +++ b/modular_ss220/mobs/code/simple_animal/friendly/moth.dm @@ -20,6 +20,6 @@ pass_flags = PASSTABLE | PASSGRILLE | PASSMOB ventcrawler = 2 mob_size = MOB_SIZE_TINY - butcher_results = list(/obj/item/food/snacks/monstermeat/xenomeat = 1) + butcher_results = list(/obj/item/food/monstermeat/xenomeat = 1) gold_core_spawnable = FRIENDLY_SPAWN holder_type = /obj/item/holder/moth diff --git a/modular_ss220/mobs/code/simple_animal/friendly/mouse.dm b/modular_ss220/mobs/code/simple_animal/friendly/mouse.dm index 896b6c208dd2..59b8c44734a6 100644 --- a/modular_ss220/mobs/code/simple_animal/friendly/mouse.dm +++ b/modular_ss220/mobs/code/simple_animal/friendly/mouse.dm @@ -5,7 +5,7 @@ talk_sound = list('modular_ss220/mobs/sound/creatures/rat_talk.ogg') damaged_sound = list('modular_ss220/mobs/sound/creatures/rat_wound.ogg') blood_volume = BLOOD_VOLUME_SURVIVE - butcher_results = list(/obj/item/food/snacks/meat/mouse = 1) + butcher_results = list(/obj/item/food/meat/mouse = 1) /mob/living/simple_animal/mouse/Initialize(mapload) . = ..() diff --git a/modular_ss220/mobs/code/simple_animal/friendly/possum.dm b/modular_ss220/mobs/code/simple_animal/friendly/possum.dm index 6d337da6a08b..2b4dbc2af08e 100644 --- a/modular_ss220/mobs/code/simple_animal/friendly/possum.dm +++ b/modular_ss220/mobs/code/simple_animal/friendly/possum.dm @@ -34,7 +34,7 @@ turns_per_move = 10 gold_core_spawnable = FRIENDLY_SPAWN footstep_type = FOOTSTEP_MOB_CLAW - butcher_results = list(/obj/item/food/snacks/meat = 2) + butcher_results = list(/obj/item/food/meat = 2) holder_type = /obj/item/holder/possum /mob/living/simple_animal/possum/attackby(obj/item/O, mob/living/user) diff --git a/modular_ss220/mobs/code/simple_animal/friendly/rat.dm b/modular_ss220/mobs/code/simple_animal/friendly/rat.dm index 4f6491814687..338f47f873c3 100644 --- a/modular_ss220/mobs/code/simple_animal/friendly/rat.dm +++ b/modular_ss220/mobs/code/simple_animal/friendly/rat.dm @@ -13,7 +13,7 @@ maxHealth = 15 health = 15 mob_size = MOB_SIZE_SMALL - butcher_results = list(/obj/item/food/snacks/meat/mouse = 2) + butcher_results = list(/obj/item/food/meat/mouse = 2) /mob/living/simple_animal/mouse/rat/white name = "white rat" diff --git a/modular_ss220/mobs/code/simple_animal/friendly/snail.dm b/modular_ss220/mobs/code/simple_animal/friendly/snail.dm index 88884545b750..e887ff0bfe0d 100644 --- a/modular_ss220/mobs/code/simple_animal/friendly/snail.dm +++ b/modular_ss220/mobs/code/simple_animal/friendly/snail.dm @@ -20,7 +20,7 @@ mob_size = MOB_SIZE_SMALL gender = NEUTER can_hide = 1 - butcher_results = list(/obj/item/food/snacks/salmonmeat/snailmeat = 1, /obj/item/stack/ore/tranquillite = 1) + butcher_results = list(/obj/item/food/salmonmeat/snailmeat = 1, /obj/item/stack/ore/tranquillite = 1) can_collar = 1 gold_core_spawnable = FRIENDLY_SPAWN stop_automated_movement_when_pulled = 0 @@ -80,6 +80,6 @@ pass_flags = PASSTABLE | PASSGRILLE status_flags = CANPARALYSE | CANPUSH mob_size = MOB_SIZE_SMALL - butcher_results = list(/obj/item/food/snacks/salmonmeat/turtlemeat = 10, /obj/item/stack/ore/tranquillite = 5) + butcher_results = list(/obj/item/food/salmonmeat/turtlemeat = 10, /obj/item/stack/ore/tranquillite = 5) footstep_type = FOOTSTEP_MOB_SLIME holder_type = /obj/item/holder/turtle diff --git a/modular_ss220/mobs/code/simple_animal/hostile/lizard.dm b/modular_ss220/mobs/code/simple_animal/hostile/lizard.dm index 41e59e3c09b9..da2e3befb375 100644 --- a/modular_ss220/mobs/code/simple_animal/hostile/lizard.dm +++ b/modular_ss220/mobs/code/simple_animal/hostile/lizard.dm @@ -12,7 +12,7 @@ speak_chance = 1 turns_per_move = 5 see_in_dark = 6 - butcher_results = list(/obj/item/food/snacks/monstermeat/lizardmeat = 3, /obj/item/stack/sheet/animalhide/lizard = 1) + butcher_results = list(/obj/item/food/monstermeat/lizardmeat = 3, /obj/item/stack/sheet/animalhide/lizard = 1) response_help = "погладил" response_disarm = "аккуратно оттолкнул" response_harm = "ударил" @@ -42,7 +42,7 @@ icon_state = "gator" icon_living = "gator" icon_dead = "gator_dead" - butcher_results = list(/obj/item/food/snacks/monstermeat/lizardmeat = 7, /obj/item/stack/sheet/animalhide/lizard = 5) + butcher_results = list(/obj/item/food/monstermeat/lizardmeat = 7, /obj/item/stack/sheet/animalhide/lizard = 5) speed = 4 maxHealth = 200 health = 200 @@ -56,7 +56,7 @@ icon_state = "steppy" icon_living = "steppy" icon_dead = "steppy_dead" - butcher_results = list(/obj/item/food/snacks/monstermeat/lizardmeat = 5, /obj/item/stack/sheet/animalhide/lizard = 3) + butcher_results = list(/obj/item/food/monstermeat/lizardmeat = 5, /obj/item/stack/sheet/animalhide/lizard = 3) maxHealth = 100 health = 100 obj_damage = 80 diff --git a/modular_ss220/mobs/code/simple_animal/items.dm b/modular_ss220/mobs/code/simple_animal/items.dm index fa678a20f164..9c792a9d2ac1 100644 --- a/modular_ss220/mobs/code/simple_animal/items.dm +++ b/modular_ss220/mobs/code/simple_animal/items.dm @@ -1,38 +1,38 @@ // Meat -/obj/item/food/snacks/meat/dog +/obj/item/food/meat/dog name = "dog meat" desc = "Не слишком питательно. Но говорят деликатес космокорейцев." list_reagents = list("protein" = 2, "epinephrine" = 2) -/obj/item/food/snacks/meat/security +/obj/item/food/meat/security name = "security meat" desc = "Мясо наполненное чувством мужества и долга." list_reagents = list("protein" = 3, "epinephrine" = 5) -/obj/item/food/snacks/meat/pug +/obj/item/food/meat/pug name = "pug meat" desc = "Чуть менее очарователен в нарезке." list_reagents = list("protein" = 2, "epinephrine" = 2) -/obj/item/food/snacks/meat/ham/old +/obj/item/food/meat/ham/old name = "жесткая ветчина" desc = "Мясо почтенного хряка." list_reagents = list("protein" = 2, "porktonium" = 10) -/obj/item/food/snacks/meat/mouse +/obj/item/food/meat/mouse name = "мышатина" desc = "На безрыбье и мышь мясо. Кто знает чем питался этот грызун до его подачи к столу." icon = 'modular_ss220/mobs/icons/items.dmi' icon_state = "meat_clear" list_reagents = list("nutriment" = 2, "blood" = 3, "toxin" = 1) -/obj/item/food/snacks/salmonmeat/snailmeat +/obj/item/food/salmonmeat/snailmeat name = "snail meat" desc = "Сырая космо-улитка в собственном соку." filling_color = "#6bb4a8" list_reagents = list("protein" = 5, "vitamin" = 5) -/obj/item/food/snacks/salmonmeat/turtlemeat +/obj/item/food/salmonmeat/turtlemeat name = "snail meat" desc = "Сырая космо-улитка в собственном соку." filling_color = "#2fa24c" diff --git a/modular_ss220/mobs/code/simple_animal/named_animals.dm b/modular_ss220/mobs/code/simple_animal/named_animals.dm index f8e5d7e3a406..82193365b7c4 100644 --- a/modular_ss220/mobs/code/simple_animal/named_animals.dm +++ b/modular_ss220/mobs/code/simple_animal/named_animals.dm @@ -5,7 +5,7 @@ icon_state = "pig_old" icon_living = "pig_old" icon_dead = "pig_old_dead" - butcher_results = list(/obj/item/food/snacks/meat/ham/old = 10) + butcher_results = list(/obj/item/food/meat/ham/old = 10) unique_pet = TRUE gold_core_spawnable = NO_SPAWN maxHealth = 80 diff --git a/modular_ss220/mobs/code/simple_animal/pets/cat.dm b/modular_ss220/mobs/code/simple_animal/pets/cat.dm index a3be6b70afb5..2c8b3f0c2ab6 100644 --- a/modular_ss220/mobs/code/simple_animal/pets/cat.dm +++ b/modular_ss220/mobs/code/simple_animal/pets/cat.dm @@ -19,7 +19,7 @@ gender = FEMALE mob_size = MOB_SIZE_LARGE // THICK!!! //canmove = FALSE - butcher_results = list(/obj/item/food/snacks/meat = 8) + butcher_results = list(/obj/item/food/meat = 8) maxHealth = 40 // Sooooo faaaat... health = 40 speed = 10 // TOO FAT diff --git a/modular_ss220/mobs/code/simple_animal/pets/dog.dm b/modular_ss220/mobs/code/simple_animal/pets/dog.dm index 6d0498eb4253..4e8c1c08b010 100644 --- a/modular_ss220/mobs/code/simple_animal/pets/dog.dm +++ b/modular_ss220/mobs/code/simple_animal/pets/dog.dm @@ -8,7 +8,7 @@ attacktext = "кусает" var/growl_sound = list('modular_ss220/mobs/sound/creatures/dog_grawl1.ogg','modular_ss220/mobs/sound/creatures/dog_grawl2.ogg') //Used in emote. - butcher_results = list(/obj/item/food/snacks/meat/dog = 4) + butcher_results = list(/obj/item/food/meat/dog = 4) collar_type = "dog" /mob/living/simple_animal/pet/dog/wuv(change, mob/M) @@ -64,7 +64,7 @@ /mob/living/simple_animal/pet/dog/corgi/puppy maxHealth = 20 health = 20 - butcher_results = list(/obj/item/food/snacks/meat/corgi = 1) + butcher_results = list(/obj/item/food/meat/corgi = 1) /mob/living/simple_animal/pet/dog/corgi/puppy/void maxHealth = 60 diff --git a/modular_ss220/mobs/code/simple_animal/pets/security_dogs.dm b/modular_ss220/mobs/code/simple_animal/pets/security_dogs.dm index 94f511b8dd73..bfefe7c07d40 100644 --- a/modular_ss220/mobs/code/simple_animal/pets/security_dogs.dm +++ b/modular_ss220/mobs/code/simple_animal/pets/security_dogs.dm @@ -16,7 +16,7 @@ var/obj/item/inventory_head var/obj/item/inventory_mask footstep_type = FOOTSTEP_MOB_CLAW - butcher_results = list(/obj/item/food/snacks/meat/security = 3) + butcher_results = list(/obj/item/food/meat/security = 3) /mob/living/simple_animal/pet/dog/security/ranger name = "Ranger" diff --git a/modular_ss220/mobs/code/simple_animal/pets/slugcat.dm b/modular_ss220/mobs/code/simple_animal/pets/slugcat.dm index 7e956296a14e..e5941dfc8250 100644 --- a/modular_ss220/mobs/code/simple_animal/pets/slugcat.dm +++ b/modular_ss220/mobs/code/simple_animal/pets/slugcat.dm @@ -21,7 +21,7 @@ pass_flags = PASSTABLE ventcrawler = VENTCRAWLER_ALWAYS can_collar = 1 - butcher_results = list(/obj/item/food/snacks/meat = 5) + butcher_results = list(/obj/item/food/meat = 5) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" diff --git a/modular_ss220/objects/code/coffin.dm b/modular_ss220/objects/code/coffin.dm index 4826211fb3d1..a0ac7aebb4ed 100644 --- a/modular_ss220/objects/code/coffin.dm +++ b/modular_ss220/objects/code/coffin.dm @@ -7,7 +7,7 @@ open_door_sprite = null resistance_flags = FLAMMABLE max_integrity = 300 - material_drop = /obj/item/food/snacks/grown/corn + material_drop = /obj/item/food/grown/corn material_drop_amount = 10 // Выращивание кукурузогроба diff --git a/modular_ss220/objects/code/miscellaneous.dm b/modular_ss220/objects/code/miscellaneous.dm index 5db5d301b6b3..f206f4c39e09 100644 --- a/modular_ss220/objects/code/miscellaneous.dm +++ b/modular_ss220/objects/code/miscellaneous.dm @@ -140,5 +140,5 @@ // Display Cases /obj/structure/displaycase/hos alert = TRUE - start_showpiece_type = /obj/item/food/snacks/donut/sprinkles + start_showpiece_type = /obj/item/food/donut/sprinkles req_access = list(ACCESS_HOS) diff --git a/modular_ss220/silicons/code/items/rlf.dm b/modular_ss220/silicons/code/items/rlf.dm index ef09085778e1..9d573af8264b 100644 --- a/modular_ss220/silicons/code/items/rlf.dm +++ b/modular_ss220/silicons/code/items/rlf.dm @@ -21,7 +21,7 @@ if(!receiver.client) to_chat(user, span_warning("You offer lollipop to [receiver], but they don't seem to respond...")) return - var/obj/item/I = new /obj/item/food/snacks/candy/sucker/lollipop + var/obj/item/I = new /obj/item/food/candy/sucker/lollipop receiver.throw_alert("take item [I.UID()]", /atom/movable/screen/alert/take_item/RLF, alert_args = list(user, receiver, I)) to_chat(user, span_info("You offer lollipop to [receiver].")) @@ -29,7 +29,7 @@ var/mob/living/receiver = locateUID(receiver_UID) if(receiver.stat != CONSCIOUS) return - var/obj/item/food/snacks/candy/sucker/I = locateUID(item_UID) + var/obj/item/food/candy/sucker/I = locateUID(item_UID) if(receiver.r_hand && receiver.l_hand) to_chat(receiver, span_warning("You need to have your hands free to accept [I]!")) return @@ -49,13 +49,13 @@ receiver.visible_message(span_notice("[giver] handed [I] to [receiver].")) receiver.clear_alert("take item [item_UID]") -/obj/item/food/snacks/candy/sucker/lollipop +/obj/item/food/candy/sucker/lollipop name = "lollipop" desc = "For being such a courage patient!" icon_state = "sucker" filling_color = "#60A584" list_reagents = list("sugar" = 4) -/obj/item/food/snacks/candy/sucker/lollipop/New() +/obj/item/food/candy/sucker/lollipop/New() . = ..() icon_state = pick("sucker_blue", "sucker_green", "sucker_orange", "sucker_purple", "sucker_red", "sucker_yellow") diff --git a/modular_ss220/unique_objects/code/cheese_statue.dm b/modular_ss220/unique_objects/code/cheese_statue.dm index bb5b0f3e6ffa..2e3451851cec 100644 --- a/modular_ss220/unique_objects/code/cheese_statue.dm +++ b/modular_ss220/unique_objects/code/cheese_statue.dm @@ -66,7 +66,7 @@ GLOBAL_LIST_INIT(cheese_recipes, list( /datum/recipe/oven/reinforcedcheese reagents = list("sodiumchloride" = 10) items = list( - /obj/item/food/snacks/sliceable/cheesewheel, - /obj/item/food/snacks/sliceable/cheesewheel + /obj/item/food/sliceable/cheesewheel, + /obj/item/food/sliceable/cheesewheel ) result = /obj/item/stack/sheet/cheese diff --git a/paradise.dme b/paradise.dme index 1d33f0206cbc..481c6339649b 100644 --- a/paradise.dme +++ b/paradise.dme @@ -104,10 +104,12 @@ #include "code\__DEFINES\power_defines.dm" #include "code\__DEFINES\preferences_defines.dm" #include "code\__DEFINES\procpath.dm" +#include "code\__DEFINES\proc_refs.dm" #include "code\__DEFINES\qdel_defines.dm" #include "code\__DEFINES\radiation_defines.dm" #include "code\__DEFINES\radio_defines.dm" #include "code\__DEFINES\reagents_defines.dm" +#include "code\__DEFINES\regex.dm" #include "code\__DEFINES\revolution_defines.dm" #include "code\__DEFINES\role_preferences.dm" #include "code\__DEFINES\rolebans.dm" @@ -1609,6 +1611,7 @@ #include "code\modules\awaymissions\mission_code\ruins\processing_facility.dm" #include "code\modules\awaymissions\mission_code\ruins\snowbiodome.dm" #include "code\modules\awaymissions\mission_code\ruins\syndiecakesfactory.dm" +#include "code\modules\awaymissions\mission_code\ruins\telecomns.dm" #include "code\modules\awaymissions\mission_code\ruins\watcher_grave.dm" #include "code\modules\awaymissions\mission_code\ruins\wizardcrash.dm" #include "code\modules\buildmode\bm_mode.dm" @@ -1855,7 +1858,6 @@ #include "code\modules\food_and_drinks\drinks\drinks\shotglass.dm" #include "code\modules\food_and_drinks\food\condiment.dm" #include "code\modules\food_and_drinks\food\customizables.dm" -#include "code\modules\food_and_drinks\food\snacks.dm" #include "code\modules\food_and_drinks\food\foods\baked_goods.dm" #include "code\modules\food_and_drinks\food\foods\bread.dm" #include "code\modules\food_and_drinks\food\foods\candy.dm" @@ -1883,7 +1885,6 @@ #include "code\modules\food_and_drinks\kitchen_machinery\kitchen_machine.dm" #include "code\modules\food_and_drinks\kitchen_machinery\microwave.dm" #include "code\modules\food_and_drinks\kitchen_machinery\monkeyrecycler.dm" -#include "code\modules\food_and_drinks\kitchen_machinery\oven.dm" #include "code\modules\food_and_drinks\kitchen_machinery\oven_new.dm" #include "code\modules\food_and_drinks\kitchen_machinery\processor.dm" #include "code\modules\food_and_drinks\kitchen_machinery\smartfridge.dm" diff --git a/sound/voice/dvorak/cerebron1.ogg b/sound/voice/dvorak/cerebron1.ogg new file mode 100644 index 000000000000..06552b91c113 Binary files /dev/null and b/sound/voice/dvorak/cerebron1.ogg differ diff --git a/sound/voice/dvorak/cerebron2.ogg b/sound/voice/dvorak/cerebron2.ogg new file mode 100644 index 000000000000..2e58b620fe64 Binary files /dev/null and b/sound/voice/dvorak/cerebron2.ogg differ diff --git a/sound/voice/dvorak/cerebron3.ogg b/sound/voice/dvorak/cerebron3.ogg new file mode 100644 index 000000000000..24cb53df0ec0 Binary files /dev/null and b/sound/voice/dvorak/cerebron3.ogg differ diff --git a/sound/voice/dvorak/core1.ogg b/sound/voice/dvorak/core1.ogg new file mode 100644 index 000000000000..59c6bb9c8284 Binary files /dev/null and b/sound/voice/dvorak/core1.ogg differ diff --git a/sound/voice/dvorak/core2.ogg b/sound/voice/dvorak/core2.ogg new file mode 100644 index 000000000000..d39ff922e859 Binary files /dev/null and b/sound/voice/dvorak/core2.ogg differ diff --git a/sound/voice/dvorak/core3.ogg b/sound/voice/dvorak/core3.ogg new file mode 100644 index 000000000000..26ec1969f7a5 Binary files /dev/null and b/sound/voice/dvorak/core3.ogg differ diff --git a/sound/voice/dvorak/cyberiad1.ogg b/sound/voice/dvorak/cyberiad1.ogg new file mode 100644 index 000000000000..0023d759fc67 Binary files /dev/null and b/sound/voice/dvorak/cyberiad1.ogg differ diff --git a/sound/voice/dvorak/cyberiad2.ogg b/sound/voice/dvorak/cyberiad2.ogg new file mode 100644 index 000000000000..2e58b620fe64 Binary files /dev/null and b/sound/voice/dvorak/cyberiad2.ogg differ diff --git a/sound/voice/dvorak/cyberiad3.ogg b/sound/voice/dvorak/cyberiad3.ogg new file mode 100644 index 000000000000..24cb53df0ec0 Binary files /dev/null and b/sound/voice/dvorak/cyberiad3.ogg differ diff --git a/sound/voice/dvorak/farragus1.ogg b/sound/voice/dvorak/farragus1.ogg new file mode 100644 index 000000000000..af38b490bd28 Binary files /dev/null and b/sound/voice/dvorak/farragus1.ogg differ diff --git a/sound/voice/dvorak/farragus2.ogg b/sound/voice/dvorak/farragus2.ogg new file mode 100644 index 000000000000..2e58b620fe64 Binary files /dev/null and b/sound/voice/dvorak/farragus2.ogg differ diff --git a/sound/voice/dvorak/farragus3.ogg b/sound/voice/dvorak/farragus3.ogg new file mode 100644 index 000000000000..24cb53df0ec0 Binary files /dev/null and b/sound/voice/dvorak/farragus3.ogg differ diff --git a/sound/voice/dvorak/junk1.ogg b/sound/voice/dvorak/junk1.ogg new file mode 100644 index 000000000000..c9e65b312721 Binary files /dev/null and b/sound/voice/dvorak/junk1.ogg differ diff --git a/sound/voice/dvorak/junk2.ogg b/sound/voice/dvorak/junk2.ogg new file mode 100644 index 000000000000..92f8256e39f3 Binary files /dev/null and b/sound/voice/dvorak/junk2.ogg differ diff --git a/sound/voice/dvorak/junk3.ogg b/sound/voice/dvorak/junk3.ogg new file mode 100644 index 000000000000..3666931bb803 Binary files /dev/null and b/sound/voice/dvorak/junk3.ogg differ diff --git a/sound/voice/dvorak/kerberos1.ogg b/sound/voice/dvorak/kerberos1.ogg new file mode 100644 index 000000000000..f8f8c56bb51e Binary files /dev/null and b/sound/voice/dvorak/kerberos1.ogg differ diff --git a/sound/voice/dvorak/kerberos2.ogg b/sound/voice/dvorak/kerberos2.ogg new file mode 100644 index 000000000000..2e58b620fe64 Binary files /dev/null and b/sound/voice/dvorak/kerberos2.ogg differ diff --git a/sound/voice/dvorak/kerberos3.ogg b/sound/voice/dvorak/kerberos3.ogg new file mode 100644 index 000000000000..24cb53df0ec0 Binary files /dev/null and b/sound/voice/dvorak/kerberos3.ogg differ diff --git a/sound/voice/dvorak/teleporter1.ogg b/sound/voice/dvorak/teleporter1.ogg new file mode 100644 index 000000000000..af050b80f6f5 Binary files /dev/null and b/sound/voice/dvorak/teleporter1.ogg differ diff --git a/sound/voice/dvorak/teleporter2.ogg b/sound/voice/dvorak/teleporter2.ogg new file mode 100644 index 000000000000..688a62456bdd Binary files /dev/null and b/sound/voice/dvorak/teleporter2.ogg differ diff --git a/sound/voice/dvorak/teleporter3.ogg b/sound/voice/dvorak/teleporter3.ogg new file mode 100644 index 000000000000..f3ba9f766d4d Binary files /dev/null and b/sound/voice/dvorak/teleporter3.ogg differ diff --git a/sound/voice/dvorak/turret1.ogg b/sound/voice/dvorak/turret1.ogg new file mode 100644 index 000000000000..22d2a204ee4e Binary files /dev/null and b/sound/voice/dvorak/turret1.ogg differ diff --git a/sound/voice/dvorak/turret2.ogg b/sound/voice/dvorak/turret2.ogg new file mode 100644 index 000000000000..92fb1c979f25 Binary files /dev/null and b/sound/voice/dvorak/turret2.ogg differ diff --git a/sound/voice/dvorak/turret3.ogg b/sound/voice/dvorak/turret3.ogg new file mode 100644 index 000000000000..5b549a9b4faa Binary files /dev/null and b/sound/voice/dvorak/turret3.ogg differ diff --git a/sound/voice/dvorak/vendor1.ogg b/sound/voice/dvorak/vendor1.ogg new file mode 100644 index 000000000000..ba94e0a097de Binary files /dev/null and b/sound/voice/dvorak/vendor1.ogg differ diff --git a/sound/voice/dvorak/vendor2.ogg b/sound/voice/dvorak/vendor2.ogg new file mode 100644 index 000000000000..c667f125a3a7 Binary files /dev/null and b/sound/voice/dvorak/vendor2.ogg differ diff --git a/sound/voice/dvorak/vendor3.ogg b/sound/voice/dvorak/vendor3.ogg new file mode 100644 index 000000000000..b53c939796f8 Binary files /dev/null and b/sound/voice/dvorak/vendor3.ogg differ diff --git a/tgui/eslint.config.mjs b/tgui/eslint.config.mjs index 5324fc1d3c51..7a8ce487641e 100644 --- a/tgui/eslint.config.mjs +++ b/tgui/eslint.config.mjs @@ -16,156 +16,173 @@ const compat = new FlatCompat({ allConfig: js.configs.all }); -export default [...compat.extends("prettier"), { - ignores: ["/.yarn/**", "/**/node_modules", "/**/*.bundle.*", "/**/*.chunk.*", "/**/*.hot-update.*", "/packages/inferno/**"], +export default [ + ...compat.extends('prettier'), + { + ignores: [ + '**/.yarn/**', + '**/node_modules', + '**/*.bundle.*', + '**/*.chunk.*', + '**/*.hot-update.*', + '**/packages/inferno/**', + ], plugins: { - prettier, - react: fixupPluginRules(react), + prettier, + react: fixupPluginRules(react), }, languageOptions: { - globals: { - ...globals.browser, - ...globals.node, - Byond: "readonly", - }, + globals: { + ...globals.browser, + ...globals.node, + Byond: 'readonly', + }, - parser: tsParser, - ecmaVersion: 2020, - sourceType: "module", + parser: tsParser, + ecmaVersion: 2020, + sourceType: 'module', - parserOptions: { - ecmaFeatures: { - jsx: true, - }, + parserOptions: { + ecmaFeatures: { + jsx: true, }, + }, }, settings: { - "import/resolver": { - node: { - extensions: [".js", ".jsx", ".ts", ".tsx"], - }, + 'import/resolver': { + node: { + extensions: ['.js', '.jsx', '.ts', '.tsx'], }, + }, - react: { - version: "16.10", - }, + react: { + version: '16.10', + }, }, rules: { - "no-async-promise-executor": "error", - "no-cond-assign": "error", - "no-debugger": "error", - "no-dupe-args": "error", - "no-dupe-keys": "error", - "no-duplicate-case": "error", - "no-empty-character-class": "error", - "no-ex-assign": "error", - "no-extra-boolean-cast": "error", - "no-func-assign": "error", - "no-import-assign": "error", - "no-inner-declarations": "error", - "no-invalid-regexp": "error", - "no-irregular-whitespace": "error", - "no-misleading-character-class": "error", - "no-obj-calls": "error", - "no-prototype-builtins": "error", - "no-regex-spaces": "error", - "no-sparse-arrays": "error", - "no-template-curly-in-string": "error", - "no-unsafe-finally": "error", - "no-unsafe-negation": "error", - "use-isnan": "error", - "valid-typeof": "error", + 'no-async-promise-executor': 'error', + 'no-cond-assign': 'error', + 'no-debugger': 'error', + 'no-dupe-args': 'error', + 'no-dupe-keys': 'error', + 'no-duplicate-case': 'error', + 'no-empty-character-class': 'error', + 'no-ex-assign': 'error', + 'no-extra-boolean-cast': 'error', + 'no-func-assign': 'error', + 'no-import-assign': 'error', + 'no-inner-declarations': 'error', + 'no-invalid-regexp': 'error', + 'no-irregular-whitespace': 'error', + 'no-misleading-character-class': 'error', + 'no-obj-calls': 'error', + 'no-prototype-builtins': 'error', + 'no-regex-spaces': 'error', + 'no-sparse-arrays': 'error', + 'no-template-curly-in-string': 'error', + 'no-unsafe-finally': 'error', + 'no-unsafe-negation': 'error', + 'use-isnan': 'error', + 'valid-typeof': 'error', - complexity: ["error", { - max: 50, - }], + complexity: [ + 'error', + { + max: 50, + }, + ], - curly: ["error", "multi-line"], - eqeqeq: ["error", "always"], - "no-case-declarations": "error", - "no-empty-pattern": "error", - "no-fallthrough": "error", - "no-global-assign": "error", - "no-octal": "error", - "no-octal-escape": "error", - "no-redeclare": "error", - "no-return-assign": "error", - "no-self-assign": "error", - "no-sequences": "error", - "no-unused-labels": "warn", - "no-useless-escape": "warn", - "no-with": "error", - radix: "error", - strict: "error", - "no-delete-var": "error", - "no-shadow-restricted-names": "error", - "no-undef": "error", - "no-undef-init": "error", - "func-style": ["error", "expression"], - "spaced-comment": ["error", "always"], - "no-class-assign": "error", - "no-const-assign": "error", - "no-dupe-class-members": "error", - "no-new-symbol": "error", - "no-this-before-super": "error", - "no-var": "error", - "prefer-arrow-callback": "error", - "react/boolean-prop-naming": "error", - "react/button-has-type": "error", - "react/default-props-match-prop-types": "error", - "react/no-access-state-in-setstate": "error", - "react/no-children-prop": "error", - "react/no-danger": "error", - "react/no-danger-with-children": "error", - "react/no-deprecated": "error", - "react/no-did-mount-set-state": "error", - "react/no-did-update-set-state": "error", - "react/no-direct-mutation-state": "error", - "react/no-find-dom-node": "error", - "react/no-is-mounted": "error", - "react/no-redundant-should-component-update": "error", - "react/no-render-return-value": "error", - "react/no-typos": "error", - "react/no-string-refs": "error", - "react/no-this-in-sfc": "error", - "react/no-unescaped-entities": "error", - "react/no-unsafe": "error", - "react/no-unused-prop-types": "error", - "react/no-unused-state": "error", - "react/no-will-update-set-state": "error", - "react/prefer-es6-class": "error", - "react/prefer-stateless-function": "error", - "react/require-render-return": "error", - "react/self-closing-comp": "error", - "react/state-in-constructor": "error", - "react/style-prop-object": "error", - "react/void-dom-elements-no-children": "error", - "react/jsx-boolean-value": "error", - "react/jsx-handler-names": "error", - "react/jsx-key": "error", + curly: ['error', 'multi-line'], + eqeqeq: ['error', 'always'], + 'no-case-declarations': 'error', + 'no-empty-pattern': 'error', + 'no-fallthrough': 'error', + 'no-global-assign': 'error', + 'no-octal': 'error', + 'no-octal-escape': 'error', + 'no-redeclare': 'error', + 'no-return-assign': 'error', + 'no-self-assign': 'error', + 'no-sequences': 'error', + 'no-unused-labels': 'warn', + 'no-useless-escape': 'warn', + 'no-with': 'error', + radix: 'error', + strict: 'error', + 'no-delete-var': 'error', + 'no-shadow-restricted-names': 'error', + 'no-undef': 'error', + 'no-undef-init': 'error', + 'func-style': ['error', 'expression'], + 'spaced-comment': ['error', 'always'], + 'no-class-assign': 'error', + 'no-const-assign': 'error', + 'no-dupe-class-members': 'error', + 'no-new-symbol': 'error', + 'no-this-before-super': 'error', + 'no-var': 'error', + 'prefer-arrow-callback': 'error', + 'react/boolean-prop-naming': 'error', + 'react/button-has-type': 'error', + 'react/default-props-match-prop-types': 'error', + 'react/no-access-state-in-setstate': 'error', + 'react/no-children-prop': 'error', + 'react/no-danger': 'error', + 'react/no-danger-with-children': 'error', + 'react/no-deprecated': 'error', + 'react/no-did-mount-set-state': 'error', + 'react/no-did-update-set-state': 'error', + 'react/no-direct-mutation-state': 'error', + 'react/no-find-dom-node': 'error', + 'react/no-is-mounted': 'error', + 'react/no-redundant-should-component-update': 'error', + 'react/no-render-return-value': 'error', + 'react/no-typos': 'error', + 'react/no-string-refs': 'error', + 'react/no-this-in-sfc': 'error', + 'react/no-unescaped-entities': 'error', + 'react/no-unsafe': 'error', + 'react/no-unused-prop-types': 'error', + 'react/no-unused-state': 'error', + 'react/no-will-update-set-state': 'error', + 'react/prefer-es6-class': 'error', + 'react/prefer-stateless-function': 'error', + 'react/require-render-return': 'error', + 'react/self-closing-comp': 'error', + 'react/state-in-constructor': 'error', + 'react/style-prop-object': 'error', + 'react/void-dom-elements-no-children': 'error', + 'react/jsx-boolean-value': 'error', + 'react/jsx-handler-names': 'error', + 'react/jsx-key': 'error', - "react/jsx-max-depth": ["error", { - max: 10, - }], + 'react/jsx-max-depth': [ + 'error', + { + max: 10, + }, + ], - "react/jsx-no-comment-textnodes": "error", - "react/jsx-no-duplicate-props": "error", - "react/jsx-no-target-blank": "error", - "react/jsx-no-undef": "error", - "react/jsx-no-useless-fragment": "error", - "react/jsx-fragments": "error", - "react/jsx-pascal-case": "error", - "react/jsx-uses-react": "error", - "react/jsx-uses-vars": "error", + 'react/jsx-no-comment-textnodes': 'error', + 'react/jsx-no-duplicate-props': 'error', + 'react/jsx-no-target-blank': 'error', + 'react/jsx-no-undef': 'error', + 'react/jsx-no-useless-fragment': 'error', + 'react/jsx-fragments': 'error', + 'react/jsx-pascal-case': 'error', + 'react/jsx-uses-react': 'error', + 'react/jsx-uses-vars': 'error', }, -}, { - files: ["**/*.js", "**/*.jsx", "**/*.cjs", "**/*.mjs", "**/*.ts", "**/*.mts", "**/*.cts", "**/*.tsx"], + }, + { + files: ['**/*.js', '**/*.jsx', '**/*.cjs', '**/*.mjs', '**/*.ts', '**/*.mts', '**/*.cts', '**/*.tsx'], rules: { - "no-undef": "off", - "react/jsx-no-undef": "off", + 'no-undef': 'off', + 'react/jsx-no-undef': 'off', }, -}]; + }, +]; diff --git a/tgui/packages/tgui-dev-server/util.js b/tgui/packages/tgui-dev-server/util.js index 79190fe189a4..211174bbdc72 100644 --- a/tgui/packages/tgui-dev-server/util.js +++ b/tgui/packages/tgui-dev-server/util.js @@ -6,10 +6,7 @@ import fs from 'fs'; import path from 'path'; - -import { require } from './require.js'; - -const globPkg = require('glob'); +import { globSync } from 'glob'; export const resolvePath = path.resolve; @@ -17,10 +14,7 @@ export const resolvePath = path.resolve; * Combines path.resolve with glob patterns. */ export const resolveGlob = (...sections) => { - const unsafePaths = globPkg.sync(path.resolve(...sections), { - strict: false, - silent: true, - }); + const unsafePaths = globSync(path.resolve(...sections), { nodir: false, windowsPathsNoEscape: true }); const safePaths = []; for (let path of unsafePaths) { try { diff --git a/tgui/packages/tgui-panel/settings/reducer.js b/tgui/packages/tgui-panel/settings/reducer.js index 6451f4aa9d1f..359f692b2f68 100644 --- a/tgui/packages/tgui-panel/settings/reducer.js +++ b/tgui/packages/tgui-panel/settings/reducer.js @@ -24,7 +24,7 @@ const initialState = { fontSize: 13, fontFamily: FONTS[0], lineHeight: 1.2, - theme: 'dark', + theme: 'light', adminMusicVolume: 0.5, // Keep these two state vars for compatibility with other servers highlightText: '', diff --git a/tgui/public/tgui-panel.bundle.js b/tgui/public/tgui-panel.bundle.js index dc6999b6761c..38f458660a71 100644 --- a/tgui/public/tgui-panel.bundle.js +++ b/tgui/public/tgui-panel.bundle.js @@ -1,30 +1,30 @@ -(function(){(function(){var An={66641:function(b,n,t){"use strict";n.__esModule=!0,n.createPopper=void 0,n.popperGenerator=g;var e=i(t(8823)),r=i(t(19820)),o=i(t(54826)),a=i(t(43243)),u=i(t(17859)),l=i(t(80798)),c=i(t(46343)),p=i(t(31584));n.detectOverflow=p.default;var d=t(72600);function i(h){return h&&h.__esModule?h:{default:h}}var v={placement:"bottom",modifiers:[],strategy:"absolute"};function s(){for(var h=arguments.length,m=new Array(h),y=0;y0&&(0,r.round)(i.width)/c.offsetWidth||1,s=c.offsetHeight>0&&(0,r.round)(i.height)/c.offsetHeight||1);var g=(0,e.isElement)(c)?(0,o.default)(c):window,f=g.visualViewport,h=!(0,a.default)()&&d,m=(i.left+(h&&f?f.offsetLeft:0))/v,y=(i.top+(h&&f?f.offsetTop:0))/s,T=i.width/v,O=i.height/s;return{width:T,height:O,top:y,right:m+T,bottom:y+O,left:m,x:m,y:y}}},86380:function(b,n,t){"use strict";n.__esModule=!0,n.default=O;var e=t(41521),r=h(t(2868)),o=h(t(39799)),a=h(t(54826)),u=h(t(43243)),l=h(t(33733)),c=h(t(14522)),p=t(72600),d=h(t(32125)),i=h(t(34972)),v=h(t(96343)),s=h(t(13203)),g=h(t(31855)),f=t(69031);function h(C){return C&&C.__esModule?C:{default:C}}function m(C,S){var E=(0,d.default)(C,!1,S==="fixed");return E.top=E.top+C.clientTop,E.left=E.left+C.clientLeft,E.bottom=E.top+C.clientHeight,E.right=E.left+C.clientWidth,E.width=C.clientWidth,E.height=C.clientHeight,E.x=E.left,E.y=E.top,E}function y(C,S,E){return S===e.viewport?(0,g.default)((0,r.default)(C,E)):(0,p.isElement)(S)?m(S,E):(0,g.default)((0,o.default)((0,l.default)(C)))}function T(C){var S=(0,a.default)((0,i.default)(C)),E=["absolute","fixed"].indexOf((0,c.default)(C).position)>=0,I=E&&(0,p.isHTMLElement)(C)?(0,u.default)(C):C;return(0,p.isElement)(I)?S.filter(function(A){return(0,p.isElement)(A)&&(0,v.default)(A,I)&&(0,s.default)(A)!=="body"}):[]}function O(C,S,E,I){var A=S==="clippingParents"?T(C):[].concat(S),N=[].concat(A,[E]),M=N[0],w=N.reduce(function(L,x){var V=y(C,x,I);return L.top=(0,f.max)(V.top,L.top),L.right=(0,f.min)(V.right,L.right),L.bottom=(0,f.min)(V.bottom,L.bottom),L.left=(0,f.max)(V.left,L.left),L},y(C,M,I));return w.width=w.right-w.left,w.height=w.bottom-w.top,w.x=w.left,w.y=w.top,w}},8823:function(b,n,t){"use strict";n.__esModule=!0,n.default=v;var e=d(t(32125)),r=d(t(45401)),o=d(t(13203)),a=t(72600),u=d(t(85750)),l=d(t(33733)),c=d(t(44011)),p=t(69031);function d(s){return s&&s.__esModule?s:{default:s}}function i(s){var g=s.getBoundingClientRect(),f=(0,p.round)(g.width)/s.offsetWidth||1,h=(0,p.round)(g.height)/s.offsetHeight||1;return f!==1||h!==1}function v(s,g,f){f===void 0&&(f=!1);var h=(0,a.isHTMLElement)(g),m=(0,a.isHTMLElement)(g)&&i(g),y=(0,l.default)(g),T=(0,e.default)(s,m,f),O={scrollLeft:0,scrollTop:0},C={x:0,y:0};return(h||!h&&!f)&&(((0,o.default)(g)!=="body"||(0,c.default)(y))&&(O=(0,r.default)(g)),(0,a.isHTMLElement)(g)?(C=(0,e.default)(g,!0),C.x+=g.clientLeft,C.y+=g.clientTop):y&&(C.x=(0,u.default)(y))),{x:T.left+O.scrollLeft-C.x,y:T.top+O.scrollTop-C.y,width:T.width,height:T.height}}},14522:function(b,n,t){"use strict";n.__esModule=!0,n.default=o;var e=r(t(81020));function r(a){return a&&a.__esModule?a:{default:a}}function o(a){return(0,e.default)(a).getComputedStyle(a)}},33733:function(b,n,t){"use strict";n.__esModule=!0,n.default=r;var e=t(72600);function r(o){return(((0,e.isElement)(o)?o.ownerDocument:o.document)||window.document).documentElement}},39799:function(b,n,t){"use strict";n.__esModule=!0,n.default=c;var e=l(t(33733)),r=l(t(14522)),o=l(t(85750)),a=l(t(79569)),u=t(69031);function l(p){return p&&p.__esModule?p:{default:p}}function c(p){var d,i=(0,e.default)(p),v=(0,a.default)(p),s=(d=p.ownerDocument)==null?void 0:d.body,g=(0,u.max)(i.scrollWidth,i.clientWidth,s?s.scrollWidth:0,s?s.clientWidth:0),f=(0,u.max)(i.scrollHeight,i.clientHeight,s?s.scrollHeight:0,s?s.clientHeight:0),h=-v.scrollLeft+(0,o.default)(p),m=-v.scrollTop;return(0,r.default)(s||i).direction==="rtl"&&(h+=(0,u.max)(i.clientWidth,s?s.clientWidth:0)-g),{width:g,height:f,x:h,y:m}}},75680:function(b,n){"use strict";n.__esModule=!0,n.default=t;function t(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}},19820:function(b,n,t){"use strict";n.__esModule=!0,n.default=o;var e=r(t(32125));function r(a){return a&&a.__esModule?a:{default:a}}function o(a){var u=(0,e.default)(a),l=a.offsetWidth,c=a.offsetHeight;return Math.abs(u.width-l)<=1&&(l=u.width),Math.abs(u.height-c)<=1&&(c=u.height),{x:a.offsetLeft,y:a.offsetTop,width:l,height:c}}},13203:function(b,n){"use strict";n.__esModule=!0,n.default=t;function t(e){return e?(e.nodeName||"").toLowerCase():null}},45401:function(b,n,t){"use strict";n.__esModule=!0,n.default=l;var e=u(t(79569)),r=u(t(81020)),o=t(72600),a=u(t(75680));function u(c){return c&&c.__esModule?c:{default:c}}function l(c){return c===(0,r.default)(c)||!(0,o.isHTMLElement)(c)?(0,e.default)(c):(0,a.default)(c)}},43243:function(b,n,t){"use strict";n.__esModule=!0,n.default=v;var e=p(t(81020)),r=p(t(13203)),o=p(t(14522)),a=t(72600),u=p(t(25658)),l=p(t(34972)),c=p(t(97353));function p(s){return s&&s.__esModule?s:{default:s}}function d(s){return!(0,a.isHTMLElement)(s)||(0,o.default)(s).position==="fixed"?null:s.offsetParent}function i(s){var g=/firefox/i.test((0,c.default)()),f=/Trident/i.test((0,c.default)());if(f&&(0,a.isHTMLElement)(s)){var h=(0,o.default)(s);if(h.position==="fixed")return null}var m=(0,l.default)(s);for((0,a.isShadowRoot)(m)&&(m=m.host);(0,a.isHTMLElement)(m)&&["html","body"].indexOf((0,r.default)(m))<0;){var y=(0,o.default)(m);if(y.transform!=="none"||y.perspective!=="none"||y.contain==="paint"||["transform","perspective"].indexOf(y.willChange)!==-1||g&&y.willChange==="filter"||g&&y.filter&&y.filter!=="none")return m;m=m.parentNode}return null}function v(s){for(var g=(0,e.default)(s),f=d(s);f&&(0,u.default)(f)&&(0,o.default)(f).position==="static";)f=d(f);return f&&((0,r.default)(f)==="html"||(0,r.default)(f)==="body"&&(0,o.default)(f).position==="static")?g:f||i(s)||g}},34972:function(b,n,t){"use strict";n.__esModule=!0,n.default=u;var e=a(t(13203)),r=a(t(33733)),o=t(72600);function a(l){return l&&l.__esModule?l:{default:l}}function u(l){return(0,e.default)(l)==="html"?l:l.assignedSlot||l.parentNode||((0,o.isShadowRoot)(l)?l.host:null)||(0,r.default)(l)}},65329:function(b,n,t){"use strict";n.__esModule=!0,n.default=l;var e=u(t(34972)),r=u(t(44011)),o=u(t(13203)),a=t(72600);function u(c){return c&&c.__esModule?c:{default:c}}function l(c){return["html","body","#document"].indexOf((0,o.default)(c))>=0?c.ownerDocument.body:(0,a.isHTMLElement)(c)&&(0,r.default)(c)?c:l((0,e.default)(c))}},2868:function(b,n,t){"use strict";n.__esModule=!0,n.default=l;var e=u(t(81020)),r=u(t(33733)),o=u(t(85750)),a=u(t(14894));function u(c){return c&&c.__esModule?c:{default:c}}function l(c,p){var d=(0,e.default)(c),i=(0,r.default)(c),v=d.visualViewport,s=i.clientWidth,g=i.clientHeight,f=0,h=0;if(v){s=v.width,g=v.height;var m=(0,a.default)();(m||!m&&p==="fixed")&&(f=v.offsetLeft,h=v.offsetTop)}return{width:s,height:g,x:f+(0,o.default)(c),y:h}}},81020:function(b,n){"use strict";n.__esModule=!0,n.default=t;function t(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var r=e.ownerDocument;return r&&r.defaultView||window}return e}},79569:function(b,n,t){"use strict";n.__esModule=!0,n.default=o;var e=r(t(81020));function r(a){return a&&a.__esModule?a:{default:a}}function o(a){var u=(0,e.default)(a),l=u.pageXOffset,c=u.pageYOffset;return{scrollLeft:l,scrollTop:c}}},85750:function(b,n,t){"use strict";n.__esModule=!0,n.default=u;var e=a(t(32125)),r=a(t(33733)),o=a(t(79569));function a(l){return l&&l.__esModule?l:{default:l}}function u(l){return(0,e.default)((0,r.default)(l)).left+(0,o.default)(l).scrollLeft}},72600:function(b,n,t){"use strict";n.__esModule=!0,n.isElement=o,n.isHTMLElement=a,n.isShadowRoot=u;var e=r(t(81020));function r(l){return l&&l.__esModule?l:{default:l}}function o(l){var c=(0,e.default)(l).Element;return l instanceof c||l instanceof Element}function a(l){var c=(0,e.default)(l).HTMLElement;return l instanceof c||l instanceof HTMLElement}function u(l){if(typeof ShadowRoot=="undefined")return!1;var c=(0,e.default)(l).ShadowRoot;return l instanceof c||l instanceof ShadowRoot}},14894:function(b,n,t){"use strict";n.__esModule=!0,n.default=o;var e=r(t(97353));function r(a){return a&&a.__esModule?a:{default:a}}function o(){return!/^((?!chrome|android).)*safari/i.test((0,e.default)())}},44011:function(b,n,t){"use strict";n.__esModule=!0,n.default=o;var e=r(t(14522));function r(a){return a&&a.__esModule?a:{default:a}}function o(a){var u=(0,e.default)(a),l=u.overflow,c=u.overflowX,p=u.overflowY;return/auto|scroll|overlay|hidden/.test(l+p+c)}},25658:function(b,n,t){"use strict";n.__esModule=!0,n.default=o;var e=r(t(13203));function r(a){return a&&a.__esModule?a:{default:a}}function o(a){return["table","td","th"].indexOf((0,e.default)(a))>=0}},54826:function(b,n,t){"use strict";n.__esModule=!0,n.default=l;var e=u(t(65329)),r=u(t(34972)),o=u(t(81020)),a=u(t(44011));function u(c){return c&&c.__esModule?c:{default:c}}function l(c,p){var d;p===void 0&&(p=[]);var i=(0,e.default)(c),v=i===((d=c.ownerDocument)==null?void 0:d.body),s=(0,o.default)(i),g=v?[s].concat(s.visualViewport||[],(0,a.default)(i)?i:[]):i,f=p.concat(g);return v?f:f.concat(l((0,r.default)(g)))}},41521:function(b,n){"use strict";n.__esModule=!0,n.write=n.viewport=n.variationPlacements=n.top=n.start=n.right=n.reference=n.read=n.popper=n.placements=n.modifierPhases=n.main=n.left=n.end=n.clippingParents=n.bottom=n.beforeWrite=n.beforeRead=n.beforeMain=n.basePlacements=n.auto=n.afterWrite=n.afterRead=n.afterMain=void 0;var t=n.top="top",e=n.bottom="bottom",r=n.right="right",o=n.left="left",a=n.auto="auto",u=n.basePlacements=[t,e,r,o],l=n.start="start",c=n.end="end",p=n.clippingParents="clippingParents",d=n.viewport="viewport",i=n.popper="popper",v=n.reference="reference",s=n.variationPlacements=u.reduce(function(A,N){return A.concat([N+"-"+l,N+"-"+c])},[]),g=n.placements=[].concat(u,[a]).reduce(function(A,N){return A.concat([N,N+"-"+l,N+"-"+c])},[]),f=n.beforeRead="beforeRead",h=n.read="read",m=n.afterRead="afterRead",y=n.beforeMain="beforeMain",T=n.main="main",O=n.afterMain="afterMain",C=n.beforeWrite="beforeWrite",S=n.write="write",E=n.afterWrite="afterWrite",I=n.modifierPhases=[f,h,m,y,T,O,C,S,E]},60023:function(b,n,t){"use strict";n.__esModule=!0;var e={popperGenerator:!0,detectOverflow:!0,createPopperBase:!0,createPopper:!0,createPopperLite:!0};n.popperGenerator=n.detectOverflow=n.createPopperLite=n.createPopperBase=n.createPopper=void 0;var r=t(41521);Object.keys(r).forEach(function(c){c==="default"||c==="__esModule"||Object.prototype.hasOwnProperty.call(e,c)||c in n&&n[c]===r[c]||(n[c]=r[c])});var o=t(91078);Object.keys(o).forEach(function(c){c==="default"||c==="__esModule"||Object.prototype.hasOwnProperty.call(e,c)||c in n&&n[c]===o[c]||(n[c]=o[c])});var a=t(66641);n.popperGenerator=a.popperGenerator,n.detectOverflow=a.detectOverflow,n.createPopperBase=a.createPopper;var u=t(7925);n.createPopper=u.createPopper;var l=t(62642);n.createPopperLite=l.createPopper},56304:function(b,n,t){"use strict";n.__esModule=!0,n.default=void 0;var e=o(t(13203)),r=t(72600);function o(c){return c&&c.__esModule?c:{default:c}}function a(c){var p=c.state;Object.keys(p.elements).forEach(function(d){var i=p.styles[d]||{},v=p.attributes[d]||{},s=p.elements[d];!(0,r.isHTMLElement)(s)||!(0,e.default)(s)||(Object.assign(s.style,i),Object.keys(v).forEach(function(g){var f=v[g];f===!1?s.removeAttribute(g):s.setAttribute(g,f===!0?"":f)}))})}function u(c){var p=c.state,d={popper:{position:p.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(p.elements.popper.style,d.popper),p.styles=d,p.elements.arrow&&Object.assign(p.elements.arrow.style,d.arrow),function(){Object.keys(p.elements).forEach(function(i){var v=p.elements[i],s=p.attributes[i]||{},g=Object.keys(p.styles.hasOwnProperty(i)?p.styles[i]:d[i]),f=g.reduce(function(h,m){return h[m]="",h},{});!(0,r.isHTMLElement)(v)||!(0,e.default)(v)||(Object.assign(v.style,f),Object.keys(s).forEach(function(h){v.removeAttribute(h)}))})}}var l=n.default={name:"applyStyles",enabled:!0,phase:"write",fn:a,effect:u,requires:["computeStyles"]}},57243:function(b,n,t){"use strict";n.__esModule=!0,n.default=void 0;var e=i(t(38141)),r=i(t(19820)),o=i(t(96343)),a=i(t(43243)),u=i(t(7770)),l=t(76770),c=i(t(77631)),p=i(t(54824)),d=t(41521);function i(h){return h&&h.__esModule?h:{default:h}}var v=function(){function h(m,y){return m=typeof m=="function"?m(Object.assign({},y.rects,{placement:y.placement})):m,(0,c.default)(typeof m!="number"?m:(0,p.default)(m,d.basePlacements))}return h}();function s(h){var m,y=h.state,T=h.name,O=h.options,C=y.elements.arrow,S=y.modifiersData.popperOffsets,E=(0,e.default)(y.placement),I=(0,u.default)(E),A=[d.left,d.right].indexOf(E)>=0,N=A?"height":"width";if(!(!C||!S)){var M=v(O.padding,y),w=(0,r.default)(C),L=I==="y"?d.top:d.left,x=I==="y"?d.bottom:d.right,V=y.rects.reference[N]+y.rects.reference[I]-S[I]-y.rects.popper[N],F=S[I]-y.rects.reference[I],G=(0,a.default)(C),B=G?I==="y"?G.clientHeight||0:G.clientWidth||0:0,j=V/2-F/2,U=M[L],K=B-w[N]-M[x],Y=B/2-w[N]/2+j,W=(0,l.within)(U,Y,K),et=I;y.modifiersData[T]=(m={},m[et]=W,m.centerOffset=W-Y,m)}}function g(h){var m=h.state,y=h.options,T=y.element,O=T===void 0?"[data-popper-arrow]":T;O!=null&&(typeof O=="string"&&(O=m.elements.popper.querySelector(O),!O)||(0,o.default)(m.elements.popper,O)&&(m.elements.arrow=O))}var f=n.default={name:"arrow",enabled:!0,phase:"main",fn:s,effect:g,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}},60421:function(b,n,t){"use strict";n.__esModule=!0,n.default=void 0,n.mapToStyles=s;var e=t(41521),r=d(t(43243)),o=d(t(81020)),a=d(t(33733)),u=d(t(14522)),l=d(t(38141)),c=d(t(14380)),p=t(69031);function d(h){return h&&h.__esModule?h:{default:h}}var i={top:"auto",right:"auto",bottom:"auto",left:"auto"};function v(h,m){var y=h.x,T=h.y,O=m.devicePixelRatio||1;return{x:(0,p.round)(y*O)/O||0,y:(0,p.round)(T*O)/O||0}}function s(h){var m,y=h.popper,T=h.popperRect,O=h.placement,C=h.variation,S=h.offsets,E=h.position,I=h.gpuAcceleration,A=h.adaptive,N=h.roundOffsets,M=h.isFixed,w=S.x,L=w===void 0?0:w,x=S.y,V=x===void 0?0:x,F=typeof N=="function"?N({x:L,y:V}):{x:L,y:V};L=F.x,V=F.y;var G=S.hasOwnProperty("x"),B=S.hasOwnProperty("y"),j=e.left,U=e.top,K=window;if(A){var Y=(0,r.default)(y),W="clientHeight",et="clientWidth";if(Y===(0,o.default)(y)&&(Y=(0,a.default)(y),(0,u.default)(Y).position!=="static"&&E==="absolute"&&(W="scrollHeight",et="scrollWidth")),Y=Y,O===e.top||(O===e.left||O===e.right)&&C===e.end){U=e.bottom;var at=M&&Y===K&&K.visualViewport?K.visualViewport.height:Y[W];V-=at-T.height,V*=I?1:-1}if(O===e.left||(O===e.top||O===e.bottom)&&C===e.end){j=e.right;var pt=M&&Y===K&&K.visualViewport?K.visualViewport.width:Y[et];L-=pt-T.width,L*=I?1:-1}}var z=Object.assign({position:E},A&&i),X=N===!0?v({x:L,y:V},(0,o.default)(y)):{x:L,y:V};if(L=X.x,V=X.y,I){var nt;return Object.assign({},z,(nt={},nt[U]=B?"0":"",nt[j]=G?"0":"",nt.transform=(K.devicePixelRatio||1)<=1?"translate("+L+"px, "+V+"px)":"translate3d("+L+"px, "+V+"px, 0)",nt))}return Object.assign({},z,(m={},m[U]=B?V+"px":"",m[j]=G?L+"px":"",m.transform="",m))}function g(h){var m=h.state,y=h.options,T=y.gpuAcceleration,O=T===void 0?!0:T,C=y.adaptive,S=C===void 0?!0:C,E=y.roundOffsets,I=E===void 0?!0:E,A={placement:(0,l.default)(m.placement),variation:(0,c.default)(m.placement),popper:m.elements.popper,popperRect:m.rects.popper,gpuAcceleration:O,isFixed:m.options.strategy==="fixed"};m.modifiersData.popperOffsets!=null&&(m.styles.popper=Object.assign({},m.styles.popper,s(Object.assign({},A,{offsets:m.modifiersData.popperOffsets,position:m.options.strategy,adaptive:S,roundOffsets:I})))),m.modifiersData.arrow!=null&&(m.styles.arrow=Object.assign({},m.styles.arrow,s(Object.assign({},A,{offsets:m.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:I})))),m.attributes.popper=Object.assign({},m.attributes.popper,{"data-popper-placement":m.placement})}var f=n.default={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:g,data:{}}},84601:function(b,n,t){"use strict";n.__esModule=!0,n.default=void 0;var e=r(t(81020));function r(l){return l&&l.__esModule?l:{default:l}}var o={passive:!0};function a(l){var c=l.state,p=l.instance,d=l.options,i=d.scroll,v=i===void 0?!0:i,s=d.resize,g=s===void 0?!0:s,f=(0,e.default)(c.elements.popper),h=[].concat(c.scrollParents.reference,c.scrollParents.popper);return v&&h.forEach(function(m){m.addEventListener("scroll",p.update,o)}),g&&f.addEventListener("resize",p.update,o),function(){v&&h.forEach(function(m){m.removeEventListener("scroll",p.update,o)}),g&&f.removeEventListener("resize",p.update,o)}}var u=n.default={name:"eventListeners",enabled:!0,phase:"write",fn:function(){function l(){}return l}(),effect:a,data:{}}},17267:function(b,n,t){"use strict";n.__esModule=!0,n.default=void 0;var e=p(t(79641)),r=p(t(38141)),o=p(t(71976)),a=p(t(31584)),u=p(t(44744)),l=t(41521),c=p(t(14380));function p(s){return s&&s.__esModule?s:{default:s}}function d(s){if((0,r.default)(s)===l.auto)return[];var g=(0,e.default)(s);return[(0,o.default)(s),g,(0,o.default)(g)]}function i(s){var g=s.state,f=s.options,h=s.name;if(!g.modifiersData[h]._skip){for(var m=f.mainAxis,y=m===void 0?!0:m,T=f.altAxis,O=T===void 0?!0:T,C=f.fallbackPlacements,S=f.padding,E=f.boundary,I=f.rootBoundary,A=f.altBoundary,N=f.flipVariations,M=N===void 0?!0:N,w=f.allowedAutoPlacements,L=g.options.placement,x=(0,r.default)(L),V=x===L,F=C||(V||!M?[(0,e.default)(L)]:d(L)),G=[L].concat(F).reduce(function(Et,_){return Et.concat((0,r.default)(_)===l.auto?(0,u.default)(g,{placement:_,boundary:E,rootBoundary:I,padding:S,flipVariations:M,allowedAutoPlacements:w}):_)},[]),B=g.rects.reference,j=g.rects.popper,U=new Map,K=!0,Y=G[0],W=0;W=0,X=z?"width":"height",nt=(0,a.default)(g,{placement:et,boundary:E,rootBoundary:I,altBoundary:A,padding:S}),lt=z?pt?l.right:l.left:pt?l.bottom:l.top;B[X]>j[X]&&(lt=(0,e.default)(lt));var rt=(0,e.default)(lt),yt=[];if(y&&yt.push(nt[at]<=0),O&&yt.push(nt[lt]<=0,nt[rt]<=0),yt.every(function(Et){return Et})){Y=et,K=!1;break}U.set(et,yt)}if(K)for(var wt=M?3:1,ct=function(){function Et(_){var J=G.find(function(st){var Pt=U.get(st);if(Pt)return Pt.slice(0,_).every(function(Tt){return Tt})});if(J)return Y=J,"break"}return Et}(),tt=wt;tt>0;tt--){var dt=ct(tt);if(dt==="break")break}g.placement!==Y&&(g.modifiersData[h]._skip=!0,g.placement=Y,g.reset=!0)}}var v=n.default={name:"flip",enabled:!0,phase:"main",fn:i,requiresIfExists:["offset"],data:{_skip:!1}}},88476:function(b,n,t){"use strict";n.__esModule=!0,n.default=void 0;var e=t(41521),r=o(t(31584));function o(p){return p&&p.__esModule?p:{default:p}}function a(p,d,i){return i===void 0&&(i={x:0,y:0}),{top:p.top-d.height-i.y,right:p.right-d.width+i.x,bottom:p.bottom-d.height+i.y,left:p.left-d.width-i.x}}function u(p){return[e.top,e.right,e.bottom,e.left].some(function(d){return p[d]>=0})}function l(p){var d=p.state,i=p.name,v=d.rects.reference,s=d.rects.popper,g=d.modifiersData.preventOverflow,f=(0,r.default)(d,{elementContext:"reference"}),h=(0,r.default)(d,{altBoundary:!0}),m=a(f,v),y=a(h,s,g),T=u(m),O=u(y);d.modifiersData[i]={referenceClippingOffsets:m,popperEscapeOffsets:y,isReferenceHidden:T,hasPopperEscaped:O},d.attributes.popper=Object.assign({},d.attributes.popper,{"data-popper-reference-hidden":T,"data-popper-escaped":O})}var c=n.default={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:l}},91078:function(b,n,t){"use strict";n.__esModule=!0,n.preventOverflow=n.popperOffsets=n.offset=n.hide=n.flip=n.eventListeners=n.computeStyles=n.arrow=n.applyStyles=void 0;var e=i(t(56304));n.applyStyles=e.default;var r=i(t(57243));n.arrow=r.default;var o=i(t(60421));n.computeStyles=o.default;var a=i(t(84601));n.eventListeners=a.default;var u=i(t(17267));n.flip=u.default;var l=i(t(88476));n.hide=l.default;var c=i(t(36707));n.offset=c.default;var p=i(t(98916));n.popperOffsets=p.default;var d=i(t(44454));n.preventOverflow=d.default;function i(v){return v&&v.__esModule?v:{default:v}}},36707:function(b,n,t){"use strict";n.__esModule=!0,n.default=void 0,n.distanceAndSkiddingToXY=a;var e=o(t(38141)),r=t(41521);function o(c){return c&&c.__esModule?c:{default:c}}function a(c,p,d){var i=(0,e.default)(c),v=[r.left,r.top].indexOf(i)>=0?-1:1,s=typeof d=="function"?d(Object.assign({},p,{placement:c})):d,g=s[0],f=s[1];return g=g||0,f=(f||0)*v,[r.left,r.right].indexOf(i)>=0?{x:f,y:g}:{x:g,y:f}}function u(c){var p=c.state,d=c.options,i=c.name,v=d.offset,s=v===void 0?[0,0]:v,g=r.placements.reduce(function(y,T){return y[T]=a(T,p.rects,s),y},{}),f=g[p.placement],h=f.x,m=f.y;p.modifiersData.popperOffsets!=null&&(p.modifiersData.popperOffsets.x+=h,p.modifiersData.popperOffsets.y+=m),p.modifiersData[i]=g}var l=n.default={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:u}},98916:function(b,n,t){"use strict";n.__esModule=!0,n.default=void 0;var e=r(t(47566));function r(u){return u&&u.__esModule?u:{default:u}}function o(u){var l=u.state,c=u.name;l.modifiersData[c]=(0,e.default)({reference:l.rects.reference,element:l.rects.popper,strategy:"absolute",placement:l.placement})}var a=n.default={name:"popperOffsets",enabled:!0,phase:"read",fn:o,data:{}}},44454:function(b,n,t){"use strict";n.__esModule=!0,n.default=void 0;var e=t(41521),r=s(t(38141)),o=s(t(7770)),a=s(t(39571)),u=t(76770),l=s(t(19820)),c=s(t(43243)),p=s(t(31584)),d=s(t(14380)),i=s(t(92385)),v=t(69031);function s(h){return h&&h.__esModule?h:{default:h}}function g(h){var m=h.state,y=h.options,T=h.name,O=y.mainAxis,C=O===void 0?!0:O,S=y.altAxis,E=S===void 0?!1:S,I=y.boundary,A=y.rootBoundary,N=y.altBoundary,M=y.padding,w=y.tether,L=w===void 0?!0:w,x=y.tetherOffset,V=x===void 0?0:x,F=(0,p.default)(m,{boundary:I,rootBoundary:A,padding:M,altBoundary:N}),G=(0,r.default)(m.placement),B=(0,d.default)(m.placement),j=!B,U=(0,o.default)(G),K=(0,a.default)(U),Y=m.modifiersData.popperOffsets,W=m.rects.reference,et=m.rects.popper,at=typeof V=="function"?V(Object.assign({},m.rects,{placement:m.placement})):V,pt=typeof at=="number"?{mainAxis:at,altAxis:at}:Object.assign({mainAxis:0,altAxis:0},at),z=m.modifiersData.offset?m.modifiersData.offset[m.placement]:null,X={x:0,y:0};if(Y){if(C){var nt,lt=U==="y"?e.top:e.left,rt=U==="y"?e.bottom:e.right,yt=U==="y"?"height":"width",wt=Y[U],ct=wt+F[lt],tt=wt-F[rt],dt=L?-et[yt]/2:0,Et=B===e.start?W[yt]:et[yt],_=B===e.start?-et[yt]:-W[yt],J=m.elements.arrow,st=L&&J?(0,l.default)(J):{width:0,height:0},Pt=m.modifiersData["arrow#persistent"]?m.modifiersData["arrow#persistent"].padding:(0,i.default)(),Tt=Pt[lt],it=Pt[rt],St=(0,u.within)(0,W[yt],st[yt]),Rt=j?W[yt]/2-dt-St-Tt-pt.mainAxis:Et-St-Tt-pt.mainAxis,Q=j?-W[yt]/2+dt+St+it+pt.mainAxis:_+St+it+pt.mainAxis,vt=m.elements.arrow&&(0,c.default)(m.elements.arrow),bt=vt?U==="y"?vt.clientTop||0:vt.clientLeft||0:0,Nt=(nt=z==null?void 0:z[U])!=null?nt:0,Dt=wt+Rt-Nt-bt,Ut=wt+Q-Nt,Ot=(0,u.within)(L?(0,v.min)(ct,Dt):ct,wt,L?(0,v.max)(tt,Ut):tt);Y[U]=Ot,X[U]=Ot-wt}if(E){var ut,gt=U==="x"?e.top:e.left,At=U==="x"?e.bottom:e.right,Ct=Y[K],Mt=K==="y"?"height":"width",xt=Ct+F[gt],jt=Ct-F[At],Kt=[e.top,e.left].indexOf(G)!==-1,Wt=(ut=z==null?void 0:z[K])!=null?ut:0,$t=Kt?xt:Ct-W[Mt]-et[Mt]-Wt+pt.altAxis,kt=Kt?Ct+W[Mt]+et[Mt]-Wt-pt.altAxis:jt,Zt=L&&Kt?(0,u.withinMaxClamp)($t,Ct,kt):(0,u.within)(L?$t:xt,Ct,L?kt:jt);Y[K]=Zt,X[K]=Zt-Ct}m.modifiersData[T]=X}}var f=n.default={name:"preventOverflow",enabled:!0,phase:"main",fn:g,requiresIfExists:["offset"]}},62642:function(b,n,t){"use strict";n.__esModule=!0,n.defaultModifiers=n.createPopper=void 0;var e=t(66641);n.popperGenerator=e.popperGenerator,n.detectOverflow=e.detectOverflow;var r=l(t(84601)),o=l(t(98916)),a=l(t(60421)),u=l(t(56304));function l(d){return d&&d.__esModule?d:{default:d}}var c=n.defaultModifiers=[r.default,o.default,a.default,u.default],p=n.createPopper=(0,e.popperGenerator)({defaultModifiers:c})},7925:function(b,n,t){"use strict";n.__esModule=!0;var e={createPopper:!0,createPopperLite:!0,defaultModifiers:!0,popperGenerator:!0,detectOverflow:!0};n.defaultModifiers=n.createPopperLite=n.createPopper=void 0;var r=t(66641);n.popperGenerator=r.popperGenerator,n.detectOverflow=r.detectOverflow;var o=f(t(84601)),a=f(t(98916)),u=f(t(60421)),l=f(t(56304)),c=f(t(36707)),p=f(t(17267)),d=f(t(44454)),i=f(t(57243)),v=f(t(88476)),s=t(62642);n.createPopperLite=s.createPopper;var g=t(91078);Object.keys(g).forEach(function(y){y==="default"||y==="__esModule"||Object.prototype.hasOwnProperty.call(e,y)||y in n&&n[y]===g[y]||(n[y]=g[y])});function f(y){return y&&y.__esModule?y:{default:y}}var h=n.defaultModifiers=[o.default,a.default,u.default,l.default,c.default,p.default,d.default,i.default,v.default],m=n.createPopperLite=n.createPopper=(0,r.popperGenerator)({defaultModifiers:h})},44744:function(b,n,t){"use strict";n.__esModule=!0,n.default=l;var e=u(t(14380)),r=t(41521),o=u(t(31584)),a=u(t(38141));function u(c){return c&&c.__esModule?c:{default:c}}function l(c,p){p===void 0&&(p={});var d=p,i=d.placement,v=d.boundary,s=d.rootBoundary,g=d.padding,f=d.flipVariations,h=d.allowedAutoPlacements,m=h===void 0?r.placements:h,y=(0,e.default)(i),T=y?f?r.variationPlacements:r.variationPlacements.filter(function(S){return(0,e.default)(S)===y}):r.basePlacements,O=T.filter(function(S){return m.indexOf(S)>=0});O.length===0&&(O=T);var C=O.reduce(function(S,E){return S[E]=(0,o.default)(c,{placement:E,boundary:v,rootBoundary:s,padding:g})[(0,a.default)(E)],S},{});return Object.keys(C).sort(function(S,E){return C[S]-C[E]})}},47566:function(b,n,t){"use strict";n.__esModule=!0,n.default=l;var e=u(t(38141)),r=u(t(14380)),o=u(t(7770)),a=t(41521);function u(c){return c&&c.__esModule?c:{default:c}}function l(c){var p=c.reference,d=c.element,i=c.placement,v=i?(0,e.default)(i):null,s=i?(0,r.default)(i):null,g=p.x+p.width/2-d.width/2,f=p.y+p.height/2-d.height/2,h;switch(v){case a.top:h={x:g,y:p.y-d.height};break;case a.bottom:h={x:g,y:p.y+p.height};break;case a.right:h={x:p.x+p.width,y:f};break;case a.left:h={x:p.x-d.width,y:f};break;default:h={x:p.x,y:p.y}}var m=v?(0,o.default)(v):null;if(m!=null){var y=m==="y"?"height":"width";switch(s){case a.start:h[m]=h[m]-(p[y]/2-d[y]/2);break;case a.end:h[m]=h[m]+(p[y]/2-d[y]/2);break;default:}}return h}},80798:function(b,n){"use strict";n.__esModule=!0,n.default=t;function t(e){var r;return function(){return r||(r=new Promise(function(o){Promise.resolve().then(function(){r=void 0,o(e())})})),r}}},31584:function(b,n,t){"use strict";n.__esModule=!0,n.default=v;var e=i(t(86380)),r=i(t(33733)),o=i(t(32125)),a=i(t(47566)),u=i(t(31855)),l=t(41521),c=t(72600),p=i(t(77631)),d=i(t(54824));function i(s){return s&&s.__esModule?s:{default:s}}function v(s,g){g===void 0&&(g={});var f=g,h=f.placement,m=h===void 0?s.placement:h,y=f.strategy,T=y===void 0?s.strategy:y,O=f.boundary,C=O===void 0?l.clippingParents:O,S=f.rootBoundary,E=S===void 0?l.viewport:S,I=f.elementContext,A=I===void 0?l.popper:I,N=f.altBoundary,M=N===void 0?!1:N,w=f.padding,L=w===void 0?0:w,x=(0,p.default)(typeof L!="number"?L:(0,d.default)(L,l.basePlacements)),V=A===l.popper?l.reference:l.popper,F=s.rects.popper,G=s.elements[M?V:A],B=(0,e.default)((0,c.isElement)(G)?G:G.contextElement||(0,r.default)(s.elements.popper),C,E,T),j=(0,o.default)(s.elements.reference),U=(0,a.default)({reference:j,element:F,strategy:"absolute",placement:m}),K=(0,u.default)(Object.assign({},F,U)),Y=A===l.popper?K:j,W={top:B.top-Y.top+x.top,bottom:Y.bottom-B.bottom+x.bottom,left:B.left-Y.left+x.left,right:Y.right-B.right+x.right},et=s.modifiersData.offset;if(A===l.popper&&et){var at=et[m];Object.keys(W).forEach(function(pt){var z=[l.right,l.bottom].indexOf(pt)>=0?1:-1,X=[l.top,l.bottom].indexOf(pt)>=0?"y":"x";W[pt]+=at[X]*z})}return W}},54824:function(b,n){"use strict";n.__esModule=!0,n.default=t;function t(e,r){return r.reduce(function(o,a){return o[a]=e,o},{})}},39571:function(b,n){"use strict";n.__esModule=!0,n.default=t;function t(e){return e==="x"?"y":"x"}},38141:function(b,n,t){"use strict";n.__esModule=!0,n.default=r;var e=t(41521);function r(o){return o.split("-")[0]}},92385:function(b,n){"use strict";n.__esModule=!0,n.default=t;function t(){return{top:0,right:0,bottom:0,left:0}}},7770:function(b,n){"use strict";n.__esModule=!0,n.default=t;function t(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}},79641:function(b,n){"use strict";n.__esModule=!0,n.default=e;var t={left:"right",right:"left",bottom:"top",top:"bottom"};function e(r){return r.replace(/left|right|bottom|top/g,function(o){return t[o]})}},71976:function(b,n){"use strict";n.__esModule=!0,n.default=e;var t={start:"end",end:"start"};function e(r){return r.replace(/start|end/g,function(o){return t[o]})}},14380:function(b,n){"use strict";n.__esModule=!0,n.default=t;function t(e){return e.split("-")[1]}},69031:function(b,n){"use strict";n.__esModule=!0,n.round=n.min=n.max=void 0;var t=n.max=Math.max,e=n.min=Math.min,r=n.round=Math.round},46343:function(b,n){"use strict";n.__esModule=!0,n.default=t;function t(e){var r=e.reduce(function(o,a){var u=o[a.name];return o[a.name]=u?Object.assign({},u,a,{options:Object.assign({},u.options,a.options),data:Object.assign({},u.data,a.data)}):a,o},{});return Object.keys(r).map(function(o){return r[o]})}},77631:function(b,n,t){"use strict";n.__esModule=!0,n.default=o;var e=r(t(92385));function r(a){return a&&a.__esModule?a:{default:a}}function o(a){return Object.assign({},(0,e.default)(),a)}},17859:function(b,n,t){"use strict";n.__esModule=!0,n.default=o;var e=t(41521);function r(a){var u=new Map,l=new Set,c=[];a.forEach(function(d){u.set(d.name,d)});function p(d){l.add(d.name);var i=[].concat(d.requires||[],d.requiresIfExists||[]);i.forEach(function(v){if(!l.has(v)){var s=u.get(v);s&&p(s)}}),c.push(d)}return a.forEach(function(d){l.has(d.name)||p(d)}),c}function o(a){var u=r(a);return e.modifierPhases.reduce(function(l,c){return l.concat(u.filter(function(p){return p.phase===c}))},[])}},31855:function(b,n){"use strict";n.__esModule=!0,n.default=t;function t(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}},97353:function(b,n){"use strict";n.__esModule=!0,n.default=t;function t(){var e=navigator.userAgentData;return e!=null&&e.brands&&Array.isArray(e.brands)?e.brands.map(function(r){return r.brand+"/"+r.version}).join(" "):navigator.userAgent}},76770:function(b,n,t){"use strict";n.__esModule=!0,n.within=r,n.withinMaxClamp=o;var e=t(69031);function r(a,u,l){return(0,e.max)(a,(0,e.min)(u,l))}function o(a,u,l){var c=r(a,u,l);return c>l?l:c}},27061:function(b){"use strict";/*! @license DOMPurify 2.5.0 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/2.5.0/LICENSE */(function(n,t){b.exports=t()})(void 0,function(){"use strict";function n(Q){"@babel/helpers - typeof";return n=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(vt){return typeof vt}:function(vt){return vt&&typeof Symbol=="function"&&vt.constructor===Symbol&&vt!==Symbol.prototype?"symbol":typeof vt},n(Q)}function t(Q,vt){return t=Object.setPrototypeOf||function(){function bt(Nt,Dt){return Nt.__proto__=Dt,Nt}return bt}(),t(Q,vt)}function e(){if(typeof Reflect=="undefined"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(Q){return!1}}function r(Q,vt,bt){return e()?r=Reflect.construct:r=function(){function Nt(Dt,Ut,Ot){var ut=[null];ut.push.apply(ut,Ut);var gt=Function.bind.apply(Dt,ut),At=new gt;return Ot&&t(At,Ot.prototype),At}return Nt}(),r.apply(null,arguments)}function o(Q){return a(Q)||u(Q)||l(Q)||p()}function a(Q){if(Array.isArray(Q))return c(Q)}function u(Q){if(typeof Symbol!="undefined"&&Q[Symbol.iterator]!=null||Q["@@iterator"]!=null)return Array.from(Q)}function l(Q,vt){if(Q){if(typeof Q=="string")return c(Q,vt);var bt=Object.prototype.toString.call(Q).slice(8,-1);if(bt==="Object"&&Q.constructor&&(bt=Q.constructor.name),bt==="Map"||bt==="Set")return Array.from(Q);if(bt==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(bt))return c(Q,vt)}}function c(Q,vt){(vt==null||vt>Q.length)&&(vt=Q.length);for(var bt=0,Nt=new Array(vt);bt1?bt-1:0),Dt=1;Dt/gm),ct=h(/\${[\w\W]*}/gm),tt=h(/^data-[\-\w.\u00B7-\uFFFF]/),dt=h(/^aria-[\-\w]+$/),Et=h(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),_=h(/^(?:\w+script|data):/i),J=h(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),st=h(/^html$/i),Pt=h(/^[a-z][.\w]*(-[.\w]+)+$/i),Tt=function(){function Q(){return typeof window=="undefined"?null:window}return Q}(),it=function(){function Q(vt,bt){if(n(vt)!=="object"||typeof vt.createPolicy!="function")return null;var Nt=null,Dt="data-tt-policy-suffix";bt.currentScript&&bt.currentScript.hasAttribute(Dt)&&(Nt=bt.currentScript.getAttribute(Dt));var Ut="dompurify"+(Nt?"#"+Nt:"");try{return vt.createPolicy(Ut,{createHTML:function(){function Ot(ut){return ut}return Ot}(),createScriptURL:function(){function Ot(ut){return ut}return Ot}()})}catch(Ot){return null}}return Q}();function St(){var Q=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Tt(),vt=function(){function ht($){return St($)}return ht}();if(vt.version="2.5.0",vt.removed=[],!Q||!Q.document||Q.document.nodeType!==9)return vt.isSupported=!1,vt;var bt=Q.document,Nt=Q.document,Dt=Q.DocumentFragment,Ut=Q.HTMLTemplateElement,Ot=Q.Node,ut=Q.Element,gt=Q.NodeFilter,At=Q.NamedNodeMap,Ct=At===void 0?Q.NamedNodeMap||Q.MozNamedAttrMap:At,Mt=Q.HTMLFormElement,xt=Q.DOMParser,jt=Q.trustedTypes,Kt=ut.prototype,Wt=U(Kt,"cloneNode"),$t=U(Kt,"nextSibling"),kt=U(Kt,"childNodes"),Zt=U(Kt,"parentNode");if(typeof Ut=="function"){var Be=Nt.createElement("template");Be.content&&Be.content.ownerDocument&&(Nt=Be.content.ownerDocument)}var te=it(jt,bt),De=te?te.createHTML(""):"",ve=Nt,xe=ve.implementation,nn=ve.createNodeIterator,rn=ve.createDocumentFragment,Ye=ve.getElementsByTagName,on=bt.importNode,an={};try{an=j(Nt).documentMode?Nt.documentMode:{}}catch(ht){}var re={};vt.isSupported=typeof Zt=="function"&&xe&&xe.createHTMLDocument!==void 0&&an!==9;var $e=yt,He=wt,he=ct,Oe=tt,oe=dt,ue=_,ge=J,Fe=Pt,pe=Et,Xt=null,un=B({},[].concat(o(K),o(Y),o(W),o(at),o(z))),Jt=null,sn=B({},[].concat(o(X),o(nt),o(lt),o(rt))),Ht=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),me=null,Ve=null,We=!0,Ie=!0,zt=!1,cn=!0,ye=!1,ke=!0,le=!1,se=!1,ze=!1,Se=!1,je=!1,Ae=!1,ln=!0,Xe=!1,Sn="user-content-",ae=!0,Pe=!1,Ee={},be=null,fn=B({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),dn=null,vn=B({},["audio","video","img","source","image","track"]),Ne=null,hn=B({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Me="http://www.w3.org/1998/Math/MathML",Ue="http://www.w3.org/2000/svg",ce="http://www.w3.org/1999/xhtml",Ce=ce,Je=!1,Qe=null,En=B({},[Me,Ue,ce],A),_t,Ke=["application/xhtml+xml","text/html"],gn="text/html",Qt,Te=null,pn=Nt.createElement("form"),Ze=function(){function ht($){return $ instanceof RegExp||$ instanceof Function}return ht}(),_e=function(){function ht($){Te&&Te===$||((!$||n($)!=="object")&&($={}),$=j($),_t=Ke.indexOf($.PARSER_MEDIA_TYPE)===-1?_t=gn:_t=$.PARSER_MEDIA_TYPE,Qt=_t==="application/xhtml+xml"?A:I,Xt="ALLOWED_TAGS"in $?B({},$.ALLOWED_TAGS,Qt):un,Jt="ALLOWED_ATTR"in $?B({},$.ALLOWED_ATTR,Qt):sn,Qe="ALLOWED_NAMESPACES"in $?B({},$.ALLOWED_NAMESPACES,A):En,Ne="ADD_URI_SAFE_ATTR"in $?B(j(hn),$.ADD_URI_SAFE_ATTR,Qt):hn,dn="ADD_DATA_URI_TAGS"in $?B(j(vn),$.ADD_DATA_URI_TAGS,Qt):vn,be="FORBID_CONTENTS"in $?B({},$.FORBID_CONTENTS,Qt):fn,me="FORBID_TAGS"in $?B({},$.FORBID_TAGS,Qt):{},Ve="FORBID_ATTR"in $?B({},$.FORBID_ATTR,Qt):{},Ee="USE_PROFILES"in $?$.USE_PROFILES:!1,We=$.ALLOW_ARIA_ATTR!==!1,Ie=$.ALLOW_DATA_ATTR!==!1,zt=$.ALLOW_UNKNOWN_PROTOCOLS||!1,cn=$.ALLOW_SELF_CLOSE_IN_ATTR!==!1,ye=$.SAFE_FOR_TEMPLATES||!1,ke=$.SAFE_FOR_XML!==!1,le=$.WHOLE_DOCUMENT||!1,Se=$.RETURN_DOM||!1,je=$.RETURN_DOM_FRAGMENT||!1,Ae=$.RETURN_TRUSTED_TYPE||!1,ze=$.FORCE_BODY||!1,ln=$.SANITIZE_DOM!==!1,Xe=$.SANITIZE_NAMED_PROPS||!1,ae=$.KEEP_CONTENT!==!1,Pe=$.IN_PLACE||!1,pe=$.ALLOWED_URI_REGEXP||pe,Ce=$.NAMESPACE||ce,Ht=$.CUSTOM_ELEMENT_HANDLING||{},$.CUSTOM_ELEMENT_HANDLING&&Ze($.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(Ht.tagNameCheck=$.CUSTOM_ELEMENT_HANDLING.tagNameCheck),$.CUSTOM_ELEMENT_HANDLING&&Ze($.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(Ht.attributeNameCheck=$.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),$.CUSTOM_ELEMENT_HANDLING&&typeof $.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(Ht.allowCustomizedBuiltInElements=$.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),ye&&(Ie=!1),je&&(Se=!0),Ee&&(Xt=B({},o(z)),Jt=[],Ee.html===!0&&(B(Xt,K),B(Jt,X)),Ee.svg===!0&&(B(Xt,Y),B(Jt,nt),B(Jt,rt)),Ee.svgFilters===!0&&(B(Xt,W),B(Jt,nt),B(Jt,rt)),Ee.mathMl===!0&&(B(Xt,at),B(Jt,lt),B(Jt,rt))),$.ADD_TAGS&&(Xt===un&&(Xt=j(Xt)),B(Xt,$.ADD_TAGS,Qt)),$.ADD_ATTR&&(Jt===sn&&(Jt=j(Jt)),B(Jt,$.ADD_ATTR,Qt)),$.ADD_URI_SAFE_ATTR&&B(Ne,$.ADD_URI_SAFE_ATTR,Qt),$.FORBID_CONTENTS&&(be===fn&&(be=j(be)),B(be,$.FORBID_CONTENTS,Qt)),ae&&(Xt["#text"]=!0),le&&B(Xt,["html","head","body"]),Xt.table&&(B(Xt,["tbody"]),delete me.tbody),f&&f($),Te=$)}return ht}(),Re=B({},["mi","mo","mn","ms","mtext"]),mn=B({},["foreignobject","desc","title","annotation-xml"]),qe=B({},["title","style","font","a","script"]),we=B({},Y);B(we,W),B(we,et);var tn=B({},at);B(tn,pt);var yn=function(){function ht($){var ft=Zt($);(!ft||!ft.tagName)&&(ft={namespaceURI:Ce,tagName:"template"});var It=I($.tagName),Ft=I(ft.tagName);return Qe[$.namespaceURI]?$.namespaceURI===Ue?ft.namespaceURI===ce?It==="svg":ft.namespaceURI===Me?It==="svg"&&(Ft==="annotation-xml"||Re[Ft]):!!we[It]:$.namespaceURI===Me?ft.namespaceURI===ce?It==="math":ft.namespaceURI===Ue?It==="math"&&mn[Ft]:!!tn[It]:$.namespaceURI===ce?ft.namespaceURI===Ue&&!mn[Ft]||ft.namespaceURI===Me&&!Re[Ft]?!1:!tn[It]&&(qe[It]||!we[It]):!!(_t==="application/xhtml+xml"&&Qe[$.namespaceURI]):!1}return ht}(),ee=function(){function ht($){E(vt.removed,{element:$});try{$.parentNode.removeChild($)}catch(ft){try{$.outerHTML=De}catch(It){$.remove()}}}return ht}(),Le=function(){function ht($,ft){try{E(vt.removed,{attribute:ft.getAttributeNode($),from:ft})}catch(It){E(vt.removed,{attribute:null,from:ft})}if(ft.removeAttribute($),$==="is"&&!Jt[$])if(Se||je)try{ee(ft)}catch(It){}else try{ft.setAttribute($,"")}catch(It){}}return ht}(),bn=function(){function ht($){var ft,It;if(ze)$=""+$;else{var Ft=N($,/^[\r\n\t ]+/);It=Ft&&Ft[0]}_t==="application/xhtml+xml"&&Ce===ce&&($=''+$+"");var Bt=te?te.createHTML($):$;if(Ce===ce)try{ft=new xt().parseFromString(Bt,_t)}catch(Vt){}if(!ft||!ft.documentElement){ft=xe.createDocument(Ce,"template",null);try{ft.documentElement.innerHTML=Je?De:Bt}catch(Vt){}}var Gt=ft.body||ft.documentElement;return $&&It&&Gt.insertBefore(Nt.createTextNode(It),Gt.childNodes[0]||null),Ce===ce?Ye.call(ft,le?"html":"body")[0]:le?ft.documentElement:Gt}return ht}(),P=function(){function ht($){return nn.call($.ownerDocument||$,$,gt.SHOW_ELEMENT|gt.SHOW_COMMENT|gt.SHOW_TEXT|gt.SHOW_PROCESSING_INSTRUCTION|gt.SHOW_CDATA_SECTION,null,!1)}return ht}(),R=function(){function ht($){return $ instanceof Mt&&(typeof $.nodeName!="string"||typeof $.textContent!="string"||typeof $.removeChild!="function"||!($.attributes instanceof Ct)||typeof $.removeAttribute!="function"||typeof $.setAttribute!="function"||typeof $.namespaceURI!="string"||typeof $.insertBefore!="function"||typeof $.hasChildNodes!="function")}return ht}(),D=function(){function ht($){return n(Ot)==="object"?$ instanceof Ot:$&&n($)==="object"&&typeof $.nodeType=="number"&&typeof $.nodeName=="string"}return ht}(),H=function(){function ht($,ft,It){re[$]&&C(re[$],function(Ft){Ft.call(vt,ft,It,Te)})}return ht}(),Z=function(){function ht($){var ft;if(H("beforeSanitizeElements",$,null),R($)||x(/[\u0080-\uFFFF]/,$.nodeName))return ee($),!0;var It=Qt($.nodeName);if(H("uponSanitizeElement",$,{tagName:It,allowedTags:Xt}),$.hasChildNodes()&&!D($.firstElementChild)&&(!D($.content)||!D($.content.firstElementChild))&&x(/<[/\w]/g,$.innerHTML)&&x(/<[/\w]/g,$.textContent)||It==="select"&&x(/