// Valentine's Day events // // why are you playing spessmens on valentine's day you wizard // // valentine / candy heart distribution // /datum/round_event_control/valentines name = "Valentines!" holidayID = VALENTINES typepath = /datum/round_event/valentines weight = -1 //forces it to be called, regardless of weight max_occurrences = 1 earliest_start = 0 MINUTES category = EVENT_CATEGORY_HOLIDAY description = "Puts people on dates! They must protect each other. Sometimes a vengeful third wheel spawns." /datum/round_event/valentines/start() ..() for(var/mob/living/carbon/human/H in GLOB.alive_mob_list) H.put_in_hands(new /obj/item/valentine) var/obj/item/storage/backpack/B = locate() in H.contents if(B) new /obj/item/reagent_containers/food/snacks/candyheart(B) new /obj/item/storage/fancy/heart_box(B) /proc/forge_valentines_objective(mob/living/lover,mob/living/date,var/chemLove = FALSE) lover.mind.special_role = "valentine" if (chemLove == TRUE) var/datum/antagonist/valentine/chem/V = new //Changes text and EOG check basically. V.date = date.mind lover.mind.add_antag_datum(V) else var/datum/antagonist/valentine/V = new V.date = date.mind lover.mind.add_antag_datum(V) //These really should be teams but i can't be assed to incorporate third wheels right now /datum/round_event/valentines/announce(fake) priority_announce("It's Valentine's Day! Give a valentine to that special someone!") /obj/item/valentine name = "valentine" desc = "A Valentine's card! Wonder what it says..." icon = 'icons/obj/toys/toy.dmi' icon_state = "sc_Ace of Hearts_syndicate" // shut up var/message = "A generic message of love or whatever." resistance_flags = FLAMMABLE w_class = WEIGHT_CLASS_TINY /obj/item/valentine/Initialize(mapload) message = pick(GLOB.flirts) return ..() /obj/item/valentine/attackby(obj/item/W, mob/user, params) ..() if(istype(W, /obj/item/pen) || istype(W, /obj/item/toy/crayon)) if(!user.is_literate()) to_chat(user, "You scribble illegibly on [src]!") return var/recipient = stripped_input(user, "Who is receiving this valentine?", "To:", null , 20) var/sender = stripped_input(user, "Who is sending this valentine?", "From:", null , 20) if(!user.canUseTopic(src, BE_CLOSE)) return if(recipient && sender) name = "valentine - To: [recipient] From: [sender]" /obj/item/valentine/examine(mob/user) . = ..() if(in_range(user, src) || isobserver(user)) if( !(ishuman(user) || isobserver(user) || hasSiliconAccessInArea(user)) ) user << browse("