/obj/item/toy/xmas_cracker name = "xmas cracker" icon = 'icons/obj/christmas.dmi' icon_state = "cracker" desc = "Directions for use: Requires two people, one to pull each end." var/cracked = 0 /obj/item/toy/xmas_cracker/attack(mob/target, mob/user) if( !cracked && ishuman(target) && (target.stat == CONSCIOUS) && !target.get_active_held_item() ) target.visible_message("[user] and [target] pop \an [src]! *pop*", "You pull \an [src] with [target]! *pop*", "You hear a pop.") var/obj/item/paper/Joke = new /obj/item/paper(user.loc) Joke.name = "[pick("awful","terrible","unfunny")] joke" Joke.info = pick("What did one snowman say to the other?\n\n'Is it me or can you smell carrots?'", "Why couldn't the snowman get laid?\n\nHe was frigid!", "Where are santa's helpers educated?\n\nNowhere, they're ELF-taught.", "What happened to the man who stole advent calanders?\n\nHe got 25 days.", "What does Santa get when he gets stuck in a chimney?\n\nClaus-trophobia.", "Where do you find chili beans?\n\nThe north pole.", "What do you get from eating tree decorations?\n\nTinsilitis!", "What do snowmen wear on their heads?\n\nIce caps!", "Why is Christmas just like life on ss13?\n\nYou do all the work and the fat guy gets all the credit.", "Why doesn�t Santa have any children?\n\nBecause he only comes down the chimney.") new /obj/item/clothing/head/festive(target.loc) user.update_icons() cracked = 1 icon_state = "cracker1" var/obj/item/toy/xmas_cracker/other_half = new /obj/item/toy/xmas_cracker(target) other_half.cracked = 1 other_half.icon_state = "cracker2" target.put_in_active_hand(other_half) playsound(user, 'sound/effects/snap.ogg', 50, 1) return 1 return ..() /obj/item/clothing/head/festive name = "festive paper hat" icon_state = "xmashat" desc = "A crappy paper hat that you are REQUIRED to wear." flags_inv = 0 armor = list(MELEE = 0, BULLET = 0, LASER = 0,ENERGY = 0, BOMB = 0, BIO = 0, RAD = 0, FIRE = 0, ACID = 0) /obj/effect/landmark/xmastree name = "christmas tree spawner" layer = FLY_LAYER var/festive_tree = /obj/structure/flora/tree/pine/xmas var/christmas_tree = /obj/structure/flora/tree/pine/xmas/presents /obj/effect/landmark/xmastree/Initialize(mapload) ..() if((CHRISTMAS in SSevents.holidays) && christmas_tree) new christmas_tree(get_turf(src)) else if((FESTIVE_SEASON in SSevents.holidays) && festive_tree) new festive_tree(get_turf(src)) return INITIALIZE_HINT_QDEL /obj/effect/landmark/xmastree/hilbert christmas_tree = /obj/structure/flora/tree/pine/xmas /obj/effect/landmark/xmastree/rdrod name = "festivus pole spawner" festive_tree = /obj/structure/festivus christmas_tree = null /datum/round_event_control/santa name = "Santa is coming to town! (Christmas)" holidayID = CHRISTMAS typepath = /datum/round_event/santa weight = 20 max_occurrences = 1 earliest_start = 30 MINUTES category = EVENT_CATEGORY_HOLIDAY description = "Spawns santa, who shall roam the station, handing out gifts." /datum/round_event/santa var/mob/living/carbon/human/santa //who is our santa? /datum/round_event/santa/announce(fake) priority_announce("Santa is coming to town!", "Unknown Transmission") /datum/round_event/santa/start() var/list/candidates = pollGhostCandidates("Santa is coming to town! Do you want to be Santa?", poll_time=150) if(LAZYLEN(candidates)) var/mob/C = pick(candidates) santa = new /mob/living/carbon/human(pick(GLOB.blobstart)) C.transfer_ckey(santa, FALSE) var/datum/antagonist/santa/A = new santa.mind.add_antag_datum(A)