[MIRROR] fix simple mob bellies on admin spawn (#11236)

Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
This commit is contained in:
CHOMPStation2StaffMirrorBot
2025-07-25 00:17:41 +02:00
committed by GitHub
co-authored by Kashargul
parent 615f8499fd
commit 9765827ac1
111 changed files with 436 additions and 981 deletions
@@ -15,81 +15,6 @@
invisibility = INVISIBILITY_OBSERVER
spawn_active = TRUE
var/announce_prob = 35
/* // CHOMPRemove Start.
var/list/possible_mobs = list("Rabbit" = /mob/living/simple_mob/vore/rabbit,
"Red Panda" = /mob/living/simple_mob/vore/redpanda,
"Fennec" = /mob/living/simple_mob/vore/fennec,
"Fennix" = /mob/living/simple_mob/vore/fennix,
"Fox" = /mob/living/simple_mob/animal/passive/fox,//CHOMPedit: more mobs
"Syndi-Fox" = /mob/living/simple_mob/animal/passive/fox/syndicate,//CHOMPedit: more mobs
"Raccoon" = /mob/living/simple_mob/animal/passive/raccoon,//CHOMPedit: more mobs
"Cat" = /mob/living/simple_mob/animal/passive/cat,//CHOMPedit: more mobs
"Space Bumblebee" = /mob/living/simple_mob/vore/bee,
"Space Bear" = /mob/living/simple_mob/animal/space/bear,
"Voracious Lizard" = /mob/living/simple_mob/vore/aggressive/dino,
"Lizardman" = /mob/living/simple_mob/vore/aggressive/lizardman,//CHOMPedit: more mobs
"Giant Frog" = /mob/living/simple_mob/vore/aggressive/frog,
"Giant Rat" = /mob/living/simple_mob/vore/aggressive/rat,
"Giant Lab Rat" = /mob/living/simple_mob/vore/aggressive/rat/labrat,//CHOMPedit: more mobs
"Jelly Blob" = /mob/living/simple_mob/vore/jelly,
"Wolf" = /mob/living/simple_mob/vore/wolf,
"Dire Wolf" = /mob/living/simple_mob/vore/wolf/direwolf,//CHOMPedit: more mobs
"Large Dog" = /mob/living/simple_mob/vore/wolf/direwolf/dog,//CHOMPedit: more mobs
"Hyena" = /mob/living/simple_mob/animal/hyena,//CHOMPedit: more mobs
"Juvenile Solargrub" = /mob/living/simple_mob/vore/solargrub,
"Sect Queen" = /mob/living/simple_mob/vore/sect_queen,
"Sect Drone" = /mob/living/simple_mob/vore/sect_drone,
"Defanged Xenomorph" = /mob/living/simple_mob/vore/xeno_defanged,
"Panther" = /mob/living/simple_mob/vore/aggressive/panther,
"Giant Snake" = /mob/living/simple_mob/vore/aggressive/giant_snake,
"Deathclaw" = /mob/living/simple_mob/vore/aggressive/deathclaw,
"Otie" = /mob/living/simple_mob/vore/otie,
"Chubby Otie" = /mob/living/simple_mob/vore/otie/friendly/chubby,//CHOMPedit: more mobs
"Mutated Otie" =/mob/living/simple_mob/vore/otie/feral,
"Chubby Mutated Otie" = /mob/living/simple_mob/vore/otie/feral/chubby,//CHOMPedit: more mobs
"Red Otie" = /mob/living/simple_mob/vore/otie/red,
"Chubby Red Otie" = /mob/living/simple_mob/vore/otie/red/chubby,//CHOMPedit: more mobs
"Zorgoia" = /mob/living/simple_mob/vore/zorgoia,//CHOMPedit: more mobs
"Corrupt Hound" = /mob/living/simple_mob/vore/aggressive/corrupthound,
"Corrupt Corrupt Hound" = /mob/living/simple_mob/vore/aggressive/corrupthound/prettyboi,
"Hunter Giant Spider" = /mob/living/simple_mob/animal/giant_spider/hunter,
"Lurker Giant Spider" = /mob/living/simple_mob/animal/giant_spider/lurker,
"Pepper Giant Spider" = /mob/living/simple_mob/animal/giant_spider/pepper,
"Thermic Giant Spider" = /mob/living/simple_mob/animal/giant_spider/thermic,
"Webslinger Giant Spider" = /mob/living/simple_mob/animal/giant_spider/webslinger,
"Frost Giant Spider" = /mob/living/simple_mob/animal/giant_spider/frost,
"Nurse Giant Spider" = /mob/living/simple_mob/animal/giant_spider/nurse/eggless,
"Giant Spider Queen" = /mob/living/simple_mob/animal/giant_spider/nurse/queen/eggless,
"Red Dragon" = /mob/living/simple_mob/vore/aggressive/dragon,
"Phoron Dragon" = /mob/living/simple_mob/vore/aggressive/dragon/virgo3b,
"Space Dragon" = /mob/living/simple_mob/vore/aggressive/dragon/space,
"Crypt Drake" = /mob/living/simple_mob/vore/cryptdrake,
//"Gryphon" = /mob/living/simple_mob/vore/gryphon,//CHOMPedit: more mobs
"Weretiger" = /mob/living/simple_mob/vore/weretiger,
"Lesser Large Dragon" = /mob/living/simple_mob/vore/bigdragon/friendly/maintpred, //CHOMPStation add.
"Catslug" = /mob/living/simple_mob/vore/alienanimals/catslug,
"Squirrel" = /mob/living/simple_mob/vore/squirrel/big,
"Pakkun" =/mob/living/simple_mob/vore/pakkun,
"Snapdragon" =/mob/living/simple_mob/vore/pakkun/snapdragon,
"Sand pakkun" = /mob/living/simple_mob/vore/pakkun/sand,
"Fire pakkun" = /mob/living/simple_mob/vore/pakkun/fire,
"Amethyst pakkun" = /mob/living/simple_mob/vore/pakkun/purple,
"Raptor" = /mob/living/simple_mob/vore/raptor,
"Giant Bat" = /mob/living/simple_mob/vore/bat,
"Scel (Orange)" = /mob/living/simple_mob/vore/scel/orange,
"Scel (Blue)" = /mob/living/simple_mob/vore/scel/blue,
"Scel (Purple)" = /mob/living/simple_mob/vore/scel/purple,
"Scel (Red)" = /mob/living/simple_mob/vore/scel/red,
"Scel (Green)" = /mob/living/simple_mob/vore/scel/green,
"Cave Stalker" = /mob/living/simple_mob/vore/stalker,
"Kelpie" = /mob/living/simple_mob/vore/horse/kelpie,
"Scrubble" = /mob/living/simple_mob/vore/scrubble,
"Sonadile" = /mob/living/simple_mob/vore/sonadile,
"kururak" = /mob/living/simple_mob/animal/sif/kururak,
"Statue of Temptation" = /mob/living/simple_mob/vore/devil
)
*/ //CHOMPRemove End
/obj/structure/ghost_pod/ghost_activated/maintpred/create_occupant(var/mob/M)
..()
@@ -106,7 +31,7 @@
return
while(finalized != "Yes" && M.client)
choice = tgui_input_list(M, "What type of predator do you want to play as?", "Maintpred Choice", GLOB.maint_mob_pred_options) //CHOMPStation Edit
choice = tgui_input_list(M, "What type of predator do you want to play as?", "Maintpred Choice", GLOB.maint_mob_pred_options)
if(!choice) //We probably pushed the cancel button on the mob selection. Let's just put the ghost pod back in the list.
to_chat(M, span_notice("No mob selected, cancelling."))
reset_ghostpod()
@@ -119,12 +44,10 @@
reset_ghostpod()
return
var/mobtype = GLOB.maint_mob_pred_options[choice] //CHOMPStation Edit
var/mobtype = GLOB.maint_mob_pred_options[choice]
var/mob/living/simple_mob/newPred = new mobtype(get_turf(src))
qdel(newPred.ai_holder)
newPred.ai_holder = null
newPred.voremob_loaded = TRUE // On-demand belly loading.
newPred.init_vore() // On-demand belly loading.
//newPred.movement_cooldown = 0 // The "needless artificial speed cap" exists for a reason
if(M.mind)
M.mind.transfer_to(newPred)
@@ -136,6 +59,10 @@
newPred.ckey = M.ckey
newPred.visible_message(span_warning("[newPred] emerges from somewhere!"))
log_and_message_admins("successfully entered \a [src] and became a [newPred].")
if(tgui_alert(newPred, "Do you want to load the vore bellies from your current slot?", "Load Bellies", list("Yes", "No")) == "Yes")
newPred.copy_from_prefs_vr()
if(LAZYLEN(newPred.vore_organs))
newPred.vore_selected = newPred.vore_organs[1]
qdel(src)
/obj/structure/ghost_pod/ghost_activated/maintpred/no_announce
@@ -163,7 +90,6 @@
var/mob/living/simple_mob/vore/morph/newMorph = new /mob/living/simple_mob/vore/morph(get_turf(src))
newMorph.voremob_loaded = TRUE // On-demand belly loading.
newMorph.init_vore() // On-demand belly loading.
if(M.mind)
M.mind.transfer_to(newMorph)
to_chat(M, span_notice("You are a " + span_bold("Morph") + ", somehow having gotten aboard the station in your wandering. \
@@ -178,6 +104,10 @@
newMorph.ckey = M.ckey
newMorph.visible_message(span_warning("A morph appears to crawl out of somewhere."))
log_and_message_admins("successfully entered \a [src] and became a Morph.")
if(tgui_alert(newMorph, "Do you want to load the vore bellies from your current slot?", "Load Bellies", list("Yes", "No")) == "Yes")
newMorph.copy_from_prefs_vr()
if(LAZYLEN(newMorph.vore_organs))
newMorph.vore_selected = newMorph.vore_organs[1]
qdel(src)
/obj/structure/ghost_pod/ghost_activated/morphspawn/no_announce
@@ -87,7 +87,7 @@
muffinmonster = new /mob/living/simple_mob/vore/aggressive/corrupthound/muffinmonster(src)
muffinmonster.name = "Activate Muffin Monster"
muffinmonster.voremob_loaded = TRUE
muffinmonster.init_vore()
muffinmonster.init_vore(TRUE)
return ..()
/obj/structure/biowaste_tank/AllowDrop()