// Function from file: theblob.dm public void Pulse_Area(Mob_Camera_Blob pulsing_overmind = null, int?claim_range = null, int?pulse_range = null, int?expand_range = null) { pulsing_overmind = pulsing_overmind ?? this.overmind; claim_range = claim_range ?? 10; pulse_range = pulse_range ?? 3; expand_range = expand_range ?? 2; Obj_Effect_Blob B = null; Obj_Effect_Blob B2 = null; Obj_Effect_Blob B3 = null; this.Be_Pulsed(); if (Lang13.Bool(claim_range)) { foreach (dynamic _a in Lang13.Enumerate(GlobalFuncs.ultra_range(claim_range, this, true), typeof(Obj_Effect_Blob))) { B = _a; if (!(B.overmind != null) && !(B is Obj_Effect_Blob_Core) && Rand13.PercentChance(30)) { B.overmind = pulsing_overmind; B.update_icon(); } } } if (Lang13.Bool(pulse_range)) { foreach (dynamic _b in Lang13.Enumerate(Map13.FetchInRangeExcludeThis(this, pulse_range), typeof(Obj_Effect_Blob))) { B2 = _b; B2.Be_Pulsed(); } } if (Lang13.Bool(expand_range)) { this.expand(); foreach (dynamic _c in Lang13.Enumerate(Map13.FetchInRangeExcludeThis(this, expand_range), typeof(Obj_Effect_Blob))) { B3 = _c; if (Rand13.PercentChance(Num13.MaxInt(13 - Map13.GetDistance(GlobalFuncs.get_turf(this), GlobalFuncs.get_turf(B3)) * 4, 1))) { B3.expand(); } } } return; }
// Function from file: core.dm public bool create_overmind(Client new_overmind = null, dynamic override_delay = null) { dynamic C = null; ByTable candidates = null; Mob_Camera_Blob B = null; if (this.overmind_get_delay > Game13.time && !Lang13.Bool(override_delay)) { return(false); } this.overmind_get_delay = Game13.time + 150; if (this.overmind != null) { GlobalFuncs.qdel(this.overmind); } C = null; candidates = new ByTable(); if (!(new_overmind != null)) { candidates = GlobalFuncs.get_candidates("blob"); if (candidates.len != 0) { C = Rand13.PickFromTable(candidates); } } else { C = new_overmind; } if (Lang13.Bool(C)) { B = new Mob_Camera_Blob(this.loc); B.key = C.key; B.blob_core = this; this.overmind = B; this.update_icon(); if (B.mind != null && !Lang13.Bool(B.mind.special_role)) { B.mind.special_role = "Blob Overmind"; } return(true); } return(false); }
// Function from file: blob_overmind.dm public Hud_BlobOvermind(Mob_Camera_Blob owner = null) : base(owner) { Obj_Screen_Blob _using = null; // Warning: Super call was HERE! If anything above HERE is needed by the super call, it might break!; this.blobpwrdisplay = new Obj_Screen(); this.blobpwrdisplay.name = "blob power"; this.blobpwrdisplay.icon_state = "block"; this.blobpwrdisplay.screen_loc = "EAST-1:28,CENTER-1:15"; this.blobpwrdisplay.mouse_opacity = 0; this.blobpwrdisplay.layer = 20; this.infodisplay.Add(this.blobpwrdisplay); this.healths = new Obj_Screen_Healths_Blob(); this.static_inventory.Add(this.healths); _using = new Obj_Screen_Blob_BlobHelp(); _using.screen_loc = "NORTH:-6,WEST:6"; this.static_inventory.Add(_using); _using = new Obj_Screen_Blob_JumpToNode(); _using.screen_loc = "WEST:6,SOUTH:5"; this.static_inventory.Add(_using); _using = new Obj_Screen_Blob_JumpToCore(); _using.screen_loc = "EAST-1:28,SOUTH:5"; this.static_inventory.Add(_using); _using = new Obj_Screen_Blob_Blobbernaut(); _using.screen_loc = "CENTER-3:14,SOUTH:5"; this.static_inventory.Add(_using); _using = new Obj_Screen_Blob_ResourceBlob(); _using.screen_loc = "CENTER-2:14,SOUTH:5"; this.static_inventory.Add(_using); _using = new Obj_Screen_Blob_NodeBlob(); _using.screen_loc = "CENTER: 16,SOUTH:5"; this.static_inventory.Add(_using); _using = new Obj_Screen_Blob_FactoryBlob(); _using.screen_loc = "CENTER:-16,SOUTH:5"; this.static_inventory.Add(_using); _using = new Obj_Screen_Blob_ReadaptChemical(); _using.screen_loc = "CENTER+1:18,SOUTH:5"; this.static_inventory.Add(_using); _using = new Obj_Screen_Blob_RelocateCore(); _using.screen_loc = "CENTER+2:20,SOUTH:5"; this.static_inventory.Add(_using); return; }
// Function from file: theblob.dm public dynamic change_to(Type type = null, Mob_Camera_Blob controller = null) { dynamic B = null; if (!(type is Type)) { throw new Exception("change_to(): invalid type for blob"); return(null); } B = Lang13.Call(type, this.loc); if (controller != null) { B.overmind = controller; } ((Obj_Effect_Blob)B).creation_action(); B.update_icon(); GlobalFuncs.qdel(this); return(B); }
// Function from file: theblob.dm public dynamic blob_attack_animation(dynamic A = null, Mob_Camera_Blob controller = null) { dynamic O = null; Mob_Camera_Blob BO = null; O = GlobalFuncs.PoolOrNew(typeof(Obj_Effect_Overlay_Temp_Blob), this.loc); if (controller != null) { BO = controller; O.color = BO.blob_reagent_datum.color; O.alpha = 200; } else if (this.overmind != null) { O.color = this.overmind.blob_reagent_datum.color; } if (Lang13.Bool(A)) { ((Ent_Dynamic)O).do_attack_animation(A); } return(O); }
// Function from file: blob_reagents.dm public override double reaction_mob(dynamic M = null, int?method = null, double?reac_volume = null, bool?show_message = null, dynamic touch_protection = null, Mob_Camera_Blob O = null) { method = method ?? GlobalVars.TOUCH; reac_volume = base.reaction_mob((object)(M), method, reac_volume, show_message, (object)(touch_protection), O); M.hallucination += (reac_volume ?? 0) * 0.8; ((Mob)M).adjust_drugginess((reac_volume ?? 0) * 0.8); if (Lang13.Bool(M.reagents)) { ((Reagents)M.reagents).add_reagent("spore", (reac_volume ?? 0) * 0.2); } ((Mob_Living)M).apply_damage((reac_volume ?? 0) * 0.6, "tox"); return(0); }
// Function from file: blob_reagents.dm public override double reaction_mob(dynamic M = null, int?method = null, double?reac_volume = null, bool?show_message = null, dynamic touch_protection = null, Mob_Camera_Blob O = null) { method = method ?? GlobalVars.TOUCH; double damage = 0; reac_volume = base.reaction_mob((object)(M), method, reac_volume, show_message, (object)(touch_protection), O); damage = Rand13.Int(10, 30) / 25; ((Mob_Living)M).apply_damage(damage * (reac_volume ?? 0), "brute"); return(0); }
// Function from file: blob_reagents.dm public override double reaction_mob(dynamic M = null, int?method = null, double?reac_volume = null, bool?show_message = null, dynamic touch_protection = null, Mob_Camera_Blob O = null) { method = method ?? GlobalVars.TOUCH; reac_volume = base.reaction_mob((object)(M), method, reac_volume, show_message, (object)(touch_protection), O); ((Mob_Living)M).adjust_fire_stacks(Num13.Floor((reac_volume ?? 0) / 12)); ((Mob_Living)M).IgniteMob(); if (Lang13.Bool(M)) { ((Mob_Living)M).apply_damage((reac_volume ?? 0) * 0.6, "fire"); } if (M is Mob_Living_Carbon) { ((Mob)M).emote("scream"); } return(0); }
// Function from file: toxin_reagents.dm public override double reaction_mob(dynamic M = null, int?method = null, double?reac_volume = null, bool?show_message = null, dynamic touch_protection = null, Mob_Camera_Blob O = null) { method = method ?? GlobalVars.TOUCH; dynamic C = null; double damage = 0; if (method == GlobalVars.VAPOR) { if (M is Mob_Living_Carbon) { C = M; if (!Lang13.Bool(C.wear_mask)) { damage = Num13.MinInt(((int)(Num13.Round((reac_volume ?? 0) * 0.4, 0.1))), 10); ((Mob_Living)C).adjustToxLoss(damage); } } } return(0); }
// Function from file: medicine_reagents.dm public override double reaction_mob(dynamic M = null, int?method = null, double?reac_volume = null, bool?show_message = null, dynamic touch_protection = null, Mob_Camera_Blob O = null) { method = method ?? GlobalVars.TOUCH; if (Convert.ToInt32(M.stat) == 2) { if (((Mob_Living)M).getBruteLoss() >= 100 || ((Mob_Living)M).getFireLoss() >= 100) { ((Ent_Static)M).visible_message("<span class='warning'>" + M + "'s body convulses a bit, and then falls still once more.</span>"); return(0); } ((Ent_Static)M).visible_message("<span class='warning'>" + M + "'s body convulses a bit.</span>"); if (!Lang13.Bool(M.suiciding) && !Lang13.Bool(M.disabilities & 128)) { if (!Lang13.Bool(M)) { return(0); } if (((Mob)M).notify_ghost_cloning(null, null, M) != null) { Task13.Schedule(100, (Task13.Closure)(() => { return; return; })); } else { ((Mob_Living)M).adjustOxyLoss(-20); ((Mob_Living)M).adjustToxLoss(-20); if (Convert.ToDouble(M.health) > (GlobalVars.config.health_threshold_dead ?? 0) && Lang13.Bool(((Mob)M).getorgan(typeof(Obj_Item_Organ_Internal_Brain)))) { M.stat = 1; ((Mob)M).blind_eyes(1); GlobalVars.dead_mob_list.Remove(M); GlobalVars.living_mob_list.Or(new ByTable(new object [] { M })); ((Mob)M).emote("gasp"); GlobalFuncs.add_logs(M, M, "revived", this); } } } } base.reaction_mob((object)(M), method, reac_volume, show_message, (object)(touch_protection), O); return(0); }
// Function from file: blob_reagents.dm public override double reaction_mob(dynamic M = null, int?method = null, double?reac_volume = null, bool?show_message = null, dynamic touch_protection = null, Mob_Camera_Blob O = null) { method = method ?? GlobalVars.TOUCH; dynamic E = null; Mob_Living L = null; if ((reac_volume ?? 0) >= 15) { reac_volume = base.reaction_mob((object)(M), method, reac_volume, show_message, (object)(touch_protection), O); E = GlobalFuncs.PoolOrNew(typeof(Obj_Effect_Overlay_Temp_Explosion), GlobalFuncs.get_turf(M)); E.alpha = 150; foreach (dynamic _a in Lang13.Enumerate(Map13.FetchInRange(1, M), typeof(Mob_Living))) { L = _a; if (Lang13.Bool(L.faction.Contains("blob"))) { continue; } L.apply_damage((reac_volume ?? 0) * 0.6, "brute"); } if (Lang13.Bool(M)) { ((Mob_Living)M).apply_damage((reac_volume ?? 0) * 0.1, "brute"); } } else { reac_volume = base.reaction_mob((object)(M), method, reac_volume, show_message, (object)(touch_protection), O); ((Mob_Living)M).apply_damage((reac_volume ?? 0) * 0.8, "brute"); } return(0); }
// Function from file: toxin_reagents.dm public override double reaction_mob(dynamic M = null, int?method = null, double?reac_volume = null, bool?show_message = null, dynamic touch_protection = null, Mob_Camera_Blob O = null) { method = method ?? GlobalVars.TOUCH; if (!(M is Mob_Living_Carbon)) { return(0); } reac_volume = Num13.Round(reac_volume ?? 0, 0.1); if (method == GlobalVars.INGEST) { ((Mob_Living)M).adjustBruteLoss(Num13.MinInt(((int)((this.toxpwr ?? 0) * 6)), ((int)((reac_volume ?? 0) * (this.toxpwr ?? 0))))); return(0); } if (method == GlobalVars.INJECT) { ((Mob_Living)M).adjustBruteLoss(Num13.MinInt(((int)((this.toxpwr ?? 0) * 6)), ((int)((reac_volume ?? 0) * (this.toxpwr ?? 0)))) * 1.5); return(0); } ((Ent_Static)M).acid_act(this.acidpwr, this.toxpwr, reac_volume); return(0); }
// Function from file: toxin_reagents.dm public override double reaction_mob(dynamic M = null, int?method = null, double?reac_volume = null, bool?show_message = null, dynamic touch_protection = null, Mob_Camera_Blob O = null) { method = method ?? GlobalVars.TOUCH; if (!(base.reaction_mob((object)(M), method, reac_volume, show_message, (object)(touch_protection), O) != 0)) { return(0); } if (!Lang13.Bool(M.has_dna())) { return(0); } if (method == GlobalVars.VAPOR && Rand13.PercentChance(Num13.MinInt(33, ((int)(reac_volume ?? 0)))) || method == GlobalVars.INGEST || method == GlobalVars.PATCH || method == GlobalVars.INJECT) { GlobalFuncs.randmuti(M); if (Rand13.PercentChance(98)) { GlobalFuncs.randmutb(M); } else { GlobalFuncs.randmutg(M); } ((Mob_Living_Carbon)M).updateappearance(); ((Mob)M).domutcheck(); } base.reaction_mob((object)(M), method, reac_volume, show_message, (object)(touch_protection), O); return(0); }
// Function from file: blob_reagents.dm public override double reaction_mob(dynamic M = null, int?method = null, double?reac_volume = null, bool?show_message = null, dynamic touch_protection = null, Mob_Camera_Blob O = null) { method = method ?? GlobalVars.TOUCH; reac_volume = base.reaction_mob((object)(M), method, reac_volume, show_message, (object)(touch_protection), O); ((Mob_Living)M).apply_damage((reac_volume ?? 0) * 061, "brute"); if (Lang13.Bool(M)) { ((Mob_Living)M).adjustStaminaLoss((reac_volume ?? 0) * 0.5); } if (M is Mob_Living_Carbon) { ((Mob)M).emote("scream"); } return(0); }
// Function from file: other_reagents.dm public override double reaction_mob(dynamic M = null, int?method = null, double?reac_volume = null, bool?show_message = null, dynamic touch_protection = null, Mob_Camera_Blob O = null) { method = method ?? GlobalVars.TOUCH; Disease D = null; if (Lang13.Bool(this.data) && Lang13.Bool(this.data["viruses"])) { foreach (dynamic _a in Lang13.Enumerate(this.data["viruses"], typeof(Disease))) { D = _a; if ((D.spread_flags & 1) != 0 || (D.spread_flags & 2) != 0) { continue; } if (method == GlobalVars.TOUCH || method == GlobalVars.VAPOR) { ((Mob)M).ContractDisease(D); } else { ((Mob)M).ForceContractDisease(D); } } } return(0); }
// Function from file: other_reagents.dm public override double reaction_mob(dynamic M = null, int?method = null, double?reac_volume = null, bool?show_message = null, dynamic touch_protection = null, Mob_Camera_Blob O = null) { method = method ?? GlobalVars.TOUCH; dynamic H = null; if (method == GlobalVars.TOUCH || method == GlobalVars.VAPOR) { if (Lang13.Bool(M) && M is Mob_Living_Carbon_Human) { H = M; H.hair_color = Rand13.PickFromTable(this.potential_colors); H.facial_hair_color = Rand13.PickFromTable(this.potential_colors); ((Mob)H).update_hair(); } } return(0); }
// Function from file: blob_reagents.dm public override double reaction_mob(dynamic M = null, int?method = null, double?reac_volume = null, bool?show_message = null, dynamic touch_protection = null, Mob_Camera_Blob O = null) { method = method ?? GlobalVars.TOUCH; Mob_Living_SimpleAnimal_Hostile_Blob_Blobspore_Weak BS = null; reac_volume = base.reaction_mob((object)(M), method, reac_volume, show_message, (object)(touch_protection), O); M.apply_damage((reac_volume ?? 0) * 0.6, "tox"); if (O != null && M is Mob_Living_Carbon_Human && Lang13.Bool(M.stat) == true) { ((Mob)M).death(); BS = new Mob_Living_SimpleAnimal_Hostile_Blob_Blobspore_Weak(GlobalFuncs.get_turf(M)); BS.overmind = O; BS.update_icons(); O.blob_mobs.Add(BS); BS.Zombify(M); } return(0); }
// Function from file: blob_reagents.dm public override double reaction_mob(dynamic M = null, int?method = null, double?reac_volume = null, bool?show_message = null, dynamic touch_protection = null, Mob_Camera_Blob O = null) { method = method ?? GlobalVars.TOUCH; reac_volume = base.reaction_mob((object)(M), method, reac_volume, show_message, (object)(touch_protection), O); if (Lang13.Bool(M.reagents)) { ((Reagents)M.reagents).add_reagent("frostoil", (reac_volume ?? 0) * 0.4); ((Reagents)M.reagents).add_reagent("ice", (reac_volume ?? 0) * 0.4); } ((Mob_Living)M).apply_damage((reac_volume ?? 0) * 0.6, "fire"); if (Lang13.Bool(M)) { ((Mob_Living)M).adjustStaminaLoss((reac_volume ?? 0) * 0.4); } return(0); }
// Function from file: blob_reagents.dm public override double reaction_mob(dynamic M = null, int?method = null, double?reac_volume = null, bool?show_message = null, dynamic touch_protection = null, Mob_Camera_Blob O = null) { method = method ?? GlobalVars.TOUCH; reac_volume = base.reaction_mob((object)(M), method, reac_volume, show_message, (object)(touch_protection), O); ((Ent_Static)M).emp_act(2); if (Lang13.Bool(M)) { ((Mob_Living)M).apply_damage((reac_volume ?? 0) * 0.6, "fire"); } return(0); }
// Function from file: blob_reagents.dm public override double reaction_mob(dynamic M = null, int?method = null, double?reac_volume = null, bool?show_message = null, dynamic touch_protection = null, Mob_Camera_Blob O = null) { method = method ?? GlobalVars.TOUCH; reac_volume = base.reaction_mob((object)(M), method, reac_volume, show_message, (object)(touch_protection), O); this.reagent_vortex(M, 0, reac_volume); ((Mob_Living)M).apply_damage((reac_volume ?? 0) * 0.4, "brute"); return(0); }
// Function from file: other_reagents.dm public override double reaction_mob(dynamic M = null, int?method = null, double?reac_volume = null, bool?show_message = null, dynamic touch_protection = null, Mob_Camera_Blob O = null) { method = method ?? GlobalVars.TOUCH; Disease D = null; if (this.data is ByTable && (method == GlobalVars.INGEST || method == GlobalVars.INJECT)) { foreach (dynamic _a in Lang13.Enumerate(M.viruses, typeof(Disease))) { D = _a; if (Lang13.Bool(this.data.Contains(D.GetDiseaseID()))) { D.cure(); } } M.resistances.Or(this.data); } return(0); }
// Function from file: blob_reagents.dm public override double reaction_mob(dynamic M = null, int?method = null, double?reac_volume = null, bool?show_message = null, dynamic touch_protection = null, Mob_Camera_Blob O = null) { method = method ?? GlobalVars.TOUCH; reac_volume = base.reaction_mob((object)(M), method, reac_volume, show_message, (object)(touch_protection), O); M.losebreath += Num13.Floor((reac_volume ?? 0) * 0.2); ((Mob_Living)M).apply_damage((reac_volume ?? 0) * 0.2, "brute"); if (Lang13.Bool(M)) { ((Mob_Living)M).apply_damage((reac_volume ?? 0) * 0.6, "oxy"); } return(0); }
// Function from file: medicine_reagents.dm public override double reaction_mob(dynamic M = null, int?method = null, double?reac_volume = null, bool?show_message = null, dynamic touch_protection = null, Mob_Camera_Blob O = null) { method = method ?? GlobalVars.TOUCH; show_message = show_message ?? true; if (M is Mob_Living_Carbon && Convert.ToInt32(M.stat) != 2) { if (new ByTable(new object [] { GlobalVars.INGEST, GlobalVars.VAPOR, GlobalVars.INJECT }).Contains(method)) { ((Mob_Living)M).adjustToxLoss((reac_volume ?? 0) * 0.5); if (show_message == true) { M.WriteMsg("<span class='warning'>You don't feel so good...</span>"); } } else if (((Mob_Living)M).getFireLoss() != 0) { ((Mob_Living)M).adjustFireLoss(-(reac_volume ?? 0)); if (show_message == true) { M.WriteMsg("<span class='danger'>You feel your burns healing! It stings like hell!</span>"); } ((Mob)M).emote("scream"); } } base.reaction_mob((object)(M), method, reac_volume, show_message, (object)(touch_protection), O); return(0); }
// Function from file: medicine_reagents.dm public override double reaction_mob(dynamic M = null, int?method = null, double?reac_volume = null, bool?show_message = null, dynamic touch_protection = null, Mob_Camera_Blob O = null) { method = method ?? GlobalVars.TOUCH; show_message = show_message ?? true; if (M is Mob_Living_Carbon && Convert.ToInt32(M.stat) != 2) { if (new ByTable(new object [] { GlobalVars.INGEST, GlobalVars.VAPOR, GlobalVars.INJECT }).Contains(method)) { ((Mob)M).Stun(4); ((Mob)M).Weaken(4); if (show_message == true) { M.WriteMsg("<span class='warning'>Your stomach agonizingly cramps!</span>"); } } else if (show_message == true) { M.WriteMsg("<span class='danger'>You feel your wounds fade away to nothing!</span>"); } } base.reaction_mob((object)(M), method, reac_volume, show_message, (object)(touch_protection), O); return(0); }
// Function from file: other_reagents.dm public override double reaction_mob(dynamic M = null, int?method = null, double?reac_volume = null, bool?show_message = null, dynamic touch_protection = null, Mob_Camera_Blob O = null) { method = method ?? GlobalVars.TOUCH; dynamic C = null; dynamic H = null; dynamic H2 = null; if (method == GlobalVars.TOUCH || GlobalVars.VAPOR != 0) { if (M is Mob_Living_Carbon) { C = M; if (M is Mob_Living_Carbon_Human) { H = M; if (Lang13.Bool(H.lip_style)) { H.lip_style = null; ((Mob_Living_Carbon_Human)H).update_body(); } } if (Lang13.Bool(C.r_hand)) { ((Ent_Static)C.r_hand).clean_blood(); } if (Lang13.Bool(C.l_hand)) { ((Ent_Static)C.l_hand).clean_blood(); } if (Lang13.Bool(C.wear_mask)) { if (((Ent_Static)C.wear_mask).clean_blood()) { ((Mob)C).update_inv_wear_mask(); } } if (M is Mob_Living_Carbon_Human) { H2 = C; if (Lang13.Bool(H2.head)) { if (((Ent_Static)H2.head).clean_blood()) { ((Mob)H2).update_inv_head(); } } if (Lang13.Bool(H2.wear_suit)) { if (((Ent_Static)H2.wear_suit).clean_blood()) { ((Mob)H2).update_inv_wear_suit(); } } else if (Lang13.Bool(H2.w_uniform)) { if (((Ent_Static)H2.w_uniform).clean_blood()) { ((Mob)H2).update_inv_w_uniform(); } } if (Lang13.Bool(H2.shoes)) { if (((Ent_Static)H2.shoes).clean_blood()) { ((Mob)H2).update_inv_shoes(); } } } ((Ent_Static)M).clean_blood(); } } return(0); }
// Function from file: other_reagents.dm public override double reaction_mob(dynamic M = null, int?method = null, double?reac_volume = null, bool?show_message = null, dynamic touch_protection = null, Mob_Camera_Blob O = null) { if (Lang13.Bool(M) && M is Mob_Living) { M.color = Rand13.PickFromTable(this.random_color_list); } base.reaction_mob((object)(M), method, reac_volume, show_message, (object)(touch_protection), O); return(0); }
// Function from file: pyrotechnic_reagents.dm public override double reaction_mob(dynamic M = null, int?method = null, double?reac_volume = null, bool?show_message = null, dynamic touch_protection = null, Mob_Camera_Blob O = null) { method = method ?? GlobalVars.TOUCH; ((Mob_Living)M).IgniteMob(); base.reaction_mob((object)(M), method, reac_volume, show_message, (object)(touch_protection), O); return(0); }
// Function from file: blob_reagents.dm public override double reaction_mob(dynamic M = null, int?method = null, double?reac_volume = null, bool?show_message = null, dynamic touch_protection = null, Mob_Camera_Blob O = null) { method = method ?? GlobalVars.TOUCH; reac_volume = base.reaction_mob((object)(M), method, reac_volume, show_message, (object)(touch_protection), O); this.reagent_vortex(M, Rand13.Int(0, 1), reac_volume); M.losebreath += Num13.Floor((reac_volume ?? 0) * 0.05); ((Mob_Living)M).apply_damage((reac_volume ?? 0) * 0.6, "oxy"); return(0); }
// Function from file: toxin_reagents.dm public override double reaction_mob(dynamic M = null, int?method = null, double?reac_volume = null, bool?show_message = null, dynamic touch_protection = null, Mob_Camera_Blob O = null) { method = method ?? GlobalVars.TOUCH; if (!(M is Mob_Living)) { return(0); } if (method == GlobalVars.TOUCH || method == GlobalVars.VAPOR) { ((Mob_Living)M).adjust_fire_stacks((reac_volume ?? 0) / 5); return(0); } base.reaction_mob((object)(M), method, reac_volume, show_message, (object)(touch_protection), O); return(0); }
// Function from file: other_reagents.dm public override double reaction_mob(dynamic M = null, int?method = null, double?reac_volume = null, bool?show_message = null, dynamic touch_protection = null, Mob_Camera_Blob O = null) { method = method ?? GlobalVars.TOUCH; show_message = show_message ?? true; touch_protection = touch_protection ?? 0; if (method == GlobalVars.PATCH || method == GlobalVars.INGEST || method == GlobalVars.INJECT || method == GlobalVars.VAPOR && Rand13.PercentChance(((int)(Num13.MinInt(((int)(reac_volume ?? 0)), 100) * (1 - Convert.ToDouble(touch_protection)))))) { ((Mob)M).ForceContractDisease(new Disease_Transformation_Robot(/* Pruned args, no ctor exists. */)); } return(0); }