// Function from file: disposal-unit.dm public void expel(Obj_Structure_Disposalholder H = null) { dynamic T = null; Tile target = null; Ent_Dynamic AM = null; T = GlobalFuncs.get_turf(this); GlobalFuncs.playsound(this, "sound/machines/hiss.ogg", 50, 0, 0); if (H != null) { foreach (dynamic _a in Lang13.Enumerate(H, typeof(Ent_Dynamic))) { AM = _a; target = GlobalFuncs.get_offset_target_turf(this.loc, Rand13.Int(5) - Rand13.Int(5), Rand13.Int(5) - Rand13.Int(5)); AM.forceMove(T); AM.pipe_eject(0); AM.throw_at_fast(target, 5, 1); } H.vent_gas(this.loc); GlobalFuncs.qdel(H); } return; }
// Function from file: disposal-structures.dm public void expel(Obj_Structure_Disposalholder H = null) { dynamic T = null; Ent_Dynamic AM = null; T = GlobalFuncs.get_turf(this); Icon13.Flick("outlet-open", this); if (this.start_eject + 30 < Game13.time) { this.start_eject = Game13.time; GlobalFuncs.playsound(this, "sound/machines/warning-buzzer.ogg", 50, 0, 0); Task13.Sleep(20); GlobalFuncs.playsound(this, "sound/machines/hiss.ogg", 50, 0, 0); } else { Task13.Sleep(20); } if (H != null) { foreach (dynamic _a in Lang13.Enumerate(H, typeof(Ent_Dynamic))) { AM = _a; AM.forceMove(T); AM.pipe_eject(this.dir); AM.throw_at_fast(this.target, this.eject_range, 1); } H.vent_gas(T); GlobalFuncs.qdel(H); } return; }
// Function from file: closets.dm public virtual void dump_contents( ) { dynamic T = null; Ent_Dynamic AM = null; T = GlobalFuncs.get_turf(this); foreach (dynamic _a in Lang13.Enumerate(this, typeof(Ent_Dynamic))) { AM = _a; AM.forceMove(T); if (this.throwing) { Map13.Step(AM, this.dir); } } if (this.throwing) { this.throwing = false; } return; }
// Function from file: disposal-structures.dm public override dynamic Destroy( ) { dynamic H = null; Ent_Static T = null; Ent_Dynamic AM = null; H = Lang13.FindIn(typeof(Obj_Structure_Disposalholder), this); if (Lang13.Bool(H)) { H.active = 0; T = this.loc; if (T.density) { foreach (dynamic _a in Lang13.Enumerate(H, typeof(Ent_Dynamic))) { AM = _a; AM.forceMove(this.loc); AM.pipe_eject(0); } GlobalFuncs.qdel(H); return(base.Destroy()); } else { this.expel(H, T, 0); } } return(base.Destroy()); }
// Function from file: disposal-structures.dm public void broken(bool?remains = null) { remains = remains ?? false; dynamic D = null; Obj_Structure_Disposalpipe_Broken P = null; dynamic H = null; Ent_Static T = null; Ent_Dynamic AM = null; if (remains == true) { foreach (dynamic _a in Lang13.Enumerate(GlobalVars.cardinal)) { D = _a; if (Lang13.Bool(D & this.dpdir)) { P = new Obj_Structure_Disposalpipe_Broken(this.loc); P.dir = Convert.ToInt32(D); } } } this.invisibility = 101; H = Lang13.FindIn(typeof(Obj_Structure_Disposalholder), this); if (Lang13.Bool(H)) { H.active = 0; T = this.loc; if (T.density) { foreach (dynamic _b in Lang13.Enumerate(H, typeof(Ent_Dynamic))) { AM = _b; AM.forceMove(this.loc); AM.pipe_eject(0); } GlobalFuncs.qdel(H); return; } if (Lang13.Bool(H)) { this.expel(H, T, 0); } } Task13.Schedule(2, (Task13.Closure)(() => { GlobalFuncs.qdel(this); return; })); return; }
// Function from file: medical_tools.dm public override dynamic Destroy( ) { Ent_Dynamic AM = null; foreach (dynamic _a in Lang13.Enumerate(this, typeof(Ent_Dynamic))) { AM = _a; AM.forceMove(GlobalFuncs.get_turf(this)); } return(base.Destroy()); }
// Function from file: gygax.dm public override void add_cell(Ent_Dynamic C = null) { if (C != null) { C.forceMove(this); this.cell = C; return; } this.cell = new Obj_Item_Weapon_StockParts_Cell(this); this.cell.charge = 30000; this.cell.maxcharge = 30000; return; }
// Function from file: mine_turfs.dm public void drop(Ent_Dynamic AM = null) { Ent_Dynamic L = null; this.visible_message("" + AM + " falls into " + this + "!"); AM.forceMove(Map13.GetTile(this.drop_x, this.drop_y, this.drop_z)); AM.visible_message("" + AM + " falls from above!"); if (AM is Mob_Living) { L = AM; ((Mob_Living)L).adjustBruteLoss(30); } return; }
// Function from file: ninja_teleporting.dm public void handle_teleport_grab(dynamic T = null, dynamic H = null) { Ent_Dynamic victim = null; if (Lang13.Bool(H.pulling) && H.pulling is Mob_Living) { victim = H.pulling; if (!Lang13.Bool(victim.anchored)) { victim.forceMove(Map13.GetTile(Convert.ToInt32(T.x + Rand13.Int(-1, 1)), Convert.ToInt32(T.y + Rand13.Int(-1, 1)), Convert.ToInt32(T.z))); } } return; }
// Function from file: disposal-unit.dm public void eject( ) { dynamic T = null; Ent_Dynamic AM = null; T = GlobalFuncs.get_turf(this); foreach (dynamic _a in Lang13.Enumerate(this, typeof(Ent_Dynamic))) { AM = _a; AM.forceMove(T); AM.pipe_eject(0); } this.update(); return; }
// Function from file: morgue.dm public void open( ) { Tile T = null; Ent_Dynamic AM = null; GlobalFuncs.playsound(this.loc, "sound/items/Deconstruct.ogg", 50, 1); T = Map13.GetStep(this, this.opendir); foreach (dynamic _a in Lang13.Enumerate(this, typeof(Ent_Dynamic))) { AM = _a; AM.forceMove(T); } this.update_icon(); return; }
// Function from file: martial.dm public void Suplex(dynamic A = null, Ent_Dynamic D = null) { double armor_block = 0; D.visible_message("<span class='danger'>" + A + " suplexes " + D + "!</span>", "<span class='userdanger'>" + A + " suplexes " + D + "!</span>"); D.forceMove(A.loc); armor_block = ((Mob_Living)D).run_armor_check(null, "melee"); ((Mob_Living)D).apply_damage(30, "brute", null, armor_block); ((Mob_Living)D).apply_effect(6, "weaken", armor_block); GlobalFuncs.add_logs(A, D, "suplexed"); ((Ent_Static)A).SpinAnimation(10, 1); D.SpinAnimation(10, 1); Task13.Schedule(3, (Task13.Closure)(() => { armor_block = ((Mob_Living)A).run_armor_check(null, "melee"); ((Mob_Living)A).apply_effect(4, "weaken", armor_block); return; })); return; }
// Function from file: morgue.dm public void close( ) { Ent_Dynamic AM = null; GlobalFuncs.playsound(this.loc, "sound/items/Deconstruct.ogg", 50, 1); foreach (dynamic _a in Lang13.Enumerate(this.connected.loc, typeof(Ent_Dynamic))) { AM = _a; if (!Lang13.Bool(AM.anchored) || AM == this.connected) { AM.forceMove(this); } } this.update_icon(); return; }
// Function from file: Sleeper.dm public override bool blob_act(dynamic severity = null) { dynamic T = null; Ent_Dynamic A = null; if (Rand13.PercentChance(75)) { T = GlobalFuncs.get_turf(this); foreach (dynamic _a in Lang13.Enumerate(this, typeof(Ent_Dynamic))) { A = _a; A.forceMove(T); A.blob_act(); } GlobalFuncs.qdel(this); } return(false); }
// Function from file: large.dm public override dynamic attackby(dynamic A = null, dynamic user = null, string _params = null, bool?silent = null, bool?replace_spent = null) { dynamic T = null; double i = 0; Ent_Dynamic AM = null; if (A is Obj_Item_Weapon_Crowbar) { T = GlobalFuncs.get_turf(this); if (this.manifest != null) { this.tear_manifest(user); } ((Ent_Static)user).visible_message(new Txt().item(user).str(" pries ").the(this).item().str(" open.").ToString(), new Txt("<span class='notice'>You pry open ").the(this).item().str(".</span>").ToString(), "<span class='italics'>You hear splitting wood.</span>"); GlobalFuncs.playsound(this.loc, "sound/weapons/slashmiss.ogg", 75, 1); foreach (dynamic _a in Lang13.IterateRange(1, Rand13.Int(2, 5))) { i = _a; Lang13.Call(this.material_drop, this); } foreach (dynamic _b in Lang13.Enumerate(this.contents, typeof(Ent_Dynamic))) { AM = _b; AM.forceMove(T); } GlobalFuncs.qdel(this); } else { base.attackby((object)(A), (object)(user), _params, silent, replace_spent); } return(null); }
public override bool f_action(dynamic target = null) { Obj_Item_Weapon_ReagentContainers_Syringe S = null; dynamic trg = null; Ent_Dynamic mechsyringe = null; Ent_Static originaloccupant = null; int? i = null; ByTable mobs = null; Mob_Living_Carbon M = null; dynamic M2 = null; dynamic R = null; Reagent A = null; if (!this.action_checks(target)) { return(false); } if (target is Obj_Item_Weapon_ReagentContainers_Syringe) { return(this.load_syringe(target)); } if (target is Obj_Item_Weapon_Storage) { foreach (dynamic _a in Lang13.Enumerate(target.contents, typeof(Obj_Item_Weapon_ReagentContainers_Syringe))) { S = _a; this.load_syringe(S); } return(false); } if (this.mode) { return(this.analyze_reagents(target)); } if (!(this.syringes.len != 0)) { this.occupant_message("<span class=\"alert\">No syringes loaded.</span>"); return(false); } if ((this.reagents.total_volume ?? 0) <= 0) { this.occupant_message("<span class=\"alert\">No available reagents to load syringe with.</span>"); return(false); } trg = GlobalFuncs.get_turf(target); mechsyringe = this.syringes[1]; mechsyringe.forceMove(GlobalFuncs.get_turf(this.chassis)); this.reagents.trans_to(mechsyringe, Num13.MinInt(Convert.ToInt32(((dynamic)mechsyringe).volume), ((int)(this.reagents.total_volume ?? 0)))); this.syringes.Remove(mechsyringe); mechsyringe.icon = "icons/obj/chemical.dmi"; mechsyringe.icon_state = "syringeproj"; GlobalFuncs.playsound(this.chassis, "sound/items/syringeproj.ogg", 50, 1); this.log_message("Launched " + mechsyringe + " from " + this + ", targeting " + target + "."); originaloccupant = this.chassis.occupant; Task13.Schedule(0, (Task13.Closure)(() => { Task13.Source = null; i = null; i = 0; while ((i ?? 0) < 6) { if (!(mechsyringe != null)) { break; } Map13.StepTowardsSimple(mechsyringe, trg); if (!(mechsyringe != null)) { mobs = new ByTable(); foreach (dynamic _b in Lang13.Enumerate(mechsyringe.loc, typeof(Mob_Living_Carbon))) { M = _b; mobs.Add(M); } M2 = GlobalFuncs.safepick(mobs); if (Lang13.Bool(M2)) { R = null; mechsyringe.visible_message("<span class=\"attack\"> " + M2 + " was hit by the syringe!</span>"); if (((Mob_Living)M2).can_inject(null, true)) { if (mechsyringe.reagents != null) { foreach (dynamic _c in Lang13.Enumerate(mechsyringe.reagents.reagent_list, typeof(Reagent))) { A = _c; R += A.id + " ("; R += String13.NumberToString(A.volume) + "),"; } } mechsyringe.icon_state = Lang13.Initial(mechsyringe, "icon_state"); mechsyringe.icon = Lang13.Initial(mechsyringe, "icon"); mechsyringe.reagents.trans_to(M2, mechsyringe.reagents.total_volume); ((Mob_Living)M2).take_organ_damage(2); GlobalFuncs.add_logs(originaloccupant, M2, "shot", "syringegun"); } break; } else if (mechsyringe.loc == trg) { mechsyringe.icon_state = Lang13.Initial(mechsyringe, "icon_state"); mechsyringe.icon = Lang13.Initial(mechsyringe, "icon"); ((dynamic)mechsyringe).update_icon(); break; } } else { mechsyringe.icon_state = Lang13.Initial(mechsyringe, "icon_state"); mechsyringe.icon = Lang13.Initial(mechsyringe, "icon"); ((dynamic)mechsyringe).update_icon(); break; } Task13.Sleep(1); i++; } return; })); return(true); }
// Function from file: closets.dm public virtual int insert(Ent_Dynamic AM = null) { Ent_Dynamic L = null; int mobs_stored = 0; Mob_Living M = null; if (this.contents.len >= this.storage_capacity) { return(-1); } L = AM; if (L is Mob_Living) { if (Lang13.Bool(((dynamic)L).buckled) || Lang13.Bool(L.buckled_mob)) { return(0); } if (Convert.ToDouble(((dynamic)L).mob_size) > 0) { if (this.horizontal && !Lang13.Bool(((dynamic)L).lying)) { return(0); } if (Convert.ToDouble(((dynamic)L).mob_size) > this.max_mob_size) { return(0); } mobs_stored = 0; foreach (dynamic _a in Lang13.Enumerate(this.contents, typeof(Mob_Living))) { M = _a; if (++mobs_stored >= this.mob_storage_capacity) { return(0); } } } L.__CallVerb("Stop Pulling"); } else if (AM is Obj_Structure_Closet) { return(0); } else if (AM is Obj) { if (!this.allow_objects && !(AM is Obj_Item) && !(AM is Obj_Effect_Dummy_Chameleon)) { return(0); } if (!this.allow_dense && AM.density) { return(0); } if (Lang13.Bool(AM.anchored) || Lang13.Bool(AM.buckled_mob) || Lang13.Bool(AM.flags & 2)) { return(0); } } AM.forceMove(this); if (AM.pulledby != null) { AM.pulledby.__CallVerb("Stop Pulling"); } return(1); }
// Function from file: disposal-structures.dm public void expel(dynamic H = null, dynamic T = null, int?direction = null) { dynamic target = null; dynamic myturf = null; Ent_Dynamic AM = null; Ent_Dynamic AM2 = null; if (T is Tile_Simulated_Floor) { myturf = T; if (Lang13.Bool(myturf.builtin_tile)) { myturf.builtin_tile.loc = T; myturf.builtin_tile = null; } ((Tile_Simulated_Floor)myturf).make_plating(); } if (Lang13.Bool(direction)) { if (T is Tile_Space) { target = GlobalFuncs.get_edge_target_turf(T, direction); } else { target = GlobalFuncs.get_ranged_target_turf(T, direction, 10); } GlobalFuncs.playsound(this, "sound/machines/hiss.ogg", 50, 0, 0); if (Lang13.Bool(H)) { foreach (dynamic _a in Lang13.Enumerate(H, typeof(Ent_Dynamic))) { AM = _a; AM.forceMove(this.loc); AM.pipe_eject(direction); AM.throw_at_fast(target, 10, 1); } } } else { GlobalFuncs.playsound(this, "sound/machines/hiss.ogg", 50, 0, 0); if (Lang13.Bool(H)) { foreach (dynamic _b in Lang13.Enumerate(H, typeof(Ent_Dynamic))) { AM2 = _b; target = GlobalFuncs.get_offset_target_turf(T, Rand13.Int(5) - Rand13.Int(5), Rand13.Int(5) - Rand13.Int(5)); AM2.forceMove(this.loc); AM2.pipe_eject(0); AM2.throw_at_fast(target, 5, 1); } } } ((Obj_Structure_Disposalholder)H).vent_gas(T); GlobalFuncs.qdel(H); return; }