diff --git a/code/modules/events/holiday/halloween.dm b/code/modules/events/holiday/halloween.dm index 5415eab386..2b8bac0c39 100644 --- a/code/modules/events/holiday/halloween.dm +++ b/code/modules/events/holiday/halloween.dm @@ -10,12 +10,17 @@ ..() for(var/mob/living/carbon/human/H in GLOB.mob_list) var/obj/item/storage/backpack/b = locate() in H.contents +<<<<<<< HEAD new /obj/item/storage/spooky(b) if(ishuman(H) || islizard(H)) if(prob(50)) H.set_species(/datum/species/skeleton) else H.set_species(/datum/species/zombie) +======= + if(b) + new /obj/item/storage/spooky(b) +>>>>>>> 00396d0... Halloween Tweaks (#32087) for(var/mob/living/simple_animal/pet/dog/corgi/Ian/Ian in GLOB.mob_list) Ian.place_on_head(new /obj/item/bedsheet(Ian)) @@ -26,77 +31,6 @@ /datum/round_event/spooky/announce() priority_announce(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") -//Eyeball migration -/datum/round_event_control/carp_migration/eyeballs - name = "Eyeball Migration" - typepath = /datum/round_event/carp_migration/eyeballs - holidayID = HALLOWEEN - weight = 25 - earliest_start = 0 - -/datum/round_event/carp_migration/eyeballs/start() - for(var/obj/effect/landmark/carpspawn/C in GLOB.landmarks_list) - new /mob/living/simple_animal/hostile/carp/eyeball(C.loc) - -//Pumpking meteors waves -/datum/round_event_control/meteor_wave/spooky - name = "Pumpkin Wave" - typepath = /datum/round_event/meteor_wave/spooky - holidayID = HALLOWEEN - weight = 20 - max_occurrences = 2 - -/datum/round_event/meteor_wave/spooky - endWhen = 40 - -/datum/round_event/meteor_wave/spooky/tick() - if(IsMultiple(activeFor, 4)) - spawn_meteors(3, GLOB.meteorsSPOOKY) //meteor list types defined in gamemode/meteor/meteors.dm - -//Creepy clown invasion -/datum/round_event_control/creepy_clowns - name = "Clowns" - typepath = /datum/round_event/creepy_clowns - holidayID = HALLOWEEN - weight = 20 - earliest_start = 0 - -/datum/round_event/creepy_clowns - endWhen = 40 - -/datum/round_event/creepy_clowns/start() - for(var/mob/living/carbon/human/H in GLOB.living_mob_list) - if(!H.client || !istype(H)) - return - to_chat(H, "Honk...") - SEND_SOUND(H, sound('sound/spookoween/scary_clown_appear.ogg')) - var/turf/T = get_turf(H) - if(T) - new /obj/effect/hallucination/simple/clown(T, H, 50) - -/datum/round_event/creepy_clowns/tick() - if(IsMultiple(activeFor, 4)) - for(var/mob/living/carbon/human/H in GLOB.living_mob_list) - if (prob(66)) - playsound(H.loc, pick('sound/spookoween/scary_horn.ogg','sound/spookoween/scary_horn2.ogg', 'sound/spookoween/scary_horn3.ogg'), 100, 1) - if (prob(33)) - var/turf/T = get_turf(H) - if(T) - new /obj/effect/hallucination/simple/clown(T, H, 25) - else if (prob(25)) - var/turf/T = get_turf(H) - if(T) - new /obj/effect/hallucination/simple/clown/scary(T, H, 25) - else if (prob(5)) - var/turf/T = get_turf(H) - if(T) - spawn_atom_to_turf(/obj/effect/mob_spawn/human/clown/corpse, H, 1) - else if (prob(1)) - spawn_atom_to_turf(/mob/living/simple_animal/hostile/retaliate/clown, H, 1) - -/datum/round_event/creepy_clowns/announce() - priority_announce("Honk... Honk... honk... HONK! HONK! HONKHONKHONKHONKHONK", "HONK!", 'sound/spookoween/scary_horn.ogg') - //spooky foods (you can't actually make these when it's not halloween) /obj/item/reagent_containers/food/snacks/sugarcookie/spookyskull name = "skull cookie" @@ -110,7 +44,6 @@ icon = 'icons/obj/halloween_items.dmi' icon_state = "coffincookie" - //spooky items /obj/item/storage/spooky diff --git a/code/modules/events/meteor_wave.dm b/code/modules/events/meteor_wave.dm index d46525a0eb..bdbfd2e6b6 100644 --- a/code/modules/events/meteor_wave.dm +++ b/code/modules/events/meteor_wave.dm @@ -1,3 +1,4 @@ +<<<<<<< HEAD // Normal strength /datum/round_event_control/meteor_wave @@ -66,3 +67,77 @@ /datum/round_event/meteor_wave/catastrophic wave_name = "catastrophic" +======= +// Normal strength + +/datum/round_event_control/meteor_wave + name = "Meteor Wave: Normal" + typepath = /datum/round_event/meteor_wave + weight = 4 + min_players = 5 + max_occurrences = 3 + +/datum/round_event/meteor_wave + startWhen = 6 + endWhen = 66 + announceWhen = 1 + var/list/wave_type + var/wave_name = "normal" + +/datum/round_event/meteor_wave/New() + ..() + if(!wave_type) + determine_wave_type() + +/datum/round_event/meteor_wave/proc/determine_wave_type() + if(SSevents.holidays && SSevents.holidays[HALLOWEEN]) + wave_name = "halloween" + if(!wave_name) + wave_name = pickweight(list( + "normal" = 50, + "threatening" = 40, + "catastrophic" = 10)) + switch(wave_name) + if("normal") + wave_type = GLOB.meteors_normal + if("threatening") + wave_type = GLOB.meteors_threatening + if("catastrophic") + wave_type = GLOB.meteors_catastrophic + if("meaty") + wave_type = GLOB.meteorsB + if("space dust") + wave_type = GLOB.meteorsC + if("halloween") + wave_type = GLOB.meteorsSPOOKY + else + WARNING("Wave name of [wave_name] not recognised.") + kill() + +/datum/round_event/meteor_wave/announce() + priority_announce("Meteors have been detected on collision course with the station.", "Meteor Alert", 'sound/ai/meteors.ogg') + +/datum/round_event/meteor_wave/tick() + if(IsMultiple(activeFor, 3)) + spawn_meteors(5, wave_type) //meteor list types defined in gamemode/meteor/meteors.dm + +/datum/round_event_control/meteor_wave/threatening + name = "Meteor Wave: Threatening" + typepath = /datum/round_event/meteor_wave/threatening + weight = 2 + min_players = 5 + max_occurrences = 3 + +/datum/round_event/meteor_wave/threatening + wave_name = "threatening" + +/datum/round_event_control/meteor_wave/catastrophic + name = "Meteor Wave: Catastrophic" + typepath = /datum/round_event/meteor_wave/catastrophic + weight = 1 + min_players = 5 + max_occurrences = 3 + +/datum/round_event/meteor_wave/catastrophic + wave_name = "catastrophic" +>>>>>>> 00396d0... Halloween Tweaks (#32087) diff --git a/code/modules/holiday/holidays.dm b/code/modules/holiday/holidays.dm index c8e9235646..751bc53eac 100644 --- a/code/modules/holiday/holidays.dm +++ b/code/modules/holiday/holidays.dm @@ -272,7 +272,7 @@ /datum/holiday/halloween name = HALLOWEEN - begin_day = 30 + begin_day = 28 begin_month = OCTOBER end_day = 2 end_month = NOVEMBER