Every kind of animal can hallucinate their mother (#79300)

## About The Pull Request

The "your mother" hallucination fallaciously assumed that only humans
could hallucinate, and then would throw errors if a mob with no DNA
tried to hallucinate its mother.
Now non-human mobs can also see their nagging parent in their brain.


![image](https://github.com/tgstation/tgstation/assets/7483112/38ca44ac-db1b-492d-8383-3ad2dcd1e309)

Plus there's an easter egg for one special boy.

## Changelog

🆑
fix: Non-human mobs can hallucinate their mothers without causing a
runtime error
/🆑
This commit is contained in:
Jacquerel
2023-10-31 17:04:14 -07:00
committed by GitHub
parent 89ce531194
commit bd380cc2a0
+17 -5
View File
@@ -16,7 +16,7 @@
mother = new(spawn_loc, hallucinator, src)
mother.AddComponent(/datum/component/leash, owner = hallucinator, distance = get_dist(hallucinator, mother)) //basically makes mother follow them
point_at(hallucinator)
talk("[hallucinator]!!!!")
talk("[capitalize(hallucinator.real_name)]!!!!") // Your mother won't be fooled by paltry disguises
var/list/scold_lines = list(
pick(list("CLEAN YOUR ROOM THIS INSTANT!", "IT'S TIME TO WAKE UP FOR SCHOOL!!")),
pick(list("YOU INSULT YOUR GRANDPARENTS!", "USELESS!")),
@@ -75,7 +75,19 @@
image_state = ""
/obj/effect/client_image_holder/hallucination/your_mother/Initialize(mapload, list/mobs_which_see_us, datum/hallucination/parent)
. = ..()
var/mob/living/carbon/hallucinator = parent.hallucinator
image_icon = getFlatIcon(get_dynamic_human_appearance(/datum/outfit/yourmother, hallucinator.dna.species.type))
regenerate_image()
var/mob/living/hallucinator = parent.hallucinator
if (ishuman(hallucinator))
var/mob/living/carbon/dna_haver = hallucinator
image_icon = getFlatIcon(get_dynamic_human_appearance(/datum/outfit/yourmother, dna_haver.dna.species.type))
return ..()
if (istype(hallucinator, /mob/living/basic/pet/dog/corgi/ian))
image_icon = getFlatIcon(get_dynamic_human_appearance(/datum/outfit/job/hop))
name = "Head of Personnel"
return ..()
image_icon = hallucinator.icon
image_state = hallucinator.icon_state
image_pixel_x = hallucinator.pixel_x
image_pixel_y = hallucinator.pixel_y
return ..()