diff --git a/code/modules/mob/living/simple_animal/borer/borer.dm b/code/modules/mob/living/simple_animal/borer/borer.dm index d111ab63a8a..f83be7bd942 100644 --- a/code/modules/mob/living/simple_animal/borer/borer.dm +++ b/code/modules/mob/living/simple_animal/borer/borer.dm @@ -4,6 +4,7 @@ desc = "A small, quivering sluglike creature." speak_emote = list("chirrups") emote_hear = list("chirrups") + organ_names = list("head", "rear segment", "central segment") response_help = "pokes" response_disarm = "prods" response_harm = "stomps on" diff --git a/code/modules/mob/living/simple_animal/constructs/constructs/artificer.dm b/code/modules/mob/living/simple_animal/constructs/constructs/artificer.dm index 489207d869c..399cefc5382 100644 --- a/code/modules/mob/living/simple_animal/constructs/constructs/artificer.dm +++ b/code/modules/mob/living/simple_animal/constructs/constructs/artificer.dm @@ -12,6 +12,7 @@ melee_damage_lower = 10 melee_damage_upper = 10 attacktext = "rammed" + organ_names = list("core", "production array", "sensor array") speed = 0 environment_smash = TRUE attack_sound = 'sound/weapons/rapidslice.ogg' diff --git a/code/modules/mob/living/simple_animal/constructs/constructs/harvester.dm b/code/modules/mob/living/simple_animal/constructs/constructs/harvester.dm index c7479b170d4..6e4a9d54eff 100644 --- a/code/modules/mob/living/simple_animal/constructs/constructs/harvester.dm +++ b/code/modules/mob/living/simple_animal/constructs/constructs/harvester.dm @@ -10,6 +10,7 @@ melee_damage_lower = 25 melee_damage_upper = 25 attacktext = "violently stabbed" + organ_names = list("core", "harvesting array") speed = -1 environment_smash = 1 see_in_dark = 7 diff --git a/code/modules/mob/living/simple_animal/constructs/constructs/juggernaut.dm b/code/modules/mob/living/simple_animal/constructs/constructs/juggernaut.dm index 398952abf0a..ca8bcb875a1 100644 --- a/code/modules/mob/living/simple_animal/constructs/constructs/juggernaut.dm +++ b/code/modules/mob/living/simple_animal/constructs/constructs/juggernaut.dm @@ -12,6 +12,7 @@ melee_damage_lower = 30 melee_damage_upper = 30 attacktext = "smashed their armored gauntlet into" + organ_names = list("core", "right arm", "left arm") mob_size = MOB_LARGE speed = 3 environment_smash = 2 diff --git a/code/modules/mob/living/simple_animal/constructs/constructs/wraith.dm b/code/modules/mob/living/simple_animal/constructs/constructs/wraith.dm index bc39475d5ef..959afb0c0e1 100644 --- a/code/modules/mob/living/simple_animal/constructs/constructs/wraith.dm +++ b/code/modules/mob/living/simple_animal/constructs/constructs/wraith.dm @@ -10,6 +10,7 @@ melee_damage_lower = 25 melee_damage_upper = 25 attacktext = "slashed" + organ_names = list("core", "right arm", "left arm") speed = -1 environment_smash = TRUE see_in_dark = 7 diff --git a/code/modules/mob/living/simple_animal/familiars/familiars.dm b/code/modules/mob/living/simple_animal/familiars/familiars.dm index 8992a00f6d3..7325b621894 100644 --- a/code/modules/mob/living/simple_animal/familiars/familiars.dm +++ b/code/modules/mob/living/simple_animal/familiars/familiars.dm @@ -37,7 +37,7 @@ icon_dead = "evilcrab_dead" speak_emote = list("chitters","clicks") - + organ_names = list("head", "carapace") health = 200 maxHealth = 200 @@ -71,6 +71,7 @@ canbrush = TRUE brush = /obj/item/reagent_containers/glass/rag meat_type = /obj/item/reagent_containers/food/snacks/fish/carpmeat + organ_names = list("head", "chest", "tail", "left flipper", "right flipper") min_oxy = 0 @@ -88,6 +89,7 @@ icon_state = "horror" icon_living = "horror" icon_dead = "horror_dead" + organ_names = list("meaty core") /mob/living/simple_animal/familiar/horror/Initialize() . = ..() @@ -95,10 +97,12 @@ icon_state = "horror_alt" icon_living = "horror_alt" icon_dead = "horror_alt_dead" + organ_names = list("head", "chest", "tail", "leg") else if(prob(25)) icon_state = "abomination" icon_living = "abomination" icon_dead = "abomination_dead" + organ_names = list("head", "chest", "tail", "leg") speak_emote = list("moans", "groans") diff --git a/code/modules/mob/living/simple_animal/friendly/adhomai.dm b/code/modules/mob/living/simple_animal/friendly/adhomai.dm index 1646ec1d6e6..bf6a13e20cb 100644 --- a/code/modules/mob/living/simple_animal/friendly/adhomai.dm +++ b/code/modules/mob/living/simple_animal/friendly/adhomai.dm @@ -11,6 +11,7 @@ emote_see = list("whistles") meat_type = /obj/item/reagent_containers/food/snacks/meat/adhomai meat_amount = 2 + organ_names = list("head", "chest", "right fore leg", "left fore leg", "right rear leg", "left rear leg") hunger_enabled = FALSE canbrush = TRUE var/eggsleft = 0 @@ -57,6 +58,7 @@ turns_per_move = 5 see_in_dark = 6 meat_amount = 30 + organ_names = list("head", "chest", "right fore leg", "left fore leg", "right rear leg", "left rear leg") response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" @@ -88,6 +90,7 @@ stop_automated_movement_when_pulled = 0 mob_size = 12 meat_type = /obj/item/reagent_containers/food/snacks/meat/adhomai + organ_names = list("head", "chest", "right fore leg", "left fore leg", "right rear leg", "left rear leg") maxHealth = 150 health = 150 @@ -126,6 +129,7 @@ milk_type = /datum/reagent/drink/milk meat_type = /obj/item/reagent_containers/food/snacks/meat/chicken + organ_names = list("head", "chest", "fatty core", "blubberous torso", "thick centre", "left leg", "right leg") butchering_products = list(/obj/item/reagent_containers/food/snacks/spreads/lard = 5) holder_type = /obj/item/holder/schlorrgo diff --git a/code/modules/mob/living/simple_animal/friendly/carp.dm b/code/modules/mob/living/simple_animal/friendly/carp.dm index cfba83152e8..ea669271567 100644 --- a/code/modules/mob/living/simple_animal/friendly/carp.dm +++ b/code/modules/mob/living/simple_animal/friendly/carp.dm @@ -17,6 +17,7 @@ turns_per_move = 5 see_in_dark = 6 meat_type = /obj/item/reagent_containers/food/snacks/fish/carpmeat + organ_names = list("head", "chest", "tail", "left flipper", "right flipper") response_help = "brushes" response_disarm = "attempts to push" response_harm = "injures" diff --git a/code/modules/mob/living/simple_animal/friendly/cat.dm b/code/modules/mob/living/simple_animal/friendly/cat.dm index cbc1537c357..2e91000483f 100644 --- a/code/modules/mob/living/simple_animal/friendly/cat.dm +++ b/code/modules/mob/living/simple_animal/friendly/cat.dm @@ -18,6 +18,7 @@ turns_per_move = 5 see_in_dark = 6 meat_type = /obj/item/reagent_containers/food/snacks/meat + organ_names = list("head", "chest", "right fore leg", "left fore leg", "right rear leg", "left rear leg") response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" diff --git a/code/modules/mob/living/simple_animal/friendly/corgi.dm b/code/modules/mob/living/simple_animal/friendly/corgi.dm index df1c4785080..58c20b6e9d4 100644 --- a/code/modules/mob/living/simple_animal/friendly/corgi.dm +++ b/code/modules/mob/living/simple_animal/friendly/corgi.dm @@ -15,6 +15,7 @@ turns_per_move = 10 meat_type = /obj/item/reagent_containers/food/snacks/meat/corgi meat_amount = 3 + organ_names = list("head", "chest", "right fore leg", "left fore leg", "right rear leg", "left rear leg") response_help = "pets" response_disarm = "bops" response_harm = "kicks" diff --git a/code/modules/mob/living/simple_animal/friendly/crab.dm b/code/modules/mob/living/simple_animal/friendly/crab.dm index ff8be87df21..8620d0678b5 100644 --- a/code/modules/mob/living/simple_animal/friendly/crab.dm +++ b/code/modules/mob/living/simple_animal/friendly/crab.dm @@ -12,6 +12,7 @@ speak_chance = 1 turns_per_move = 5 meat_type = /obj/item/reagent_containers/food/snacks/crabmeat + organ_names = list("head", "carapace") response_help = "pets" response_disarm = "gently pushes aside" response_harm = "stomps" diff --git a/code/modules/mob/living/simple_animal/friendly/farm_animals.dm b/code/modules/mob/living/simple_animal/friendly/farm_animals.dm index d2a2ff479da..0687f33e6be 100644 --- a/code/modules/mob/living/simple_animal/friendly/farm_animals.dm +++ b/code/modules/mob/living/simple_animal/friendly/farm_animals.dm @@ -16,6 +16,7 @@ meat_type = /obj/item/reagent_containers/food/snacks/meat meat_amount = 6 mob_size = 4.5//weight based on Chanthangi goats + organ_names = list("head", "chest", "right fore leg", "left fore leg", "right rear leg", "left rear leg") response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" @@ -88,6 +89,7 @@ see_in_dark = 6 meat_type = /obj/item/reagent_containers/food/snacks/meat meat_amount = 40 //Cows are huge, should be worth a lot of meat + organ_names = list("head", "chest", "right fore leg", "left fore leg", "right rear leg", "left rear leg") response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" @@ -132,6 +134,7 @@ turns_per_move = 2 meat_type = /obj/item/reagent_containers/food/snacks/meat/chicken meat_amount = 1 + organ_names = list("head", "chest", "left leg", "right leg") response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" diff --git a/code/modules/mob/living/simple_animal/friendly/fox.dm b/code/modules/mob/living/simple_animal/friendly/fox.dm index 796927b2133..b76a08ab4ff 100644 --- a/code/modules/mob/living/simple_animal/friendly/fox.dm +++ b/code/modules/mob/living/simple_animal/friendly/fox.dm @@ -16,6 +16,7 @@ see_in_dark = 6 meat_type = /obj/item/reagent_containers/food/snacks/meat meat_amount = 3 + organ_names = list("head", "chest", "right fore leg", "left fore leg", "right rear leg", "left rear leg") response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" diff --git a/code/modules/mob/living/simple_animal/friendly/hakhma.dm b/code/modules/mob/living/simple_animal/friendly/hakhma.dm index 6d71889fe54..a120f56b039 100644 --- a/code/modules/mob/living/simple_animal/friendly/hakhma.dm +++ b/code/modules/mob/living/simple_animal/friendly/hakhma.dm @@ -12,6 +12,7 @@ speak_chance = 1 turns_per_move = 5 meat_amount = 35 + organ_names = list("head", "chest", "right fore leg", "left fore leg", "right rear leg", "left rear leg") response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" diff --git a/code/modules/mob/living/simple_animal/friendly/lizard.dm b/code/modules/mob/living/simple_animal/friendly/lizard.dm index 74fd586347a..645b4104f66 100644 --- a/code/modules/mob/living/simple_animal/friendly/lizard.dm +++ b/code/modules/mob/living/simple_animal/friendly/lizard.dm @@ -10,6 +10,7 @@ attacktext = "bitten" melee_damage_lower = 1 melee_damage_upper = 2 + organ_names = list("head", "chest", "right fore leg", "left fore leg", "right rear leg", "left rear leg") response_help = "pets" response_disarm = "shoos" response_harm = "stomps on" diff --git a/code/modules/mob/living/simple_animal/friendly/mushroom.dm b/code/modules/mob/living/simple_animal/friendly/mushroom.dm index bee4f177b41..ac787195e55 100644 --- a/code/modules/mob/living/simple_animal/friendly/mushroom.dm +++ b/code/modules/mob/living/simple_animal/friendly/mushroom.dm @@ -12,6 +12,7 @@ maxHealth = 5 health = 5 meat_type = /obj/item/reagent_containers/food/snacks/hugemushroomslice + organ_names = list("cap", "chest", "left leg", "right leg") response_help = "pets" response_disarm = "gently pushes aside" response_harm = "whacks" diff --git a/code/modules/mob/living/simple_animal/friendly/rat.dm b/code/modules/mob/living/simple_animal/friendly/rat.dm index a406032b306..9ff55ec72ad 100644 --- a/code/modules/mob/living/simple_animal/friendly/rat.dm +++ b/code/modules/mob/living/simple_animal/friendly/rat.dm @@ -30,6 +30,7 @@ maxHealth = 5 health = 5 meat_type = /obj/item/reagent_containers/food/snacks/meat/rat + organ_names = list("head", "chest", "right fore leg", "left fore leg", "right rear leg", "left rear leg") response_help = "pets" response_disarm = "gently pushes aside" response_harm = "stomps on" diff --git a/code/modules/mob/living/simple_animal/friendly/spiderbot.dm b/code/modules/mob/living/simple_animal/friendly/spiderbot.dm index ea945dc7144..b61b466de79 100644 --- a/code/modules/mob/living/simple_animal/friendly/spiderbot.dm +++ b/code/modules/mob/living/simple_animal/friendly/spiderbot.dm @@ -34,6 +34,7 @@ melee_damage_lower = 1 melee_damage_upper = 3 + organ_names = list("head") response_help = "pets" response_disarm = "shoos" response_harm = "stomps on" diff --git a/code/modules/mob/living/simple_animal/friendly/tomato.dm b/code/modules/mob/living/simple_animal/friendly/tomato.dm index c40fc810cb4..6cf7a8d5ba3 100644 --- a/code/modules/mob/living/simple_animal/friendly/tomato.dm +++ b/code/modules/mob/living/simple_animal/friendly/tomato.dm @@ -9,6 +9,7 @@ maxHealth = 15 health = 15 meat_type = /obj/item/reagent_containers/food/snacks/tomatomeat + organ_names = list("head") response_help = "prods" response_disarm = "pushes aside" response_harm = "smacks" diff --git a/code/modules/mob/living/simple_animal/hostile/adhomai.dm b/code/modules/mob/living/simple_animal/hostile/adhomai.dm index 6ec17b19b50..e36909ef2f8 100644 --- a/code/modules/mob/living/simple_animal/hostile/adhomai.dm +++ b/code/modules/mob/living/simple_animal/hostile/adhomai.dm @@ -6,6 +6,8 @@ icon_dead = "devil_dead" icon_rest = "devil_rest" turns_per_move = 3 + + organ_names = list("head", "chest", "right wing", "left wing", "right leg", "left leg") response_help = "pets the" response_disarm = "gently pushes aside the" response_harm = "hits the" diff --git a/code/modules/mob/living/simple_animal/hostile/alien.dm b/code/modules/mob/living/simple_animal/hostile/alien.dm index dfb345144ce..50468db0008 100644 --- a/code/modules/mob/living/simple_animal/hostile/alien.dm +++ b/code/modules/mob/living/simple_animal/hostile/alien.dm @@ -11,6 +11,7 @@ response_harm = "hits" speed = -1 meat_type = /obj/item/reagent_containers/food/snacks/xenomeat + organ_names = list("chest", "lower body", "left arm", "right arm", "left leg", "right leg", "head") maxHealth = 100 health = 100 harm_intent_damage = 5 diff --git a/code/modules/mob/living/simple_animal/hostile/bat.dm b/code/modules/mob/living/simple_animal/hostile/bat.dm index 08d4c254c74..66ac137f62e 100644 --- a/code/modules/mob/living/simple_animal/hostile/bat.dm +++ b/code/modules/mob/living/simple_animal/hostile/bat.dm @@ -9,6 +9,7 @@ speak_chance = 0 turns_per_move = 3 meat_type = /obj/item/reagent_containers/food/snacks/meat + organ_names = list("upper bat", "mid bat", "lower bat") response_help = "pets the" response_disarm = "gently pushes aside the" response_harm = "hits the" diff --git a/code/modules/mob/living/simple_animal/hostile/bear.dm b/code/modules/mob/living/simple_animal/hostile/bear.dm index 0b92edde5ec..1ab4809f67d 100644 --- a/code/modules/mob/living/simple_animal/hostile/bear.dm +++ b/code/modules/mob/living/simple_animal/hostile/bear.dm @@ -18,6 +18,7 @@ see_in_dark = 6 meat_type = /obj/item/reagent_containers/food/snacks/bearmeat meat_amount = 5 + organ_names = list("chest", "lower body", "left arm", "right arm", "left leg", "right leg", "head") response_help = "pets" response_disarm = "gently pushes aside" response_harm = "hits" diff --git a/code/modules/mob/living/simple_animal/hostile/carp.dm b/code/modules/mob/living/simple_animal/hostile/carp.dm index 84b23e84fe0..10f678de041 100644 --- a/code/modules/mob/living/simple_animal/hostile/carp.dm +++ b/code/modules/mob/living/simple_animal/hostile/carp.dm @@ -11,6 +11,7 @@ speak_chance = 0 turns_per_move = 5 meat_type = /obj/item/reagent_containers/food/snacks/fish/carpmeat + organ_names = list("head", "chest", "tail", "left flipper", "right flipper") response_help = "pets the" response_disarm = "gently pushes aside the" response_harm = "hits the" diff --git a/code/modules/mob/living/simple_animal/hostile/changeling.dm b/code/modules/mob/living/simple_animal/hostile/changeling.dm index 04b766e473a..1da07aa924e 100644 --- a/code/modules/mob/living/simple_animal/hostile/changeling.dm +++ b/code/modules/mob/living/simple_animal/hostile/changeling.dm @@ -15,6 +15,7 @@ tameable = FALSE + organ_names = list("head", "chest", "tail", "leg") response_help = "pets" response_disarm = "shoves" response_harm = "harmlessly punches" diff --git a/code/modules/mob/living/simple_animal/hostile/commanded/bear_companion.dm b/code/modules/mob/living/simple_animal/hostile/commanded/bear_companion.dm index 85eec25eee1..03518651095 100644 --- a/code/modules/mob/living/simple_animal/hostile/commanded/bear_companion.dm +++ b/code/modules/mob/living/simple_animal/hostile/commanded/bear_companion.dm @@ -23,6 +23,7 @@ mob_size = 17 + organ_names = list("chest", "lower body", "left arm", "right arm", "left leg", "right leg", "head") response_help = "pets" response_harm = "hits" response_disarm = "pushes" diff --git a/code/modules/mob/living/simple_animal/hostile/commanded/guard_dog.dm b/code/modules/mob/living/simple_animal/hostile/commanded/guard_dog.dm index 14b387ca12b..dc1754d6556 100644 --- a/code/modules/mob/living/simple_animal/hostile/commanded/guard_dog.dm +++ b/code/modules/mob/living/simple_animal/hostile/commanded/guard_dog.dm @@ -33,6 +33,7 @@ mob_size = 5 + organ_names = list("head", "chest", "right fore leg", "left fore leg", "right rear leg", "left rear leg") response_help = "pets" response_harm = "hits" response_disarm = "pushes" diff --git a/code/modules/mob/living/simple_animal/hostile/commanded/ives.dm b/code/modules/mob/living/simple_animal/hostile/commanded/ives.dm index 59e1942ea9a..119822afea2 100644 --- a/code/modules/mob/living/simple_animal/hostile/commanded/ives.dm +++ b/code/modules/mob/living/simple_animal/hostile/commanded/ives.dm @@ -34,6 +34,7 @@ mob_size = 5 + organ_names = list("core", "head", "tail") response_help = "pets" response_harm = "hits" response_disarm = "pushes" diff --git a/code/modules/mob/living/simple_animal/hostile/creature.dm b/code/modules/mob/living/simple_animal/hostile/creature.dm index d8dc36baee9..ee1d85094a1 100644 --- a/code/modules/mob/living/simple_animal/hostile/creature.dm +++ b/code/modules/mob/living/simple_animal/hostile/creature.dm @@ -9,6 +9,7 @@ maxHealth = 80 melee_damage_lower = 25 melee_damage_upper = 50 + organ_names = list("meaty core") attacktext = "chomped" attack_sound = 'sound/weapons/bite.ogg' faction = "creature" diff --git a/code/modules/mob/living/simple_animal/hostile/faithless.dm b/code/modules/mob/living/simple_animal/hostile/faithless.dm index cd65e4665dd..1f445312a30 100644 --- a/code/modules/mob/living/simple_animal/hostile/faithless.dm +++ b/code/modules/mob/living/simple_animal/hostile/faithless.dm @@ -7,6 +7,7 @@ icon_dead = "faithless_dead" speak_chance = 0 turns_per_move = 5 + organ_names = list("chest", "lower body", "left arm", "right arm", "left leg", "right leg", "head") response_help = "passes through" response_disarm = "shoves" response_harm = "hits" diff --git a/code/modules/mob/living/simple_animal/hostile/giant_spider.dm b/code/modules/mob/living/simple_animal/hostile/giant_spider.dm index 0ef08c12853..4ad5377b219 100644 --- a/code/modules/mob/living/simple_animal/hostile/giant_spider.dm +++ b/code/modules/mob/living/simple_animal/hostile/giant_spider.dm @@ -17,6 +17,7 @@ turns_per_move = 5 see_in_dark = 10 meat_type = /obj/item/reagent_containers/food/snacks/xenomeat + organ_names = list("thorax", "legs", "head") response_help = "pets" response_disarm = "gently pushes aside" response_harm = "pokes" diff --git a/code/modules/mob/living/simple_animal/hostile/hivebot.dm b/code/modules/mob/living/simple_animal/hostile/hivebot.dm index 84a89293367..8f5ac470cd5 100644 --- a/code/modules/mob/living/simple_animal/hostile/hivebot.dm +++ b/code/modules/mob/living/simple_animal/hostile/hivebot.dm @@ -23,6 +23,7 @@ attacktext = "slashed" projectilesound = 'sound/weapons/bladeslice.ogg' projectiletype = /obj/item/projectile/bullet/pistol/hivebotspike + organ_names = list("head", "core", "side thruster", "bottom thruster") faction = "hivebot" min_oxy = 0 max_oxy = 0 @@ -80,6 +81,7 @@ health = 100 maxHealth = 100 icon_state = "hivebotbomber" + organ_names = list("head", "core", "bottom thruster") attacktext = "bumped" move_to_delay = 8 var/has_exploded = FALSE @@ -230,6 +232,7 @@ wander = 0 stop_automated_movement = 1 status_flags = 0 + organ_names = list("head", "core", "right fore leg", "left fore leg", "right rear leg", "left rear leg") faction = "hivebot" ranged = 1 rapid = 1 @@ -511,6 +514,7 @@ attacktext = "skewered" projectilesound = 'sound/weapons/lasercannonfire.ogg' projectiletype = /obj/item/projectile/beam/hivebot/incendiary/heavy + organ_names = list("head", "core", "side thruster", "harvesting array") faction = "hivebot" min_oxy = 0 max_oxy = 0 diff --git a/code/modules/mob/living/simple_animal/hostile/krampus.dm b/code/modules/mob/living/simple_animal/hostile/krampus.dm index a6189ee5e34..5da9cc29a56 100644 --- a/code/modules/mob/living/simple_animal/hostile/krampus.dm +++ b/code/modules/mob/living/simple_animal/hostile/krampus.dm @@ -15,6 +15,7 @@ tameable = FALSE + organ_names = list("chest", "lower body", "left arm", "right arm", "left leg", "right leg", "head") response_help = "pets" response_disarm = "shoves" response_harm = "harmlessly punches" diff --git a/code/modules/mob/living/simple_animal/hostile/mimic.dm b/code/modules/mob/living/simple_animal/hostile/mimic.dm index cd0f57345f7..92006bfaeac 100644 --- a/code/modules/mob/living/simple_animal/hostile/mimic.dm +++ b/code/modules/mob/living/simple_animal/hostile/mimic.dm @@ -10,6 +10,7 @@ icon_living = "crate" meat_type = /obj/item/reagent_containers/food/snacks/fish/carpmeat + organ_names = list("lid", "body") response_help = "touches" response_disarm = "pushes" response_harm = "hits" diff --git a/code/modules/mob/living/simple_animal/hostile/moghesfauna.dm b/code/modules/mob/living/simple_animal/hostile/moghesfauna.dm index 08bf7d7cc72..74d5cbe08a2 100644 --- a/code/modules/mob/living/simple_animal/hostile/moghesfauna.dm +++ b/code/modules/mob/living/simple_animal/hostile/moghesfauna.dm @@ -12,6 +12,7 @@ turns_per_move = 5 speak_chance = 5 meat_type = /obj/item/reagent_containers/food/snacks/xenomeat + organ_names = list("chest", "lower body", "left arm", "right arm", "left leg", "right leg", "head") response_help = "pets" response_disarm = "shoves" response_harm = "harmlessly punches" diff --git a/code/modules/mob/living/simple_animal/hostile/morph.dm b/code/modules/mob/living/simple_animal/hostile/morph.dm index 51edbacc6c6..616a5d81ef0 100644 --- a/code/modules/mob/living/simple_animal/hostile/morph.dm +++ b/code/modules/mob/living/simple_animal/hostile/morph.dm @@ -11,7 +11,7 @@ icon_dead = "morph_dead" speed = 2.5 stop_automated_movement = TRUE - + organ_names = list("bulbous node", "meaty core") response_help = "pets" response_disarm = "shoves" response_harm = "harmlessly punches" diff --git a/code/modules/mob/living/simple_animal/hostile/phoron_worm.dm b/code/modules/mob/living/simple_animal/hostile/phoron_worm.dm index d12b5119bd0..da54a637d5e 100644 --- a/code/modules/mob/living/simple_animal/hostile/phoron_worm.dm +++ b/code/modules/mob/living/simple_animal/hostile/phoron_worm.dm @@ -11,6 +11,7 @@ turns_per_move = 5 speak_chance = 5 meat_type = /obj/item/reagent_containers/food/snacks/xenomeat + organ_names = list("head", "rear segment", "central segment") response_help = "pets" response_disarm = "shoves" response_harm = "harmlessly punches" diff --git a/code/modules/mob/living/simple_animal/hostile/pirate.dm b/code/modules/mob/living/simple_animal/hostile/pirate.dm index 1534c554ccc..d26789c20ed 100644 --- a/code/modules/mob/living/simple_animal/hostile/pirate.dm +++ b/code/modules/mob/living/simple_animal/hostile/pirate.dm @@ -7,6 +7,7 @@ icon_dead = "piratemelee_dead" speak_chance = 0 turns_per_move = 5 + organ_names = list("chest", "lower body", "left arm", "right arm", "left leg", "right leg", "head") response_help = "pushes" response_disarm = "shoves" response_harm = "hits" diff --git a/code/modules/mob/living/simple_animal/hostile/pra.dm b/code/modules/mob/living/simple_animal/hostile/pra.dm index fc8ce24414f..3841f4fab30 100644 --- a/code/modules/mob/living/simple_animal/hostile/pra.dm +++ b/code/modules/mob/living/simple_animal/hostile/pra.dm @@ -11,6 +11,7 @@ icon_dead = "republicon_dead" speak_chance = 5 turns_per_move = 3 + organ_names = list("chest", "lower body", "left arm", "right arm", "left leg", "right leg", "head") response_help = "pokes" response_disarm = "gently pushes aside" response_harm = "hits" diff --git a/code/modules/mob/living/simple_animal/hostile/retaliate/cavern.dm b/code/modules/mob/living/simple_animal/hostile/retaliate/cavern.dm index ace1b347002..99ff894e67f 100644 --- a/code/modules/mob/living/simple_animal/hostile/retaliate/cavern.dm +++ b/code/modules/mob/living/simple_animal/hostile/retaliate/cavern.dm @@ -9,6 +9,7 @@ ranged = 1 smart = TRUE turns_per_move = 3 + organ_names = list("head", "central segment", "tail") response_help = "pets" response_disarm = "gently pushes aside" response_harm = "hits" @@ -85,6 +86,7 @@ harm_intent_damage = 5 ranged = 1 smart = TRUE + organ_names = list("core", "right fore wheel", "left fore wheel", "right rear wheel", "left rear wheel") melee_damage_lower = 0 melee_damage_upper = 0 attacktext = "barrels into" diff --git a/code/modules/mob/living/simple_animal/hostile/russian.dm b/code/modules/mob/living/simple_animal/hostile/russian.dm index f67ab028602..bb5cd098342 100644 --- a/code/modules/mob/living/simple_animal/hostile/russian.dm +++ b/code/modules/mob/living/simple_animal/hostile/russian.dm @@ -8,6 +8,7 @@ icon_gib = "syndicate_gib" speak_chance = 0 turns_per_move = 5 + organ_names = list("chest", "lower body", "left arm", "right arm", "left leg", "right leg", "head") response_help = "pokes" response_disarm = "shoves" response_harm = "hits" diff --git a/code/modules/mob/living/simple_animal/hostile/spider_queen.dm b/code/modules/mob/living/simple_animal/hostile/spider_queen.dm index 6c98993036d..41c1904ead2 100644 --- a/code/modules/mob/living/simple_animal/hostile/spider_queen.dm +++ b/code/modules/mob/living/simple_animal/hostile/spider_queen.dm @@ -12,6 +12,7 @@ see_in_dark = 10 see_invisible = SEE_INVISIBLE_NOLIGHTING meat_type = /obj/item/reagent_containers/food/snacks/xenomeat + organ_names = list("thorax", "legs", "head") response_help = "pets" response_disarm = "gently pushes aside" response_harm = "pokes" diff --git a/code/modules/mob/living/simple_animal/hostile/syndicate.dm b/code/modules/mob/living/simple_animal/hostile/syndicate.dm index 59c8f5b473e..dcbd52a67c8 100644 --- a/code/modules/mob/living/simple_animal/hostile/syndicate.dm +++ b/code/modules/mob/living/simple_animal/hostile/syndicate.dm @@ -8,6 +8,7 @@ icon_gib = "syndicate_gib" speak_chance = 0 turns_per_move = 5 + organ_names = list("chest", "lower body", "left arm", "right arm", "left leg", "right leg", "head") response_help = "pokes" response_disarm = "shoves" response_harm = "hits" diff --git a/code/modules/mob/living/simple_animal/hostile/tree.dm b/code/modules/mob/living/simple_animal/hostile/tree.dm index 312c741b191..583ec3029dd 100644 --- a/code/modules/mob/living/simple_animal/hostile/tree.dm +++ b/code/modules/mob/living/simple_animal/hostile/tree.dm @@ -9,6 +9,7 @@ speak_chance = 0 turns_per_move = 5 meat_type = /obj/item/reagent_containers/food/snacks/fish/carpmeat + organ_names = list("trunk", "branches", "roots") response_help = "brushes" response_disarm = "pushes" response_harm = "hits" diff --git a/code/modules/mob/living/simple_animal/parrot.dm b/code/modules/mob/living/simple_animal/parrot.dm index c21ffda5793..e9af997b202 100644 --- a/code/modules/mob/living/simple_animal/parrot.dm +++ b/code/modules/mob/living/simple_animal/parrot.dm @@ -44,6 +44,7 @@ turns_per_move = 5 meat_type = /obj/item/reagent_containers/food/snacks/cracker/ + organ_names = list("torso", "left wing", "right wing", "head") response_help = "pets" response_disarm = "gently moves aside" response_harm = "swats" diff --git a/code/modules/mob/living/simple_animal/shade.dm b/code/modules/mob/living/simple_animal/shade.dm index a46545fa685..0dce4736f0c 100644 --- a/code/modules/mob/living/simple_animal/shade.dm +++ b/code/modules/mob/living/simple_animal/shade.dm @@ -11,6 +11,7 @@ universal_speak = 1 speak_emote = list("hisses") emote_hear = list("wails","screeches") + organ_names = list("chest", "lower body", "left arm", "right arm", "left leg", "right leg", "head") response_help = "puts their hand through" response_disarm = "flails at" response_harm = "punches" diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index 4e05dcc85a0..c72ccea4622 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -35,6 +35,7 @@ var/turns_since_scan = 0 //Interaction + var/list/organ_names = list("chest") var/response_help = "tries to help" var/response_disarm = "tries to disarm" var/response_harm = "hurts" diff --git a/code/modules/mob/living/simple_animal/worm.dm b/code/modules/mob/living/simple_animal/worm.dm index f560b35efb4..caa8e1dcd5a 100644 --- a/code/modules/mob/living/simple_animal/worm.dm +++ b/code/modules/mob/living/simple_animal/worm.dm @@ -10,6 +10,7 @@ speak_emote = list("transmits") //not supposed to be used under AI control emote_hear = list("transmits") //I'm just adding it so it doesn't runtime if controlled by player who speaks + organ_names = list("side") response_help = "touches" response_disarm = "flails at" response_harm = "punches the" diff --git a/code/modules/projectiles/projectile.dm b/code/modules/projectiles/projectile.dm index e625c87815e..311fc913f5e 100644 --- a/code/modules/projectiles/projectile.dm +++ b/code/modules/projectiles/projectile.dm @@ -185,11 +185,15 @@ playsound(target_mob, /decl/sound_category/bulletflyby_sound, 50, 1) return FALSE + var/impacted_organ = parse_zone(def_zone) + if(istype(target_mob, /mob/living/simple_animal)) + var/mob/living/simple_animal/SA = target_mob + impacted_organ = pick(SA.organ_names) //hit messages if(silenced) - to_chat(target_mob, "You've been hit in the [parse_zone(def_zone)] by \a [src]!") + to_chat(target_mob, "You've been hit in the [impacted_organ] by \a [src]!") else - target_mob.visible_message("\The [target_mob] is hit by \a [src] in the [parse_zone(def_zone)]!", "You are hit by \a [src] in the [parse_zone(def_zone)]!")//X has fired Y is now given by the guns so you cant tell who shot you if you could not see the shooter + target_mob.visible_message("\The [target_mob] is hit by \a [src] in the [impacted_organ]!", "You are hit by \a [src] in the [impacted_organ]!")//X has fired Y is now given by the guns so you cant tell who shot you if you could not see the shooter //admin logs if(!no_attack_log) diff --git a/html/changelogs/geeves-unique_animal_hitzones.yml b/html/changelogs/geeves-unique_animal_hitzones.yml new file mode 100644 index 00000000000..bf43aed981e --- /dev/null +++ b/html/changelogs/geeves-unique_animal_hitzones.yml @@ -0,0 +1,6 @@ +author: Geeves + +delete-after: True + +changes: + - rscadd: "Shooting simple mobs will now give more sensical text on where they were hit." \ No newline at end of file