diff --git a/_maps/map_files/RandomRuins/LavaRuins/lavaland_biodome_beach.dmm b/_maps/map_files/RandomRuins/LavaRuins/lavaland_biodome_beach.dmm index 28e87cfefd5..d169df9c145 100644 --- a/_maps/map_files/RandomRuins/LavaRuins/lavaland_biodome_beach.dmm +++ b/_maps/map_files/RandomRuins/LavaRuins/lavaland_biodome_beach.dmm @@ -217,7 +217,7 @@ /turf/simulated/floor/beach/sand, /area/ruin/powered/beach) "aV" = ( -/obj/effect/mob_spawn/human/beach/alive, +/obj/effect/mob_spawn/human/alive/beach, /turf/simulated/floor/beach/sand, /area/ruin/powered/beach) "aZ" = ( @@ -335,7 +335,7 @@ /obj/structure/window/reinforced{ dir = 4 }, -/obj/effect/mob_spawn/human/beach/alive/lifeguard, +/obj/effect/mob_spawn/human/alive/beach/lifeguard, /turf/simulated/floor/wood, /area/ruin/powered/beach) "bJ" = ( @@ -473,7 +473,7 @@ /turf/simulated/floor/beach/sand, /area/ruin/powered/beach) "wb" = ( -/obj/effect/mob_spawn/human/bartender/alive, +/obj/effect/mob_spawn/human/alive/bartender, /turf/simulated/floor/wood, /area/ruin/powered/beach) "yc" = ( diff --git a/_maps/map_files/RandomRuins/LavaRuins/lavaland_biodome_winter.dmm b/_maps/map_files/RandomRuins/LavaRuins/lavaland_biodome_winter.dmm index 13db53afa1a..fb1bfa1fac8 100644 --- a/_maps/map_files/RandomRuins/LavaRuins/lavaland_biodome_winter.dmm +++ b/_maps/map_files/RandomRuins/LavaRuins/lavaland_biodome_winter.dmm @@ -465,7 +465,7 @@ /turf/simulated/wall/r_wall, /area/ruin/powered/snow_biodome) "XR" = ( -/obj/effect/mob_spawn/human/skeleton, +/obj/effect/mob_spawn/human/corpse/skeleton, /turf/simulated/floor/mineral/silver, /area/ruin/powered/snow_biodome) diff --git a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_animal_hospital.dmm b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_animal_hospital.dmm index 0f05d567702..a23f8ea91f6 100644 --- a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_animal_hospital.dmm +++ b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_animal_hospital.dmm @@ -550,7 +550,7 @@ /turf/simulated/floor/plasteel, /area/ruin/powered/animal_hospital) "bv" = ( -/obj/effect/mob_spawn/human/doctor/alive/lavaland{ +/obj/effect/mob_spawn/human/alive/doctor/lavaland{ dir = 4 }, /turf/simulated/floor/plasteel/white, diff --git a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_golem_ship.dmm b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_golem_ship.dmm index 89c101e9e7d..48f520bc450 100644 --- a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_golem_ship.dmm +++ b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_golem_ship.dmm @@ -88,7 +88,7 @@ /turf/simulated/floor/mineral/titanium/purple, /area/shuttle/freegolem) "t" = ( -/obj/effect/mob_spawn/human/golem/adamantine, +/obj/effect/mob_spawn/human/alive/golem/adamantine, /turf/simulated/floor/mineral/titanium/purple, /area/shuttle/freegolem) "u" = ( diff --git a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_hermit.dmm b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_hermit.dmm index 0fcbef9d01c..899178dd717 100644 --- a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_hermit.dmm +++ b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_hermit.dmm @@ -107,7 +107,7 @@ /turf/simulated/floor/pod/dark, /area/ruin/powered) "x" = ( -/obj/effect/mob_spawn/human/hermit, +/obj/effect/mob_spawn/human/alive/hermit, /turf/simulated/floor/pod/dark, /area/ruin/powered) "y" = ( diff --git a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_seed_vault.dmm b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_seed_vault.dmm index 22d25165648..ce4eb17b4d6 100644 --- a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_seed_vault.dmm +++ b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_seed_vault.dmm @@ -131,7 +131,7 @@ /turf/simulated/floor/plasteel/freezer, /area/ruin/powered/seedvault) "t" = ( -/obj/effect/mob_spawn/human/seed_vault, +/obj/effect/mob_spawn/human/alive/seed_vault, /turf/simulated/floor/plasteel/freezer, /area/ruin/powered/seedvault) "u" = ( diff --git a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_survivalpod.dmm b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_survivalpod.dmm index bd0dff5ba2f..e785d01709e 100644 --- a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_survivalpod.dmm +++ b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_survivalpod.dmm @@ -80,7 +80,7 @@ /turf/simulated/floor/pod/dark, /area/ruin/powered) "q" = ( -/obj/effect/mob_spawn/human/miner/explorer{ +/obj/effect/mob_spawn/human/corpse/miner/explorer{ brute_damage = 150; oxy_damage = 50 }, diff --git a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_ufo_crash.dmm b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_ufo_crash.dmm index 0b8c4389ded..e473128c8e4 100644 --- a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_ufo_crash.dmm +++ b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_ufo_crash.dmm @@ -24,7 +24,7 @@ /turf/simulated/floor/plating/abductor, /area/ruin/unpowered/misc_lavaruin) "i" = ( -/obj/effect/mob_spawn/human/abductor, +/obj/effect/mob_spawn/human/corpse/abductor, /turf/simulated/floor/plating/abductor, /area/ruin/unpowered/misc_lavaruin) "j" = ( diff --git a/_maps/map_files/RandomRuins/SpaceRuins/clownmime.dmm b/_maps/map_files/RandomRuins/SpaceRuins/clownmime.dmm index 7e72e19d22e..2a6c21b9737 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/clownmime.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/clownmime.dmm @@ -18,19 +18,19 @@ /area/ruin/space/unpowered) "f" = ( /obj/item/broken_bottle, -/obj/effect/mob_spawn/human/mime/corpse, +/obj/effect/mob_spawn/human/corpse/mime, /turf/simulated/floor/plasteel/airless, /area/ruin/space/unpowered) "g" = ( /obj/item/shard, -/obj/effect/mob_spawn/human/mime/corpse, +/obj/effect/mob_spawn/human/corpse/mime, /turf/simulated/floor/plasteel/airless, /area/ruin/space/unpowered) "h" = ( /obj/item/shard{ icon_state = "medium" }, -/obj/effect/mob_spawn/human/mime/corpse, +/obj/effect/mob_spawn/human/corpse/mime, /turf/simulated/floor/plasteel/airless, /area/ruin/space/unpowered) "j" = ( @@ -76,13 +76,13 @@ /turf/simulated/floor/plating/asteroid/airless, /area/ruin/space/unpowered) "t" = ( -/obj/effect/mob_spawn/human/mime/corpse{ +/obj/effect/mob_spawn/human/corpse/mime{ name = "Mime Pilot" }, /turf/simulated/floor/plasteel/airless, /area/ruin/space/unpowered) "x" = ( -/obj/effect/mob_spawn/human/clown/corpse, +/obj/effect/mob_spawn/human/corpse/clown, /turf/simulated/floor/plasteel/airless, /area/ruin/space/unpowered) "y" = ( @@ -123,7 +123,7 @@ /turf/simulated/floor/plating/airless, /area/ruin/space/unpowered) "C" = ( -/obj/effect/mob_spawn/human/corpse/clownmili, +/obj/effect/mob_spawn/human/corpse/clown/soldier, /turf/simulated/floor/plasteel/airless, /area/ruin/space/unpowered) "D" = ( @@ -151,7 +151,7 @@ /turf/simulated/floor/plating/asteroid/airless, /area/ruin/space/unpowered) "H" = ( -/obj/effect/mob_spawn/human/clown/corpse{ +/obj/effect/mob_spawn/human/corpse/clown{ name = "Clown Pilot" }, /turf/simulated/floor/plasteel/airless, @@ -178,7 +178,7 @@ /turf/simulated/floor/plasteel/airless, /area/ruin/space/unpowered) "O" = ( -/obj/effect/mob_spawn/human/corpse/clownoff, +/obj/effect/mob_spawn/human/corpse/clown/officer, /turf/simulated/floor/plasteel/airless, /area/ruin/space/unpowered) "P" = ( diff --git a/_maps/map_files/RandomRuins/SpaceRuins/oldstation.dmm b/_maps/map_files/RandomRuins/SpaceRuins/oldstation.dmm index faa64ac4f4d..83556eb8308 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/oldstation.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/oldstation.dmm @@ -4535,14 +4535,14 @@ /obj/effect/decal/warning_stripes/southeast, /obj/effect/decal/warning_stripes/northwest, /obj/effect/decal/cleanable/dirt, -/obj/effect/mob_spawn/human/oldsec, +/obj/effect/mob_spawn/human/alive/old/sec, /turf/simulated/floor/plasteel, /area/ruin/ancientstation) "kJ" = ( /obj/effect/decal/warning_stripes/southeast, /obj/effect/decal/warning_stripes/northwest, /obj/effect/decal/cleanable/dirt, -/obj/effect/mob_spawn/human/oldsci, +/obj/effect/mob_spawn/human/alive/old/sci, /turf/simulated/floor/plasteel, /area/ruin/ancientstation) "kK" = ( @@ -4550,7 +4550,7 @@ /obj/effect/decal/warning_stripes/southeast, /obj/effect/decal/warning_stripes/northwest, /obj/effect/decal/cleanable/dirt, -/obj/effect/mob_spawn/human/oldeng, +/obj/effect/mob_spawn/human/alive/old/eng, /turf/simulated/floor/plasteel, /area/ruin/ancientstation) "kL" = ( diff --git a/_maps/map_files/RandomRuins/SpaceRuins/syndie_space_base.dmm b/_maps/map_files/RandomRuins/SpaceRuins/syndie_space_base.dmm index 63e6e3def6a..9d1643efb92 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/syndie_space_base.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/syndie_space_base.dmm @@ -533,7 +533,7 @@ /turf/simulated/floor/engine, /area/ruin/unpowered/syndicate_space_base/testlab) "fP" = ( -/obj/effect/mob_spawn/human/spacebase_syndicate{ +/obj/effect/mob_spawn/human/alive/spacebase_syndicate{ dir = 8 }, /turf/simulated/floor/plasteel{ @@ -1154,7 +1154,7 @@ }, /area/ruin/unpowered/syndicate_space_base/virology) "lM" = ( -/obj/effect/mob_spawn/human/spacebase_syndicate{ +/obj/effect/mob_spawn/human/alive/spacebase_syndicate{ dir = 8 }, /turf/simulated/floor/plasteel{ @@ -1454,7 +1454,7 @@ /turf/simulated/floor/plating, /area/ruin/unpowered/syndicate_space_base/engineering) "pa" = ( -/obj/effect/mob_spawn/human/spacebase_syndicate{ +/obj/effect/mob_spawn/human/alive/spacebase_syndicate{ dir = 8 }, /turf/simulated/floor/plasteel{ @@ -3757,7 +3757,7 @@ /turf/simulated/floor/plating, /area/ruin/unpowered/syndicate_space_base/engineering) "MV" = ( -/obj/effect/mob_spawn/human/spacebase_syndicate{ +/obj/effect/mob_spawn/human/alive/spacebase_syndicate{ dir = 8 }, /turf/simulated/floor/plasteel{ @@ -4071,7 +4071,7 @@ dir = 1; on = 1 }, -/obj/effect/mob_spawn/human/spacebase_syndicate{ +/obj/effect/mob_spawn/human/alive/spacebase_syndicate{ dir = 8 }, /turf/simulated/floor/plasteel{ @@ -4436,7 +4436,7 @@ /area/ruin/unpowered/syndicate_space_base/engineering) "VP" = ( /obj/machinery/light, -/obj/effect/mob_spawn/human/spacebase_syndicate{ +/obj/effect/mob_spawn/human/alive/spacebase_syndicate{ dir = 8 }, /turf/simulated/floor/plasteel{ diff --git a/_maps/map_files/cyberiad/cyberiad.dmm b/_maps/map_files/cyberiad/cyberiad.dmm index b2708354f0f..c4832a3440e 100644 --- a/_maps/map_files/cyberiad/cyberiad.dmm +++ b/_maps/map_files/cyberiad/cyberiad.dmm @@ -85456,7 +85456,7 @@ "sEl" = ( /obj/structure/bed, /obj/effect/landmark/spawner/nukedisc_respawn, -/obj/effect/mob_spawn/human/skeleton, +/obj/effect/mob_spawn/human/corpse/skeleton, /mob/living/simple_animal/hostile/scarybat, /turf/simulated/floor/plasteel{ icon_state = "vault" diff --git a/code/modules/awaymissions/mission_code/ghost_role_spawners/golems.dm b/code/modules/awaymissions/mission_code/ghost_role_spawners/golems.dm index 0d77cabb5a8..1cd8acb0013 100644 --- a/code/modules/awaymissions/mission_code/ghost_role_spawners/golems.dm +++ b/code/modules/awaymissions/mission_code/ghost_role_spawners/golems.dm @@ -6,12 +6,12 @@ icon = 'icons/obj/wizard.dmi' icon_state = "construct" desc = "The incomplete body of a golem. Add ten sheets of any mineral to finish." - var/shell_type = /obj/effect/mob_spawn/human/golem + var/shell_type = /obj/effect/mob_spawn/human/alive/golem w_class = WEIGHT_CLASS_BULKY /obj/item/golem_shell/servant name = "incomplete servant golem shell" - shell_type = /obj/effect/mob_spawn/human/golem/servant + shell_type = /obj/effect/mob_spawn/human/alive/golem/servant /obj/item/golem_shell/attackby(obj/item/I, mob/user, params) ..() @@ -56,7 +56,7 @@ else to_chat(user, "You can't build a golem out of this kind of material.") -/obj/effect/mob_spawn/human/golem +/obj/effect/mob_spawn/human/alive/golem name = "inert free golem shell" desc = "A humanoid shape, empty, lifeless, and full of potential." mob_name = "a free golem" @@ -78,7 +78,7 @@ travel the stars with a single declaration: \"Yeah go do whatever.\" Though you are bound to the one who created you, it is customary in your society to repeat those same words to newborn \ golems, so that no golem may ever be forced to serve again." -/obj/effect/mob_spawn/human/golem/Initialize(mapload, datum/species/golem/species = null, mob/creator = null) +/obj/effect/mob_spawn/human/alive/golem/Initialize(mapload, datum/species/golem/species = null, mob/creator = null) if(species) //spawners list uses object name to register so this goes before ..() name += " ([initial(species.prefix)])" mob_species = species @@ -93,7 +93,7 @@ Serve [creator], and assist [creator.p_them()] in completing [creator.p_their()] goals at any cost." owner = creator -/obj/effect/mob_spawn/human/golem/special(mob/living/new_spawn, name) +/obj/effect/mob_spawn/human/alive/golem/special(mob/living/new_spawn, name) var/datum/species/golem/X = mob_species to_chat(new_spawn, "[initial(X.info_text)]") if(!owner) @@ -139,7 +139,7 @@ else new_spawn.mind.assigned_role = "Free Golem" -/obj/effect/mob_spawn/human/golem/attack_hand(mob/user) +/obj/effect/mob_spawn/human/alive/golem/attack_hand(mob/user) . = ..() if(.) return @@ -162,7 +162,7 @@ user.death() return -/obj/effect/mob_spawn/human/golem/attackby(obj/item/I, mob/living/carbon/user, params) +/obj/effect/mob_spawn/human/alive/golem/attackby(obj/item/I, mob/living/carbon/user, params) if(!istype(I, /obj/item/slimepotion/transference)) return ..() if(iscarbon(user) && can_transfer) @@ -171,7 +171,7 @@ return if(QDELETED(src) || uses <= 0 || user.stat >= 1 || QDELETED(I)) return - if(istype(src, /obj/effect/mob_spawn/human/golem/servant) && !isgolem(user)) + if(istype(src, /obj/effect/mob_spawn/human/alive/golem/servant) && !isgolem(user)) has_owner = FALSE if(isgolem(user) && can_transfer) var/datum/species/golem/g = user.dna.species @@ -193,12 +193,12 @@ to_chat(g, "You have become the [g.dna.species]. Your allegiances, alliances, and roles are still the same as they were prior to using [I]!") qdel(I) -/obj/effect/mob_spawn/human/golem/servant +/obj/effect/mob_spawn/human/alive/golem/servant has_owner = TRUE name = "inert servant golem shell" mob_name = "a servant golem" -/obj/effect/mob_spawn/human/golem/adamantine +/obj/effect/mob_spawn/human/alive/golem/adamantine name = "dust-caked free golem shell" desc = "A humanoid shape, empty, lifeless, and full of potential." mob_name = "a free golem" diff --git a/code/modules/awaymissions/mission_code/ghost_role_spawners/oldstation_spawns.dm b/code/modules/awaymissions/mission_code/ghost_role_spawners/oldstation_spawns.dm index ab868439cee..a8efc578594 100644 --- a/code/modules/awaymissions/mission_code/ghost_role_spawners/oldstation_spawns.dm +++ b/code/modules/awaymissions/mission_code/ghost_role_spawners/oldstation_spawns.dm @@ -1,6 +1,6 @@ //Ancient cryogenic sleepers. Players become NT crewmen from a hundred year old space station, now on the verge of collapse. -/obj/effect/mob_spawn/human/oldsec +/obj/effect/mob_spawn/human/alive/old/sec name = "old cryogenics pod" desc = "A humming cryo pod. You can barely recognise a security uniform underneath the built up ice. The machine is attempting to wake up its occupant." mob_name = "a security officer" @@ -22,11 +22,11 @@ l_pocket = /obj/item/flash assignedrole = "Ancient Crew" -/obj/effect/mob_spawn/human/oldsec/Destroy() +/obj/effect/mob_spawn/human/alive/old/sec/Destroy() new /obj/structure/showcase/machinery/oldpod/used(drop_location()) return ..() -/obj/effect/mob_spawn/human/oldmed +/obj/effect/mob_spawn/human/alive/old/med name = "old cryogenics pod" desc = "A humming cryo pod. You can barely recognise a medical uniform underneath the built up ice. The machine is attempting to wake up its occupant." mob_name = "a medical doctor" @@ -48,11 +48,11 @@ r_pocket = /obj/item/stack/medical/ointment assignedrole = "Ancient Crew" -/obj/effect/mob_spawn/human/oldmed/Destroy() +/obj/effect/mob_spawn/human/alive/old/med/Destroy() new /obj/structure/showcase/machinery/oldpod/used(drop_location()) return ..() -/obj/effect/mob_spawn/human/oldeng +/obj/effect/mob_spawn/human/alive/old/eng name = "old cryogenics pod" desc = "A humming cryo pod. You can barely recognise an engineering uniform underneath the built up ice. The machine is attempting to wake up its occupant." mob_name = "an engineer" @@ -74,11 +74,11 @@ l_pocket = /obj/item/tank/internals/emergency_oxygen assignedrole = "Ancient Crew" -/obj/effect/mob_spawn/human/oldeng/Destroy() +/obj/effect/mob_spawn/human/alive/old/eng/Destroy() new /obj/structure/showcase/machinery/oldpod/used(drop_location()) return ..() -/obj/effect/mob_spawn/human/oldsci +/obj/effect/mob_spawn/human/alive/old/sci name = "old cryogenics pod" desc = "A humming cryo pod. You can barely recognise a science uniform underneath the built up ice. The machine is attempting to wake up its occupant." mob_name = "a scientist" @@ -99,7 +99,7 @@ l_pocket = /obj/item/stack/medical/bruise_pack assignedrole = "Ancient Crew" -/obj/effect/mob_spawn/human/oldsci/Destroy() +/obj/effect/mob_spawn/human/alive/old/sci/Destroy() new /obj/structure/showcase/machinery/oldpod/used(drop_location()) return ..() diff --git a/code/modules/awaymissions/mob_spawn.dm b/code/modules/awaymissions/mob_spawn.dm index 6191dce21c0..318a9494d76 100644 --- a/code/modules/awaymissions/mob_spawn.dm +++ b/code/modules/awaymissions/mob_spawn.dm @@ -301,193 +301,10 @@ roundstart = FALSE //you could use these for alive fake humans on roundstart but this is more common scenario -//Non-human spawners +//////////Alive ones, used as "core" for ghost roles now and in future.////////// -/obj/effect/mob_spawn/mouse - name = "sleeper" - mob_name = "space mouse" - mob_type = /mob/living/simple_animal/mouse - death = FALSE - roundstart = FALSE - icon = 'icons/obj/cryogenic2.dmi' - icon_state = "sleeper" - flavour_text = "Squeak!" - -/obj/effect/mob_spawn/cow - name = "sleeper" - mob_name = "space cow" - mob_type = /mob/living/simple_animal/cow - death = FALSE - roundstart = FALSE - mob_gender = FEMALE - icon = 'icons/obj/cryogenic2.dmi' - icon_state = "sleeper" - flavour_text = "Moo!" - - -///////////Civilians////////////////////// - -/obj/effect/mob_spawn/human/corpse/assistant - name = "Assistant" - mob_name = "Assistant" - id_job = "Assistant" - outfit = /datum/outfit/job/assistant - -/obj/effect/mob_spawn/human/corpse/assistant/beesease_infection - disease = /datum/disease/beesease - -/obj/effect/mob_spawn/human/corpse/assistant/brainrot_infection - disease = /datum/disease/brainrot - -/obj/effect/mob_spawn/human/corpse/assistant/spanishflu_infection - disease = /datum/disease/fluspanish - -/obj/effect/mob_spawn/human/cook - name = "Cook" - mob_name = "Chef" - id_job = "Chef" - outfit = /datum/outfit/job/chef - -/obj/effect/mob_spawn/human/doctor - name = "Doctor" - mob_name = "Medical Doctor" - id_job = "Medical Doctor" - outfit = /datum/outfit/job/doctor - -/obj/effect/mob_spawn/human/doctor/alive - death = FALSE - roundstart = FALSE - random = TRUE - name = "sleeper" - icon = 'icons/obj/cryogenic2.dmi' - icon_state = "sleeper" - flavour_text = "You are a space doctor!" - assignedrole = "Space Doctor" - -/obj/effect/mob_spawn/human/doctor/alive/equip(mob/living/carbon/human/H) - ..() - // Remove radio and PDA so they wouldn't annoy station crew. - var/list/del_types = list(/obj/item/pda, /obj/item/radio/headset) - for(var/del_type in del_types) - var/obj/item/I = locate(del_type) in H - qdel(I) - -/obj/effect/mob_spawn/human/engineer - name = "Engineer" - mob_name = "Engineer" - id_job = "Engineer" - outfit = /datum/outfit/job/engineer - -/obj/effect/mob_spawn/human/engineer/hardsuit - outfit = /datum/outfit/job/engineer/suit - -/datum/outfit/job/engineer/suit - name = "Station Engineer" - - uniform = /obj/item/clothing/under/rank/engineering/engineer - belt = /obj/item/storage/belt/utility/full - suit = /obj/item/clothing/suit/space/hardsuit/engine - shoes = /obj/item/clothing/shoes/workboots - mask = /obj/item/clothing/mask/breath - id = /obj/item/card/id/engineering - l_pocket = /obj/item/t_scanner - - backpack = /obj/item/storage/backpack/industrial - - -/obj/effect/mob_spawn/human/clown - name = "Clown" - mob_name = "Clown" - id_job = "Clown" - outfit = /datum/outfit/job/clown - -/obj/effect/mob_spawn/human/clown/Initialize() - mob_name = pick(GLOB.clown_names) - return ..() - -/obj/effect/mob_spawn/human/corpse/clownmili - name = "Clown Soldier" - outfit = /datum/outfit/clownsoldier - -/obj/effect/mob_spawn/human/corpse/clownmili/Initialize() - mob_name = "Officer [pick(GLOB.clown_names)]" - return ..() - -/obj/effect/mob_spawn/human/corpse/clownoff - name = "Clown Officer" - outfit = /datum/outfit/clownofficer - -/obj/effect/mob_spawn/human/corpse/clownoff/Initialize() - mob_name = "Honk Specialist [pick(GLOB.clown_names)]" - return ..() - - -/datum/outfit/clownsoldier - name = "Clown Soldier" - uniform = /obj/item/clothing/under/costume/soldieruniform - suit = /obj/item/clothing/suit/soldiercoat - shoes = /obj/item/clothing/shoes/clown_shoes - l_ear = /obj/item/radio/headset - mask = /obj/item/clothing/mask/gas/clown_hat - l_pocket = /obj/item/bikehorn - back = /obj/item/storage/backpack/clown - head = /obj/item/clothing/head/stalhelm - -/datum/outfit/clownofficer - name = "Clown Officer" - uniform = /obj/item/clothing/under/costume/officeruniform - suit = /obj/item/clothing/suit/officercoat - shoes = /obj/item/clothing/shoes/clown_shoes - l_ear = /obj/item/radio/headset - mask = /obj/item/clothing/mask/gas/clown_hat - l_pocket = /obj/item/bikehorn - back = /obj/item/storage/backpack/clown - head = /obj/item/clothing/head/armyofficer - -/obj/effect/mob_spawn/human/mime - name = "Mime" - mob_name = "Mime" - id_job = "Mime" - outfit = /datum/outfit/job/mime - -/obj/effect/mob_spawn/human/mime/Initialize() - mob_name = pick(GLOB.mime_names) - return ..() - -/obj/effect/mob_spawn/human/scientist - name = "Scientist" - mob_name = "Scientist" - id_job = "Scientist" - outfit = /datum/outfit/job/scientist - -/obj/effect/mob_spawn/human/miner - name = "Shaft Miner" - mob_name = "Shaft Miner" - id_job = "Shaft Miner" - outfit = /datum/outfit/job/mining/suit - -/datum/outfit/job/mining/suit - name = "Shaft Miner" - suit = /obj/item/clothing/suit/space/hardsuit/mining - uniform = /obj/item/clothing/under/rank/cargo/miner - gloves = /obj/item/clothing/gloves/fingerless - shoes = /obj/item/clothing/shoes/workboots - l_ear = /obj/item/radio/headset/headset_cargo/mining - id = /obj/item/card/id/shaftminer - l_pocket = /obj/item/reagent_containers/food/pill/patch/styptic - r_pocket = /obj/item/flashlight/seclite - -/obj/effect/mob_spawn/human/miner/explorer - outfit = /datum/outfit/job/mining/equipped - -/obj/effect/mob_spawn/human/bartender - name = "Space Bartender" - mob_name = "Bartender" - id_job = "Bartender" - id_access_list = list(ACCESS_BAR) - outfit = /datum/outfit/spacebartender - -/obj/effect/mob_spawn/human/bartender/alive +//Lavaland Bartender (ghost role). +/obj/effect/mob_spawn/human/alive/bartender death = FALSE roundstart = FALSE random = TRUE @@ -499,29 +316,8 @@ flavour_text = "You are a space bartender! Time to mix drinks and change lives. Wait, where did your bar just get transported to?" assignedrole = "Space Bartender" -/obj/effect/mob_spawn/human/beach/alive/lifeguard - flavour_text = "You're a spunky lifeguard! It's up to you to make sure nobody drowns or gets eaten by sharks and stuff. Then suddenly your entire beach was transported to this strange hell. \ - You aren't trained for this, but you'll still keep your guests alive!" - description = "Try to survive on lavaland with the pitiful equipment of a lifeguard. Or hide in your biodome." - mob_gender = "female" - name = "lifeguard sleeper" - id_job = "Lifeguard" - uniform = /obj/item/clothing/under/pants/shorts/red - -/datum/outfit/spacebartender - name = "Space Bartender" - uniform = /obj/item/clothing/under/rank/civilian/bartender - suit = /obj/item/clothing/suit/armor/vest - belt = /obj/item/storage/belt/bandolier/full - shoes = /obj/item/clothing/shoes/black - glasses = /obj/item/clothing/glasses/sunglasses/reagent - id = /obj/item/card/id - - -/obj/effect/mob_spawn/human/beach - outfit = /datum/outfit/beachbum - -/obj/effect/mob_spawn/human/beach/alive +//Lavaland Beach Turist(?) (ghost role). +/obj/effect/mob_spawn/human/alive/beach death = FALSE roundstart = FALSE random = TRUE @@ -534,79 +330,17 @@ description = "Try to survive on lavaland or just enjoy the beach, waiting for visitors." assignedrole = "Beach Bum" -/datum/outfit/beachbum - name = "Beach Bum" - glasses = /obj/item/clothing/glasses/sunglasses +//Lavaland Beach Guard (ghost role). +/obj/effect/mob_spawn/human/alive/beach/lifeguard + flavour_text = "You're a spunky lifeguard! It's up to you to make sure nobody drowns or gets eaten by sharks and stuff. Then suddenly your entire beach was transported to this strange hell. \ + You aren't trained for this, but you'll still keep your guests alive!" + description = "Try to survive on lavaland with the pitiful equipment of a lifeguard. Or hide in your biodome." + mob_gender = "female" + name = "lifeguard sleeper" + id_job = "Lifeguard" uniform = /obj/item/clothing/under/pants/shorts/red -/////////////////Spooky Undead////////////////////// - -/obj/effect/mob_spawn/human/skeleton - name = "skeletal remains" - mob_name = "skeleton" - mob_species = /datum/species/skeleton/brittle - mob_gender = NEUTER - -/obj/effect/mob_spawn/human/skeleton/alive - death = FALSE - roundstart = FALSE - icon = 'icons/effects/blood.dmi' - mob_species = /datum/species/skeleton - icon_state = "remains" - description = "Be a spooky scary skeleton." //not mapped in anywhere so admin spawner, who knows what they'll use this for. - flavour_text = "By unknown powers, your skeletal remains have been reanimated! Walk this mortal plain and terrorize all living adventurers who dare cross your path." - assignedrole = "Skeleton" - -/////////////////Officers////////////////////// - -/obj/effect/mob_spawn/human/bridgeofficer - name = "Bridge Officer" - mob_name = "Bridge Officer" - id_job = "Bridge Officer" - id_access = "Captain" - outfit = /datum/outfit/nanotrasenbridgeofficercorpse - -/datum/outfit/nanotrasenbridgeofficercorpse - name = "Bridge Officer Corpse" - l_ear = /obj/item/radio/headset/heads/hop - uniform = /obj/item/clothing/under/rank/centcom - suit = /obj/item/clothing/suit/armor/bulletproof - shoes = /obj/item/clothing/shoes/black - glasses = /obj/item/clothing/glasses/sunglasses - id = /obj/item/card/id - - -/obj/effect/mob_spawn/human/commander - name = "Commander" - mob_name = "Commander" - id_job = "Commander" - id_access = "Captain" - outfit = /datum/outfit/nanotrasencommandercorpse - -/datum/outfit/nanotrasencommandercorpse - name = "Commander Corpse" - - uniform = /obj/item/clothing/under/rank/centcom/officer - gloves = /obj/item/clothing/gloves/color/white - shoes = /obj/item/clothing/shoes/centcom - head = /obj/item/clothing/head/beret/centcom/officer - glasses = /obj/item/clothing/glasses/hud/security/sunglasses - id = /obj/item/card/id/centcom - - - -/obj/effect/mob_spawn/human/abductor - name = "abductor" - mob_name = "alien" - mob_species = /datum/species/abductor - outfit = /datum/outfit/abductorcorpse - -/datum/outfit/abductorcorpse - name = "Abductor Corpse" - uniform = /obj/item/clothing/under/color/grey - shoes = /obj/item/clothing/shoes/combat - -//For ghost bar. +//Space(?) Bar Patron (ghost role). /obj/effect/mob_spawn/human/alive/space_bar_patron name = "Bar cryogenics" mob_name = "Bar patron" @@ -630,3 +364,288 @@ shoes = /obj/item/clothing/shoes/black suit = /obj/item/clothing/suit/armor/vest glasses = /obj/item/clothing/glasses/sunglasses/reagent + +//Lavaland Animal Doctor (ghost role). +/obj/effect/mob_spawn/human/alive/doctor + death = FALSE + roundstart = FALSE + random = TRUE + name = "sleeper" + icon = 'icons/obj/cryogenic2.dmi' + icon_state = "sleeper" + flavour_text = "You are a space doctor!" + assignedrole = "Space Doctor" + +/obj/effect/mob_spawn/human/alive/doctor/equip(mob/living/carbon/human/H) + ..() + // Remove radio and PDA so they wouldn't annoy station crew. + var/list/del_types = list(/obj/item/pda, /obj/item/radio/headset) + for(var/del_type in del_types) + var/obj/item/I = locate(del_type) in H + qdel(I) + +//Spooky Scary Skeleton... +/obj/effect/mob_spawn/human/alive/skeleton + death = FALSE + roundstart = FALSE + icon = 'icons/mob/simple_human.dmi' + mob_species = /datum/species/skeleton + icon_state = "skeleton" + description = "Be a spooky scary skeleton." //not mapped in anywhere so admin spawner, who knows what they'll use this for. + flavour_text = "By unknown powers, your skeletal remains have been reanimated! Walk this mortal plain and terrorize all living adventurers who dare cross your path." + assignedrole = "Skeleton" + +//////////Corpses, they can be used for "decoration" purpose.////////// + +//Default Abductor corpse. +/obj/effect/mob_spawn/human/corpse/abductor + name = "abductor" + mob_name = "alien" + mob_species = /datum/species/abductor + outfit = /datum/outfit/abductorcorpse + +/datum/outfit/abductorcorpse + name = "Abductor Corpse" + uniform = /obj/item/clothing/under/color/grey + shoes = /obj/item/clothing/shoes/combat + +//Assistant Corpse +/obj/effect/mob_spawn/human/corpse/assistant + name = "Assistant" + mob_name = "Assistant" + id_job = "Assistant" + outfit = /datum/outfit/job/assistant + +//Yes you guess it, they have disease in corpse. +/obj/effect/mob_spawn/human/corpse/assistant/beesease_infection + disease = /datum/disease/beesease + +/obj/effect/mob_spawn/human/corpse/assistant/brainrot_infection + disease = /datum/disease/brainrot + +/obj/effect/mob_spawn/human/corpse/assistant/spanishflu_infection + disease = /datum/disease/fluspanish + +//Bartender corpse. +/obj/effect/mob_spawn/human/corpse/bartender + name = "Space Bartender" + mob_name = "Bartender" + id_job = "Bartender" + id_access_list = list(ACCESS_BAR) + outfit = /datum/outfit/spacebartender + +/datum/outfit/spacebartender + name = "Space Bartender" + uniform = /obj/item/clothing/under/rank/civilian/bartender + suit = /obj/item/clothing/suit/armor/vest + belt = /obj/item/storage/belt/bandolier/full + shoes = /obj/item/clothing/shoes/black + glasses = /obj/item/clothing/glasses/sunglasses/reagent + id = /obj/item/card/id + +//Lavaland Beach Turist (?) corpse. +/obj/effect/mob_spawn/human/corpse/beach + outfit = /datum/outfit/beachbum + +/datum/outfit/beachbum + name = "Beach Bum" + glasses = /obj/item/clothing/glasses/sunglasses + uniform = /obj/item/clothing/under/pants/shorts/red + +//Bridge Officer corpse. +/obj/effect/mob_spawn/human/corpse/bridgeofficer + name = "Bridge Officer" + mob_name = "Bridge Officer" + id_job = "Bridge Officer" + id_access = "Captain" + outfit = /datum/outfit/nanotrasenbridgeofficercorpse + +/datum/outfit/nanotrasenbridgeofficercorpse + name = "Bridge Officer Corpse" + l_ear = /obj/item/radio/headset/heads/hop + uniform = /obj/item/clothing/under/rank/centcom + suit = /obj/item/clothing/suit/armor/bulletproof + shoes = /obj/item/clothing/shoes/black + glasses = /obj/item/clothing/glasses/sunglasses + id = /obj/item/card/id + +//Clown corpse. +/obj/effect/mob_spawn/human/corpse/clown + name = "Clown" + mob_name = "Clown" + id_job = "Clown" + outfit = /datum/outfit/job/clown + +/obj/effect/mob_spawn/human/corpse/clown/Initialize() + mob_name = pick(GLOB.clown_names) + return ..() + +//Clown Officer corpse. +/obj/effect/mob_spawn/human/corpse/clown/officer + name = "Clown Officer" + outfit = /datum/outfit/clownofficer + +/obj/effect/mob_spawn/human/corpse/clown/officer/Initialize() + mob_name = "Honk Specialist [pick(GLOB.clown_names)]" + return ..() +/datum/outfit/clownofficer + name = "Clown Officer" + uniform = /obj/item/clothing/under/costume/officeruniform + suit = /obj/item/clothing/suit/officercoat + shoes = /obj/item/clothing/shoes/clown_shoes + l_ear = /obj/item/radio/headset + mask = /obj/item/clothing/mask/gas/clown_hat + l_pocket = /obj/item/bikehorn + back = /obj/item/storage/backpack/clown + head = /obj/item/clothing/head/armyofficer + +//Clown Soldier corpse +/obj/effect/mob_spawn/human/corpse/clown/soldier + name = "Clown Soldier" + outfit = /datum/outfit/clownsoldier + +/obj/effect/mob_spawn/human/corpse/clown/soldier/Initialize() + mob_name = "Officer [pick(GLOB.clown_names)]" + return ..() + +/datum/outfit/clownsoldier + name = "Clown Soldier" + uniform = /obj/item/clothing/under/costume/soldieruniform + suit = /obj/item/clothing/suit/soldiercoat + shoes = /obj/item/clothing/shoes/clown_shoes + l_ear = /obj/item/radio/headset + mask = /obj/item/clothing/mask/gas/clown_hat + l_pocket = /obj/item/bikehorn + back = /obj/item/storage/backpack/clown + head = /obj/item/clothing/head/stalhelm + +//Commander (?) corpse. +/obj/effect/mob_spawn/human/corpse/commander + name = "Commander" + mob_name = "Commander" + id_job = "Commander" + id_access = "Captain" + outfit = /datum/outfit/nanotrasencommandercorpse + +/datum/outfit/nanotrasencommandercorpse + name = "Commander Corpse" + + uniform = /obj/item/clothing/under/rank/centcom/officer + gloves = /obj/item/clothing/gloves/color/white + shoes = /obj/item/clothing/shoes/centcom + head = /obj/item/clothing/head/beret/centcom/officer + glasses = /obj/item/clothing/glasses/hud/security/sunglasses + id = /obj/item/card/id/centcom + +//Chef corpse +/obj/effect/mob_spawn/human/corpse/cook + name = "Cook" + mob_name = "Chef" + id_job = "Chef" + outfit = /datum/outfit/job/chef + +//Medical Doctor corpse. +/obj/effect/mob_spawn/human/corpse/doctor + name = "Doctor" + mob_name = "Medical Doctor" + id_job = "Medical Doctor" + outfit = /datum/outfit/job/doctor + +//Engineer corpse. +/obj/effect/mob_spawn/human/corpse/engineer + name = "Engineer" + mob_name = "Engineer" + id_job = "Engineer" + outfit = /datum/outfit/job/engineer + +//Hardsuit Engineer corpse. +/obj/effect/mob_spawn/human/corpse/engineer/hardsuit + outfit = /datum/outfit/job/engineer/suit + +/datum/outfit/job/engineer/suit + name = "Station Engineer" + + uniform = /obj/item/clothing/under/rank/engineering/engineer + belt = /obj/item/storage/belt/utility/full + suit = /obj/item/clothing/suit/space/hardsuit/engine + shoes = /obj/item/clothing/shoes/workboots + mask = /obj/item/clothing/mask/breath + id = /obj/item/card/id/engineering + l_pocket = /obj/item/t_scanner + + backpack = /obj/item/storage/backpack/industrial + +//Mime corpse. +/obj/effect/mob_spawn/human/corpse/mime + name = "Mime" + mob_name = "Mime" + id_job = "Mime" + outfit = /datum/outfit/job/mime + +/obj/effect/mob_spawn/human/corpse/mime/Initialize() + mob_name = pick(GLOB.mime_names) + return ..() + +//Normal Miner corpse. +/obj/effect/mob_spawn/human/corpse/miner + name = "Shaft Miner" + mob_name = "Shaft Miner" + id_job = "Shaft Miner" + outfit = /datum/outfit/job/mining/equipped + +//Hardsuit Miner corpse. +/obj/effect/mob_spawn/human/corpse/miner/explorer + outfit = /datum/outfit/job/mining/suit + +/datum/outfit/job/mining/suit + name = "Shaft Miner" + suit = /obj/item/clothing/suit/space/hardsuit/mining + uniform = /obj/item/clothing/under/rank/cargo/miner + gloves = /obj/item/clothing/gloves/fingerless + shoes = /obj/item/clothing/shoes/workboots + l_ear = /obj/item/radio/headset/headset_cargo/mining + id = /obj/item/card/id/shaftminer + l_pocket = /obj/item/reagent_containers/food/pill/patch/styptic + r_pocket = /obj/item/flashlight/seclite + +//Scientist corpse. +/obj/effect/mob_spawn/human/corpse/scientist + name = "Scientist" + mob_name = "Scientist" + id_job = "Scientist" + outfit = /datum/outfit/job/scientist + +/obj/effect/mob_spawn/human/corpse/skeleton + name = "skeletal remains" + mob_name = "skeleton" + mob_species = /datum/species/skeleton/brittle + mob_gender = NEUTER + +////////Non-human spawners//////// + +/obj/effect/mob_spawn/mouse + name = "sleeper" + mob_name = "space mouse" + mob_type = /mob/living/simple_animal/mouse + death = FALSE + roundstart = FALSE + icon = 'icons/obj/cryogenic2.dmi' + icon_state = "sleeper" + flavour_text = "Squeak!" + +/obj/effect/mob_spawn/cow + name = "sleeper" + mob_name = "space cow" + mob_type = /mob/living/simple_animal/cow + death = FALSE + roundstart = FALSE + mob_gender = FEMALE + icon = 'icons/obj/cryogenic2.dmi' + icon_state = "sleeper" + flavour_text = "Moo!" + + + + + + diff --git a/code/modules/mob/living/simple_animal/corpse.dm b/code/modules/mob/living/simple_animal/corpse.dm index 5118162f7e7..f86b28c3e1f 100644 --- a/code/modules/mob/living/simple_animal/corpse.dm +++ b/code/modules/mob/living/simple_animal/corpse.dm @@ -42,11 +42,11 @@ id = /obj/item/card/id -/obj/effect/mob_spawn/human/clown/corpse +/obj/effect/mob_spawn/human/corpse/clown/corpse roundstart = TRUE instant = TRUE -/obj/effect/mob_spawn/human/mime/corpse +/obj/effect/mob_spawn/human/corpse/mime/corpse roundstart = TRUE instant = TRUE @@ -102,7 +102,7 @@ name = "Corpse of a Space Wizard" outfit = /datum/outfit/wizardcorpse -/obj/effect/mob_spawn/human/corpse/clownoff/Initialize(mapload) +/obj/effect/mob_spawn/human/corpse/clown/officer/Initialize(mapload) mob_name = "[pick(GLOB.wizard_first)], [pick(GLOB.wizard_second)]" . = ..() diff --git a/code/modules/ruins/lavalandruin_code/animal_hospital.dm b/code/modules/ruins/lavalandruin_code/animal_hospital.dm index 18ea13770a6..696dff6e8e8 100644 --- a/code/modules/ruins/lavalandruin_code/animal_hospital.dm +++ b/code/modules/ruins/lavalandruin_code/animal_hospital.dm @@ -2,7 +2,7 @@ name = "Important Notice - Mrs. Henderson" info = "Nothing of interest to report." -/obj/effect/mob_spawn/human/doctor/alive/lavaland +/obj/effect/mob_spawn/human/alive/doctor/lavaland name = "broken rejuvenation pod" desc = "A small sleeper typically used to instantly restore minor wounds. This one seems broken, and its occupant is comatose." mob_name = "a translocated vet" @@ -13,7 +13,7 @@ assignedrole = "Translocated Vet" allow_species_pick = TRUE -/obj/effect/mob_spawn/human/doctor/alive/lavaland/Destroy() +/obj/effect/mob_spawn/human/alive/doctor/lavaland/Destroy() var/obj/structure/fluff/empty_sleeper/S = new(drop_location()) S.setDir(dir) return ..() diff --git a/code/modules/ruins/lavalandruin_code/ash_walker_den.dm b/code/modules/ruins/lavalandruin_code/ash_walker_den.dm index 8b184d2bf17..38c22cef2cd 100644 --- a/code/modules/ruins/lavalandruin_code/ash_walker_den.dm +++ b/code/modules/ruins/lavalandruin_code/ash_walker_den.dm @@ -50,11 +50,11 @@ /obj/structure/lavaland/ash_walker/proc/spawn_mob() if(meat_counter >= ASH_WALKER_SPAWN_THRESHOLD) - new /obj/effect/mob_spawn/human/ash_walker(get_step(loc, pick(GLOB.alldirs))) + new /obj/effect/mob_spawn/human/alive/ash_walker(get_step(loc, pick(GLOB.alldirs))) visible_message("One of the eggs swells to an unnatural size and tumbles free. It's ready to hatch!") meat_counter -= ASH_WALKER_SPAWN_THRESHOLD -/obj/effect/mob_spawn/human/ash_walker +/obj/effect/mob_spawn/human/alive/ash_walker name = "ash walker egg" desc = "A man-sized yellow egg, spawned from some unfathomable creature. A humanoid silhouette lurks within." mob_name = "an ash walker" @@ -74,14 +74,14 @@ You have seen lights in the distance... they foreshadow the arrival of outsiders that seek to tear apart the Necropolis and its domain. Fresh sacrifices for your nest." assignedrole = "Ash Walker" -/obj/effect/mob_spawn/human/ash_walker/special(mob/living/carbon/human/new_spawn) +/obj/effect/mob_spawn/human/alive/ash_walker/special(mob/living/carbon/human/new_spawn) new_spawn.rename_character(new_spawn.real_name, new_spawn.dna.species.get_random_name(new_spawn.gender)) new_spawn.mind.offstation_role = TRUE to_chat(new_spawn, "Drag the corpses of men and beasts to your nest. It will absorb them to create more of your kind. Glory to the Necropolis!") to_chat(new_spawn, "For more information, check the wiki page: ([GLOB.configuration.url.wiki_url]/index.php/Ash_Walker)") -/obj/effect/mob_spawn/human/ash_walker/New() +/obj/effect/mob_spawn/human/alive/ash_walker/New() . = ..() var/area/A = get_area(src) if(A) diff --git a/code/modules/ruins/lavalandruin_code/hermit.dm b/code/modules/ruins/lavalandruin_code/hermit.dm index b0d8f91d2e9..855a545b3fc 100644 --- a/code/modules/ruins/lavalandruin_code/hermit.dm +++ b/code/modules/ruins/lavalandruin_code/hermit.dm @@ -1,5 +1,5 @@ //Malfunctioning cryostasis sleepers: Spawns in makeshift shelters in lavaland. Ghosts become hermits with knowledge of how they got to where they are now. -/obj/effect/mob_spawn/human/hermit +/obj/effect/mob_spawn/human/alive/hermit name = "malfunctioning cryostasis sleeper" desc = "A humming sleeper with a silhouetted occupant inside. Its stasis function is broken and it's likely being used as a bed." mob_name = "a stranded hermit" @@ -16,7 +16,7 @@ the fresh air of Earth. These thoughts are dispelled by yet another recollection of how you got here... " assignedrole = "Hermit" -/obj/effect/mob_spawn/human/hermit/Initialize(mapload) +/obj/effect/mob_spawn/human/alive/hermit/Initialize(mapload) . = ..() var/arrpee = rand(1,4) switch(arrpee) @@ -49,6 +49,6 @@ outfit.shoes = /obj/item/clothing/shoes/black outfit.back = /obj/item/storage/backpack -/obj/effect/mob_spawn/human/hermit/Destroy() +/obj/effect/mob_spawn/human/alive/hermit/Destroy() new/obj/structure/fluff/empty_cryostasis_sleeper(get_turf(src)) return ..() diff --git a/code/modules/ruins/lavalandruin_code/seed_vault.dm b/code/modules/ruins/lavalandruin_code/seed_vault.dm index c0b6bbea223..7c70935c9f3 100644 --- a/code/modules/ruins/lavalandruin_code/seed_vault.dm +++ b/code/modules/ruins/lavalandruin_code/seed_vault.dm @@ -8,7 +8,7 @@ /obj/item/seeds/sunflower/moonflower = 8 ) -/obj/effect/mob_spawn/human/seed_vault +/obj/effect/mob_spawn/human/alive/seed_vault name = "preserved terrarium" desc = "An ancient machine that seems to be used for storing plant matter. The glass is obstructed by a mat of vines." mob_name = "a lifebringer" @@ -24,11 +24,11 @@ for contact from your creators. Estimated time of last contact: Deployment, 5x10^3 millennia ago." assignedrole = "Lifebringer" -/obj/effect/mob_spawn/human/seed_vault/special(mob/living/new_spawn) +/obj/effect/mob_spawn/human/alive/seed_vault/special(mob/living/new_spawn) var/plant_name = pick("Tomato", "Potato", "Broccoli", "Carrot", "Ambrosia", "Pumpkin", "Ivy", "Kudzu", "Banana", "Moss", "Flower", "Bloom", "Root", "Bark", "Glowshroom", "Petal", "Leaf", \ "Venus", "Sprout","Cocoa", "Strawberry", "Citrus", "Oak", "Cactus", "Pepper", "Juniper") new_spawn.rename_character(null, plant_name) -/obj/effect/mob_spawn/human/seed_vault/Destroy() +/obj/effect/mob_spawn/human/alive/seed_vault/Destroy() new/obj/structure/fluff/empty_terrarium(get_turf(src)) return ..() diff --git a/code/modules/ruins/syndicate_space_base.dm b/code/modules/ruins/syndicate_space_base.dm index e9a7f4260b0..b3e6044c21e 100644 --- a/code/modules/ruins/syndicate_space_base.dm +++ b/code/modules/ruins/syndicate_space_base.dm @@ -21,7 +21,7 @@ resistance_flags = FIRE_PROOF // Spawners -/obj/effect/mob_spawn/human/spacebase_syndicate +/obj/effect/mob_spawn/human/alive/spacebase_syndicate name = "Syndicate Researcher sleeper" mob_name = "Syndicate Researcher" roundstart = FALSE @@ -37,7 +37,7 @@ allow_species_pick = TRUE skin_tone = 255 -/obj/effect/mob_spawn/human/spacebase_syndicate/Destroy() +/obj/effect/mob_spawn/human/alive/spacebase_syndicate/Destroy() var/obj/structure/fluff/empty_sleeper/syndicate/S = new /obj/structure/fluff/empty_sleeper/syndicate(get_turf(src)) S.setDir(dir) return ..() diff --git a/tools/UpdatePaths/Scripts/21728_mob_spawn_and_corpses.txt b/tools/UpdatePaths/Scripts/21728_mob_spawn_and_corpses.txt new file mode 100644 index 00000000000..6f8159eb5bd --- /dev/null +++ b/tools/UpdatePaths/Scripts/21728_mob_spawn_and_corpses.txt @@ -0,0 +1,36 @@ +/obj/effect/mob_spawn/human/ash_walker : /obj/effect/mob_spawn/human/alive/ash_walker {@OLD} +/obj/effect/mob_spawn/human/bartender/alive : /obj/effect/mob_spawn/human/alive/bartender {@OLD} +/obj/effect/mob_spawn/human/beach/alive : /obj/effect/mob_spawn/human/alive/beach {@OLD} +/obj/effect/mob_spawn/human/beach/alive/lifeguard : /obj/effect/mob_spawn/human/alive/beach/lifeguard {@OLD} +/obj/effect/mob_spawn/human/doctor/alive : /obj/effect/mob_spawn/human/alive/doctor {@OLD} +/obj/effect/mob_spawn/human/doctor/alive/lavaland : /obj/effect/mob_spawn/human/alive/doctor/lavaland {@OLD} +/obj/effect/mob_spawn/human/golem : /obj/effect/mob_spawn/human/alive/golem {@OLD} +/obj/effect/mob_spawn/human/golem/adamantine : /obj/effect/mob_spawn/human/alive/golem/adamantine {@OLD} +/obj/effect/mob_spawn/human/oldeng : /obj/effect/mob_spawn/human/alive/old/eng {@OLD} +/obj/effect/mob_spawn/human/oldmed : /obj/effect/mob_spawn/human/alive/old/med {@OLD} +/obj/effect/mob_spawn/human/oldsci : /obj/effect/mob_spawn/human/alive/old/sci {@OLD} +/obj/effect/mob_spawn/human/oldsec : /obj/effect/mob_spawn/human/alive/old/sec {@OLD} +/obj/effect/mob_spawn/human/seed_vault : /obj/effect/mob_spawn/human/alive/seed_vault {@OLD} +/obj/effect/mob_spawn/human/skeleton/alive : /obj/effect/mob_spawn/human/alive/skeleton {@OLD} +/obj/effect/mob_spawn/human/spacebase_syndicate : /obj/effect/mob_spawn/human/alive/spacebase_syndicate {@OLD} +/obj/effect/mob_spawn/human/hermit : /obj/effect/mob_spawn/human/alive/hermit {@OLD} +/obj/effect/mob_spawn/human/abductor : /obj/effect/mob_spawn/human/corpse/abductor {@OLD} +/obj/effect/mob_spawn/human/bartender : /obj/effect/mob_spawn/human/corpse/bartender {@OLD} +/obj/effect/mob_spawn/human/beach : /obj/effect/mob_spawn/human/corpse/beach {@OLD} +/obj/effect/mob_spawn/human/bridgeofficer : /obj/effect/mob_spawn/human/corpse/bridgeofficer {@OLD} +/obj/effect/mob_spawn/human/clown : /obj/effect/mob_spawn/human/corpse/clown {@OLD} +/obj/effect/mob_spawn/human/clown/corpse : /obj/effect/mob_spawn/human/corpse/clown {@OLD} +/obj/effect/mob_spawn/human/clown/corpse : /obj/effect/mob_spawn/human/corpse/clown {@OLD} +/obj/effect/mob_spawn/human/corpse/clownoff : /obj/effect/mob_spawn/human/corpse/clown/officer {@OLD} +/obj/effect/mob_spawn/human/corpse/clownmili : /obj/effect/mob_spawn/human/corpse/clown/soldier {@OLD} +/obj/effect/mob_spawn/human/commander : /obj/effect/mob_spawn/human/corpse/commander {@OLD} +/obj/effect/mob_spawn/human/cook : /obj/effect/mob_spawn/human/corpse/cook {@OLD} +/obj/effect/mob_spawn/human/doctor : /obj/effect/mob_spawn/human/corpse/doctor {@OLD} +/obj/effect/mob_spawn/human/engineer : /obj/effect/mob_spawn/human/corpse/engineer {@OLD} +/obj/effect/mob_spawn/human/mime : /obj/effect/mob_spawn/human/corpse/mime {@OLD} +/obj/effect/mob_spawn/human/mime/corpse : /obj/effect/mob_spawn/human/corpse/mime {@OLD} +/obj/effect/mob_spawn/human/miner : /obj/effect/mob_spawn/human/corpse/miner {@OLD} +/obj/effect/mob_spawn/human/scientist : /obj/effect/mob_spawn/human/corpse/scientist {@OLD} +/obj/effect/mob_spawn/human/miner/explorer : /obj/effect/mob_spawn/human/corpse/miner/explorer {@OLD} +/obj/effect/mob_spawn/human/scientist : /obj/effect/mob_spawn/human/corpse/scientist {@OLD} +/obj/effect/mob_spawn/human/skeleton : /obj/effect/mob_spawn/human/corpse/skeleton {@OLD} \ No newline at end of file