mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-24 13:38:41 +01:00
* Refactors Regenerate Organs, and a few organ helpers * MERGE CONFLICTS * GETORGANSLOT > GET_ORGAN_SLOT * GETORGAN > get_organ_by_type * lint repairs * more lint * Update tgstation.dme * Update surgery_step.dm --------- Co-authored-by: Zephyr <12817816+ZephyrTFA@users.noreply.github.com> Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
27 lines
911 B
Plaintext
27 lines
911 B
Plaintext
/datum/round_event_control/obsessed
|
|
name = "Obsession Awakening"
|
|
typepath = /datum/round_event/obsessed
|
|
max_occurrences = 1
|
|
min_players = 20
|
|
category = EVENT_CATEGORY_HEALTH
|
|
description = "A random crewmember becomes obsessed with another."
|
|
|
|
/datum/round_event/obsessed
|
|
fakeable = FALSE
|
|
|
|
/datum/round_event/obsessed/start()
|
|
for(var/mob/living/carbon/human/H in shuffle(GLOB.player_list))
|
|
if(!H.client || !(ROLE_OBSESSED in H.client.prefs.be_special))
|
|
continue
|
|
if(H.stat == DEAD)
|
|
continue
|
|
if(!(H.mind.assigned_role.job_flags & JOB_CREW_MEMBER)) //only station jobs sans nonhuman roles, prevents ashwalkers trying to stalk with crewmembers they never met
|
|
continue
|
|
if(H.mind.has_antag_datum(/datum/antagonist/obsessed))
|
|
continue
|
|
if(!H.get_organ_by_type(/obj/item/organ/internal/brain))
|
|
continue
|
|
H.gain_trauma(/datum/brain_trauma/special/obsessed)
|
|
announce_to_ghosts(H)
|
|
break
|