/datum/disease/berserker name = "Berserker" max_stages = 2 stage_prob = 5 spread_text = "Non-contagious" spread_flags = SPREAD_NON_CONTAGIOUS cure_text = "Anti-Psychotics" cures = list("haloperidol") agent = "Jagged Crystals" cure_chance = 10 viable_mobtypes = list(/mob/living/carbon/human) desc = "Swearing, shouting, attacking nearby crew members uncontrollably." severity = VIRUS_BIOHAZARD disease_flags = VIRUS_CURABLE /datum/disease/berserker/stage_act() if(!..()) return FALSE if(affected_mob.reagents.has_reagent("thc")) to_chat(affected_mob, SPAN_NOTICE("You mellow out.")) cure() return switch(stage) if(1) if(prob(5)) affected_mob.emote(pick("twitch_s", "grumble")) if(prob(5)) var/speak = pick("Grr...", "Fuck...", "Fucking...", "Fuck this fucking.. fuck..") affected_mob.say(speak) if(2) if(prob(5)) affected_mob.emote(pick("twitch_s", "scream")) if(prob(5)) var/speak = pick("AAARRGGHHH!!!!", "GRR!!!", "FUCK!! FUUUUUUCK!!!", "FUCKING SHITCOCK!!", "WROOAAAGHHH!!") affected_mob.say(speak) if(prob(15)) affected_mob.visible_message(SPAN_DANGER("[affected_mob] twitches violently!")) affected_mob.drop_l_hand() affected_mob.drop_r_hand() if(prob(33)) if(affected_mob.incapacitated()) affected_mob.visible_message(SPAN_DANGER("[affected_mob] spasms and twitches!")) return affected_mob.visible_message(SPAN_DANGER("[affected_mob] thrashes around violently!")) for(var/mob/living/carbon/M in range(1, affected_mob)) if(M == affected_mob) continue var/damage = rand(1, 5) if(prob(80)) playsound(affected_mob.loc, "punch", 25, TRUE, -1) affected_mob.visible_message(SPAN_DANGER("[affected_mob] hits [M] with [affected_mob.p_their()] thrashing!")) M.adjustBruteLoss(damage) else playsound(affected_mob.loc, 'sound/weapons/punchmiss.ogg', 25, TRUE, -1) affected_mob.visible_message(SPAN_DANGER("[affected_mob] fails to hit [M] with [affected_mob.p_their()] thrashing!"))