diff --git a/code/datums/datumvars.dm b/code/datums/datumvars.dm index 8b62f16e26..2d6169049a 100644 --- a/code/datums/datumvars.dm +++ b/code/datums/datumvars.dm @@ -559,7 +559,6 @@ client return if(ishuman(MOB)) - world << "derp" var/mob/living/carbon/human/HUMANMOB = MOB HUMANMOB.makeSkeleton() diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm index 95ca8e250a..a788dd81ec 100644 --- a/code/modules/mob/living/carbon/carbon.dm +++ b/code/modules/mob/living/carbon/carbon.dm @@ -214,6 +214,8 @@ if(status == "") status = "OK" src.show_message(text("\t []My [] is [].",status=="OK"?"\blue ":"\red ",org.getDisplayName(),status),1) + if((SKELETON in H.mutations) && (!H.w_uniform) && (!H.wear_suit)) + H.play_xylophone() else var/t_him = "it" if (src.gender == MALE) diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 80943cf467..d3fb48e41d 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -644,4 +644,14 @@ /mob/living/carbon/human/proc/check_dna() dna.check_integrity(src) + return + +/mob/living/carbon/human/proc/play_xylophone() + if(!src.xylophone) + visible_message("\red [src] begins playing his ribcage like a xylophone. It's quite spooky.","\blue You begin to play a spooky refrain on your ribcage.","\red You hear a spooky xylophone melody.") + var/song = pick('sound/effects/xylophone1.ogg','sound/effects/xylophone2.ogg','sound/effects/xylophone3.ogg') + playsound(loc, song, 50, 1, -1) + xylophone = 1 + spawn(1200) + xylophone=0 return \ No newline at end of file diff --git a/code/modules/mob/living/carbon/human/human_defines.dm b/code/modules/mob/living/carbon/human/human_defines.dm index 94bc6fe60b..b71dc66d56 100644 --- a/code/modules/mob/living/carbon/human/human_defines.dm +++ b/code/modules/mob/living/carbon/human/human_defines.dm @@ -49,4 +49,6 @@ var/miming = null //Toggle for the mime's abilities. - var/failed_last_breath = 0 //This is used to determine if the mob failed a breath. If they did fail a brath, they will attempt to breathe each tick, otherwise just once per 4 ticks. \ No newline at end of file + var/failed_last_breath = 0 //This is used to determine if the mob failed a breath. If they did fail a brath, they will attempt to breathe each tick, otherwise just once per 4 ticks. + + var/xylophone = 0 //For the spoooooooky xylophone cooldown \ No newline at end of file diff --git a/sound/effects/xylophone1.ogg b/sound/effects/xylophone1.ogg new file mode 100644 index 0000000000..516d0f1a71 Binary files /dev/null and b/sound/effects/xylophone1.ogg differ diff --git a/sound/effects/xylophone2.ogg b/sound/effects/xylophone2.ogg new file mode 100644 index 0000000000..b5adafcc5c Binary files /dev/null and b/sound/effects/xylophone2.ogg differ diff --git a/sound/effects/xylophone3.ogg b/sound/effects/xylophone3.ogg new file mode 100644 index 0000000000..a3e7907d4a Binary files /dev/null and b/sound/effects/xylophone3.ogg differ