diff --git a/_maps/map_files/Birdshot/birdshot.dmm b/_maps/map_files/Birdshot/birdshot.dmm index 13981c84fe4..e1724fae234 100644 --- a/_maps/map_files/Birdshot/birdshot.dmm +++ b/_maps/map_files/Birdshot/birdshot.dmm @@ -674,14 +674,6 @@ /obj/structure/marker_beacon/jade, /turf/open/space/basic, /area/space/nearstation) -"ans" = ( -/obj/structure/cable, -/obj/machinery/firealarm/directional/east, -/obj/effect/turf_decal/siding/corner{ - dir = 4 - }, -/turf/open/floor/iron/white, -/area/station/science/cytology) "anv" = ( /obj/structure/lattice/catwalk, /obj/structure/railing/corner{ @@ -915,6 +907,15 @@ }, /turf/open/floor/plating, /area/station/engineering/atmos/project) +"asN" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/door/airlock/multi_tile/public/glass{ + name = "Diner" + }, +/obj/machinery/door/firedoor, +/turf/open/floor/iron/textured_half, +/area/station/service/cafeteria) "ata" = ( /obj/structure/flora/bush/flowers_yw/style_random, /obj/machinery/light/small/directional/west, @@ -926,6 +927,10 @@ name = "hyper-reinforced wall" }, /area/station/science/ordnance/bomb) +"ati" = ( +/obj/machinery/hydroponics/soil, +/turf/open/misc/sandy_dirt, +/area/station/science/cytology) "atm" = ( /obj/structure/table, /obj/item/stack/spacecash/c1{ @@ -998,10 +1003,6 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron, /area/station/engineering/atmos/storage/gas) -"auC" = ( -/obj/machinery/hydroponics/soil, -/turf/open/misc/sandy_dirt, -/area/station/science/cytology) "auG" = ( /obj/structure/chair{ dir = 1 @@ -1036,6 +1037,16 @@ /obj/effect/spawner/random/maintenance, /turf/open/floor/plating, /area/station/maintenance/department/engine) +"avN" = ( +/obj/structure/table/glass, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/airalarm/directional/north, +/obj/item/food/pizzaslice/moldy/bacteria{ + pixel_x = -4; + pixel_y = 2 + }, +/turf/open/floor/iron/white, +/area/station/science/cytology) "avU" = ( /obj/effect/turf_decal/tile/yellow/half/contrasted{ dir = 8 @@ -1455,6 +1466,15 @@ "aFR" = ( /turf/open/floor/plating, /area/station/security/tram) +"aFY" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/firealarm/directional/north, +/turf/open/floor/iron/stairs{ + dir = 8 + }, +/area/station/science/xenobiology) "aGa" = ( /obj/structure/lattice/catwalk, /obj/structure/marker_beacon/fuchsia, @@ -1969,16 +1989,6 @@ /obj/machinery/holopad, /turf/open/floor/iron/smooth_large, /area/station/science/robotics/mechbay) -"aPY" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing{ - dir = 5 - }, -/obj/machinery/atmospherics/components/unary/passive_vent/layer2{ - dir = 8 - }, -/turf/open/space/basic, -/area/space/nearstation) "aQm" = ( /obj/structure/window/reinforced/spawner/directional/west, /turf/open/floor/iron/dark/small, @@ -3183,6 +3193,21 @@ /obj/item/clothing/mask/breath/medical, /turf/open/floor/iron/white, /area/station/science/robotics/augments) +"boX" = ( +/obj/structure/table, +/obj/item/clothing/gloves/color/orange{ + pixel_x = 4; + pixel_y = -2 + }, +/obj/item/stack/tile/iron/base{ + pixel_y = 18 + }, +/obj/item/key/janitor{ + pixel_x = -3; + pixel_y = 6 + }, +/turf/open/floor/iron/white/small, +/area/station/service/janitor) "boY" = ( /obj/machinery/atmospherics/pipe/smart/simple/purple/visible, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, @@ -3272,6 +3297,11 @@ }, /turf/open/floor/iron/white/small, /area/station/medical/virology) +"bqR" = ( +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/closet/crate/mod, +/turf/open/floor/iron/white, +/area/station/science/robotics/augments) "bqZ" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/structure/crate, @@ -6009,6 +6039,18 @@ /obj/structure/bed/roller, /turf/open/floor/iron/dark, /area/station/medical/medbay/lobby) +"cvH" = ( +/obj/effect/turf_decal/trimline/purple/end{ + dir = 4 + }, +/obj/effect/turf_decal/siding/white{ + dir = 9 + }, +/obj/machinery/shower/directional/east{ + name = "emergency shower" + }, +/turf/open/floor/iron/dark/small, +/area/station/science/xenobiology) "cvJ" = ( /turf/open/floor/plating, /area/station/maintenance/department/engine/atmos) @@ -9608,6 +9650,17 @@ "dNq" = ( /turf/closed/wall/r_wall/rust, /area/station/ai_monitored/aisat/exterior) +"dNw" = ( +/obj/effect/turf_decal/siding/wood, +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/obj/machinery/door/airlock/multi_tile/public/glass{ + name = "Library" + }, +/obj/machinery/door/firedoor, +/turf/open/floor/iron/textured_half, +/area/station/service/library) "dNy" = ( /obj/effect/spawner/random/structure/closet_maintenance, /turf/open/floor/plating, @@ -11615,6 +11668,18 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/central/fore) +"ewo" = ( +/obj/effect/turf_decal/box/corners{ + dir = 4 + }, +/obj/effect/turf_decal/box/corners{ + dir = 1 + }, +/obj/machinery/plumbing/growing_vat{ + dir = 4 + }, +/turf/open/floor/engine, +/area/station/science/cytology) "ewy" = ( /obj/structure/disposalpipe/segment{ dir = 9 @@ -14542,6 +14607,10 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on, /turf/open/floor/engine, /area/station/engineering/supermatter) +"fzq" = ( +/obj/structure/closet/crate/trashcart/filled, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore) "fzt" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -15211,6 +15280,16 @@ }, /turf/open/floor/iron, /area/station/science/xenobiology) +"fJO" = ( +/obj/machinery/conveyor_switch/oneway{ + id = "flamedra"; + name = "Incinerator Conveyor"; + pixel_x = -13; + pixel_y = -4 + }, +/obj/structure/closet/firecloset, +/turf/open/floor/plating, +/area/station/maintenance/department/engine) "fJZ" = ( /obj/structure/closet/firecloset, /obj/effect/turf_decal/tile/yellow{ @@ -18957,6 +19036,13 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/fore) +"hbk" = ( +/obj/structure/cable, +/obj/effect/turf_decal/siding{ + dir = 4 + }, +/turf/open/floor/iron/white, +/area/station/science/cytology) "hbm" = ( /obj/structure/disposalpipe/segment{ dir = 5 @@ -19890,6 +19976,10 @@ /obj/structure/window/reinforced/spawner/directional/west, /turf/open/floor/wood/parquet, /area/station/service/theater) +"hpM" = ( +/obj/effect/turf_decal/siding, +/turf/open/floor/iron/white, +/area/station/science/cytology) "hpP" = ( /obj/effect/turf_decal/siding/wood{ dir = 6 @@ -22587,6 +22677,12 @@ /obj/effect/landmark/start/atmospheric_technician, /turf/open/floor/iron/dark, /area/station/engineering/atmos) +"ioR" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/airalarm/directional/west, +/obj/effect/spawner/random/trash/moisture_trap, +/turf/open/floor/iron/white, +/area/station/science/cytology) "ioW" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -24589,6 +24685,16 @@ }, /turf/open/floor/iron/small, /area/station/command/teleporter) +"iYJ" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing{ + dir = 5 + }, +/obj/machinery/atmospherics/components/unary/passive_vent/layer2{ + dir = 8 + }, +/turf/open/space/basic, +/area/space/nearstation) "iYY" = ( /obj/structure/cable, /turf/open/floor/iron/small, @@ -25024,11 +25130,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/textured_half, /area/station/hallway/primary/aft) -"jif" = ( -/obj/effect/turf_decal/tile/neutral/fourcorners, -/obj/structure/closet/crate/mod, -/turf/open/floor/iron/white, -/area/station/science/robotics/augments) "jig" = ( /obj/effect/turf_decal/stripes/white/line{ dir = 9 @@ -26876,11 +26977,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/smooth, /area/station/engineering/supermatter/room) -"jOc" = ( -/mob/living/basic/mining/basilisk, -/obj/effect/decal/cleanable/dirt, -/turf/open/misc/asteroid, -/area/station/maintenance/fore/greater) "jOh" = ( /obj/structure/cable, /obj/machinery/door/firedoor, @@ -28037,21 +28133,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron, /area/station/maintenance/hallway/abandoned_command) -"kkF" = ( -/obj/structure/table, -/obj/item/clothing/gloves/color/orange{ - pixel_x = 4; - pixel_y = -2 - }, -/obj/item/stack/tile/iron/base{ - pixel_y = 18 - }, -/obj/item/key/janitor{ - pixel_x = -3; - pixel_y = 6 - }, -/turf/open/floor/iron/white/small, -/area/station/service/janitor) "kkL" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -34896,6 +34977,15 @@ /obj/machinery/door/firedoor, /turf/open/floor/catwalk_floor/flat_white, /area/station/science/robotics/lab) +"mEf" = ( +/obj/item/kirbyplants/random, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/structure/closet/crate/trashcart/filled, +/turf/open/floor/iron, +/area/station/hallway/secondary/recreation) "mEk" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/components/binary/pump/on{ @@ -35601,13 +35691,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/closed/wall, /area/station/maintenance/department/engine) -"mQE" = ( -/obj/effect/turf_decal/siding/white{ - dir = 9 - }, -/obj/machinery/firealarm/directional/west, -/turf/open/floor/iron/dark/small, -/area/station/science/xenobiology) "mQF" = ( /obj/structure/cable, /obj/structure/disposalpipe/segment{ @@ -35900,10 +35983,6 @@ /obj/machinery/airalarm/directional/west, /turf/open/floor/iron, /area/station/security/processing) -"mXd" = ( -/obj/structure/closet/crate/trashcart/filled, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "mXo" = ( /obj/machinery/atmospherics/pipe/smart/manifold/general/visible{ dir = 1 @@ -38638,16 +38717,6 @@ /obj/machinery/camera/autoname/directional/north, /turf/open/floor/iron/white, /area/station/science/cytology) -"nXe" = ( -/obj/structure/table/glass, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/airalarm/directional/north, -/obj/item/food/pizzaslice/moldy/bacteria{ - pixel_x = -4; - pixel_y = 2 - }, -/turf/open/floor/iron/white, -/area/station/science/cytology) "nXt" = ( /obj/effect/turf_decal/tile/yellow/full, /obj/structure/table/reinforced, @@ -38665,15 +38734,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/showroomfloor, /area/station/commons/toilet/restrooms) -"nXE" = ( -/obj/structure/disposalpipe/segment{ - dir = 6 - }, -/obj/effect/decal/cleanable/cobweb, -/obj/item/radio/intercom/directional/north, -/obj/item/kirbyplants/fern, -/turf/open/floor/iron/white, -/area/station/science/cytology) "nXP" = ( /obj/machinery/airalarm/directional/east, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -39289,17 +39349,6 @@ /obj/machinery/firealarm/directional/east, /turf/open/floor/iron/white/small, /area/station/science/ordnance/storage) -"ojk" = ( -/obj/effect/turf_decal/siding/wood, -/obj/effect/turf_decal/siding/wood{ - dir = 1 - }, -/obj/machinery/door/airlock/multi_tile/public/glass{ - name = "Library" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/iron/textured_half, -/area/station/service/library) "ojw" = ( /obj/item/kirbyplants/random, /obj/effect/mapping_helpers/broken_floor, @@ -40002,16 +40051,6 @@ }, /turf/open/floor/iron/dark, /area/station/engineering/atmos) -"oyz" = ( -/obj/effect/turf_decal/box/corners, -/obj/effect/turf_decal/box/corners{ - dir = 8 - }, -/obj/machinery/plumbing/input{ - dir = 8 - }, -/turf/open/floor/engine, -/area/station/science/cytology) "oyA" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -40954,13 +40993,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron, /area/station/commons/storage/tools) -"oRd" = ( -/obj/structure/cable, -/obj/effect/turf_decal/siding{ - dir = 4 - }, -/turf/open/floor/iron/white, -/area/station/science/cytology) "oRm" = ( /obj/effect/landmark/atmospheric_sanity/ignore_area, /turf/closed/mineral/random/stationside, @@ -41765,6 +41797,15 @@ /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/plating, /area/station/maintenance/starboard/central) +"pgy" = ( +/obj/structure/disposalpipe/segment{ + dir = 6 + }, +/obj/effect/decal/cleanable/cobweb, +/obj/item/radio/intercom/directional/north, +/obj/item/kirbyplants/fern, +/turf/open/floor/iron/white, +/area/station/science/cytology) "pgE" = ( /obj/structure/chair/office, /obj/effect/mapping_helpers/broken_floor, @@ -43590,12 +43631,6 @@ /obj/effect/turf_decal/delivery/red, /turf/open/floor/iron/white/small, /area/station/medical/medbay/central) -"pKL" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/airalarm/directional/west, -/obj/effect/spawner/random/trash/moisture_trap, -/turf/open/floor/iron/white, -/area/station/science/cytology) "pKR" = ( /obj/effect/turf_decal/tile/blue/anticorner/contrasted{ dir = 4 @@ -43643,6 +43678,11 @@ }, /turf/open/floor/iron/small, /area/station/ai_monitored/command/storage/eva) +"pLk" = ( +/mob/living/basic/mining/basilisk, +/obj/effect/decal/cleanable/dirt, +/turf/open/misc/asteroid, +/area/station/maintenance/fore/greater) "pLl" = ( /obj/effect/spawner/random/vending/snackvend, /obj/effect/turf_decal/tile/red/opposingcorners{ @@ -46761,6 +46801,14 @@ /obj/machinery/status_display/evac/directional/north, /turf/open/floor/iron/white/side, /area/station/science/lower) +"qIM" = ( +/obj/structure/cable, +/obj/machinery/firealarm/directional/east, +/obj/effect/turf_decal/siding/corner{ + dir = 4 + }, +/turf/open/floor/iron/white, +/area/station/science/cytology) "qIO" = ( /obj/effect/turf_decal/tile/yellow/half/contrasted{ dir = 1 @@ -47991,18 +48039,6 @@ /obj/structure/barricade/wooden/crude, /turf/open/floor/plating, /area/station/maintenance/hallway/abandoned_recreation) -"rdk" = ( -/obj/effect/turf_decal/box/corners{ - dir = 4 - }, -/obj/effect/turf_decal/box/corners{ - dir = 1 - }, -/obj/machinery/plumbing/growing_vat{ - dir = 4 - }, -/turf/open/floor/engine, -/area/station/science/cytology) "rdo" = ( /obj/structure/window/spawner/directional/west, /obj/structure/flora/bush/jungle/a/style_random, @@ -49285,15 +49321,6 @@ /obj/machinery/light/floor, /turf/open/floor/wood/large, /area/station/service/hydroponics/garden/monastery) -"rzC" = ( -/obj/item/kirbyplants/random, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/structure/closet/crate/trashcart/filled, -/turf/open/floor/iron, -/area/station/hallway/secondary/recreation) "rzG" = ( /obj/structure/disposalpipe/segment, /obj/effect/turf_decal/tile/dark_red/half/contrasted{ @@ -50185,6 +50212,13 @@ /obj/machinery/digital_clock/directional/north, /turf/open/floor/iron, /area/station/security) +"rNq" = ( +/obj/machinery/door/airlock/multi_tile/public/glass{ + name = "Theatre" + }, +/obj/machinery/door/firedoor, +/turf/open/floor/iron/textured_half, +/area/station/service/theater) "rNA" = ( /turf/open/floor/wood, /area/station/service/theater) @@ -53612,15 +53646,6 @@ }, /turf/open/floor/iron/dark, /area/station/science/genetics) -"sTa" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/door/airlock/multi_tile/public/glass{ - name = "Diner" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/iron/textured_half, -/area/station/service/cafeteria) "sTf" = ( /obj/structure/window/spawner/directional/west, /obj/structure/chair/sofa/corp/left{ @@ -53697,13 +53722,6 @@ }, /turf/open/floor/iron, /area/station/commons/dorms) -"sTW" = ( -/obj/machinery/door/airlock/multi_tile/public/glass{ - name = "Theatre" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/iron/textured_half, -/area/station/service/theater) "sUe" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood, @@ -60749,6 +60767,12 @@ dir = 1 }, /area/station/service/chapel/office) +"vmJ" = ( +/obj/structure/cable, +/obj/machinery/holopad, +/obj/effect/turf_decal/siding/corner, +/turf/open/floor/iron/white, +/area/station/science/cytology) "vmL" = ( /obj/effect/turf_decal/sand/plating, /turf/open/floor/plating/airless, @@ -63877,12 +63901,6 @@ /obj/effect/spawner/structure/window/reinforced/tinted, /turf/open/floor/plating, /area/station/hallway/secondary/recreation) -"wkJ" = ( -/obj/structure/cable, -/obj/machinery/holopad, -/obj/effect/turf_decal/siding/corner, -/turf/open/floor/iron/white, -/area/station/science/cytology) "wla" = ( /turf/open/floor/iron/chapel, /area/station/maintenance/starboard/greater) @@ -65874,10 +65892,6 @@ }, /turf/open/floor/iron/grimy, /area/station/hallway/secondary/entry) -"wQL" = ( -/obj/effect/turf_decal/siding, -/turf/open/floor/iron/white, -/area/station/science/cytology) "wQP" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -67085,16 +67099,6 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/port) -"xgW" = ( -/obj/machinery/conveyor_switch/oneway{ - id = "flamedra"; - name = "Incinerator Conveyor"; - pixel_x = -13; - pixel_y = -4 - }, -/obj/structure/closet/firecloset, -/turf/open/floor/plating, -/area/station/maintenance/department/engine) "xhe" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -70695,6 +70699,16 @@ /obj/structure/sign/poster/random/directional/east, /turf/open/floor/wood, /area/station/maintenance/port/fore) +"ydH" = ( +/obj/effect/turf_decal/box/corners, +/obj/effect/turf_decal/box/corners{ + dir = 8 + }, +/obj/machinery/plumbing/input{ + dir = 8 + }, +/turf/open/floor/engine, +/area/station/science/cytology) "yea" = ( /turf/closed/wall, /area/station/service/chapel/office) @@ -88871,7 +88885,7 @@ tWj cAh cLn blb -aPY +iYJ fPb dUr dzl @@ -90153,7 +90167,7 @@ tpH tTd pJg vxt -xgW +fJO awi fZq yfa @@ -92517,7 +92531,7 @@ xZS vrn ncL wQB -ojk +dNw lql lKK lql @@ -96136,7 +96150,7 @@ rij xCu xCu xCu -sTa +asN wEI tIL tYX @@ -97678,7 +97692,7 @@ rjb rKL siv sED -sTW +rNq tmV tIL tYX @@ -103822,7 +103836,7 @@ xmO sHe nFW kam -kkF +boX kBH ukW cZL @@ -107661,7 +107675,7 @@ dDB dDB aJq jbm -jOc +pLk twN jbm jbm @@ -112057,7 +112071,7 @@ yjK xpE xMT xQJ -rzC +mEf qrR sid xbg @@ -112608,7 +112622,7 @@ wMH wMH aSy aSy -roC +aFY pWZ qZe xvF @@ -112864,7 +112878,7 @@ xjb pAF nyB gOQ -mQE +cvH xiT blk rUE @@ -113341,7 +113355,7 @@ mjf mFh noB xQJ -nXe +avN ovg rRU wBI @@ -113855,12 +113869,12 @@ mjF mGp vUz qNn -nXE +pgy owm sXi bfe sXi -pKL +ioR mEL vbK sfq @@ -114879,14 +114893,14 @@ kNI xXT oOv vwd -mXd +fzq xau rsL qhh ghC -wkJ -oRd -ans +vmJ +hbk +qIM xfu xbT snJ @@ -115141,8 +115155,8 @@ xau rsL xSe miz -wQL -auC +hpM +ati wJL ppQ tTp @@ -115654,8 +115668,8 @@ rsL mIh rsL xTO -rdk -oyz +ewo +ydH xPj wJL sHX @@ -116203,7 +116217,7 @@ eQn vnf wML rrt -jif +bqR ryy boW sYa diff --git a/_maps/map_files/NorthStar/north_star.dmm b/_maps/map_files/NorthStar/north_star.dmm index e03f5cb7fbd..40f3c587f2f 100644 --- a/_maps/map_files/NorthStar/north_star.dmm +++ b/_maps/map_files/NorthStar/north_star.dmm @@ -4267,13 +4267,6 @@ /obj/machinery/light/floor, /turf/open/floor/iron/dark, /area/station/hallway/floor3/fore) -"bdY" = ( -/obj/effect/turf_decal/tile/purple/opposingcorners, -/obj/effect/turf_decal/stripes/corner, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/white, -/area/station/science/xenobiology) "beh" = ( /turf/open/floor/iron, /area/station/commons/toilet) @@ -7100,6 +7093,14 @@ /obj/machinery/light/floor, /turf/open/floor/wood/tile, /area/station/service/library) +"bMu" = ( +/obj/effect/turf_decal/tile/purple/opposingcorners, +/obj/machinery/computer/security/telescreen/rd{ + pixel_x = -30 + }, +/obj/item/kirbyplants/random, +/turf/open/floor/iron/white, +/area/station/command/heads_quarters/rd) "bMz" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/girder, @@ -17113,14 +17114,6 @@ }, /turf/open/floor/plating, /area/station/maintenance/floor1/starboard/fore) -"eur" = ( -/obj/effect/mapping_helpers/airlock/access/any/supply/mining, -/obj/machinery/door/airlock/multi_tile/public/glass{ - name = "Xenoflora" - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/textured_large, -/area/station/cargo/miningdock) "euu" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, @@ -18164,6 +18157,14 @@ /obj/machinery/light/directional/north, /turf/open/floor/iron, /area/station/hallway/floor3/aft) +"eIU" = ( +/obj/effect/turf_decal/tile/purple/opposingcorners, +/obj/effect/turf_decal/stripes/corner, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/duct, +/turf/open/floor/iron/white, +/area/station/science/xenobiology) "eIW" = ( /obj/effect/decal/cleanable/blood/old, /obj/effect/spawner/random/maintenance, @@ -18271,6 +18272,14 @@ dir = 8 }, /area/station/hallway/floor3/fore) +"eKB" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/tile/purple/opposingcorners, +/obj/structure/sink/directional/north, +/turf/open/floor/iron/white, +/area/station/science/xenobiology) "eKC" = ( /turf/closed/wall, /area/station/science/xenobiology/hallway) @@ -18903,14 +18912,6 @@ /obj/machinery/light/directional/north, /turf/open/floor/wood/tile, /area/station/command/heads_quarters/captain/private) -"eVs" = ( -/obj/effect/turf_decal/tile/purple/opposingcorners, -/obj/machinery/computer/security/telescreen/rd{ - pixel_x = -30 - }, -/obj/item/kirbyplants/random, -/turf/open/floor/iron/white, -/area/station/command/heads_quarters/rd) "eVN" = ( /obj/structure/grille/broken, /obj/effect/decal/cleanable/dirt, @@ -25288,16 +25289,6 @@ /obj/machinery/light/red/dim/directional/east, /turf/open/floor/catwalk_floor, /area/station/maintenance/floor3/port/fore) -"gHZ" = ( -/obj/structure/railing/corner{ - dir = 8 - }, -/obj/effect/turf_decal/tile/purple/opposingcorners, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/white, -/area/station/science/xenobiology) "gIa" = ( /obj/structure/railing{ dir = 1 @@ -29943,13 +29934,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron/checker, /area/station/commons/vacant_room/commissary) -"hTf" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/effect/landmark/start/assistant, -/turf/open/floor/iron/checker, -/area/station/commons/vacant_room/commissary) "hTj" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 10 @@ -31562,14 +31546,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/security/prison) -"ipB" = ( -/obj/structure/sign/poster/official/random/directional/north, -/obj/structure/chair{ - dir = 8 - }, -/obj/effect/landmark/start/assistant, -/turf/open/floor/iron/checker, -/area/station/commons/vacant_room/commissary) "ipI" = ( /obj/effect/turf_decal/tile/yellow/opposingcorners, /obj/structure/cable, @@ -38327,6 +38303,17 @@ }, /turf/open/floor/iron, /area/station/maintenance/floor1/port/aft) +"kdU" = ( +/obj/structure/railing/corner{ + dir = 8 + }, +/obj/effect/turf_decal/tile/purple/opposingcorners, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/duct, +/turf/open/floor/iron/white, +/area/station/science/xenobiology) "keg" = ( /obj/machinery/light_switch/directional/south, /obj/structure/cable, @@ -44300,6 +44287,14 @@ /obj/machinery/duct, /turf/open/floor/iron/showroomfloor, /area/station/service/kitchen/diner) +"lFJ" = ( +/obj/structure/sign/poster/official/random/directional/north, +/obj/structure/chair{ + dir = 8 + }, +/obj/effect/landmark/start/assistant, +/turf/open/floor/iron/checker, +/area/station/commons/vacant_room/commissary) "lFL" = ( /obj/effect/turf_decal/trimline/green/filled/corner{ dir = 4 @@ -46430,16 +46425,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/catwalk_floor, /area/station/maintenance/floor4/starboard) -"mfY" = ( -/obj/machinery/light/small/directional/west, -/obj/machinery/camera/directional/west{ - c_tag = "Command - Research Director's Quarters #1" - }, -/obj/effect/baseturf_helper/reinforced_plating/ceiling, -/obj/machinery/newscaster/directional/west, -/obj/item/kirbyplants/random/dead/research_director, -/turf/open/floor/iron/large, -/area/station/command/heads_quarters/rd) "mge" = ( /obj/effect/turf_decal/trimline/blue/line{ dir = 4 @@ -55703,6 +55688,13 @@ /obj/structure/sign/warning/biohazard/directional/west, /turf/open/floor/iron/white, /area/station/hallway/floor2/aft) +"oyW" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/effect/landmark/start/assistant, +/turf/open/floor/iron/checker, +/area/station/commons/vacant_room/commissary) "oyZ" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/trimline/brown/filled/line{ @@ -65008,6 +65000,17 @@ /obj/structure/cable/layer3, /turf/open/floor/plating, /area/station/ai_monitored/turret_protected/aisat) +"qXE" = ( +/obj/structure/table, +/obj/item/plate, +/obj/item/knife/plastic{ + pixel_x = 16 + }, +/obj/item/food/donkpocket/warm/berry{ + pixel_y = 7 + }, +/turf/open/floor/iron/kitchen, +/area/station/command/heads_quarters/rd) "qXQ" = ( /mob/living/carbon/human/species/monkey{ name = "Banana" @@ -65522,13 +65525,6 @@ }, /turf/open/floor/glass/reinforced, /area/station/service/library) -"rdZ" = ( -/obj/structure/cable, -/obj/machinery/mining_weather_monitor/directional/north, -/turf/open/floor/iron/dark/side{ - dir = 1 - }, -/area/station/hallway/secondary/exit) "rec" = ( /obj/structure/cable, /turf/open/floor/iron/dark/side{ @@ -66789,13 +66785,6 @@ /obj/machinery/duct, /turf/open/floor/iron/white, /area/station/medical/treatment_center) -"rwA" = ( -/obj/effect/turf_decal/tile/purple/opposingcorners, -/obj/effect/turf_decal/stripes/line, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/white, -/area/station/science/xenobiology) "rwG" = ( /obj/effect/turf_decal/trimline/purple/line, /obj/machinery/airalarm/directional/north, @@ -66819,10 +66808,6 @@ /obj/effect/spawner/random/maintenance, /turf/open/floor/pod/light, /area/station/maintenance/floor2/port/fore) -"rwV" = ( -/obj/structure/closet/crate/mod, -/turf/open/floor/iron/dark/smooth_large, -/area/station/science/robotics/lab) "rwY" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/modular_computer/preset/civilian{ @@ -67712,6 +67697,13 @@ }, /turf/open/floor/iron, /area/station/science/auxlab) +"rKc" = ( +/obj/structure/cable, +/obj/machinery/mining_weather_monitor/directional/north, +/turf/open/floor/iron/dark/side{ + dir = 1 + }, +/area/station/hallway/secondary/exit) "rKg" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -69610,6 +69602,13 @@ }, /turf/open/floor/iron/white, /area/station/science/lower) +"smx" = ( +/obj/structure/table, +/obj/item/pai_card{ + pixel_y = 6 + }, +/turf/open/floor/iron/checker, +/area/station/commons/vacant_room/commissary) "smJ" = ( /turf/open/floor/plating, /area/station/maintenance/floor3/port/fore) @@ -74209,6 +74208,18 @@ }, /turf/open/floor/plating, /area/station/maintenance/floor2/starboard/aft) +"twv" = ( +/obj/machinery/requests_console/directional/east{ + department = "Xenobiology"; + name = "Xenobiology Requests Console" + }, +/obj/effect/mapping_helpers/requests_console/ore_update, +/obj/machinery/shower/directional/west, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/noslip, +/area/station/science/xenobiology) "twx" = ( /turf/open/floor/pod/light, /area/station/maintenance/floor1/port) @@ -76893,6 +76904,10 @@ /obj/machinery/camera/autoname/directional/south, /turf/open/floor/iron/white/herringbone, /area/station/medical/patients_rooms) +"uim" = ( +/obj/structure/closet/crate/mod, +/turf/open/floor/iron/dark/smooth_large, +/area/station/science/robotics/lab) "uit" = ( /obj/machinery/door/airlock/hatch{ name = "Maintenance Access" @@ -77057,13 +77072,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron, /area/station/maintenance/disposal/incinerator) -"uko" = ( -/obj/structure/table, -/obj/item/pai_card{ - pixel_y = 6 - }, -/turf/open/floor/iron/checker, -/area/station/commons/vacant_room/commissary) "ukr" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -77506,6 +77514,16 @@ /obj/machinery/status_display/ai/directional/north, /turf/open/floor/iron/dark, /area/station/security/courtroom) +"usa" = ( +/obj/machinery/light/small/directional/west, +/obj/machinery/camera/directional/west{ + c_tag = "Command - Research Director's Quarters #1" + }, +/obj/effect/baseturf_helper/reinforced_plating/ceiling, +/obj/machinery/newscaster/directional/west, +/obj/item/kirbyplants/random/dead/research_director, +/turf/open/floor/iron/large, +/area/station/command/heads_quarters/rd) "use" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible{ dir = 1 @@ -82222,6 +82240,14 @@ /obj/machinery/airalarm/directional/east, /turf/open/floor/iron, /area/station/hallway/secondary/service) +"vAS" = ( +/obj/effect/mapping_helpers/airlock/access/any/supply/mining, +/obj/machinery/door/airlock/multi_tile/public/glass{ + name = "Xenoflora" + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/textured_large, +/area/station/cargo/miningdock) "vAU" = ( /obj/effect/turf_decal/tile/yellow/half/contrasted{ dir = 4 @@ -82630,19 +82656,6 @@ /obj/effect/turf_decal/tile/yellow/half/contrasted, /turf/open/floor/iron, /area/station/engineering/atmos/pumproom) -"vHV" = ( -/obj/effect/turf_decal/tile/purple/opposingcorners, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/structure/sink/kitchen/directional/west, -/obj/machinery/requests_console/directional/east{ - department = "Xenobiology"; - name = "Xenobiology Requests Console" - }, -/obj/effect/mapping_helpers/requests_console/ore_update, -/turf/open/floor/iron/white, -/area/station/science/xenobiology) "vHX" = ( /obj/effect/spawner/random/decoration/glowstick, /obj/effect/decal/cleanable/dirt, @@ -91265,17 +91278,6 @@ /obj/machinery/camera/autoname/directional/east, /turf/open/floor/wood/tile, /area/station/service/chapel/office) -"xRh" = ( -/obj/structure/table, -/obj/item/plate, -/obj/item/knife/plastic{ - pixel_x = 16 - }, -/obj/item/food/donkpocket/warm/berry{ - pixel_y = 7 - }, -/turf/open/floor/iron/kitchen, -/area/station/command/heads_quarters/rd) "xRk" = ( /obj/structure/frame/computer{ dir = 8 @@ -107272,7 +107274,7 @@ eSX ylE qiy hhx -rdZ +rKc bfX tqx svs @@ -123702,7 +123704,7 @@ cwG qly pEv pnr -eur +vAS tQf qzm gtX @@ -186401,7 +186403,7 @@ hge hge hge oiO -eVs +bMu pKO aiN jDc @@ -202370,7 +202372,7 @@ bpA bfs cVT jXc -rwV +uim lcv lcv bHU @@ -253224,7 +253226,7 @@ qVO plz bYJ rWT -mfY +usa vQs rWT lEo @@ -253731,7 +253733,7 @@ nAH ovJ eCz jlE -gHZ +kdU kNn kNn fli @@ -253988,8 +253990,8 @@ nAH rSD bTy cZS -bdY -vHV +eIU +twv yfm ygn plz @@ -254245,7 +254247,7 @@ nAH maf hrL nqi -rwA +eKB nAH hUT hUT @@ -254253,7 +254255,7 @@ hUT iHm rWT rWT -xRh +qXE iHm kgT qrd @@ -257612,7 +257614,7 @@ cdF ftv jiL qbz -uko +smx qxy qnw vcg @@ -257869,9 +257871,9 @@ orN ftv jiL eLw -ipB +lFJ qxy -hTf +oyW ofa uKR nXk diff --git a/code/__DEFINES/colors.dm b/code/__DEFINES/colors.dm index 06752686102..25bd59bc8b5 100644 --- a/code/__DEFINES/colors.dm +++ b/code/__DEFINES/colors.dm @@ -326,6 +326,29 @@ #define COLOR_CARP_DARK_BLUE "#3a384d" #define COLOR_CARP_DARK_GREEN "#358102" +#define COLOR_SLIME_ADAMANTINE "#135f49" +#define COLOR_SLIME_BLACK "#3b3b3b" +#define COLOR_SLIME_BLUE "#19ffff" +#define COLOR_SLIME_BLUESPACE "#ebebeb" +#define COLOR_SLIME_CERULEAN "#5783aa" +#define COLOR_SLIME_DARK_BLUE "#2e9dff" +#define COLOR_SLIME_DARK_PURPLE "#9948f7" +#define COLOR_SLIME_GOLD "#c38b07" +#define COLOR_SLIME_GREEN "#07f024" +#define COLOR_SLIME_GREY "#c2c2c2" +#define COLOR_SLIME_LIGHT_PINK "#ffe1fa" +#define COLOR_SLIME_METAL "#676767" +#define COLOR_SLIME_OIL "#242424" +#define COLOR_SLIME_ORANGE "#ffb445" +#define COLOR_SLIME_PINK "#fe5bbd" +#define COLOR_SLIME_PURPLE "#d138ff" +#define COLOR_SLIME_PYRITE "#ffc427" +#define COLOR_SLIME_RAINBOW COLOR_SLIME_GREY // only for consistency +#define COLOR_SLIME_RED "#fb4848" +#define COLOR_SLIME_SEPIA "#9b8a7a" +#define COLOR_SLIME_SILVER "#dadada" +#define COLOR_SLIME_YELLOW "#fff419" + #define COLOR_GNOME_RED_ONE "#f10b0b" #define COLOR_GNOME_RED_TWO "#bc5347" #define COLOR_GNOME_RED_THREE "#b40f1a" diff --git a/code/__DEFINES/research/slimes.dm b/code/__DEFINES/research/slimes.dm new file mode 100644 index 00000000000..64a85afc217 --- /dev/null +++ b/code/__DEFINES/research/slimes.dm @@ -0,0 +1,27 @@ +// Just slimin' here. +// Warning: These defines are used for slime cores and their icon states, so if you +// touch these names, remember to update icons/mob/simple/slimes.dmi and the respective +// slime core paths too! + +#define SLIME_TYPE_ADAMANTINE "adamantine" +#define SLIME_TYPE_BLACK "black" +#define SLIME_TYPE_BLUE "blue" +#define SLIME_TYPE_BLUESPACE "bluespace" +#define SLIME_TYPE_CERULEAN "cerulean" +#define SLIME_TYPE_DARK_BLUE "dark blue" +#define SLIME_TYPE_DARK_PURPLE "dark purple" +#define SLIME_TYPE_GOLD "gold" +#define SLIME_TYPE_GREEN "green" +#define SLIME_TYPE_GREY "grey" +#define SLIME_TYPE_LIGHT_PINK "light pink" +#define SLIME_TYPE_METAL "metal" +#define SLIME_TYPE_OIL "oil" +#define SLIME_TYPE_ORANGE "orange" +#define SLIME_TYPE_PINK "pink" +#define SLIME_TYPE_PURPLE "purple" +#define SLIME_TYPE_PYRITE "pyrite" +#define SLIME_TYPE_RAINBOW "rainbow" +#define SLIME_TYPE_RED "red" +#define SLIME_TYPE_SEPIA "sepia" +#define SLIME_TYPE_SILVER "silver" +#define SLIME_TYPE_YELLOW "yellow" diff --git a/code/datums/status_effects/_status_effect.dm b/code/datums/status_effects/_status_effect.dm index 8c33d6a9d0c..4a9e916941b 100644 --- a/code/datums/status_effects/_status_effect.dm +++ b/code/datums/status_effects/_status_effect.dm @@ -29,6 +29,8 @@ var/remove_on_fullheal = FALSE /// If remove_on_fullheal is TRUE, what flag do we need to be removed? var/heal_flag_necessary = HEAL_STATUS + /// A particle effect, for things like embers - Should be set on update_particles() + var/obj/effect/abstract/particle_holder/particle_effect /datum/status_effect/New(list/arguments) on_creation(arglist(arguments)) @@ -63,6 +65,8 @@ if(STATUS_EFFECT_NORMAL_PROCESS) START_PROCESSING(SSprocessing, src) + update_particles() + return TRUE /datum/status_effect/Destroy() @@ -78,6 +82,8 @@ on_remove() UnregisterSignal(owner, COMSIG_LIVING_POST_FULLY_HEAL) owner = null + if(particle_effect) + QDEL_NULL(particle_effect) return ..() // Status effect process. Handles adjusting its duration and ticks. @@ -181,6 +187,14 @@ return FALSE +/** + * Updates the particles for the status effects + * Should be handled by subtypes! + */ + +/datum/status_effect/proc/update_particles() + SHOULD_CALL_PARENT(FALSE) + /// Alert base type for status effect alerts /atom/movable/screen/alert/status_effect name = "Curse of Mundanity" diff --git a/code/datums/status_effects/debuffs/fire_stacks.dm b/code/datums/status_effects/debuffs/fire_stacks.dm index e4c13b06255..112e8bd8614 100644 --- a/code/datums/status_effects/debuffs/fire_stacks.dm +++ b/code/datums/status_effects/debuffs/fire_stacks.dm @@ -17,9 +17,6 @@ /// For how much firestacks does one our stack count var/stack_modifier = 1 - /// A particle effect, for things like embers - Should be set on update_particles() - var/obj/effect/abstract/particle_holder/particle_effect - /datum/status_effect/fire_handler/refresh(mob/living/new_owner, new_stacks, forced = FALSE) if(forced) set_stacks(new_stacks) @@ -81,23 +78,6 @@ adjust_stacks(override_effect.stacks) qdel(override_effect) -/datum/status_effect/fire_handler/on_apply() - . = ..() - update_particles() - -/datum/status_effect/fire_handler/on_remove() - if(particle_effect) - QDEL_NULL(particle_effect) - return ..() - -/** - * Updates the particles for the status effects - * Should be handled by subtypes! - */ - -/datum/status_effect/fire_handler/proc/update_particles() - SHOULD_CALL_PARENT(FALSE) - /** * Setter and adjuster procs for firestacks * diff --git a/code/datums/status_effects/debuffs/slimed.dm b/code/datums/status_effects/debuffs/slimed.dm new file mode 100644 index 00000000000..15632277f3d --- /dev/null +++ b/code/datums/status_effects/debuffs/slimed.dm @@ -0,0 +1,85 @@ +/// The minimum amount of water stacks needed to start washing off the slime. +#define MIN_WATER_STACKS 5 +/// The minimum amount of health a mob has to have before the status effect is removed. +#define MIN_HEALTH 10 + +/atom/movable/screen/alert/status_effect/slimed + name = "Covered in Slime" + desc = "You are covered in slime and it's eating away at you! Find a way to wash it off!" + icon_state = "slimed" + +/datum/status_effect/slimed + id = "slimed" + tick_interval = 3 SECONDS + alert_type = /atom/movable/screen/alert/status_effect/slimed + remove_on_fullheal = TRUE + + /// The amount of slime stacks that were applied, reduced by showering yourself under water. + var/slime_stacks = 10 // ~10 seconds of standing under a shower + /// Slime color, used for particles. + var/slime_color + /// Changes particle colors to rainbow, this overrides `slime_color`. + var/rainbow + +/datum/status_effect/slimed/on_creation(mob/living/new_owner, slime_color = COLOR_SLIME_GREY, rainbow = FALSE) + src.slime_color = slime_color + src.rainbow = rainbow + return ..() + +/datum/status_effect/slimed/on_apply() + if(owner.get_organic_health() <= MIN_HEALTH) + return FALSE + to_chat(owner, span_userdanger("You have been covered in a thick layer of slime! Find a way to wash it off!")) + return ..() + +/datum/status_effect/slimed/tick(seconds_between_ticks) + // remove from the mob once we have dealt enough damage + if(owner.get_organic_health() <= MIN_HEALTH) + to_chat(owner, span_warning("You feel the layer of slime crawling off of your weakened body.")) + qdel(src) + return + + // handle washing slime off + var/datum/status_effect/fire_handler/wet_stacks/wetness = locate() in owner.status_effects + if(istype(wetness) && wetness.stacks > (MIN_WATER_STACKS * seconds_between_ticks)) + slime_stacks -= seconds_between_ticks // lose 1 stack per second + wetness.adjust_stacks(-5 * seconds_between_ticks) + + // got rid of it + if(slime_stacks <= 0) + to_chat(owner, span_notice("You manage to wash off the layer of slime completely.")) + qdel(src) + return + + if(SPT_PROB(10, seconds_between_ticks)) + to_chat(owner,span_warning("The layer of slime is slowly getting thinner as it's washing off your skin.")) + + return + + // otherwise deal brute damage + owner.apply_damage(rand(2,4) * seconds_between_ticks, damagetype = BRUTE) + + if(SPT_PROB(10, seconds_between_ticks)) + var/feedback_text = pick(list( + "Your entire body screams with pain", + "Your skin feels like it's coming off", + "Your body feels like it's melting together" + )) + to_chat(owner, span_userdanger("[feedback_text] as the layer of slime eats away at you!")) + +/datum/status_effect/slimed/update_particles() + if(particle_effect) + return + + // taste the rainbow + var/particle_type = rainbow ? /particles/slime/rainbow : /particles/slime + particle_effect = new(owner, particle_type) + + if(!rainbow) + particle_effect.particles.color = "[slime_color]a0" + +/datum/status_effect/slimed/get_examine_text() + return span_warning("[owner.p_They()] [owner.p_are()] covered in bubbling slime!") + +#undef MIN_HEALTH +#undef MIN_WATER_STACKS diff --git a/code/game/objects/effects/particles/acid.dm b/code/game/objects/effects/particles/acid.dm index bcb7559ce9c..5ce0984991d 100644 --- a/code/game/objects/effects/particles/acid.dm +++ b/code/game/objects/effects/particles/acid.dm @@ -1,12 +1,12 @@ // Acid related particles. /particles/acid - icon = 'icons/effects/particles/acid.dmi' + icon = 'icons/effects/particles/goop.dmi' icon_state = list("goop_1" = 6, "goop_2" = 2, "goop_3" = 1) width = 100 height = 100 count = 100 spawning = 0.5 - color = "#FFFFFF80" //to get 96 alpha + color = "#00ea2b80" //to get 96 alpha lifespan = 1.5 SECONDS fade = 1 SECONDS grow = -0.025 diff --git a/code/game/objects/effects/particles/slime.dm b/code/game/objects/effects/particles/slime.dm new file mode 100644 index 00000000000..5cef9c97625 --- /dev/null +++ b/code/game/objects/effects/particles/slime.dm @@ -0,0 +1,22 @@ +/// Slime particles. +/particles/slime + icon = 'icons/effects/particles/goop.dmi' + icon_state = list("goop_1" = 6, "goop_2" = 2, "goop_3" = 1) + width = 100 + height = 100 + count = 100 + spawning = 0.5 + color = "#707070a0" + lifespan = 1.5 SECONDS + fade = 1 SECONDS + grow = -0.025 + gravity = list(0, -0.05) + position = generator(GEN_BOX, list(-8,-16,0), list(8,16,0), NORMAL_RAND) + spin = generator(GEN_NUM, -15, 15, NORMAL_RAND) + scale = list(0.75, 0.75) + +/// Rainbow slime particles. +/particles/slime/rainbow + gradient = list(0, "#f00a", 3, "#0ffa", 6, "#f00a", "loop", "space"=COLORSPACE_HSL) + color_change = 0.2 + color = generator(GEN_NUM, 0, 6, UNIFORM_RAND) diff --git a/code/modules/mob/living/simple_animal/slime/life.dm b/code/modules/mob/living/simple_animal/slime/life.dm index ca578f949df..27827bbd88b 100644 --- a/code/modules/mob/living/simple_animal/slime/life.dm +++ b/code/modules/mob/living/simple_animal/slime/life.dm @@ -183,7 +183,7 @@ return if(iscarbon(prey)) - prey.adjustCloneLoss(rand(2, 4) * 0.5 * seconds_per_tick) + prey.adjustBruteLoss(rand(2, 4) * 0.5 * seconds_per_tick) prey.adjustToxLoss(rand(1, 2) * 0.5 * seconds_per_tick) if(SPT_PROB(5, seconds_per_tick) && prey.client) @@ -199,7 +199,7 @@ var/mob/living/animal_victim = prey var/totaldamage = 0 //total damage done to this unfortunate animal - totaldamage += animal_victim.adjustCloneLoss(rand(2, 4) * 0.5 * seconds_per_tick) + totaldamage += animal_victim.adjustBruteLoss(rand(2, 4) * 0.5 * seconds_per_tick) totaldamage += animal_victim.adjustToxLoss(rand(1, 2) * 0.5 * seconds_per_tick) if(totaldamage <= 0) //if we did no(or negative!) damage to it, stop diff --git a/code/modules/mob/living/simple_animal/slime/powers.dm b/code/modules/mob/living/simple_animal/slime/powers.dm index 61706dfa58b..01197efc8ed 100644 --- a/code/modules/mob/living/simple_animal/slime/powers.dm +++ b/code/modules/mob/living/simple_animal/slime/powers.dm @@ -66,7 +66,7 @@ if(isanimal(meal)) var/mob/living/simple_animal/simple_meal = meal - if(simple_meal.damage_coeff[TOX] <= 0 && simple_meal.damage_coeff[CLONE] <= 0) //The creature wouldn't take any damage, it must be too weird even for us. + if(simple_meal.damage_coeff[TOX] <= 0 && simple_meal.damage_coeff[BRUTE] <= 0) //The creature wouldn't take any damage, it must be too weird even for us. if(silent) return FALSE to_chat(src, "[pick("This subject is incompatible", \ @@ -76,7 +76,7 @@ return FALSE else if(isbasicmob(meal)) var/mob/living/basic/basic_meal = meal - if(basic_meal.damage_coeff[TOX] <= 0 && basic_meal.damage_coeff[CLONE] <= 0) + if(basic_meal.damage_coeff[TOX] <= 0 && basic_meal.damage_coeff[BRUTE] <= 0) if (silent) return FALSE to_chat(src, "[pick("This subject is incompatible", \ @@ -132,6 +132,14 @@ "This subject does not have life energy", "This subject is empty", \ "I am not satisified", "I can not feed from this subject", \ "I do not feel nourished", "This subject is not food")]!") + + var/mob/living/victim = buckled + + if(istype(victim)) + var/bio_protection = 100 - victim.getarmor(null, BIO) + if(prob(bio_protection)) + victim.apply_status_effect(/datum/status_effect/slimed, slime_colours_to_rgb[colour], colour == SLIME_TYPE_RAINBOW) + if(!silent) visible_message(span_warning("[src] lets go of [buckled]!"), \ span_notice("I stopped feeding.")) @@ -192,7 +200,7 @@ for(var/i in 1 to 4) var/child_colour if(mutation_chance >= 100) - child_colour = "rainbow" + child_colour = SLIME_TYPE_RAINBOW else if(prob(mutation_chance)) child_colour = slime_mutation[rand(1,4)] else diff --git a/code/modules/mob/living/simple_animal/slime/slime.dm b/code/modules/mob/living/simple_animal/slime/slime.dm index d116d6342ec..2bfe51051d3 100644 --- a/code/modules/mob/living/simple_animal/slime/slime.dm +++ b/code/modules/mob/living/simple_animal/slime/slime.dm @@ -77,33 +77,58 @@ var/static/regex/slime_name_regex = new("\\w+ (baby|adult) slime \\(\\d+\\)") ///////////TIME FOR SUBSPECIES - var/colour = "grey" + var/colour = SLIME_TYPE_GREY var/coretype = /obj/item/slime_extract/grey var/list/slime_mutation[4] var/static/list/slime_colours = list( - "adamantine", - "black", - "blue", - "bluespace", - "cerulean", - "dark blue", - "dark purple", - "gold", - "green", - "grey", - "light pink", - "metal", - "oil", - "orange", - "pink", - "purple", - "pyrite", - "rainbow", - "red", - "sepia", - "silver", - "yellow", + SLIME_TYPE_ADAMANTINE, + SLIME_TYPE_BLACK, + SLIME_TYPE_BLUE, + SLIME_TYPE_BLUESPACE, + SLIME_TYPE_CERULEAN, + SLIME_TYPE_DARK_BLUE, + SLIME_TYPE_DARK_PURPLE, + SLIME_TYPE_GOLD, + SLIME_TYPE_GREEN, + SLIME_TYPE_GREY, + SLIME_TYPE_LIGHT_PINK, + SLIME_TYPE_METAL, + SLIME_TYPE_OIL, + SLIME_TYPE_ORANGE, + SLIME_TYPE_PINK, + SLIME_TYPE_PURPLE, + SLIME_TYPE_PYRITE, + SLIME_TYPE_RAINBOW, + SLIME_TYPE_RED, + SLIME_TYPE_SEPIA, + SLIME_TYPE_SILVER, + SLIME_TYPE_YELLOW, + ) + + var/static/list/slime_colours_to_rgb = list( + SLIME_TYPE_ADAMANTINE = COLOR_SLIME_ADAMANTINE, + SLIME_TYPE_BLACK = COLOR_SLIME_BLACK, + SLIME_TYPE_BLUE = COLOR_SLIME_BLUE, + SLIME_TYPE_BLUESPACE = COLOR_SLIME_BLUESPACE, + SLIME_TYPE_CERULEAN = COLOR_SLIME_CERULEAN, + SLIME_TYPE_DARK_BLUE = COLOR_SLIME_DARK_BLUE, + SLIME_TYPE_DARK_PURPLE = COLOR_SLIME_DARK_PURPLE, + SLIME_TYPE_GOLD = COLOR_SLIME_GOLD, + SLIME_TYPE_GREEN = COLOR_SLIME_GREEN, + SLIME_TYPE_GREY = COLOR_SLIME_GREY, + SLIME_TYPE_LIGHT_PINK = COLOR_SLIME_LIGHT_PINK, + SLIME_TYPE_METAL = COLOR_SLIME_METAL, + SLIME_TYPE_OIL = COLOR_SLIME_OIL, + SLIME_TYPE_ORANGE = COLOR_SLIME_ORANGE, + SLIME_TYPE_PINK = COLOR_SLIME_PINK, + SLIME_TYPE_PURPLE = COLOR_SLIME_PURPLE, + SLIME_TYPE_PYRITE = COLOR_SLIME_PYRITE, + SLIME_TYPE_RAINBOW = COLOR_SLIME_RAINBOW, + SLIME_TYPE_RED = COLOR_SLIME_RED, + SLIME_TYPE_SEPIA = COLOR_SLIME_SEPIA, + SLIME_TYPE_SILVER = COLOR_SLIME_SILVER, + SLIME_TYPE_YELLOW = COLOR_SLIME_YELLOW, ) ///////////CORE-CROSSING CODE diff --git a/code/modules/mob/living/simple_animal/slime/subtypes.dm b/code/modules/mob/living/simple_animal/slime/subtypes.dm index 47d45d71fdc..e948de7cd4d 100644 --- a/code/modules/mob/living/simple_animal/slime/subtypes.dm +++ b/code/modules/mob/living/simple_animal/slime/subtypes.dm @@ -2,74 +2,74 @@ var/list/slime_mutation_colors[4] switch(colour) //Tier 1 - if("grey") - slime_mutation_colors[1] = "orange" - slime_mutation_colors[2] = "metal" - slime_mutation_colors[3] = "blue" - slime_mutation_colors[4] = "purple" + if(SLIME_TYPE_GREY) + slime_mutation_colors[1] = SLIME_TYPE_ORANGE + slime_mutation_colors[2] = SLIME_TYPE_METAL + slime_mutation_colors[3] = SLIME_TYPE_BLUE + slime_mutation_colors[4] = SLIME_TYPE_PURPLE //Tier 2 - if("purple") - slime_mutation_colors[1] = "dark purple" - slime_mutation_colors[2] = "dark blue" - slime_mutation_colors[3] = "green" - slime_mutation_colors[4] = "green" - if("metal") - slime_mutation_colors[1] = "silver" - slime_mutation_colors[2] = "yellow" - slime_mutation_colors[3] = "gold" - slime_mutation_colors[4] = "gold" - if("orange") - slime_mutation_colors[1] = "dark purple" - slime_mutation_colors[2] = "yellow" - slime_mutation_colors[3] = "red" - slime_mutation_colors[4] = "red" - if("blue") - slime_mutation_colors[1] = "dark blue" - slime_mutation_colors[2] = "silver" - slime_mutation_colors[3] = "pink" - slime_mutation_colors[4] = "pink" + if(SLIME_TYPE_PURPLE) + slime_mutation_colors[1] = SLIME_TYPE_DARK_PURPLE + slime_mutation_colors[2] = SLIME_TYPE_DARK_BLUE + slime_mutation_colors[3] = SLIME_TYPE_GREEN + slime_mutation_colors[4] = SLIME_TYPE_GREEN + if(SLIME_TYPE_METAL) + slime_mutation_colors[1] = SLIME_TYPE_SILVER + slime_mutation_colors[2] = SLIME_TYPE_YELLOW + slime_mutation_colors[3] = SLIME_TYPE_GOLD + slime_mutation_colors[4] = SLIME_TYPE_GOLD + if(SLIME_TYPE_ORANGE) + slime_mutation_colors[1] = SLIME_TYPE_DARK_PURPLE + slime_mutation_colors[2] = SLIME_TYPE_YELLOW + slime_mutation_colors[3] = SLIME_TYPE_RED + slime_mutation_colors[4] = SLIME_TYPE_RED + if(SLIME_TYPE_BLUE) + slime_mutation_colors[1] = SLIME_TYPE_DARK_BLUE + slime_mutation_colors[2] = SLIME_TYPE_SILVER + slime_mutation_colors[3] = SLIME_TYPE_PINK + slime_mutation_colors[4] = SLIME_TYPE_PINK //Tier 3 - if("dark blue") - slime_mutation_colors[1] = "purple" - slime_mutation_colors[2] = "blue" - slime_mutation_colors[3] = "cerulean" - slime_mutation_colors[4] = "cerulean" - if("dark purple") - slime_mutation_colors[1] = "purple" - slime_mutation_colors[2] = "orange" - slime_mutation_colors[3] = "sepia" - slime_mutation_colors[4] = "sepia" - if("yellow") - slime_mutation_colors[1] = "metal" - slime_mutation_colors[2] = "orange" - slime_mutation_colors[3] = "bluespace" - slime_mutation_colors[4] = "bluespace" - if("silver") - slime_mutation_colors[1] = "metal" - slime_mutation_colors[2] = "blue" - slime_mutation_colors[3] = "pyrite" - slime_mutation_colors[4] = "pyrite" + if(SLIME_TYPE_DARK_BLUE) + slime_mutation_colors[1] = SLIME_TYPE_PURPLE + slime_mutation_colors[2] = SLIME_TYPE_BLUE + slime_mutation_colors[3] = SLIME_TYPE_CERULEAN + slime_mutation_colors[4] = SLIME_TYPE_CERULEAN + if(SLIME_TYPE_DARK_PURPLE) + slime_mutation_colors[1] = SLIME_TYPE_PURPLE + slime_mutation_colors[2] = SLIME_TYPE_ORANGE + slime_mutation_colors[3] = SLIME_TYPE_SEPIA + slime_mutation_colors[4] = SLIME_TYPE_SEPIA + if(SLIME_TYPE_YELLOW) + slime_mutation_colors[1] = SLIME_TYPE_METAL + slime_mutation_colors[2] = SLIME_TYPE_ORANGE + slime_mutation_colors[3] = SLIME_TYPE_BLUESPACE + slime_mutation_colors[4] = SLIME_TYPE_BLUESPACE + if(SLIME_TYPE_SILVER) + slime_mutation_colors[1] = SLIME_TYPE_METAL + slime_mutation_colors[2] = SLIME_TYPE_BLUE + slime_mutation_colors[3] = SLIME_TYPE_PYRITE + slime_mutation_colors[4] = SLIME_TYPE_PYRITE //Tier 4 - if("pink") - slime_mutation_colors[1] = "pink" - slime_mutation_colors[2] = "pink" - slime_mutation_colors[3] = "light pink" - slime_mutation_colors[4] = "light pink" - if("red") - slime_mutation_colors[1] = "red" - slime_mutation_colors[2] = "red" - slime_mutation_colors[3] = "oil" - slime_mutation_colors[4] = "oil" - if("gold") - slime_mutation_colors[1] = "gold" - slime_mutation_colors[2] = "gold" - slime_mutation_colors[3] = "adamantine" - slime_mutation_colors[4] = "adamantine" - if("green") - slime_mutation_colors[1] = "green" - slime_mutation_colors[2] = "green" - slime_mutation_colors[3] = "black" - slime_mutation_colors[4] = "black" + if(SLIME_TYPE_PINK) + slime_mutation_colors[1] = SLIME_TYPE_PINK + slime_mutation_colors[2] = SLIME_TYPE_PINK + slime_mutation_colors[3] = SLIME_TYPE_LIGHT_PINK + slime_mutation_colors[4] = SLIME_TYPE_LIGHT_PINK + if(SLIME_TYPE_RED) + slime_mutation_colors[1] = SLIME_TYPE_RED + slime_mutation_colors[2] = SLIME_TYPE_RED + slime_mutation_colors[3] = SLIME_TYPE_OIL + slime_mutation_colors[4] = SLIME_TYPE_OIL + if(SLIME_TYPE_GOLD) + slime_mutation_colors[1] = SLIME_TYPE_GOLD + slime_mutation_colors[2] = SLIME_TYPE_GOLD + slime_mutation_colors[3] = SLIME_TYPE_ADAMANTINE + slime_mutation_colors[4] = SLIME_TYPE_ADAMANTINE + if(SLIME_TYPE_GREEN) + slime_mutation_colors[1] = SLIME_TYPE_GREEN + slime_mutation_colors[2] = SLIME_TYPE_GREEN + slime_mutation_colors[3] = SLIME_TYPE_BLACK + slime_mutation_colors[4] = SLIME_TYPE_BLACK // Tier 5 else slime_mutation_colors[1] = colour diff --git a/code/modules/research/xenobiology/crossbreeding/__corecross.dm b/code/modules/research/xenobiology/crossbreeding/__corecross.dm index 4ec793870f5..7d24c7103dc 100644 --- a/code/modules/research/xenobiology/crossbreeding/__corecross.dm +++ b/code/modules/research/xenobiology/crossbreeding/__corecross.dm @@ -48,45 +48,45 @@ To add a crossbreed: name = effect + " " + colour + " extract" var/itemcolor = "#FFFFFF" switch(colour) - if("orange") + if(SLIME_TYPE_ORANGE) itemcolor = "#FFA500" - if("purple") + if(SLIME_TYPE_PURPLE) itemcolor = "#B19CD9" - if("blue") + if(SLIME_TYPE_BLUE) itemcolor = "#ADD8E6" - if("metal") + if(SLIME_TYPE_METAL) itemcolor = "#7E7E7E" - if("yellow") + if(SLIME_TYPE_YELLOW) itemcolor = "#FFFF00" - if("dark purple") + if(SLIME_TYPE_DARK_PURPLE) itemcolor = "#551A8B" - if("dark blue") + if(SLIME_TYPE_DARK_BLUE) itemcolor = "#0000FF" - if("silver") + if(SLIME_TYPE_SILVER) itemcolor = "#D3D3D3" - if("bluespace") + if(SLIME_TYPE_BLUESPACE) itemcolor = "#32CD32" - if("sepia") + if(SLIME_TYPE_SEPIA) itemcolor = "#704214" - if("cerulean") + if(SLIME_TYPE_CERULEAN) itemcolor = "#2956B2" - if("pyrite") + if(SLIME_TYPE_PYRITE) itemcolor = "#FAFAD2" - if("red") + if(SLIME_TYPE_RED) itemcolor = "#FF0000" - if("green") + if(SLIME_TYPE_GREEN) itemcolor = "#00FF00" - if("pink") + if(SLIME_TYPE_PINK) itemcolor = "#FF69B4" - if("gold") + if(SLIME_TYPE_GOLD) itemcolor = "#FFD700" - if("oil") + if(SLIME_TYPE_OIL) itemcolor = "#505050" - if("black") + if(SLIME_TYPE_BLACK) itemcolor = "#000000" - if("light pink") + if(SLIME_TYPE_LIGHT_PINK) itemcolor = "#FFB6C1" - if("adamantine") + if(SLIME_TYPE_ADAMANTINE) itemcolor = "#008B8B" add_atom_colour(itemcolor, FIXED_COLOUR_PRIORITY) diff --git a/code/modules/research/xenobiology/crossbreeding/_status_effects.dm b/code/modules/research/xenobiology/crossbreeding/_status_effects.dm index fea62368ca2..bb5f595b93a 100644 --- a/code/modules/research/xenobiology/crossbreeding/_status_effects.dm +++ b/code/modules/research/xenobiology/crossbreeding/_status_effects.dm @@ -467,7 +467,7 @@ //Stabilized effects start below. /datum/status_effect/stabilized/grey id = "stabilizedgrey" - colour = "grey" + colour = SLIME_TYPE_GREY /datum/status_effect/stabilized/grey/tick(seconds_between_ticks) for(var/mob/living/simple_animal/slime/S in range(1, get_turf(owner))) @@ -478,7 +478,7 @@ /datum/status_effect/stabilized/orange id = "stabilizedorange" - colour = "orange" + colour = SLIME_TYPE_ORANGE /datum/status_effect/stabilized/orange/tick(seconds_between_ticks) var/body_temp_target = owner.get_body_temp_normal(apply_change = FALSE) @@ -499,7 +499,7 @@ /datum/status_effect/stabilized/purple id = "stabilizedpurple" - colour = "purple" + colour = SLIME_TYPE_PURPLE /// Whether we healed from our last tick var/healed_last_tick = FALSE @@ -533,7 +533,7 @@ /datum/status_effect/stabilized/blue id = "stabilizedblue" - colour = "blue" + colour = SLIME_TYPE_BLUE /datum/status_effect/stabilized/blue/on_apply() ADD_TRAIT(owner, TRAIT_NO_SLIP_WATER, "slimestatus") @@ -544,7 +544,7 @@ /datum/status_effect/stabilized/metal id = "stabilizedmetal" - colour = "metal" + colour = SLIME_TYPE_METAL var/cooldown = 30 var/max_cooldown = 30 @@ -567,7 +567,7 @@ /datum/status_effect/stabilized/yellow id = "stabilizedyellow" - colour = "yellow" + colour = SLIME_TYPE_YELLOW var/cooldown = 10 var/max_cooldown = 10 @@ -598,7 +598,7 @@ /datum/status_effect/stabilized/darkpurple id = "stabilizeddarkpurple" - colour = "dark purple" + colour = SLIME_TYPE_DARK_PURPLE var/obj/item/hothands/fire /datum/status_effect/stabilized/darkpurple/on_apply() @@ -624,7 +624,7 @@ /datum/status_effect/stabilized/darkblue id = "stabilizeddarkblue" - colour = "dark blue" + colour = SLIME_TYPE_DARK_BLUE /datum/status_effect/stabilized/darkblue/tick(seconds_between_ticks) if(owner.fire_stacks > 0 && prob(80)) @@ -656,7 +656,7 @@ /datum/status_effect/stabilized/silver id = "stabilizedsilver" - colour = "silver" + colour = SLIME_TYPE_SILVER /datum/status_effect/stabilized/silver/on_apply() if(ishuman(owner)) @@ -682,7 +682,7 @@ /datum/status_effect/stabilized/bluespace id = "stabilizedbluespace" - colour = "bluespace" + colour = SLIME_TYPE_BLUESPACE alert_type = /atom/movable/screen/alert/status_effect/bluespaceslime var/healthcheck @@ -712,7 +712,7 @@ /datum/status_effect/stabilized/sepia id = "stabilizedsepia" - colour = "sepia" + colour = SLIME_TYPE_SEPIA var/mod = 0 /datum/status_effect/stabilized/sepia/tick(seconds_between_ticks) @@ -730,7 +730,7 @@ /datum/status_effect/stabilized/cerulean id = "stabilizedcerulean" - colour = "cerulean" + colour = SLIME_TYPE_CERULEAN var/mob/living/clone /datum/status_effect/stabilized/cerulean/on_apply() @@ -766,7 +766,7 @@ /datum/status_effect/stabilized/pyrite id = "stabilizedpyrite" - colour = "pyrite" + colour = SLIME_TYPE_PYRITE var/originalcolor /datum/status_effect/stabilized/pyrite/on_apply() @@ -782,7 +782,7 @@ /datum/status_effect/stabilized/red id = "stabilizedred" - colour = "red" + colour = SLIME_TYPE_RED /datum/status_effect/stabilized/red/on_apply() . = ..() @@ -794,7 +794,7 @@ /datum/status_effect/stabilized/green id = "stabilizedgreen" - colour = "green" + colour = SLIME_TYPE_GREEN var/datum/dna/originalDNA var/originalname @@ -842,7 +842,7 @@ /datum/status_effect/stabilized/pink id = "stabilizedpink" - colour = "pink" + colour = SLIME_TYPE_PINK /// List of weakrefs to mobs we have pacified var/list/mobs = list() /// Name of our faction @@ -914,7 +914,7 @@ /datum/status_effect/stabilized/oil id = "stabilizedoil" - colour = "oil" + colour = SLIME_TYPE_OIL /datum/status_effect/stabilized/oil/tick(seconds_between_ticks) if(owner.stat == DEAD) @@ -931,7 +931,7 @@ /datum/status_effect/stabilized/black id = "stabilizedblack" - colour = "black" + colour = SLIME_TYPE_BLACK /// How much we heal per tick (also how much we damage per tick times DRAIN_DAMAGE_MULTIPLIER). var/heal_amount = 1 /// Weakref to the mob we're currently draining every tick. @@ -999,7 +999,7 @@ /datum/status_effect/stabilized/lightpink id = "stabilizedlightpink" - colour = "light pink" + colour = SLIME_TYPE_LIGHT_PINK /datum/status_effect/stabilized/lightpink/on_apply() owner.add_movespeed_modifier(/datum/movespeed_modifier/status_effect/lightpink) @@ -1019,14 +1019,14 @@ /datum/status_effect/stabilized/adamantine id = "stabilizedadamantine" - colour = "adamantine" + colour = SLIME_TYPE_ADAMANTINE /datum/status_effect/stabilized/adamantine/get_examine_text() return span_warning("[owner.p_They()] [owner.p_have()] strange metallic coating on [owner.p_their()] skin.") /datum/status_effect/stabilized/gold id = "stabilizedgold" - colour = "gold" + colour = SLIME_TYPE_GOLD var/mob/living/simple_animal/familiar /datum/status_effect/stabilized/gold/tick(seconds_between_ticks) @@ -1066,7 +1066,7 @@ /datum/status_effect/stabilized/rainbow id = "stabilizedrainbow" - colour = "rainbow" + colour = SLIME_TYPE_RAINBOW /datum/status_effect/stabilized/rainbow/tick(seconds_between_ticks) if(owner.health <= 0) diff --git a/code/modules/research/xenobiology/crossbreeding/burning.dm b/code/modules/research/xenobiology/crossbreeding/burning.dm index a5f281bb375..0ababd34422 100644 --- a/code/modules/research/xenobiology/crossbreeding/burning.dm +++ b/code/modules/research/xenobiology/crossbreeding/burning.dm @@ -28,11 +28,11 @@ Burning extracts: return /obj/item/slimecross/burning/grey - colour = "grey" + colour = SLIME_TYPE_GREY effect_desc = "Creates a hungry and speedy slime that will love you forever." /obj/item/slimecross/burning/grey/do_effect(mob/user) - var/mob/living/simple_animal/slime/S = new(get_turf(user),"grey") + var/mob/living/simple_animal/slime/S = new(get_turf(user),SLIME_TYPE_GREY) S.visible_message(span_danger("A baby slime emerges from [src], and it nuzzles [user] before burbling hungrily!")) S.set_friendship(user, 20) //Gas, gas, gas S.bodytemperature = T0C + 400 //We gonna step on the gas. @@ -40,7 +40,7 @@ Burning extracts: ..() /obj/item/slimecross/burning/orange - colour = "orange" + colour = SLIME_TYPE_ORANGE effect_desc = "Expels pepperspray in a radius when activated." /obj/item/slimecross/burning/orange/do_effect(mob/user) @@ -54,7 +54,7 @@ Burning extracts: ..() /obj/item/slimecross/burning/purple - colour = "purple" + colour = SLIME_TYPE_PURPLE effect_desc = "Creates a clump of invigorating gel, it has healing properties and makes you feel good." /obj/item/slimecross/burning/purple/do_effect(mob/user) @@ -63,7 +63,7 @@ Burning extracts: ..() /obj/item/slimecross/burning/blue - colour = "blue" + colour = SLIME_TYPE_BLUE effect_desc = "Freezes the floor around you and chills nearby people." /obj/item/slimecross/burning/blue/do_effect(mob/user) @@ -77,7 +77,7 @@ Burning extracts: ..() /obj/item/slimecross/burning/metal - colour = "metal" + colour = SLIME_TYPE_METAL effect_desc = "Instantly destroys walls around you." /obj/item/slimecross/burning/metal/do_effect(mob/user) @@ -88,7 +88,7 @@ Burning extracts: ..() /obj/item/slimecross/burning/yellow - colour = "yellow" + colour = SLIME_TYPE_YELLOW effect_desc = "Electrocutes people near you." /obj/item/slimecross/burning/yellow/do_effect(mob/user) @@ -105,7 +105,7 @@ Burning extracts: ..() /obj/item/slimecross/burning/darkpurple - colour = "dark purple" + colour = SLIME_TYPE_DARK_PURPLE effect_desc = "Creates a cloud of plasma." /obj/item/slimecross/burning/darkpurple/do_effect(mob/user) @@ -115,7 +115,7 @@ Burning extracts: return ..() /obj/item/slimecross/burning/darkblue - colour = "dark blue" + colour = SLIME_TYPE_DARK_BLUE effect_desc = "Expels a burst of chilling smoke while also filling you with regenerative jelly." /obj/item/slimecross/burning/darkblue/do_effect(mob/user) @@ -129,7 +129,7 @@ Burning extracts: ..() /obj/item/slimecross/burning/silver - colour = "silver" + colour = SLIME_TYPE_SILVER effect_desc = "Creates a few pieces of slime jelly laced food." /obj/item/slimecross/burning/silver/do_effect(mob/user) @@ -148,7 +148,7 @@ Burning extracts: ..() /obj/item/slimecross/burning/bluespace - colour = "bluespace" + colour = SLIME_TYPE_BLUESPACE effect_desc = "Teleports anyone directly next to you." /obj/item/slimecross/burning/bluespace/do_effect(mob/user) @@ -161,7 +161,7 @@ Burning extracts: ..() /obj/item/slimecross/burning/sepia - colour = "sepia" + colour = SLIME_TYPE_SEPIA effect_desc = "Turns into a special camera that rewinds time when used." /obj/item/slimecross/burning/sepia/do_effect(mob/user) @@ -170,7 +170,7 @@ Burning extracts: ..() /obj/item/slimecross/burning/cerulean - colour = "cerulean" + colour = SLIME_TYPE_CERULEAN effect_desc = "Produces an extract cloning potion, which copies an extract, as well as its extra uses." /obj/item/slimecross/burning/cerulean/do_effect(mob/user) @@ -179,7 +179,7 @@ Burning extracts: ..() /obj/item/slimecross/burning/pyrite - colour = "pyrite" + colour = SLIME_TYPE_PYRITE effect_desc = "Shatters all lights in the current room." /obj/item/slimecross/burning/pyrite/do_effect(mob/user) @@ -192,7 +192,7 @@ Burning extracts: ..() /obj/item/slimecross/burning/red - colour = "red" + colour = SLIME_TYPE_RED effect_desc = "Makes nearby slimes rabid, and they'll also attack their friends." /obj/item/slimecross/burning/red/do_effect(mob/user) @@ -209,7 +209,7 @@ Burning extracts: ..() /obj/item/slimecross/burning/green - colour = "green" + colour = SLIME_TYPE_GREEN effect_desc = "The user gets a dull arm blade in the hand it is used in." /obj/item/slimecross/burning/green/do_effect(mob/user) @@ -232,7 +232,7 @@ Burning extracts: ..() /obj/item/slimecross/burning/pink - colour = "pink" + colour = SLIME_TYPE_PINK effect_desc = "Creates a beaker of synthpax." /obj/item/slimecross/burning/pink/do_effect(mob/user) @@ -241,7 +241,7 @@ Burning extracts: ..() /obj/item/slimecross/burning/gold - colour = "gold" + colour = SLIME_TYPE_GOLD effect_desc = "Creates a gank squad of monsters that are friendly to the user." /obj/item/slimecross/burning/gold/do_effect(mob/user) @@ -255,7 +255,7 @@ Burning extracts: ..() /obj/item/slimecross/burning/oil - colour = "oil" + colour = SLIME_TYPE_OIL effect_desc = "Creates an explosion after a few seconds." /obj/item/slimecross/burning/oil/do_effect(mob/user) @@ -272,7 +272,7 @@ Burning extracts: qdel(src) /obj/item/slimecross/burning/black - colour = "black" + colour = SLIME_TYPE_BLACK effect_desc = "Transforms the user into a slime. They can transform back at will and do not lose any items." /obj/item/slimecross/burning/black/do_effect(mob/user) @@ -286,7 +286,7 @@ Burning extracts: return ..() /obj/item/slimecross/burning/lightpink - colour = "light pink" + colour = SLIME_TYPE_LIGHT_PINK effect_desc = "Paxes everyone in sight." /obj/item/slimecross/burning/lightpink/do_effect(mob/user) @@ -296,7 +296,7 @@ Burning extracts: ..() /obj/item/slimecross/burning/adamantine - colour = "adamantine" + colour = SLIME_TYPE_ADAMANTINE effect_desc = "Creates a mighty adamantine shield." /obj/item/slimecross/burning/adamantine/do_effect(mob/user) @@ -305,7 +305,7 @@ Burning extracts: ..() /obj/item/slimecross/burning/rainbow - colour = "rainbow" + colour = SLIME_TYPE_RAINBOW effect_desc = "Creates the Rainbow Knife, a kitchen knife that deals random types of damage." /obj/item/slimecross/burning/rainbow/do_effect(mob/user) diff --git a/code/modules/research/xenobiology/crossbreeding/charged.dm b/code/modules/research/xenobiology/crossbreeding/charged.dm index f9d59193a66..cb7070c83a4 100644 --- a/code/modules/research/xenobiology/crossbreeding/charged.dm +++ b/code/modules/research/xenobiology/crossbreeding/charged.dm @@ -29,7 +29,7 @@ Charged extracts: return /obj/item/slimecross/charged/grey - colour = "grey" + colour = SLIME_TYPE_GREY effect_desc = "Produces a slime reviver potion, which revives dead slimes." /obj/item/slimecross/charged/grey/do_effect(mob/user) @@ -38,7 +38,7 @@ Charged extracts: ..() /obj/item/slimecross/charged/orange - colour = "orange" + colour = SLIME_TYPE_ORANGE effect_desc = "Instantly makes a large burst of flame for a moment." /obj/item/slimecross/charged/orange/do_effect(mob/user) @@ -49,7 +49,7 @@ Charged extracts: ..() /obj/item/slimecross/charged/purple - colour = "purple" + colour = SLIME_TYPE_PURPLE effect_desc = "Creates a packet of omnizine." /obj/item/slimecross/charged/purple/do_effect(mob/user) @@ -58,7 +58,7 @@ Charged extracts: ..() /obj/item/slimecross/charged/blue - colour = "blue" + colour = SLIME_TYPE_BLUE effect_desc = "Creates a potion that neuters the mutation chance of a slime, which passes on to new generations." /obj/item/slimecross/charged/blue/do_effect(mob/user) @@ -67,7 +67,7 @@ Charged extracts: ..() /obj/item/slimecross/charged/metal - colour = "metal" + colour = SLIME_TYPE_METAL effect_desc = "Produces a bunch of metal and plasteel." /obj/item/slimecross/charged/metal/do_effect(mob/user) @@ -77,7 +77,7 @@ Charged extracts: ..() /obj/item/slimecross/charged/yellow - colour = "yellow" + colour = SLIME_TYPE_YELLOW effect_desc = "Creates a hypercharged slime cell battery, which has high capacity but takes longer to recharge." /obj/item/slimecross/charged/yellow/do_effect(mob/user) @@ -86,7 +86,7 @@ Charged extracts: ..() /obj/item/slimecross/charged/darkpurple - colour = "dark purple" + colour = SLIME_TYPE_DARK_PURPLE effect_desc = "Creates several sheets of plasma." /obj/item/slimecross/charged/darkpurple/do_effect(mob/user) @@ -95,7 +95,7 @@ Charged extracts: ..() /obj/item/slimecross/charged/darkblue - colour = "dark blue" + colour = SLIME_TYPE_DARK_BLUE effect_desc = "Produces a pressure proofing potion." /obj/item/slimecross/charged/darkblue/do_effect(mob/user) @@ -104,7 +104,7 @@ Charged extracts: ..() /obj/item/slimecross/charged/silver - colour = "silver" + colour = SLIME_TYPE_SILVER effect_desc = "Creates a slime cake and some drinks." /obj/item/slimecross/charged/silver/do_effect(mob/user) @@ -116,7 +116,7 @@ Charged extracts: ..() /obj/item/slimecross/charged/bluespace - colour = "bluespace" + colour = SLIME_TYPE_BLUESPACE effect_desc = "Makes a bluespace polycrystal." /obj/item/slimecross/charged/bluespace/do_effect(mob/user) @@ -125,7 +125,7 @@ Charged extracts: ..() /obj/item/slimecross/charged/sepia - colour = "sepia" + colour = SLIME_TYPE_SEPIA effect_desc = "Creates a camera obscura." /obj/item/slimecross/charged/sepia/do_effect(mob/user) @@ -134,7 +134,7 @@ Charged extracts: ..() /obj/item/slimecross/charged/cerulean - colour = "cerulean" + colour = SLIME_TYPE_CERULEAN effect_desc = "Creates an extract enhancer, giving whatever it's used on five more uses." /obj/item/slimecross/charged/cerulean/do_effect(mob/user) @@ -143,7 +143,7 @@ Charged extracts: ..() /obj/item/slimecross/charged/pyrite - colour = "pyrite" + colour = SLIME_TYPE_PYRITE effect_desc = "Creates bananium. Oh no." /obj/item/slimecross/charged/pyrite/do_effect(mob/user) @@ -152,7 +152,7 @@ Charged extracts: ..() /obj/item/slimecross/charged/red - colour = "red" + colour = SLIME_TYPE_RED effect_desc = "Produces a lavaproofing potion" /obj/item/slimecross/charged/red/do_effect(mob/user) @@ -161,7 +161,7 @@ Charged extracts: ..() /obj/item/slimecross/charged/green - colour = "green" + colour = SLIME_TYPE_GREEN effect_desc = "Lets you choose what slime species you want to be." /obj/item/slimecross/charged/green/do_effect(mob/user) @@ -183,7 +183,7 @@ Charged extracts: ..() /obj/item/slimecross/charged/pink - colour = "pink" + colour = SLIME_TYPE_PINK effect_desc = "Produces a... lovepotion... no ERP." /obj/item/slimecross/charged/pink/do_effect(mob/user) @@ -192,7 +192,7 @@ Charged extracts: ..() /obj/item/slimecross/charged/gold - colour = "gold" + colour = SLIME_TYPE_GOLD effect_desc = "Slowly spawns 10 hostile monsters." var/max_spawn = 10 var/spawned = 0 @@ -219,7 +219,7 @@ Charged extracts: return ..() /obj/item/slimecross/charged/oil - colour = "oil" + colour = SLIME_TYPE_OIL effect_desc = "Creates an explosion after a few seconds." /obj/item/slimecross/charged/oil/do_effect(mob/user) @@ -231,7 +231,7 @@ Charged extracts: qdel(src) /obj/item/slimecross/charged/black - colour = "black" + colour = SLIME_TYPE_BLACK effect_desc = "Randomizes the user's species." /obj/item/slimecross/charged/black/do_effect(mob/user) @@ -252,7 +252,7 @@ Charged extracts: ..() /obj/item/slimecross/charged/lightpink - colour = "light pink" + colour = SLIME_TYPE_LIGHT_PINK effect_desc = "Produces a pacification potion, which works on monsters and humanoids." /obj/item/slimecross/charged/lightpink/do_effect(mob/user) @@ -261,7 +261,7 @@ Charged extracts: ..() /obj/item/slimecross/charged/adamantine - colour = "adamantine" + colour = SLIME_TYPE_ADAMANTINE effect_desc = "Creates a completed golem shell." /obj/item/slimecross/charged/adamantine/do_effect(mob/user) @@ -270,7 +270,7 @@ Charged extracts: ..() /obj/item/slimecross/charged/rainbow - colour = "rainbow" + colour = SLIME_TYPE_RAINBOW effect_desc = "Produces three living slimes of random colors." /obj/item/slimecross/charged/rainbow/do_effect(mob/user) diff --git a/code/modules/research/xenobiology/crossbreeding/chilling.dm b/code/modules/research/xenobiology/crossbreeding/chilling.dm index b2bf3684661..c3586437c32 100644 --- a/code/modules/research/xenobiology/crossbreeding/chilling.dm +++ b/code/modules/research/xenobiology/crossbreeding/chilling.dm @@ -28,7 +28,7 @@ Chilling extracts: return /obj/item/slimecross/chilling/grey - colour = "grey" + colour = SLIME_TYPE_GREY effect_desc = "Creates some slime barrier cubes. When used they create slimy barricades." /obj/item/slimecross/chilling/grey/do_effect(mob/user) @@ -38,7 +38,7 @@ Chilling extracts: ..() /obj/item/slimecross/chilling/orange - colour = "orange" + colour = SLIME_TYPE_ORANGE effect_desc = "Creates a ring of fire one tile away from the user." /obj/item/slimecross/chilling/orange/do_effect(mob/user) @@ -49,7 +49,7 @@ Chilling extracts: ..() /obj/item/slimecross/chilling/purple - colour = "purple" + colour = SLIME_TYPE_PURPLE effect_desc = "Injects everyone in the area with some regenerative jelly." /obj/item/slimecross/chilling/purple/do_effect(mob/user) @@ -63,7 +63,7 @@ Chilling extracts: ..() /obj/item/slimecross/chilling/blue - colour = "blue" + colour = SLIME_TYPE_BLUE effect_desc = "Creates a rebreather, a tankless mask." /obj/item/slimecross/chilling/blue/do_effect(mob/user) @@ -72,7 +72,7 @@ Chilling extracts: ..() /obj/item/slimecross/chilling/metal - colour = "metal" + colour = SLIME_TYPE_METAL effect_desc = "Temporarily surrounds the user with unbreakable walls." /obj/item/slimecross/chilling/metal/do_effect(mob/user) @@ -83,7 +83,7 @@ Chilling extracts: ..() /obj/item/slimecross/chilling/yellow - colour = "yellow" + colour = SLIME_TYPE_YELLOW effect_desc = "Recharges the room's APC by 50%." /obj/item/slimecross/chilling/yellow/do_effect(mob/user) @@ -95,7 +95,7 @@ Chilling extracts: ..() /obj/item/slimecross/chilling/darkpurple - colour = "dark purple" + colour = SLIME_TYPE_DARK_PURPLE effect_desc = "Removes all plasma gas in the area." /obj/item/slimecross/chilling/darkpurple/do_effect(mob/user) @@ -119,7 +119,7 @@ Chilling extracts: ..() /obj/item/slimecross/chilling/darkblue - colour = "dark blue" + colour = SLIME_TYPE_DARK_BLUE effect_desc = "Seals the user in a protective block of ice." /obj/item/slimecross/chilling/darkblue/do_effect(mob/user) @@ -130,7 +130,7 @@ Chilling extracts: ..() /obj/item/slimecross/chilling/silver - colour = "silver" + colour = SLIME_TYPE_SILVER effect_desc = "Creates several ration packs." /obj/item/slimecross/chilling/silver/do_effect(mob/user) @@ -141,7 +141,7 @@ Chilling extracts: ..() /obj/item/slimecross/chilling/bluespace - colour = "bluespace" + colour = SLIME_TYPE_BLUESPACE effect_desc = "Touching people with this extract adds them to a list, when it is activated it teleports everyone on that list to the user." var/list/allies = list() var/active = FALSE @@ -184,7 +184,7 @@ Chilling extracts: ..() /obj/item/slimecross/chilling/sepia - colour = "sepia" + colour = SLIME_TYPE_SEPIA effect_desc = "Touching someone with it adds/removes them from a list. Activating the extract stops time for 30 seconds, and everyone on the list is immune, except the user." var/list/allies = list() @@ -206,7 +206,7 @@ Chilling extracts: ..() /obj/item/slimecross/chilling/cerulean - colour = "cerulean" + colour = SLIME_TYPE_CERULEAN effect_desc = "Creates a flimsy copy of the user, that they control." /obj/item/slimecross/chilling/cerulean/do_effect(mob/user) @@ -217,7 +217,7 @@ Chilling extracts: ..() /obj/item/slimecross/chilling/pyrite - colour = "pyrite" + colour = SLIME_TYPE_PYRITE effect_desc = "Creates a pair of Prism Glasses, which allow the wearer to place colored light crystals." /obj/item/slimecross/chilling/pyrite/do_effect(mob/user) @@ -226,7 +226,7 @@ Chilling extracts: ..() /obj/item/slimecross/chilling/red - colour = "red" + colour = SLIME_TYPE_RED effect_desc = "Pacifies every slime in your vacinity." /obj/item/slimecross/chilling/red/do_effect(mob/user) @@ -241,7 +241,7 @@ Chilling extracts: return ..() /obj/item/slimecross/chilling/green - colour = "green" + colour = SLIME_TYPE_GREEN effect_desc = "Creates a bone gun in the hand it is used in, which uses blood as ammo." /obj/item/slimecross/chilling/green/do_effect(mob/user) @@ -264,7 +264,7 @@ Chilling extracts: ..() /obj/item/slimecross/chilling/pink - colour = "pink" + colour = SLIME_TYPE_PINK effect_desc = "Creates a slime corgi puppy." /obj/item/slimecross/chilling/pink/do_effect(mob/user) @@ -273,7 +273,7 @@ Chilling extracts: ..() /obj/item/slimecross/chilling/gold - colour = "gold" + colour = SLIME_TYPE_GOLD effect_desc = "Produces a golden capture device" /obj/item/slimecross/chilling/gold/do_effect(mob/user) @@ -282,7 +282,7 @@ Chilling extracts: ..() /obj/item/slimecross/chilling/oil - colour = "oil" + colour = SLIME_TYPE_OIL effect_desc = "It creates a weak, but wide-ranged explosion." /obj/item/slimecross/chilling/oil/do_effect(mob/user) @@ -294,7 +294,7 @@ Chilling extracts: qdel(src) /obj/item/slimecross/chilling/black - colour = "black" + colour = SLIME_TYPE_BLACK effect_desc = "Transforms the user into a golem." /obj/item/slimecross/chilling/black/do_effect(mob/user) @@ -305,7 +305,7 @@ Chilling extracts: ..() /obj/item/slimecross/chilling/lightpink - colour = "light pink" + colour = SLIME_TYPE_LIGHT_PINK effect_desc = "Creates a Heroine Bud, a special flower that pacifies whoever wears it on their head. They will not be able to take it off without help." /obj/item/slimecross/chilling/lightpink/do_effect(mob/user) @@ -314,7 +314,7 @@ Chilling extracts: ..() /obj/item/slimecross/chilling/adamantine - colour = "adamantine" + colour = SLIME_TYPE_ADAMANTINE effect_desc = "Solidifies into a set of adamantine armor." /obj/item/slimecross/chilling/adamantine/do_effect(mob/user) @@ -323,7 +323,7 @@ Chilling extracts: ..() /obj/item/slimecross/chilling/rainbow - colour = "rainbow" + colour = SLIME_TYPE_RAINBOW effect_desc = "Makes an unpassable wall in every door in the area." /obj/item/slimecross/chilling/rainbow/do_effect(mob/user) diff --git a/code/modules/research/xenobiology/crossbreeding/consuming.dm b/code/modules/research/xenobiology/crossbreeding/consuming.dm index 0deb64b481f..43bfd2dbe8a 100644 --- a/code/modules/research/xenobiology/crossbreeding/consuming.dm +++ b/code/modules/research/xenobiology/crossbreeding/consuming.dm @@ -83,7 +83,7 @@ Consuming extracts: ..() /obj/item/slimecross/consuming/grey - colour = "grey" + colour = SLIME_TYPE_GREY effect_desc = "Creates a slime cookie." cookietype = /obj/item/slime_cookie/grey @@ -95,7 +95,7 @@ Consuming extracts: nutrition = 15 /obj/item/slimecross/consuming/orange - colour = "orange" + colour = SLIME_TYPE_ORANGE effect_desc = "Creates a slime cookie that heats the target up and grants cold immunity for a short time." cookietype = /obj/item/slime_cookie/orange @@ -109,7 +109,7 @@ Consuming extracts: M.apply_status_effect(/datum/status_effect/firecookie) /obj/item/slimecross/consuming/purple - colour = "purple" + colour = SLIME_TYPE_PURPLE effect_desc = "Creates a slime cookie that heals the target from every type of damage." cookietype = /obj/item/slime_cookie/purple @@ -128,7 +128,7 @@ Consuming extracts: M.adjustOrganLoss(ORGAN_SLOT_BRAIN, -5) /obj/item/slimecross/consuming/blue - colour = "blue" + colour = SLIME_TYPE_BLUE effect_desc = "Creates a slime cookie that wets the floor around you and makes you immune to water based slipping for a short time." cookietype = /obj/item/slime_cookie/blue @@ -142,7 +142,7 @@ Consuming extracts: M.apply_status_effect(/datum/status_effect/watercookie) /obj/item/slimecross/consuming/metal - colour = "metal" + colour = SLIME_TYPE_METAL effect_desc = "Creates a slime cookie that increases the target's resistance to brute damage." cookietype = /obj/item/slime_cookie/metal @@ -156,7 +156,7 @@ Consuming extracts: M.apply_status_effect(/datum/status_effect/metalcookie) /obj/item/slimecross/consuming/yellow - colour = "yellow" + colour = SLIME_TYPE_YELLOW effect_desc = "Creates a slime cookie that makes the target immune to electricity for a short time." cookietype = /obj/item/slime_cookie/yellow @@ -170,7 +170,7 @@ Consuming extracts: M.apply_status_effect(/datum/status_effect/sparkcookie) /obj/item/slimecross/consuming/darkpurple - colour = "dark purple" + colour = SLIME_TYPE_DARK_PURPLE effect_desc = "Creates a slime cookie that reverses how the target's body treats toxins." cookietype = /obj/item/slime_cookie/darkpurple @@ -184,7 +184,7 @@ Consuming extracts: M.apply_status_effect(/datum/status_effect/toxincookie) /obj/item/slimecross/consuming/darkblue - colour = "dark blue" + colour = SLIME_TYPE_DARK_BLUE effect_desc = "Creates a slime cookie that chills the target and extinguishes them." cookietype = /obj/item/slime_cookie/darkblue @@ -199,7 +199,7 @@ Consuming extracts: M.extinguish_mob() /obj/item/slimecross/consuming/silver - colour = "silver" + colour = SLIME_TYPE_SILVER effect_desc = "Creates a slime cookie that never gets the target fat." cookietype = /obj/item/slime_cookie/silver @@ -214,7 +214,7 @@ Consuming extracts: M.reagents.add_reagent(/datum/reagent/consumable/nutriment/stabilized,10) /obj/item/slimecross/consuming/bluespace - colour = "bluespace" + colour = SLIME_TYPE_BLUESPACE effect_desc = "Creates a slime cookie that teleports the target to a random place in the area." cookietype = /obj/item/slime_cookie/bluespace @@ -250,7 +250,7 @@ Consuming extracts: playsound(get_turf(M), SFX_SPARKS, 50, TRUE, SHORT_RANGE_SOUND_EXTRARANGE) /obj/item/slimecross/consuming/sepia - colour = "sepia" + colour = SLIME_TYPE_SEPIA effect_desc = "Creates a slime cookie that makes the target do things slightly faster." cookietype = /obj/item/slime_cookie/sepia @@ -264,7 +264,7 @@ Consuming extracts: M.apply_status_effect(/datum/status_effect/timecookie) /obj/item/slimecross/consuming/cerulean - colour = "cerulean" + colour = SLIME_TYPE_CERULEAN effect_desc = "Creates a slime cookie that has a chance to make another once you eat it." cookietype = /obj/item/slime_cookie/cerulean cookies = 3 //You're gonna get more. @@ -282,7 +282,7 @@ Consuming extracts: C.taste = taste + " and a sugar cookie" /obj/item/slimecross/consuming/pyrite - colour = "pyrite" + colour = SLIME_TYPE_PYRITE effect_desc = "Creates a slime cookie that randomly colors the target." cookietype = /obj/item/slime_cookie/pyrite @@ -324,7 +324,7 @@ Consuming extracts: M.add_atom_colour(colour,WASHABLE_COLOUR_PRIORITY) /obj/item/slimecross/consuming/red - colour = "red" + colour = SLIME_TYPE_RED effect_desc = "Creates a slime cookie that creates a spatter of blood on the floor, while also restoring some of the target's blood." cookietype = /obj/item/slime_cookie/red @@ -342,7 +342,7 @@ Consuming extracts: C.blood_volume += 25 //Half a vampire drain. /obj/item/slimecross/consuming/green - colour = "green" + colour = SLIME_TYPE_GREEN effect_desc = "Creates a slime cookie that is absolutely disgusting, makes the target vomit, however all reagent in their body are also removed." cookietype = /obj/item/slime_cookie/green @@ -359,7 +359,7 @@ Consuming extracts: M.reagents.remove_all() /obj/item/slimecross/consuming/pink - colour = "pink" + colour = SLIME_TYPE_PINK effect_desc = "Creates a slime cookie that makes the target want to spread the love." cookietype = /obj/item/slime_cookie/pink @@ -373,7 +373,7 @@ Consuming extracts: M.apply_status_effect(/datum/status_effect/lovecookie) /obj/item/slimecross/consuming/gold - colour = "gold" + colour = SLIME_TYPE_GOLD effect_desc = "Creates a slime cookie that has a gold coin inside." cookietype = /obj/item/slime_cookie/gold @@ -392,7 +392,7 @@ Consuming extracts: M.put_in_hand(C) /obj/item/slimecross/consuming/oil - colour = "oil" + colour = SLIME_TYPE_OIL effect_desc = "Creates a slime cookie that slows anyone next to the user." cookietype = /obj/item/slime_cookie/oil @@ -406,7 +406,7 @@ Consuming extracts: M.apply_status_effect(/datum/status_effect/tarcookie) /obj/item/slimecross/consuming/black - colour = "black" + colour = SLIME_TYPE_BLACK effect_desc = "Creates a slime cookie that makes the target look like a spooky skeleton for a little bit." cookietype = /obj/item/slime_cookie/black @@ -420,7 +420,7 @@ Consuming extracts: M.apply_status_effect(/datum/status_effect/spookcookie) /obj/item/slimecross/consuming/lightpink - colour = "light pink" + colour = SLIME_TYPE_LIGHT_PINK effect_desc = "Creates a slime cookie that makes the target, and anyone next to the target, pacifistic for a small amount of time." cookietype = /obj/item/slime_cookie/lightpink @@ -434,7 +434,7 @@ Consuming extracts: M.apply_status_effect(/datum/status_effect/peacecookie) /obj/item/slimecross/consuming/adamantine - colour = "adamantine" + colour = SLIME_TYPE_ADAMANTINE effect_desc = "Creates a slime cookie that increases the target's resistance to burn damage." cookietype = /obj/item/slime_cookie/adamantine @@ -448,7 +448,7 @@ Consuming extracts: M.apply_status_effect(/datum/status_effect/adamantinecookie) /obj/item/slimecross/consuming/rainbow - colour = "rainbow" + colour = SLIME_TYPE_RAINBOW effect_desc = "Creates a slime cookie that has the effect of a random cookie." /obj/item/slimecross/consuming/rainbow/spawncookie() diff --git a/code/modules/research/xenobiology/crossbreeding/industrial.dm b/code/modules/research/xenobiology/crossbreeding/industrial.dm index a5cdb181e2b..5222ab3608c 100644 --- a/code/modules/research/xenobiology/crossbreeding/industrial.dm +++ b/code/modules/research/xenobiology/crossbreeding/industrial.dm @@ -52,37 +52,37 @@ Industrial extracts: icon_state = "industrial_still" /obj/item/slimecross/industrial/grey - colour = "grey" + colour = SLIME_TYPE_GREY effect_desc = "Produces monkey cubes." itempath = /obj/item/food/monkeycube itemamount = 5 /obj/item/slimecross/industrial/orange - colour = "orange" + colour = SLIME_TYPE_ORANGE effect_desc = "Produces slime zippo lighters." plasmarequired = 6 itempath = /obj/item/lighter/slime /obj/item/slimecross/industrial/purple - colour = "purple" + colour = SLIME_TYPE_PURPLE effect_desc = "Produces autoinjectors with regen jelly inside." plasmarequired = 5 itempath = /obj/item/slimecrossbeaker/autoinjector/regenpack /obj/item/slimecross/industrial/blue - colour = "blue" + colour = SLIME_TYPE_BLUE effect_desc = "Produces full fire extinguishers." plasmarequired = 10 itempath = /obj/item/extinguisher /obj/item/slimecross/industrial/metal - colour = "metal" + colour = SLIME_TYPE_METAL effect_desc = "Produces iron sheets." plasmarequired = 3 itempath = /obj/item/stack/sheet/iron/ten /obj/item/slimecross/industrial/yellow - colour = "yellow" + colour = SLIME_TYPE_YELLOW effect_desc = "Produces high capacity power cells, which are not fully charged on creation." plasmarequired = 5 itempath = /obj/item/stock_parts/cell/high @@ -93,13 +93,13 @@ Industrial extracts: C.charge = rand(0,C.maxcharge/2) /obj/item/slimecross/industrial/darkpurple - colour = "dark purple" + colour = SLIME_TYPE_DARK_PURPLE effect_desc = "Produces plasma... for plasma." plasmarequired = 10 itempath = /obj/item/stack/sheet/mineral/plasma /obj/item/slimecross/industrial/darkblue - colour = "dark blue" + colour = SLIME_TYPE_DARK_BLUE effect_desc = "Produces one-use fireproofing potions." plasmarequired = 6 itempath = /obj/item/slimepotion/fireproof @@ -110,7 +110,7 @@ Industrial extracts: potion.uses = 1 /obj/item/slimecross/industrial/silver - colour = "silver" + colour = SLIME_TYPE_SILVER effect_desc = "Produces random food and drink items." plasmarequired = 1 //Item picked below. @@ -123,49 +123,49 @@ Industrial extracts: ADD_TRAIT(spawned, TRAIT_FOOD_SILVER, INNATE_TRAIT) /obj/item/slimecross/industrial/bluespace - colour = "bluespace" + colour = SLIME_TYPE_BLUESPACE effect_desc = "Produces synthetic bluespace crystals." plasmarequired = 7 itempath = /obj/item/stack/ore/bluespace_crystal/artificial /obj/item/slimecross/industrial/sepia - colour = "sepia" + colour = SLIME_TYPE_SEPIA effect_desc = "Produces cameras." plasmarequired = 2 itempath = /obj/item/camera /obj/item/slimecross/industrial/cerulean - colour = "cerulean" + colour = SLIME_TYPE_CERULEAN effect_desc = "Produces normal slime extract enhancers." plasmarequired = 5 itempath = /obj/item/slimepotion/enhancer /obj/item/slimecross/industrial/pyrite - colour = "pyrite" + colour = SLIME_TYPE_PYRITE effect_desc = "Produces cans of spraypaint." plasmarequired = 2 itempath = /obj/item/toy/crayon/spraycan /obj/item/slimecross/industrial/red - colour = "red" + colour = SLIME_TYPE_RED effect_desc = "Produces blood orbs." plasmarequired = 5 itempath = /obj/item/slimecrossbeaker/bloodpack /obj/item/slimecross/industrial/green - colour = "green" + colour = SLIME_TYPE_GREEN effect_desc = "Produces self-use-only slime jelly autoinjectors." plasmarequired = 7 itempath = /obj/item/slimecrossbeaker/autoinjector/slimejelly /obj/item/slimecross/industrial/pink - colour = "pink" + colour = SLIME_TYPE_PINK effect_desc = "Produces synthpax and space drug autoinjectors." plasmarequired = 6 itempath = /obj/item/slimecrossbeaker/autoinjector/peaceandlove /obj/item/slimecross/industrial/gold - colour = "gold" + colour = SLIME_TYPE_GOLD effect_desc = "Produces random coins." plasmarequired = 10 @@ -174,31 +174,31 @@ Industrial extracts: ..() /obj/item/slimecross/industrial/oil - colour = "oil" + colour = SLIME_TYPE_OIL effect_desc = "Produces IEDs." plasmarequired = 4 itempath = /obj/item/grenade/iedcasing/spawned /obj/item/slimecross/industrial/black //What does this have to do with black slimes? No clue! Fun, though - colour = "black" + colour = SLIME_TYPE_BLACK effect_desc = "Produces slime brand regenerative cigarettes." plasmarequired = 6 itempath = /obj/item/storage/fancy/cigarettes/cigpack_xeno /obj/item/slimecross/industrial/lightpink - colour = "light pink" + colour = SLIME_TYPE_LIGHT_PINK effect_desc = "Produces heart shaped boxes that have candies in them." plasmarequired = 3 itempath = /obj/item/storage/fancy/heart_box /obj/item/slimecross/industrial/adamantine - colour = "adamantine" + colour = SLIME_TYPE_ADAMANTINE effect_desc = "Produces sheets of adamantine." plasmarequired = 10 itempath = /obj/item/stack/sheet/mineral/adamantine /obj/item/slimecross/industrial/rainbow - colour = "rainbow" + colour = SLIME_TYPE_RAINBOW effect_desc = "Produces random slime extracts." plasmarequired = 5 //Item picked below. diff --git a/code/modules/research/xenobiology/crossbreeding/prismatic.dm b/code/modules/research/xenobiology/crossbreeding/prismatic.dm index 9cfc4542d52..95e3c77e4d6 100644 --- a/code/modules/research/xenobiology/crossbreeding/prismatic.dm +++ b/code/modules/research/xenobiology/crossbreeding/prismatic.dm @@ -19,7 +19,7 @@ Prismatic extracts: playsound(target, 'sound/effects/slosh.ogg', 20, TRUE) /obj/item/slimecross/prismatic/grey/ - colour = "grey" + colour = SLIME_TYPE_GREY desc = "It's constantly wet with a pungent-smelling, clear chemical." /obj/item/slimecross/prismatic/grey/afterattack(turf/target, mob/user, proximity) @@ -32,87 +32,87 @@ Prismatic extracts: /obj/item/slimecross/prismatic/orange paintcolor = "#FFA500" - colour = "orange" + colour = SLIME_TYPE_ORANGE /obj/item/slimecross/prismatic/purple paintcolor = "#B19CD9" - colour = "purple" + colour = SLIME_TYPE_PURPLE /obj/item/slimecross/prismatic/blue paintcolor = "#ADD8E6" - colour = "blue" + colour = SLIME_TYPE_BLUE /obj/item/slimecross/prismatic/metal paintcolor = "#7E7E7E" - colour = "metal" + colour = SLIME_TYPE_METAL /obj/item/slimecross/prismatic/yellow paintcolor = "#FFFF00" - colour = "yellow" + colour = SLIME_TYPE_YELLOW /obj/item/slimecross/prismatic/darkpurple paintcolor = "#551A8B" - colour = "dark purple" + colour = SLIME_TYPE_DARK_PURPLE /obj/item/slimecross/prismatic/darkblue paintcolor = "#0000FF" - colour = "dark blue" + colour = SLIME_TYPE_DARK_BLUE /obj/item/slimecross/prismatic/silver paintcolor = "#D3D3D3" - colour = "silver" + colour = SLIME_TYPE_SILVER /obj/item/slimecross/prismatic/bluespace paintcolor = "#32CD32" - colour = "bluespace" + colour = SLIME_TYPE_BLUESPACE /obj/item/slimecross/prismatic/sepia paintcolor = "#704214" - colour = "sepia" + colour = SLIME_TYPE_SEPIA /obj/item/slimecross/prismatic/cerulean paintcolor = "#2956B2" - colour = "cerulean" + colour = SLIME_TYPE_CERULEAN /obj/item/slimecross/prismatic/pyrite paintcolor = "#FAFAD2" - colour = "pyrite" + colour = SLIME_TYPE_PYRITE /obj/item/slimecross/prismatic/red paintcolor = "#FF0000" - colour = "red" + colour = SLIME_TYPE_RED /obj/item/slimecross/prismatic/green paintcolor = "#00FF00" - colour = "green" + colour = SLIME_TYPE_GREEN /obj/item/slimecross/prismatic/pink paintcolor = "#FF69B4" - colour = "pink" + colour = SLIME_TYPE_PINK /obj/item/slimecross/prismatic/gold paintcolor = "#FFD700" - colour = "gold" + colour = SLIME_TYPE_GOLD /obj/item/slimecross/prismatic/oil paintcolor = "#505050" - colour = "oil" + colour = SLIME_TYPE_OIL /obj/item/slimecross/prismatic/black paintcolor = "#000000" - colour = "black" + colour = SLIME_TYPE_BLACK /obj/item/slimecross/prismatic/lightpink paintcolor = "#FFB6C1" - colour = "light pink" + colour = SLIME_TYPE_LIGHT_PINK /obj/item/slimecross/prismatic/adamantine paintcolor = "#008B8B" - colour = "adamantine" + colour = SLIME_TYPE_ADAMANTINE /obj/item/slimecross/prismatic/rainbow paintcolor = "#FFFFFF" - colour = "rainbow" + colour = SLIME_TYPE_RAINBOW /obj/item/slimecross/prismatic/rainbow/attack_self(mob/user) var/newcolor = input(user, "Choose the slime color:", "Color change",paintcolor) as color|null diff --git a/code/modules/research/xenobiology/crossbreeding/recurring.dm b/code/modules/research/xenobiology/crossbreeding/recurring.dm index 2c9f5f2d21c..c6ca420cc04 100644 --- a/code/modules/research/xenobiology/crossbreeding/recurring.dm +++ b/code/modules/research/xenobiology/crossbreeding/recurring.dm @@ -44,95 +44,95 @@ Recurring extracts: /obj/item/slimecross/recurring/grey extract_type = /obj/item/slime_extract/grey - colour = "grey" + colour = SLIME_TYPE_GREY /obj/item/slimecross/recurring/orange extract_type = /obj/item/slime_extract/orange - colour = "orange" + colour = SLIME_TYPE_ORANGE /obj/item/slimecross/recurring/purple extract_type = /obj/item/slime_extract/purple - colour = "purple" + colour = SLIME_TYPE_PURPLE /obj/item/slimecross/recurring/blue extract_type = /obj/item/slime_extract/blue - colour = "blue" + colour = SLIME_TYPE_BLUE /obj/item/slimecross/recurring/metal extract_type = /obj/item/slime_extract/metal - colour = "metal" + colour = SLIME_TYPE_METAL max_cooldown = 20 /obj/item/slimecross/recurring/yellow extract_type = /obj/item/slime_extract/yellow - colour = "yellow" + colour = SLIME_TYPE_YELLOW max_cooldown = 20 /obj/item/slimecross/recurring/darkpurple extract_type = /obj/item/slime_extract/darkpurple - colour = "dark purple" + colour = SLIME_TYPE_DARK_PURPLE max_cooldown = 20 /obj/item/slimecross/recurring/darkblue extract_type = /obj/item/slime_extract/darkblue - colour = "dark blue" + colour = SLIME_TYPE_DARK_BLUE /obj/item/slimecross/recurring/silver extract_type = /obj/item/slime_extract/silver - colour = "silver" + colour = SLIME_TYPE_SILVER /obj/item/slimecross/recurring/bluespace extract_type = /obj/item/slime_extract/bluespace - colour = "bluespace" + colour = SLIME_TYPE_BLUESPACE /obj/item/slimecross/recurring/sepia extract_type = /obj/item/slime_extract/sepia - colour = "sepia" + colour = SLIME_TYPE_SEPIA max_cooldown = 36 //No infinite timestop for you! /obj/item/slimecross/recurring/cerulean extract_type = /obj/item/slime_extract/cerulean - colour = "cerulean" + colour = SLIME_TYPE_CERULEAN /obj/item/slimecross/recurring/pyrite extract_type = /obj/item/slime_extract/pyrite - colour = "pyrite" + colour = SLIME_TYPE_PYRITE /obj/item/slimecross/recurring/red extract_type = /obj/item/slime_extract/red - colour = "red" + colour = SLIME_TYPE_RED /obj/item/slimecross/recurring/green extract_type = /obj/item/slime_extract/green - colour = "green" + colour = SLIME_TYPE_GREEN /obj/item/slimecross/recurring/pink extract_type = /obj/item/slime_extract/pink - colour = "pink" + colour = SLIME_TYPE_PINK /obj/item/slimecross/recurring/gold extract_type = /obj/item/slime_extract/gold - colour = "gold" + colour = SLIME_TYPE_GOLD max_cooldown = 30 /obj/item/slimecross/recurring/oil extract_type = /obj/item/slime_extract/oil - colour = "oil" //Why would you want this? + colour = SLIME_TYPE_OIL //Why would you want this? /obj/item/slimecross/recurring/black extract_type = /obj/item/slime_extract/black - colour = "black" + colour = SLIME_TYPE_BLACK /obj/item/slimecross/recurring/lightpink extract_type = /obj/item/slime_extract/lightpink - colour = "light pink" + colour = SLIME_TYPE_LIGHT_PINK /obj/item/slimecross/recurring/adamantine extract_type = /obj/item/slime_extract/adamantine - colour = "adamantine" + colour = SLIME_TYPE_ADAMANTINE max_cooldown = 20 /obj/item/slimecross/recurring/rainbow extract_type = /obj/item/slime_extract/rainbow - colour = "rainbow" + colour = SLIME_TYPE_RAINBOW max_cooldown = 40 //It's pretty powerful. diff --git a/code/modules/research/xenobiology/crossbreeding/regenerative.dm b/code/modules/research/xenobiology/crossbreeding/regenerative.dm index 3e073191e5b..f0f395b33a6 100644 --- a/code/modules/research/xenobiology/crossbreeding/regenerative.dm +++ b/code/modules/research/xenobiology/crossbreeding/regenerative.dm @@ -35,11 +35,11 @@ Regenerative extracts: qdel(src) /obj/item/slimecross/regenerative/grey - colour = "grey" //Has no bonus effect. + colour = SLIME_TYPE_GREY //Has no bonus effect. effect_desc = "Fully heals the target and does nothing else." /obj/item/slimecross/regenerative/orange - colour = "orange" + colour = SLIME_TYPE_ORANGE /obj/item/slimecross/regenerative/orange/core_effect_before(mob/living/target, mob/user) target.visible_message(span_warning("The [src] boils over!")) @@ -48,14 +48,14 @@ Regenerative extracts: new /obj/effect/hotspot(targetturf) /obj/item/slimecross/regenerative/purple - colour = "purple" + colour = SLIME_TYPE_PURPLE effect_desc = "Fully heals the target and injects them with some regen jelly." /obj/item/slimecross/regenerative/purple/core_effect(mob/living/target, mob/user) target.reagents.add_reagent(/datum/reagent/medicine/regen_jelly,10) /obj/item/slimecross/regenerative/blue - colour = "blue" + colour = SLIME_TYPE_BLUE effect_desc = "Fully heals the target and makes the floor wet." /obj/item/slimecross/regenerative/blue/core_effect(mob/living/target, mob/user) @@ -65,7 +65,7 @@ Regenerative extracts: target.visible_message(span_warning("The milky goo in the extract gets all over the floor!")) /obj/item/slimecross/regenerative/metal - colour = "metal" + colour = SLIME_TYPE_METAL effect_desc = "Fully heals the target and encases the target in a locker." /obj/item/slimecross/regenerative/metal/core_effect(mob/living/target, mob/user) @@ -76,7 +76,7 @@ Regenerative extracts: target.forceMove(C) /obj/item/slimecross/regenerative/yellow - colour = "yellow" + colour = SLIME_TYPE_YELLOW effect_desc = "Fully heals the target and fully recharges a single item on the target." /obj/item/slimecross/regenerative/yellow/core_effect(mob/living/target, mob/user) @@ -90,7 +90,7 @@ Regenerative extracts: to_chat(target, span_notice("You feel a strange electrical pulse, and one of your electrical items was recharged.")) /obj/item/slimecross/regenerative/darkpurple - colour = "dark purple" + colour = SLIME_TYPE_DARK_PURPLE effect_desc = "Fully heals the target and gives them purple clothing if they are naked." /obj/item/slimecross/regenerative/darkpurple/core_effect(mob/living/target, mob/user) @@ -103,7 +103,7 @@ Regenerative extracts: target.visible_message(span_notice("The milky goo congeals into clothing!")) /obj/item/slimecross/regenerative/darkblue - colour = "dark blue" + colour = SLIME_TYPE_DARK_BLUE effect_desc = "Fully heals the target and fireproofs their clothes." /obj/item/slimecross/regenerative/darkblue/core_effect(mob/living/target, mob/user) @@ -131,7 +131,7 @@ Regenerative extracts: C.resistance_flags |= FIRE_PROOF /obj/item/slimecross/regenerative/silver - colour = "silver" + colour = SLIME_TYPE_SILVER effect_desc = "Fully heals the target and makes their belly feel round and full." /obj/item/slimecross/regenerative/silver/core_effect(mob/living/target, mob/user) @@ -139,7 +139,7 @@ Regenerative extracts: to_chat(target, span_notice("You feel satiated.")) /obj/item/slimecross/regenerative/bluespace - colour = "bluespace" + colour = SLIME_TYPE_BLUESPACE effect_desc = "Fully heals the target and teleports them to where this core was created." var/turf/open/T @@ -155,7 +155,7 @@ Regenerative extracts: T = get_turf(src) /obj/item/slimecross/regenerative/sepia - colour = "sepia" + colour = SLIME_TYPE_SEPIA effect_desc = "Fully heals the target. After 10 seconds, relocate the target to the initial position the core was used with their previous health status." /obj/item/slimecross/regenerative/sepia/core_effect_before(mob/living/target, mob/user) @@ -163,7 +163,7 @@ Regenerative extracts: target.AddComponent(/datum/component/dejavu) /obj/item/slimecross/regenerative/cerulean - colour = "cerulean" + colour = SLIME_TYPE_CERULEAN effect_desc = "Fully heals the target and makes a second regenerative core with no special effects." /obj/item/slimecross/regenerative/cerulean/core_effect(mob/living/target, mob/user) @@ -175,7 +175,7 @@ Regenerative extracts: to_chat(user, span_notice("Some of the milky goo congeals in your hand!")) /obj/item/slimecross/regenerative/pyrite - colour = "pyrite" + colour = SLIME_TYPE_PYRITE effect_desc = "Fully heals and randomly colors the target." /obj/item/slimecross/regenerative/pyrite/core_effect(mob/living/target, mob/user) @@ -183,7 +183,7 @@ Regenerative extracts: target.add_atom_colour(rgb(rand(0,255),rand(0,255),rand(0,255)),WASHABLE_COLOUR_PRIORITY) /obj/item/slimecross/regenerative/red - colour = "red" + colour = SLIME_TYPE_RED effect_desc = "Fully heals the target and injects them with some ephedrine." /obj/item/slimecross/regenerative/red/core_effect(mob/living/target, mob/user) @@ -191,7 +191,7 @@ Regenerative extracts: target.reagents.add_reagent(/datum/reagent/medicine/ephedrine,3) /obj/item/slimecross/regenerative/green - colour = "green" + colour = SLIME_TYPE_GREEN effect_desc = "Fully heals the target and changes the spieces or color of a slime or jellyperson." /obj/item/slimecross/regenerative/green/core_effect(mob/living/target, mob/user) @@ -204,7 +204,7 @@ Regenerative extracts: /obj/item/slimecross/regenerative/pink - colour = "pink" + colour = SLIME_TYPE_PINK effect_desc = "Fully heals the target and injects them with some krokodil." /obj/item/slimecross/regenerative/pink/core_effect(mob/living/target, mob/user) @@ -212,7 +212,7 @@ Regenerative extracts: target.reagents.add_reagent(/datum/reagent/drug/krokodil,4) /obj/item/slimecross/regenerative/gold - colour = "gold" + colour = SLIME_TYPE_GOLD effect_desc = "Fully heals the target and produces a random coin." /obj/item/slimecross/regenerative/gold/core_effect(mob/living/target, mob/user) @@ -222,7 +222,7 @@ Regenerative extracts: target.put_in_hand(C) /obj/item/slimecross/regenerative/oil - colour = "oil" + colour = SLIME_TYPE_OIL effect_desc = "Fully heals the target and flashes everyone in sight." /obj/item/slimecross/regenerative/oil/core_effect(mob/living/target, mob/user) @@ -231,7 +231,7 @@ Regenerative extracts: L.flash_act() /obj/item/slimecross/regenerative/black - colour = "black" + colour = SLIME_TYPE_BLACK effect_desc = "Fully heals the target and creates an imperfect duplicate of them made of slime, that fakes their death." /obj/item/slimecross/regenerative/black/core_effect_before(mob/living/target, mob/user) @@ -253,7 +253,7 @@ Regenerative extracts: dummy.death() /obj/item/slimecross/regenerative/lightpink - colour = "light pink" + colour = SLIME_TYPE_LIGHT_PINK effect_desc = "Fully heals the target and also heals the user." /obj/item/slimecross/regenerative/lightpink/core_effect(mob/living/target, mob/user) @@ -266,14 +266,14 @@ Regenerative extracts: to_chat(U, span_notice("Some of the milky goo sprays onto you, as well!")) /obj/item/slimecross/regenerative/adamantine - colour = "adamantine" + colour = SLIME_TYPE_ADAMANTINE effect_desc = "Fully heals the target and boosts their armor." /obj/item/slimecross/regenerative/adamantine/core_effect(mob/living/target, mob/user) //WIP - Find out why this doesn't work. target.apply_status_effect(/datum/status_effect/slimeskin) /obj/item/slimecross/regenerative/rainbow - colour = "rainbow" + colour = SLIME_TYPE_RAINBOW effect_desc = "Fully heals the target and temporarily makes them immortal, but pacifistic." /obj/item/slimecross/regenerative/rainbow/core_effect(mob/living/target, mob/user) diff --git a/code/modules/research/xenobiology/crossbreeding/reproductive.dm b/code/modules/research/xenobiology/crossbreeding/reproductive.dm index 88bfcb3379a..a0888c1c2f8 100644 --- a/code/modules/research/xenobiology/crossbreeding/reproductive.dm +++ b/code/modules/research/xenobiology/crossbreeding/reproductive.dm @@ -60,88 +60,88 @@ Reproductive extracts: /obj/item/slimecross/reproductive/grey extract_type = /obj/item/slime_extract/grey - colour = "grey" + colour = SLIME_TYPE_GREY /obj/item/slimecross/reproductive/orange extract_type = /obj/item/slime_extract/orange - colour = "orange" + colour = SLIME_TYPE_ORANGE /obj/item/slimecross/reproductive/purple extract_type = /obj/item/slime_extract/purple - colour = "purple" + colour = SLIME_TYPE_PURPLE /obj/item/slimecross/reproductive/blue extract_type = /obj/item/slime_extract/blue - colour = "blue" + colour = SLIME_TYPE_BLUE /obj/item/slimecross/reproductive/metal extract_type = /obj/item/slime_extract/metal - colour = "metal" + colour = SLIME_TYPE_METAL /obj/item/slimecross/reproductive/yellow extract_type = /obj/item/slime_extract/yellow - colour = "yellow" + colour = SLIME_TYPE_YELLOW /obj/item/slimecross/reproductive/darkpurple extract_type = /obj/item/slime_extract/darkpurple - colour = "dark purple" + colour = SLIME_TYPE_DARK_PURPLE /obj/item/slimecross/reproductive/darkblue extract_type = /obj/item/slime_extract/darkblue - colour = "dark blue" + colour = SLIME_TYPE_DARK_BLUE /obj/item/slimecross/reproductive/silver extract_type = /obj/item/slime_extract/silver - colour = "silver" + colour = SLIME_TYPE_SILVER /obj/item/slimecross/reproductive/bluespace extract_type = /obj/item/slime_extract/bluespace - colour = "bluespace" + colour = SLIME_TYPE_BLUESPACE /obj/item/slimecross/reproductive/sepia extract_type = /obj/item/slime_extract/sepia - colour = "sepia" + colour = SLIME_TYPE_SEPIA /obj/item/slimecross/reproductive/cerulean extract_type = /obj/item/slime_extract/cerulean - colour = "cerulean" + colour = SLIME_TYPE_CERULEAN /obj/item/slimecross/reproductive/pyrite extract_type = /obj/item/slime_extract/pyrite - colour = "pyrite" + colour = SLIME_TYPE_PYRITE /obj/item/slimecross/reproductive/red extract_type = /obj/item/slime_extract/red - colour = "red" + colour = SLIME_TYPE_RED /obj/item/slimecross/reproductive/green extract_type = /obj/item/slime_extract/green - colour = "green" + colour = SLIME_TYPE_GREEN /obj/item/slimecross/reproductive/pink extract_type = /obj/item/slime_extract/pink - colour = "pink" + colour = SLIME_TYPE_PINK /obj/item/slimecross/reproductive/gold extract_type = /obj/item/slime_extract/gold - colour = "gold" + colour = SLIME_TYPE_GOLD /obj/item/slimecross/reproductive/oil extract_type = /obj/item/slime_extract/oil - colour = "oil" + colour = SLIME_TYPE_OIL /obj/item/slimecross/reproductive/black extract_type = /obj/item/slime_extract/black - colour = "black" + colour = SLIME_TYPE_BLACK /obj/item/slimecross/reproductive/lightpink extract_type = /obj/item/slime_extract/lightpink - colour = "light pink" + colour = SLIME_TYPE_LIGHT_PINK /obj/item/slimecross/reproductive/adamantine extract_type = /obj/item/slime_extract/adamantine - colour = "adamantine" + colour = SLIME_TYPE_ADAMANTINE /obj/item/slimecross/reproductive/rainbow extract_type = /obj/item/slime_extract/rainbow - colour = "rainbow" + colour = SLIME_TYPE_RAINBOW diff --git a/code/modules/research/xenobiology/crossbreeding/selfsustaining.dm b/code/modules/research/xenobiology/crossbreeding/selfsustaining.dm index ab6f9381086..6fb3f8c7c9d 100644 --- a/code/modules/research/xenobiology/crossbreeding/selfsustaining.dm +++ b/code/modules/research/xenobiology/crossbreeding/selfsustaining.dm @@ -64,88 +64,88 @@ Self-sustaining extracts: /obj/item/slimecross/selfsustaining/grey extract_type = /obj/item/slime_extract/grey - colour = "grey" + colour = SLIME_TYPE_GREY /obj/item/slimecross/selfsustaining/orange extract_type = /obj/item/slime_extract/orange - colour = "orange" + colour = SLIME_TYPE_ORANGE /obj/item/slimecross/selfsustaining/purple extract_type = /obj/item/slime_extract/purple - colour = "purple" + colour = SLIME_TYPE_PURPLE /obj/item/slimecross/selfsustaining/blue extract_type = /obj/item/slime_extract/blue - colour = "blue" + colour = SLIME_TYPE_BLUE /obj/item/slimecross/selfsustaining/metal extract_type = /obj/item/slime_extract/metal - colour = "metal" + colour = SLIME_TYPE_METAL /obj/item/slimecross/selfsustaining/yellow extract_type = /obj/item/slime_extract/yellow - colour = "yellow" + colour = SLIME_TYPE_YELLOW /obj/item/slimecross/selfsustaining/darkpurple extract_type = /obj/item/slime_extract/darkpurple - colour = "dark purple" + colour = SLIME_TYPE_DARK_PURPLE /obj/item/slimecross/selfsustaining/darkblue extract_type = /obj/item/slime_extract/darkblue - colour = "dark blue" + colour = SLIME_TYPE_DARK_BLUE /obj/item/slimecross/selfsustaining/silver extract_type = /obj/item/slime_extract/silver - colour = "silver" + colour = SLIME_TYPE_SILVER /obj/item/slimecross/selfsustaining/bluespace extract_type = /obj/item/slime_extract/bluespace - colour = "bluespace" + colour = SLIME_TYPE_BLUESPACE /obj/item/slimecross/selfsustaining/sepia extract_type = /obj/item/slime_extract/sepia - colour = "sepia" + colour = SLIME_TYPE_SEPIA /obj/item/slimecross/selfsustaining/cerulean extract_type = /obj/item/slime_extract/cerulean - colour = "cerulean" + colour = SLIME_TYPE_CERULEAN /obj/item/slimecross/selfsustaining/pyrite extract_type = /obj/item/slime_extract/pyrite - colour = "pyrite" + colour = SLIME_TYPE_PYRITE /obj/item/slimecross/selfsustaining/red extract_type = /obj/item/slime_extract/red - colour = "red" + colour = SLIME_TYPE_RED /obj/item/slimecross/selfsustaining/green extract_type = /obj/item/slime_extract/green - colour = "green" + colour = SLIME_TYPE_GREEN /obj/item/slimecross/selfsustaining/pink extract_type = /obj/item/slime_extract/pink - colour = "pink" + colour = SLIME_TYPE_PINK /obj/item/slimecross/selfsustaining/gold extract_type = /obj/item/slime_extract/gold - colour = "gold" + colour = SLIME_TYPE_GOLD /obj/item/slimecross/selfsustaining/oil extract_type = /obj/item/slime_extract/oil - colour = "oil" + colour = SLIME_TYPE_OIL /obj/item/slimecross/selfsustaining/black extract_type = /obj/item/slime_extract/black - colour = "black" + colour = SLIME_TYPE_BLACK /obj/item/slimecross/selfsustaining/lightpink extract_type = /obj/item/slime_extract/lightpink - colour = "light pink" + colour = SLIME_TYPE_LIGHT_PINK /obj/item/slimecross/selfsustaining/adamantine extract_type = /obj/item/slime_extract/adamantine - colour = "adamantine" + colour = SLIME_TYPE_ADAMANTINE /obj/item/slimecross/selfsustaining/rainbow extract_type = /obj/item/slime_extract/rainbow - colour = "rainbow" + colour = SLIME_TYPE_RAINBOW diff --git a/code/modules/research/xenobiology/crossbreeding/stabilized.dm b/code/modules/research/xenobiology/crossbreeding/stabilized.dm index 0584927c647..eb49f5dc2c3 100644 --- a/code/modules/research/xenobiology/crossbreeding/stabilized.dm +++ b/code/modules/research/xenobiology/crossbreeding/stabilized.dm @@ -57,71 +57,71 @@ Stabilized extracts: //Colors and subtypes: /obj/item/slimecross/stabilized/grey - colour = "grey" + colour = SLIME_TYPE_GREY effect_desc = "Makes slimes friendly to the owner" /obj/item/slimecross/stabilized/orange - colour = "orange" + colour = SLIME_TYPE_ORANGE effect_desc = "Passively tries to increase or decrease the owner's body temperature to normal" /obj/item/slimecross/stabilized/purple - colour = "purple" + colour = SLIME_TYPE_PURPLE effect_desc = "Provides a regeneration effect" /obj/item/slimecross/stabilized/blue - colour = "blue" + colour = SLIME_TYPE_BLUE effect_desc = "Makes the owner immune to slipping on water, soap or foam. Space lube and ice are still too slippery." /obj/item/slimecross/stabilized/metal - colour = "metal" + colour = SLIME_TYPE_METAL effect_desc = "Every 30 seconds, adds a sheet of material to a random stack in the owner's backpack." /obj/item/slimecross/stabilized/yellow - colour = "yellow" + colour = SLIME_TYPE_YELLOW effect_desc = "Every ten seconds it recharges a device on the owner by 10%." /obj/item/slimecross/stabilized/darkpurple - colour = "dark purple" + colour = SLIME_TYPE_DARK_PURPLE effect_desc = "Gives you burning fingertips, automatically cooking any microwavable food you hold." /obj/item/slimecross/stabilized/darkblue - colour = "dark blue" + colour = SLIME_TYPE_DARK_BLUE effect_desc = "Slowly extinguishes the owner if they are on fire, also wets items like monkey cubes, creating a monkey." /obj/item/slimecross/stabilized/silver - colour = "silver" + colour = SLIME_TYPE_SILVER effect_desc = "Slows the rate at which the owner loses nutrition" /obj/item/slimecross/stabilized/bluespace - colour = "bluespace" + colour = SLIME_TYPE_BLUESPACE effect_desc = "On a two minute cooldown, when the owner has taken enough damage, they are teleported to a safe place." /obj/item/slimecross/stabilized/sepia - colour = "sepia" + colour = SLIME_TYPE_SEPIA effect_desc = "Randomly adjusts the owner's speed." /obj/item/slimecross/stabilized/cerulean - colour = "cerulean" + colour = SLIME_TYPE_CERULEAN effect_desc = "Creates a duplicate of the owner. If the owner dies they will take control of the duplicate, unless the death was from beheading or gibbing." /obj/item/slimecross/stabilized/pyrite - colour = "pyrite" + colour = SLIME_TYPE_PYRITE effect_desc = "Randomly colors the owner every few seconds." /obj/item/slimecross/stabilized/red - colour = "red" + colour = SLIME_TYPE_RED effect_desc = "Nullifies all equipment based slowdowns." /obj/item/slimecross/stabilized/green - colour = "green" + colour = SLIME_TYPE_GREEN effect_desc = "Changes the owner's name and appearance while holding this extract." /obj/item/slimecross/stabilized/pink - colour = "pink" + colour = SLIME_TYPE_PINK effect_desc = "As long as no creatures are harmed in the owner's presense, they will not attack you. If the peace is broken it takes two minutes to restore." /obj/item/slimecross/stabilized/gold - colour = "gold" + colour = SLIME_TYPE_GOLD effect_desc = "Creates a pet when held." var/mob_type var/datum/mind/saved_mind @@ -171,23 +171,23 @@ Stabilized extracts: START_PROCESSING(SSobj, src) /obj/item/slimecross/stabilized/oil - colour = "oil" + colour = SLIME_TYPE_OIL effect_desc = "The owner will violently explode when they die while holding this extract." /obj/item/slimecross/stabilized/black - colour = "black" + colour = SLIME_TYPE_BLACK effect_desc = "While strangling someone, the owner's hands melt around their neck, draining their life in exchange for food and healing." /obj/item/slimecross/stabilized/lightpink - colour = "light pink" + colour = SLIME_TYPE_LIGHT_PINK effect_desc = "The owner moves at high speeds while holding this extract, also stabilizes anyone in critical condition around you using Epinephrine." /obj/item/slimecross/stabilized/adamantine - colour = "adamantine" + colour = SLIME_TYPE_ADAMANTINE effect_desc = "Owner gains a slight boost in damage resistance to all types." /obj/item/slimecross/stabilized/rainbow - colour = "rainbow" + colour = SLIME_TYPE_RAINBOW effect_desc = "Accepts a regenerative extract and automatically uses it if the owner enters a critical condition." var/obj/item/slimecross/regenerative/regencore diff --git a/code/modules/research/xenobiology/xenobiology.dm b/code/modules/research/xenobiology/xenobiology.dm index 8ea95301780..f81f328c0f3 100644 --- a/code/modules/research/xenobiology/xenobiology.dm +++ b/code/modules/research/xenobiology/xenobiology.dm @@ -105,7 +105,7 @@ if(SLIME_ACTIVATE_MAJOR) to_chat(user, span_notice("Your [name] starts pulsing...")) if(do_after(user, 40, target = user)) - var/mob/living/simple_animal/slime/S = new(get_turf(user), "grey") + var/mob/living/simple_animal/slime/S = new(get_turf(user), SLIME_TYPE_GREY) playsound(user, 'sound/effects/splat.ogg', 50, TRUE) to_chat(user, span_notice("You spit out [S].")) return 350 diff --git a/icons/effects/particles/acid.dmi b/icons/effects/particles/goop.dmi similarity index 67% rename from icons/effects/particles/acid.dmi rename to icons/effects/particles/goop.dmi index 74e347e9b97..673c1a7ad5b 100644 Binary files a/icons/effects/particles/acid.dmi and b/icons/effects/particles/goop.dmi differ diff --git a/icons/hud/screen_alert.dmi b/icons/hud/screen_alert.dmi index f4911e45bc4..50373f5e8f3 100644 Binary files a/icons/hud/screen_alert.dmi and b/icons/hud/screen_alert.dmi differ diff --git a/tgstation.dme b/tgstation.dme index 2fd19c38a97..5ec2e6a5f58 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -355,6 +355,7 @@ #include "code\__DEFINES\dcs\signals\signals_mob\signals_mob_spawner.dm" #include "code\__DEFINES\research\anomalies.dm" #include "code\__DEFINES\research\research_categories.dm" +#include "code\__DEFINES\research\slimes.dm" #include "code\__HELPERS\_auxtools_api.dm" #include "code\__HELPERS\_lists.dm" #include "code\__HELPERS\_planes.dm" @@ -1550,6 +1551,7 @@ #include "code\datums\status_effects\debuffs\screen_blur.dm" #include "code\datums\status_effects\debuffs\screwy_hud.dm" #include "code\datums\status_effects\debuffs\silenced.dm" +#include "code\datums\status_effects\debuffs\slimed.dm" #include "code\datums\status_effects\debuffs\spacer.dm" #include "code\datums\status_effects\debuffs\speech_debuffs.dm" #include "code\datums\status_effects\debuffs\strandling.dm" @@ -1905,6 +1907,7 @@ #include "code\game\objects\effects\particles\fire.dm" #include "code\game\objects\effects\particles\misc.dm" #include "code\game\objects\effects\particles\note_particles.dm" +#include "code\game\objects\effects\particles\slime.dm" #include "code\game\objects\effects\particles\smoke.dm" #include "code\game\objects\effects\particles\water.dm" #include "code\game\objects\effects\posters\contraband.dm"