[MIRROR] Mothroaches <3 (#11343)

Co-authored-by: ShadowLarkens <shadowlarkens@gmail.com>
Co-authored-by: C.L. <killer65311@gmail.com>
This commit is contained in:
CHOMPStation2StaffMirrorBot
2025-08-07 04:02:56 -07:00
committed by GitHub
parent e9b8129030
commit 2657a75a7d
19 changed files with 143 additions and 5 deletions

View File

@@ -73,6 +73,7 @@
#define FACTION_MEOWL "meowl"
#define FACTION_MIMIC "mimic"
#define FACTION_MOUSE "mouse"
#define FACTION_MOTHROACH "mothroach"
#define FACTION_NANOMACHINES "nanomachines"
#define FACTION_NEUTRAL "neutral"
#define FACTION_OTIE "otie"

View File

@@ -63,6 +63,15 @@
containertype = /obj/structure/largecrate/animal/catslug
containername = "Catslug Crate"
/datum/supply_pack/hydro/catslug
name = "Mothroach Crate"
desc = "Put the mothroach on your head and find out what true cuteness looks like. \
Contains one mothroach."
contains = list()
cost = 45
containertype = /obj/structure/largecrate/animal/mothroach
containername = "Mothroach Crate"
/datum/supply_pack/hydro/hydroponics
name = "Hydroponics Supply Crate"
desc = "A set of standard hydroponics supplies. Requires Hydroponics access."

View File

@@ -46,6 +46,7 @@
list(/mob/living/simple_mob/animal/passive/lizard),
list(/mob/living/simple_mob/animal/passive/mouse),
list(/mob/living/simple_mob/animal/passive/mouse/jerboa),
list(/mob/living/simple_mob/animal/passive/mothroach),
list(/mob/living/simple_mob/animal/passive/opossum),
list(/mob/living/simple_mob/animal/passive/pillbug),
list(/mob/living/simple_mob/animal/passive/snake),

View File

@@ -31,6 +31,7 @@
prob(6);/mob/living/simple_mob/animal/goat,
prob(10);/mob/living/simple_mob/animal/passive/penguin,
prob(10);/mob/living/simple_mob/animal/passive/mouse,
prob(10);/mob/living/simple_mob/animal/passive/mothroach,
prob(10);/mob/living/simple_mob/animal/passive/yithian,
prob(10);/mob/living/simple_mob/animal/passive/tindalos,
prob(10);/mob/living/simple_mob/animal/passive/pillbug,

View File

@@ -134,3 +134,7 @@
/obj/structure/largecrate/animal/catslug
name = "catslug carrier"
starts_with = list(/mob/living/simple_mob/vore/alienanimals/catslug)
/obj/structure/largecrate/animal/mothroach
name = "mothroach carrier"
starts_with = list(/mob/living/simple_mob/animal/passive/mothroach)

View File

@@ -13,7 +13,8 @@
#define VERM_MICE 0
#define VERM_LIZARDS 1
#define VERM_SPIDERS 2
#define VERM_MOTHROACH 2
#define VERM_SPIDERS 3 //CHOMPEdit - This edit wasn't commented >:(
/datum/event/infestation
announceWhen = 10
@@ -95,8 +96,13 @@
max_number = 8 //CHOMP edit
vermstring = "spiders"
/* //Chomp REMOVE - in upstream file, not used here
if(VERM_MOTHROACH)
spawn_types = /mob/living/simple_mob/animal/passive/mothroach
min_number = 1 //CHOMP edit
max_number = 3 //CHOMP edit
vermstring = "mothroaches"
// Check if any landmarks exist!
/* //Chomp REMOVE - in upstream file, not used here
for(var/obj/effect/landmark/C in GLOB.landmarks_list)
if(C.name == "verminstart")
spawn_locations.Add(C.loc)
@@ -172,3 +178,4 @@
#undef VERM_MICE
#undef VERM_LIZARDS
#undef VERM_SPIDERS // Chomp EDIT
#undef VERM_MOTHROACH

View File

@@ -306,6 +306,7 @@
var/tf_possible_types = list(
"mouse" = /mob/living/simple_mob/animal/passive/mouse,
"rat" = /mob/living/simple_mob/animal/passive/mouse/rat,
"mothroach" = /mob/living/simple_mob/animal/passive/mothroach,
"giant rat" = /mob/living/simple_mob/vore/aggressive/rat,
"dust jumper" = /mob/living/simple_mob/vore/alienanimals/dustjumper,
"woof" = /mob/living/simple_mob/vore/woof,

View File

@@ -0,0 +1,99 @@
/datum/category_item/catalogue/fauna/mothroach
name = "Alien Wildlife - Mothroach"
desc = "The Mothroach is a terrestrial creature that is a hybrid between a mothperson and a cockroach."
value = CATALOGUER_REWARD_MEDIUM
/mob/living/simple_mob/animal/passive/mothroach
name = "mothroach"
desc = "This is the adorable by-product of multiple attempts at genetically mixing mothpeople with cockroaches."
catalogue_data = list(/datum/category_item/catalogue/fauna/mothroach)
icon = 'icons/mob/animal.dmi'
icon_state = "mothroach"
icon_living = "mothroach"
icon_dead = "mothroach_dead"
icon_rest = "mothroach_rest"
faction = FACTION_MOTHROACH
maxHealth = 50
health = 50
movement_cooldown = -1
see_in_dark = 10
meat_amount = 2
meat_type = /obj/item/reagent_containers/food/snacks/meat
holder_type = /obj/item/holder/mothroach
response_help = "pats"
response_disarm = "shoos"
response_harm = "hits"
speak_emote = list("flutters")
harm_intent_damage = 1
melee_damage_lower = 1
melee_damage_upper = 2
attack_sharp = FALSE
attacktext = list("hits")
mob_size = MOB_SMALL
pass_flags = PASSTABLE
density = FALSE
friendly = list("pats")
can_climb = TRUE
climbing_delay = 2.0
say_list_type = /datum/say_list/mothroach
allow_mind_transfer = TRUE
/mob/living/simple_mob/animal/passive/mothroach/Initialize(mapload)
. = ..()
add_verb(src, /mob/living/proc/ventcrawl)
add_verb(src, /mob/living/proc/hide)
real_name = name
/mob/living/simple_mob/animal/passive/mothroach/attack_hand(mob/user)
. = ..()
if(stat != DEAD)
playsound(src, 'sound/voice/scream/moth/moth_scream.ogg', 50, TRUE)
/mob/living/simple_mob/animal/passive/mothroach/attackby(obj/item/O, mob/user)
. = ..()
if(stat != DEAD)
playsound(src, 'sound/voice/scream/moth/moth_scream.ogg', 50, TRUE)
/datum/say_list/mothroach
emote_hear = list("flutters")
/obj/item/holder/mothroach
name = "mothroach"
desc = "This is the adorable by-product of multiple attempts at genetically mixing mothpeople with cockroaches."
icon = 'icons/mob/animal.dmi'
icon_state = "mothroach"
item_state = "mothroach"
slot_flags = SLOT_HEAD
w_class = ITEMSIZE_TINY
item_icons = list(
slot_l_hand_str = 'icons/mob/lefthand_holder.dmi',
slot_r_hand_str = 'icons/mob/righthand_holder.dmi',
slot_head_str = 'icons/mob/head.dmi',
)
/mob/living/simple_mob/animal/passive/mothroach/bar
name = "mothroach bartender"
desc = "A mothroach serving drinks. Look at him go."
icon_state = "barroach"
icon_living = "barroach"
icon_dead = "barroach_dead"
holder_type = /obj/item/holder/mothroach/bar
/obj/item/holder/mothroach/bar
item_state = "barroach"

View File

@@ -20,6 +20,7 @@
required_points = 1
required_atoms = list(
/mob/living/simple_mob/animal/passive/mouse = 1,
/mob/living/simple_mob/animal/passive/mothroach = 1,
/mob/living/simple_mob/vore/otie/red/chubby/cocoa = 1,
/mob/living/simple_mob/vore/aggressive/rat/pet = 1,
)

View File

@@ -37,6 +37,7 @@
/mob/living/simple_mob/animal/passive/bird/parrot,
/mob/living/simple_mob/animal/passive/crab,
/mob/living/simple_mob/animal/passive/mouse,
/mob/living/simple_mob/animal/passive/mothroach,
/mob/living/simple_mob/animal/goat)
//todo: how the hell is the asteroid permanently powered?

View File

@@ -16,6 +16,7 @@
/mob/living/simple_mob/animal/passive/chicken,
/mob/living/simple_mob/animal/passive/opossum,
/mob/living/simple_mob/animal/passive/mouse,
/mob/living/simple_mob/animal/passive/mothroach,
/mob/living/simple_mob/vore/rabbit,
/mob/living/simple_mob/animal/goat,
/mob/living/simple_mob/animal/sif/tymisian,

Binary file not shown.

Before

Width:  |  Height:  |  Size: 230 KiB

After

Width:  |  Height:  |  Size: 278 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 263 KiB

After

Width:  |  Height:  |  Size: 266 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 357 B

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 347 B

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@@ -4344,6 +4344,13 @@
/obj/random/tech_supply,
/turf/simulated/floor/tiled/eris/dark/orangecorner,
/area/engineering/engine_eva)
"jh" = (
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 4
},
/mob/living/simple_mob/animal/passive/mothroach/bar,
/turf/simulated/floor/lino,
/area/crew_quarters/bar)
"ji" = (
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
@@ -34382,7 +34389,7 @@ sP
dw
On
py
fp
jh
Dj
Sx
po

View File

@@ -10095,6 +10095,10 @@
},
/turf/simulated/floor/tiled,
/area/rnd/outpost/xenobiology/outpost_north_airlock)
"aqB" = (
/mob/living/simple_mob/animal/passive/mothroach/bar,
/turf/simulated/floor/lino,
/area/crew_quarters/bar)
"aqC" = (
/obj/item/radio/intercom{
dir = 1;
@@ -62208,7 +62212,7 @@ anj
aKl
aGx
bgz
bgz
aqB
ato
bcp
atN

Binary file not shown.

View File

@@ -3612,6 +3612,7 @@
#include "code\modules\mob\living\simple_mob\subtypes\animal\passive\lizard.dm"
#include "code\modules\mob\living\simple_mob\subtypes\animal\passive\lizard_mutant_event.dm"
#include "code\modules\mob\living\simple_mob\subtypes\animal\passive\misc.dm"
#include "code\modules\mob\living\simple_mob\subtypes\animal\passive\mothroach.dm"
#include "code\modules\mob\living\simple_mob\subtypes\animal\passive\mouse.dm"
#include "code\modules\mob\living\simple_mob\subtypes\animal\passive\mouse_mutant_event.dm"
#include "code\modules\mob\living\simple_mob\subtypes\animal\passive\mouse_vr.dm"