From feedac950546a47ad8b11742c95e4fe8fe2ec4b6 Mon Sep 17 00:00:00 2001 From: Incoming Date: Tue, 8 Oct 2013 22:38:03 -0400 Subject: [PATCH 1/2] Add a special always run event for halloween where the entire crew bursts into skeletons after a short while. This has no real effect on anything besides the fact that skeletons can use the rarely touched xylophone var. Adds a pair of usr checks for corgis so events can place things on their head without incuring a runtime (the chrismas event also does this) --- code/modules/events/holiday/halloween.dm | 17 ++++++++ .../living/simple_animal/friendly/corgi.dm | 11 ++--- tgstation.dme | 41 +++++++++++++++++++ 3 files changed, 64 insertions(+), 5 deletions(-) create mode 100644 code/modules/events/holiday/halloween.dm diff --git a/code/modules/events/holiday/halloween.dm b/code/modules/events/holiday/halloween.dm new file mode 100644 index 00000000000..4de36c08ca4 --- /dev/null +++ b/code/modules/events/holiday/halloween.dm @@ -0,0 +1,17 @@ +/datum/round_event_control/spooky + name = "2 SPOOKY!" + holidayID = "Halloween" + typepath = /datum/round_event/spooky + weight = -1 //forces it to be called, regardless of weight + max_occurrences = 1 + earliest_start = 0 + +/datum/round_event/spooky/start() + for(var/mob/living/carbon/human/H in mob_list) + if(H.dna) + hardset_dna(H, null, null, null, "skeleton") + for(var/mob/living/simple_animal/corgi/Ian/Ian in mob_list) + Ian.place_on_head(new /obj/item/weapon/bedsheet(Ian)) + +/datum/round_event/spooky/announce() + command_alert(pick("RATTLE ME BONES!","THE RIDE NEVER ENDS!", "A SKELETON POPS OUT!", "SPOOKY SCARY SKELETONS!", "CREWMEMBERS BEWARE, YOU'RE IN FOR A SCARE!") , "THE CALL IS COMING FROM INSIDE THE HOUSE") \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/friendly/corgi.dm b/code/modules/mob/living/simple_animal/friendly/corgi.dm index fb061b46175..faa0552d2d3 100644 --- a/code/modules/mob/living/simple_animal/friendly/corgi.dm +++ b/code/modules/mob/living/simple_animal/friendly/corgi.dm @@ -163,7 +163,7 @@ return if(inventory_head) - usr << "\red You can't put more than one hat on [src]!" + if(usr) usr << "\red You can't put more than one hat on [src]!" return if(!item_to_add) usr.visible_message("\blue [usr] pets [src]","\blue You rest your hand on [src]'s head for a moment.") @@ -278,10 +278,11 @@ valid = 1 if(valid) - usr.visible_message("[usr] puts [item_to_add] on [real_name]'s head. [src] looks at [usr] and barks once.", - "You put [item_to_add] on [real_name]'s head. [src] gives you a peculiar look, then wags \his tail once and barks.", - "You hear a friendly-sounding bark.") - usr.drop_item() + if(usr) + usr.visible_message("[usr] puts [item_to_add] on [real_name]'s head. [src] looks at [usr] and barks once.", + "You put [item_to_add] on [real_name]'s head. [src] gives you a peculiar look, then wags \his tail once and barks.", + "You hear a friendly-sounding bark.") + usr.drop_item() item_to_add.loc = src src.inventory_head = item_to_add regenerate_icons() diff --git a/tgstation.dme b/tgstation.dme index 94f8cf20965..43f46fb1c3d 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -6,6 +6,46 @@ // BEGIN_FILE_DIR #define FILE_DIR . +#define FILE_DIR "html" +#define FILE_DIR "icons" +#define FILE_DIR "icons/effects" +#define FILE_DIR "icons/mecha" +#define FILE_DIR "icons/misc" +#define FILE_DIR "icons/mob" +#define FILE_DIR "icons/obj" +#define FILE_DIR "icons/obj/assemblies" +#define FILE_DIR "icons/obj/atmospherics" +#define FILE_DIR "icons/obj/clothing" +#define FILE_DIR "icons/obj/doors" +#define FILE_DIR "icons/obj/flora" +#define FILE_DIR "icons/obj/machines" +#define FILE_DIR "icons/obj/pipes" +#define FILE_DIR "icons/obj/power_cond" +#define FILE_DIR "icons/pda_icons" +#define FILE_DIR "icons/spideros_icons" +#define FILE_DIR "icons/stamp_icons" +#define FILE_DIR "icons/Testing" +#define FILE_DIR "icons/turf" +#define FILE_DIR "icons/vending_icons" +#define FILE_DIR "nano" +#define FILE_DIR "nano/images" +#define FILE_DIR "sound" +#define FILE_DIR "sound/AI" +#define FILE_DIR "sound/ambience" +#define FILE_DIR "sound/effects" +#define FILE_DIR "sound/hallucinations" +#define FILE_DIR "sound/items" +#define FILE_DIR "sound/machines" +#define FILE_DIR "sound/mecha" +#define FILE_DIR "sound/misc" +#define FILE_DIR "sound/piano" +#define FILE_DIR "sound/violin" +#define FILE_DIR "sound/voice" +#define FILE_DIR "sound/voice/complionator" +#define FILE_DIR "sound/weapons" +#define FILE_DIR "tools" +#define FILE_DIR "tools/AddToChangelog" +#define FILE_DIR "tools/AddToChangelog/AddToChangelog" // END_FILE_DIR // BEGIN_PREFERENCES @@ -783,6 +823,7 @@ #include "code\modules\events\spontaneous_appendicitis.dm" #include "code\modules\events\vent_clog.dm" #include "code\modules\events\wormholes.dm" +#include "code\modules\events\holiday\halloween.dm" #include "code\modules\events\holiday\xmas.dm" #include "code\modules\flufftext\Dreaming.dm" #include "code\modules\flufftext\Hallucination.dm" From 2134af37282baf60d58c71ccea3038c2f54f5c54 Mon Sep 17 00:00:00 2001 From: Incoming5643 Date: Tue, 8 Oct 2013 22:47:16 -0400 Subject: [PATCH 2/2] Removed those weird extra defines that always show up in my dme when I try to include it in a push It' 2spooky4me --- tgstation.dme | 40 ---------------------------------------- 1 file changed, 40 deletions(-) diff --git a/tgstation.dme b/tgstation.dme index 43f46fb1c3d..b294dbd5686 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -6,46 +6,6 @@ // BEGIN_FILE_DIR #define FILE_DIR . -#define FILE_DIR "html" -#define FILE_DIR "icons" -#define FILE_DIR "icons/effects" -#define FILE_DIR "icons/mecha" -#define FILE_DIR "icons/misc" -#define FILE_DIR "icons/mob" -#define FILE_DIR "icons/obj" -#define FILE_DIR "icons/obj/assemblies" -#define FILE_DIR "icons/obj/atmospherics" -#define FILE_DIR "icons/obj/clothing" -#define FILE_DIR "icons/obj/doors" -#define FILE_DIR "icons/obj/flora" -#define FILE_DIR "icons/obj/machines" -#define FILE_DIR "icons/obj/pipes" -#define FILE_DIR "icons/obj/power_cond" -#define FILE_DIR "icons/pda_icons" -#define FILE_DIR "icons/spideros_icons" -#define FILE_DIR "icons/stamp_icons" -#define FILE_DIR "icons/Testing" -#define FILE_DIR "icons/turf" -#define FILE_DIR "icons/vending_icons" -#define FILE_DIR "nano" -#define FILE_DIR "nano/images" -#define FILE_DIR "sound" -#define FILE_DIR "sound/AI" -#define FILE_DIR "sound/ambience" -#define FILE_DIR "sound/effects" -#define FILE_DIR "sound/hallucinations" -#define FILE_DIR "sound/items" -#define FILE_DIR "sound/machines" -#define FILE_DIR "sound/mecha" -#define FILE_DIR "sound/misc" -#define FILE_DIR "sound/piano" -#define FILE_DIR "sound/violin" -#define FILE_DIR "sound/voice" -#define FILE_DIR "sound/voice/complionator" -#define FILE_DIR "sound/weapons" -#define FILE_DIR "tools" -#define FILE_DIR "tools/AddToChangelog" -#define FILE_DIR "tools/AddToChangelog/AddToChangelog" // END_FILE_DIR // BEGIN_PREFERENCES