// Function from file: tgstation.dme public override void Activate(Disease_Advance A = null) { dynamic M = null; base.Activate(A); if (Rand13.PercentChance(GlobalVars.SYMPTOM_ACTIVATION_PROB)) { M = A.affected_mob; switch ((int?)(A.stage)) { case 1: case 2: case 3: ((Mob)M).emote("sniff"); break; default: ((Mob)M).emote("sneeze"); A.spread(A.holder, 5); break; } } return; }
// Function from file: vision.dm public override void Activate(Disease_Advance A = null) { dynamic M = null; base.Activate(A); if (Rand13.PercentChance(15)) { M = A.affected_mob; switch ((int?)(A.stage)) { case 4: case 5: if ((((Reagents)M.reagents).get_reagent_amount("oculine") ?1:0) < 20) { ((Reagents)M.reagents).add_reagent("oculine", 20); } break; default: if (Rand13.PercentChance(15)) { M.WriteMsg("<span class='notice'>" + Rand13.Pick(new object [] { "Your eyes feel great.", "You are now blinking manually.", "You don't feel the need to blink." }) + "</span>"); } break; } } return; }
// Function from file: tgstation.dme public override void Activate(Disease_Advance A = null) { dynamic M = null; base.Activate(A); if (Rand13.PercentChance(GlobalVars.SYMPTOM_ACTIVATION_PROB)) { M = A.affected_mob; switch ((int?)(A.stage)) { case 1: case 2: case 3: case 4: M.WriteMsg("<span class='warning'>" + Rand13.Pick(new object [] { "You feel dizzy.", "Your head spins." }) + "</span>"); break; default: M.WriteMsg("<span class='userdanger'>A wave of dizziness washes over you!</span>"); ((Mob)M).Dizzy(5); break; } } return; }
// Function from file: weight.dm public override void Activate(Disease_Advance A = null) { dynamic M = null; base.Activate(A); if (Rand13.PercentChance(GlobalVars.SYMPTOM_ACTIVATION_PROB)) { M = A.affected_mob; switch ((int?)(A.stage)) { case 1: case 2: case 3: case 4: M.WriteMsg("<span class='warning'>" + Rand13.Pick(new object [] { "You feel hungry.", "You crave for food." }) + "</span>"); break; default: M.WriteMsg("<span class='warning'><i>" + Rand13.Pick(new object [] { "So hungry...", "You'd kill someone for a bite of food...", "Hunger cramps seize you..." }) + "</i></span>"); M.overeatduration = Num13.MaxInt(M.overeatduration - 100, 0); M.nutrition = Num13.MaxInt(((int)(M.nutrition - 100)), 0); break; } } return; }
// Function from file: confusion.dm public override void Activate(Disease_Advance A = null) { dynamic M = null; base.Activate(A); if (Rand13.PercentChance(GlobalVars.SYMPTOM_ACTIVATION_PROB)) { M = A.affected_mob; switch ((int?)(A.stage)) { case 1: case 2: case 3: case 4: M.WriteMsg("<span class='warning'>" + Rand13.Pick(new object [] { "Your head hurts.", "Your mind blanks for a moment." }) + "</span>"); break; default: M.WriteMsg("<span class='userdanger'>You can't think straight!</span>"); M.confused = Num13.MinInt(100, ((int)(M.confused + 8))); break; } } return; }
// Function from file: tgstation.dme public override void Activate(Disease_Advance A = null) { dynamic M = null; base.Activate(A); if (Rand13.PercentChance(GlobalVars.SYMPTOM_ACTIVATION_PROB)) { M = A.affected_mob; switch ((int?)(A.stage)) { case 2: case 3: M.WriteMsg("<span class='warning'>" + Rand13.Pick(new object [] { "You feel a sudden pain across your body.", "Drops of blood appear suddenly on your skin." }) + "</span>"); break; case 4: case 5: M.WriteMsg("<span class='userdanger'>" + Rand13.Pick(new object [] { "You cringe as a violent pain takes over your body.", "It feels like your body is eating itself inside out.", "IT HURTS." }) + "</span>"); ((Mob_Living)M).adjustBruteLoss(5); break; } } return; }
// Function from file: weight.dm public override void Activate(Disease_Advance A = null) { dynamic M = null; base.Activate(A); if (Rand13.PercentChance(GlobalVars.SYMPTOM_ACTIVATION_PROB)) { M = A.affected_mob; switch ((int?)(A.stage)) { case 1: case 2: case 3: case 4: M.WriteMsg("<span class='warning'>" + Rand13.Pick(new object [] { "You feel blubbery.", "Your stomach hurts." }) + "</span>"); break; default: M.overeatduration = Num13.MinInt(M.overeatduration + 100, 600); M.nutrition = Num13.MinInt(((int)(M.nutrition + 100)), 550); break; } } return; }
// Function from file: genetics.dm public override void Activate(Disease_Advance A = null) { dynamic M = null; base.Activate(A); if (Rand13.PercentChance(15)) { M = A.affected_mob; if (!Lang13.Bool(M.has_dna())) { return; } switch ((int?)(A.stage)) { case 4: case 5: M.WriteMsg("<span class='warning'>" + Rand13.Pick(new object [] { "Your skin feels itchy.", "You feel light headed." }) + "</span>"); ((Dna)M.dna).remove_mutation_group(this.possible_mutations); GlobalFuncs.randmut(M, this.possible_mutations); break; } } return; }
// Function from file: tgstation.dme public override void Activate(Disease_Advance A = null) { dynamic M = null; dynamic H = null; base.Activate(A); if (Rand13.PercentChance(GlobalVars.SYMPTOM_ACTIVATION_PROB)) { M = A.affected_mob; if (M is Mob_Living_Carbon_Human) { H = M; if (H.skin_tone == "african2") { return; } switch ((int?)(A.stage)) { case 5: H.skin_tone = "african2"; ((Mob_Living_Carbon_Human)H).update_body( ); break; default: ((Ent_Static)H).visible_message("<span class='warning'>" + H + " looks a bit dark...</span>", "<span class='notice'>Your skin suddenly appears darker...</span>"); break; } } } return; }
// Function from file: tgstation.dme public override void Activate(Disease_Advance A = null) { dynamic M = null; base.Activate(A); if (Rand13.PercentChance(GlobalVars.SYMPTOM_ACTIVATION_PROB)) { M = A.affected_mob; switch ((int?)(A.stage)) { case 3: M.WriteMsg("<span class='warning'>" + Rand13.Pick(new object [] { "You feel hot.", "You hear a crackling noise.", "You smell smoke." }) + "</span>"); break; case 4: ((Mob_Living)M).adjust_fire_stacks(5); ((Mob_Living)M).IgniteMob(); M.WriteMsg("<span class='userdanger'>Your skin bursts into flames!</span>"); ((Mob_Living)M).adjustFireLoss(5); ((Mob)M).emote("scream"); break; case 5: ((Mob_Living)M).adjust_fire_stacks(10); ((Mob_Living)M).IgniteMob(); M.WriteMsg("<span class='userdanger'>Your skin erupts into an inferno!</span>"); ((Mob_Living)M).adjustFireLoss(10); ((Mob)M).emote("scream"); break; } } return; }
// Function from file: heal.dm public override bool Heal(dynamic M = null, Disease_Advance A = null) { bool cured = false; Disease D = null; cured = false; foreach (dynamic _a in Lang13.Enumerate(M.viruses, typeof(Disease))) { D = _a; if (D != A) { cured = true; this.cured_diseases.Add(D.GetDiseaseID()); D.cure(); } } if (cured) { M.WriteMsg("<span class='notice'>You feel much better.</span>"); } return(false); }
// Function from file: vomit.dm public override void Activate(Disease_Advance A = null) { dynamic M = null; base.Activate(A); if (Rand13.PercentChance(((int)(1.5)))) { M = A.affected_mob; switch ((int?)(A.stage)) { case 1: case 2: case 3: case 4: M.WriteMsg("<span class='warning'>" + Rand13.Pick(new object [] { "You feel nauseous.", "You feel like you're going to throw up!" }) + "</span>"); break; default: this.Vomit(M); break; } } return; }
// Function from file: voice_change.dm public override void Activate(Disease_Advance A = null) { dynamic M = null; dynamic H = null; base.Activate(A); if (Rand13.PercentChance(GlobalVars.SYMPTOM_ACTIVATION_PROB)) { M = A.affected_mob; switch ((int?)(A.stage)) { case 1: case 2: case 3: case 4: M.WriteMsg("<span class='warning'>" + Rand13.Pick(new object [] { "Your throat hurts.", "You clear your throat." }) + "</span>"); break; default: if (M is Mob_Living_Carbon_Human) { H = M; ((Mob_Living_Carbon_Human)H).SetSpecialVoice(((Species)H.dna.species).random_name(H.gender)); } break; } } return; }
// Function from file: tgstation.dme public override void Activate(Disease_Advance A = null) { dynamic M = null; base.Activate(A); if (Rand13.PercentChance(30)) { M = A.affected_mob; switch ((int?)(A.stage)) { case 5: if ((((Reagents)M.reagents).get_reagent_amount("ephedrine") ?1:0) < 10) { ((Reagents)M.reagents).add_reagent("ephedrine", 10); } break; default: if (Rand13.PercentChance(15)) { M.WriteMsg("<span class='notice'>" + Rand13.Pick(new object [] { "You feel restless.", "You feel like running laps around the station." }) + "</span>"); } break; } } return; }
// Function from file: oxygen.dm public override void Activate(Disease_Advance A = null) { dynamic M = null; base.Activate(A); if (Rand13.PercentChance(15)) { M = A.affected_mob; switch ((int?)(A.stage)) { case 4: case 5: if ((((Reagents)M.reagents).get_reagent_amount("salbutamol") ?1:0) < 20) { ((Reagents)M.reagents).add_reagent("salbutamol", 20); } break; default: if (Rand13.PercentChance(15)) { M.WriteMsg("<span class='notice'>" + Rand13.Pick(new object [] { "Your lungs feel great.", "You realize you haven't been breathing.", "You don't feel the need to breathe." }) + "</span>"); } break; } } return; }
// Function from file: hallucigen.dm public override void Activate(Disease_Advance A = null) { dynamic M = null; base.Activate(A); if (Rand13.PercentChance(GlobalVars.SYMPTOM_ACTIVATION_PROB)) { M = A.affected_mob; switch ((int?)(A.stage)) { case 1: case 2: M.WriteMsg("<span class='warning'>" + Rand13.Pick(new object [] { "Something appears in your peripheral vision, then winks out.", "You hear a faint whispher with no source.", "Your head aches." }) + "</span>"); break; case 3: case 4: M.WriteMsg("<span class='warning'><b>" + Rand13.Pick(new object [] { "Something is following you.", "You are being watched.", "You hear a whisper in your ear.", "Thumping footsteps slam toward you from nowhere." }) + "</b></span>"); break; default: M.WriteMsg("<span class='userdanger'>" + Rand13.Pick(new object [] { "Oh, your head...", "Your head pounds.", "They're everywhere! Run!", "Something in the shadows..." }) + "</span>"); M.hallucination += 5; break; } } return; }
// Function from file: tgstation.dme public override void Activate(Disease_Advance A = null) { dynamic M = null; base.Activate(A); if (Rand13.PercentChance(GlobalVars.SYMPTOM_ACTIVATION_PROB)) { M = A.affected_mob; switch ((int?)(A.stage)) { case 1: case 2: M.WriteMsg("<span class='warning'>" + Rand13.Pick(new object [] { "You're having difficulty breathing.", "Your breathing becomes heavy." }) + "</span>"); break; case 3: case 4: M.WriteMsg("<span class='warning'><b>" + Rand13.Pick(new object [] { "Your windpipe feels like a straw.", "Your breathing becomes tremendously difficult." }) + "</span>"); ((Mob_Living)M).adjustOxyLoss(5); ((Mob)M).emote("gasp"); break; default: M.WriteMsg("<span class='userdanger'>" + Rand13.Pick(new object [] { "You're choking!", "You can't breathe!" }) + "</span>"); ((Mob_Living)M).adjustOxyLoss(20); ((Mob)M).emote("gasp"); break; } } return; }
// Function from file: tgstation.dme public override void Activate(Disease_Advance A = null) { dynamic M = null; dynamic I = null; base.Activate(A); if (Rand13.PercentChance(GlobalVars.SYMPTOM_ACTIVATION_PROB)) { M = A.affected_mob; switch ((int?)(A.stage)) { case 1: case 2: case 3: M.WriteMsg("<span notice='warning'>" + Rand13.Pick(new object [] { "You swallow excess mucus.", "You lightly cough." }) + "</span>"); break; default: ((Mob)M).emote("cough"); I = ((Mob)M).get_active_hand(); if (Lang13.Bool(I) && I.w_class == 1) { ((Mob)M).drop_item(); } break; } } return; }
// Function from file: heal.dm public override void End(Disease_Advance A = null) { dynamic M = null; dynamic res = null; M = A.affected_mob; if (M is Mob_Living) { if (this.cured_diseases.len != 0) { foreach (dynamic _a in Lang13.Enumerate(M.resistances)) { res = _a; if (this.cured_diseases.Contains(res)) { M.resistances.Remove(res); } } } M.WriteMsg("<span class='warning'>You feel weaker.</span>"); } return; }
// Function from file: heal.dm public virtual bool Heal(dynamic M = null, Disease_Advance A = null) { int get_damage = 0; get_damage = Rand13.Int(8, 14); ((Mob_Living)M).adjustToxLoss(-get_damage); return(true); }
// Function from file: heal.dm public override bool Heal(dynamic M = null, Disease_Advance A = null) { this.longevity -= 1; if (!(this.longevity != 0)) { A.cure(); } return(false); }
// Function from file: heal.dm public override bool Heal(dynamic M = null, Disease_Advance A = null) { int amt_healed = 0; ByTable unclean_mutations = null; amt_healed = Rand13.Int(5, 10); ((Mob_Living)M).adjustBrainLoss(-amt_healed); unclean_mutations = (GlobalVars.not_good_mutations | GlobalVars.bad_mutations) - GlobalVars.mutations_list["Monkified"]; ((Dna)M.dna).remove_mutation_group(unclean_mutations); M.radiation = Num13.MaxInt(((int)(M.radiation - 3)), 0); return(true); }
// Function from file: tgstation.dme public override void Activate(Disease_Advance A = null) { dynamic M = null; dynamic H = null; base.Activate(A); if (Rand13.PercentChance(GlobalVars.SYMPTOM_ACTIVATION_PROB)) { M = A.affected_mob; if (M is Mob_Living_Carbon_Human) { H = M; switch ((int?)(A.stage)) { case 1: case 2: H.WriteMsg("<span class='warning'>Your chin itches.</span>"); if (H.facial_hair_style == "Shaved") { H.facial_hair_style = "Jensen Beard"; ((Mob)H).update_hair(); } break; case 3: case 4: H.WriteMsg("<span class='warning'>You feel tough.</span>"); if (!(H.facial_hair_style == "Dwarf Beard") && !(H.facial_hair_style == "Very Long Beard") && !(H.facial_hair_style == "Full Beard")) { H.facial_hair_style = "Full Beard"; ((Mob)H).update_hair(); } break; default: H.WriteMsg("<span class='warning'>You feel manly!</span>"); if (!(H.facial_hair_style == "Dwarf Beard") && !(H.facial_hair_style == "Very Long Beard")) { H.facial_hair_style = Rand13.Pick(new object [] { "Dwarf Beard", "Very Long Beard" }); ((Mob)H).update_hair(); } break; } } } return; }
// Function from file: tgstation.dme public override void Activate(Disease_Advance A = null) { dynamic M = null; base.Activate(A); if (Rand13.PercentChance(GlobalVars.SYMPTOM_ACTIVATION_PROB)) { M = A.affected_mob; M.WriteMsg("<span class='warning'>" + Rand13.Pick(new object [] { "Your head hurts.", "Your head starts pounding." }) + "</span>"); } return; }
// Function from file: voice_change.dm public override void End(Disease_Advance A = null) { dynamic H = null; base.End(A); if (A.affected_mob is Mob_Living_Carbon_Human) { H = A.affected_mob; ((Mob_Living_Carbon_Human)H).UnsetSpecialVoice(); } return; }
// Function from file: tgstation.dme public override void Activate(Disease_Advance A = null) { dynamic M = null; base.Activate(A); if (Rand13.PercentChance(GlobalVars.SYMPTOM_ACTIVATION_PROB)) { M = A.affected_mob; M.WriteMsg("<span class='warning'>Your " + Rand13.Pick(new object [] { "back", "arm", "leg", "elbow", "head" }) + " itches.</span>"); } return; }
// Function from file: other_reagents.dm public override bool on_merge(dynamic data = null) { dynamic mix1 = null; dynamic mix2 = null; ByTable to_mix = null; Disease_Advance AD = null; Disease_Advance AD2 = null; dynamic AD3 = null; ByTable preserve = null; Disease_Advance D = null; if (Lang13.Bool(this.data) && Lang13.Bool(data)) { this.data["cloneable"] = 0; if (Lang13.Bool(this.data["viruses"]) || Lang13.Bool(data["viruses"])) { mix1 = this.data["viruses"]; mix2 = data["viruses"]; to_mix = new ByTable(); foreach (dynamic _a in Lang13.Enumerate(mix1, typeof(Disease_Advance))) { AD = _a; to_mix.Add(AD); } foreach (dynamic _b in Lang13.Enumerate(mix2, typeof(Disease_Advance))) { AD2 = _b; to_mix.Add(AD2); } AD3 = GlobalFuncs.Advance_Mix(to_mix); if (Lang13.Bool(AD3)) { preserve = new ByTable(new object [] { AD3 }); foreach (dynamic _c in Lang13.Enumerate(this.data["viruses"], typeof(Disease_Advance))) { D = _c; } this.data["viruses"] = preserve; } } } return(true); }
// Function from file: tgstation.dme public override void Activate(Disease_Advance A = null) { dynamic M = null; dynamic H = null; base.Activate(A); if (Rand13.PercentChance(GlobalVars.SYMPTOM_ACTIVATION_PROB)) { M = A.affected_mob; M.WriteMsg("<span class='warning'>" + Rand13.Pick(new object [] { "Your scalp itches.", "Your skin feels flakey." }) + "</span>"); if (M is Mob_Living_Carbon_Human) { H = M; switch ((int?)(A.stage)) { case 3: case 4: if (!(H.hair_style == "Bald") && !(H.hair_style == "Balding Hair")) { H.WriteMsg("<span class='warning'>Your hair starts to fall out in clumps...</span>"); Task13.Schedule(50, (Task13.Closure)(() => { H.hair_style = "Balding Hair"; ((Mob)H).update_hair(); return; })); } break; case 5: if (!(H.facial_hair_style == "Shaved") || !(H.hair_style == "Bald")) { H.WriteMsg("<span class='warning'>Your hair starts to fall out in clumps...</span>"); Task13.Schedule(50, (Task13.Closure)(() => { H.facial_hair_style = "Shaved"; H.hair_style = "Bald"; ((Mob)H).update_hair(); return; })); } break; } } } return; }
// Function from file: presets.dm public Disease_Advance_VoiceChange(bool?process = null, Disease_Advance D = null, bool?copy = null) : base(process, D) { process = process ?? true; copy = copy ?? false; if (!(D != null)) { this.name = "Epiglottis Mutation"; this.symptoms = new ByTable(new object [] { new Symptom_VoiceChange() }); } // Warning: Super call was HERE! If anything above HERE is needed by the super call, it might break!; return; }
// Function from file: presets.dm public Disease_Advance_Hullucigen(bool?process = null, Disease_Advance D = null, bool?copy = null) : base(process, D) { process = process ?? true; copy = copy ?? false; if (!(D != null)) { this.name = "Reality Impairment"; this.symptoms = new ByTable(new object [] { new Symptom_Hallucigen() }); } // Warning: Super call was HERE! If anything above HERE is needed by the super call, it might break!; return; }