// Function from file: areas.dm public void burglaralert(Obj trigger = null) { ByTable cameras = null; dynamic RA = null; Obj_Machinery_Door_Airlock DOOR = null; Obj_Machinery_Camera C = null; Mob_Living_Silicon SILICON = null; if (this.always_unpowered) { return; } cameras = new ByTable(); foreach (dynamic _c in Lang13.Enumerate(this.related)) { RA = _c; ((Zone)RA).set_fire_alarm_effect(); foreach (dynamic _a in Lang13.Enumerate(RA, typeof(Obj_Machinery_Door_Airlock))) { DOOR = _a; Task13.Schedule(0, (Task13.Closure)(() => { DOOR.close(); if (DOOR.density) { DOOR.locked = true; DOOR.update_icon(); } return; })); } foreach (dynamic _b in Lang13.Enumerate(RA, typeof(Obj_Machinery_Camera))) { C = _b; cameras.Add(C); } } foreach (dynamic _d in Lang13.Enumerate(GlobalVars.player_list, typeof(Mob_Living_Silicon))) { SILICON = _d; if (SILICON.triggerAlarm("Burglar", this, cameras, trigger)) { Task13.Schedule(600, (Task13.Closure)(() => { SILICON.cancelAlarm("Burglar", this, trigger); return; })); } } return; }
// Function from file: ai_laws.dm public void associate(dynamic M = null) { if (!(this.owner != null)) { this.owner = M; } return; }
// Function from file: camera.dm public void triggerCameraAlarm( ) { Mob_Living_Silicon S = null; this.alarm_on = true; foreach (dynamic _a in Lang13.Enumerate(GlobalVars.mob_list, typeof(Mob_Living_Silicon))) { S = _a; S.triggerAlarm("Camera", GlobalFuncs.get_area(this), new ByTable(new object [] { this }), this); } return; }
// Function from file: camera.dm public void cancelCameraAlarm( ) { Mob_Living_Silicon S = null; this.alarm_on = false; foreach (dynamic _a in Lang13.Enumerate(GlobalVars.mob_list, typeof(Mob_Living_Silicon))) { S = _a; S.cancelAlarm("Camera", GlobalFuncs.get_area(this), this); } return; }
// Function from file: magnet.dm public void magnetic_process( ) { Obj M = null; Mob_Living_Silicon S = null; if (this.pulling) { return; } while (this.on) { this.pulling = true; this.center = Map13.GetTile(((int)(this.x + this.center_x)), ((int)(this.y + this.center_y)), this.z); if (this.center != null) { foreach (dynamic _a in Lang13.Enumerate(Map13.FetchInRangeExcludeThis(this.center, this.magnetic_field), typeof(Obj))) { M = _a; if (!Lang13.Bool(M.anchored) && Lang13.Bool(M.flags & 64)) { Map13.StepTowardsSimple(M, this.center); } } foreach (dynamic _b in Lang13.Enumerate(Map13.FetchInRangeExcludeThis(this.center, this.magnetic_field), typeof(Mob_Living_Silicon))) { S = _b; if (S is Mob_Living_Silicon_Ai) { continue; } Map13.StepTowardsSimple(S, this.center); } } this.f_use_power(this.electricity_level * 5); Task13.Sleep(13 - this.electricity_level); } this.pulling = false; return; }
// Function from file: motion.dm public bool cancelAlarm( ) { Mob_Living_Silicon aiPlayer = null; if (this.detectTime == -1) { foreach (dynamic _a in Lang13.Enumerate(GlobalVars.player_list, typeof(Mob_Living_Silicon))) { aiPlayer = _a; if (this.status) { aiPlayer.cancelAlarm("Motion", GlobalFuncs.get_area(this), this); } } } this.detectTime = 0; return(true); }
// Function from file: motion.dm public bool triggerAlarm( ) { Mob_Living_Silicon aiPlayer = null; if (!(this.detectTime != 0)) { return(false); } foreach (dynamic _a in Lang13.Enumerate(GlobalVars.player_list, typeof(Mob_Living_Silicon))) { aiPlayer = _a; if (this.status) { aiPlayer.triggerAlarm("Motion", GlobalFuncs.get_area(this), new ByTable(new object [] { this }), this); } } this.detectTime = -1; return(true); }
// Function from file: tgstation.dme public override void stage_act( ) { Obj M = null; Mob_Living_Silicon S = null; Obj M2 = null; int?i = null; int?iter = null; Mob_Living_Silicon S2 = null; int?i2 = null; int?iter2 = null; Obj M3 = null; int?i3 = null; int?iter3 = null; Mob_Living_Silicon S3 = null; int?i4 = null; int?iter4 = null; base.stage_act(); switch ((int?)(this.stage)) { case 2: if (Rand13.PercentChance(2)) { this.affected_mob.WriteMsg("<span class='danger'>You feel a slight shock course through your body.</span>"); } if (Rand13.PercentChance(2)) { foreach (dynamic _a in Lang13.Enumerate(Map13.FetchInRangeExcludeThis(this.affected_mob, 2), typeof(Obj))) { M = _a; if (!Lang13.Bool(M.anchored) && Lang13.Bool(M.flags & 64)) { Map13.StepTowardsSimple(M, this.affected_mob); } } foreach (dynamic _b in Lang13.Enumerate(Map13.FetchInRangeExcludeThis(this.affected_mob, 2), typeof(Mob_Living_Silicon))) { S = _b; if (S is Mob_Living_Silicon_Ai) { continue; } Map13.StepTowardsSimple(S, this.affected_mob); } } break; case 3: if (Rand13.PercentChance(2)) { this.affected_mob.WriteMsg("<span class='danger'>You feel a strong shock course through your body.</span>"); } if (Rand13.PercentChance(2)) { this.affected_mob.WriteMsg("<span class='danger'>You feel like clowning around.</span>"); } if (Rand13.PercentChance(4)) { foreach (dynamic _c in Lang13.Enumerate(Map13.FetchInRangeExcludeThis(this.affected_mob, 4), typeof(Obj))) { M2 = _c; if (!Lang13.Bool(M2.anchored) && Lang13.Bool(M2.flags & 64)) { i = null; iter = Rand13.Int(1, 2); i = 0; while ((i ?? 0) < (iter ?? 0)) { Map13.StepTowardsSimple(M2, this.affected_mob); i++; } } } foreach (dynamic _d in Lang13.Enumerate(Map13.FetchInRangeExcludeThis(this.affected_mob, 4), typeof(Mob_Living_Silicon))) { S2 = _d; if (S2 is Mob_Living_Silicon_Ai) { continue; } i2 = null; iter2 = Rand13.Int(1, 2); i2 = 0; while ((i2 ?? 0) < (iter2 ?? 0)) { Map13.StepTowardsSimple(S2, this.affected_mob); i2++; } } } break; case 4: if (Rand13.PercentChance(2)) { this.affected_mob.WriteMsg("<span class='danger'>You feel a powerful shock course through your body.</span>"); } if (Rand13.PercentChance(2)) { this.affected_mob.WriteMsg("<span class='danger'>You query upon the nature of miracles.</span>"); } if (Rand13.PercentChance(8)) { foreach (dynamic _e in Lang13.Enumerate(Map13.FetchInRangeExcludeThis(this.affected_mob, 6), typeof(Obj))) { M3 = _e; if (!Lang13.Bool(M3.anchored) && Lang13.Bool(M3.flags & 64)) { i3 = null; iter3 = Rand13.Int(1, 3); i3 = 0; while ((i3 ?? 0) < (iter3 ?? 0)) { Map13.StepTowardsSimple(M3, this.affected_mob); i3++; } } } foreach (dynamic _f in Lang13.Enumerate(Map13.FetchInRangeExcludeThis(this.affected_mob, 6), typeof(Mob_Living_Silicon))) { S3 = _f; if (S3 is Mob_Living_Silicon_Ai) { continue; } i4 = null; iter4 = Rand13.Int(1, 3); i4 = 0; while ((i4 ?? 0) < (iter4 ?? 0)) { Map13.StepTowardsSimple(S3, this.affected_mob); i4++; } } } break; } return; }
// Function from file: areas.dm public virtual void poweralert(bool state = false, Obj_Machinery_Power_Apc source = null) { ByTable cameras = null; Obj_Machinery_Camera C = null; Mob_Living_Silicon aiPlayer = null; Obj_Machinery_Computer_StationAlert a = null; Mob_Living_SimpleAnimal_Drone D = null; if (state != this.poweralm) { this.poweralm = state; if (source is Obj) { cameras = new ByTable(); foreach (dynamic _a in Lang13.Enumerate(this, typeof(Obj_Machinery_Camera))) { C = _a; cameras.Add(C); } foreach (dynamic _b in Lang13.Enumerate(GlobalVars.player_list, typeof(Mob_Living_Silicon))) { aiPlayer = _b; if (state) { aiPlayer.cancelAlarm("Power", this, source); } else { aiPlayer.triggerAlarm("Power", this, cameras, source); } } foreach (dynamic _c in Lang13.Enumerate(GlobalVars.machines, typeof(Obj_Machinery_Computer_StationAlert))) { a = _c; if (state) { a.cancelAlarm("Power", this, source); } else { a.triggerAlarm("Power", this, cameras, source); } } foreach (dynamic _d in Lang13.Enumerate(GlobalVars.mob_list, typeof(Mob_Living_SimpleAnimal_Drone))) { D = _d; if (state) { D.cancelAlarm("Power", this, source); } else { D.triggerAlarm("Power", this, cameras, source); } } } } return; }
// Function from file: areas.dm public bool atmosalert(int danger_level = 0, Obj source = null) { ByTable cameras = null; dynamic RA = null; Obj_Machinery_Camera C = null; Mob_Living_Silicon aiPlayer = null; Obj_Machinery_Computer_StationAlert a = null; Mob_Living_SimpleAnimal_Drone D = null; Mob_Living_Silicon aiPlayer2 = null; Obj_Machinery_Computer_StationAlert a2 = null; Mob_Living_SimpleAnimal_Drone D2 = null; if (danger_level != this.atmosalm) { if (danger_level == 2) { cameras = new ByTable(); foreach (dynamic _b in Lang13.Enumerate(this.related)) { RA = _b; foreach (dynamic _a in Lang13.Enumerate(RA, typeof(Obj_Machinery_Camera))) { C = _a; cameras.Add(C); } } foreach (dynamic _c in Lang13.Enumerate(GlobalVars.player_list, typeof(Mob_Living_Silicon))) { aiPlayer = _c; aiPlayer.triggerAlarm("Atmosphere", this, cameras, source); } foreach (dynamic _d in Lang13.Enumerate(GlobalVars.machines, typeof(Obj_Machinery_Computer_StationAlert))) { a = _d; a.triggerAlarm("Atmosphere", this, cameras, source); } foreach (dynamic _e in Lang13.Enumerate(GlobalVars.mob_list, typeof(Mob_Living_SimpleAnimal_Drone))) { D = _e; D.triggerAlarm("Atmosphere", this, cameras, source); } } else if (this.atmosalm == 2) { foreach (dynamic _f in Lang13.Enumerate(GlobalVars.player_list, typeof(Mob_Living_Silicon))) { aiPlayer2 = _f; aiPlayer2.cancelAlarm("Atmosphere", this, source); } foreach (dynamic _g in Lang13.Enumerate(GlobalVars.machines, typeof(Obj_Machinery_Computer_StationAlert))) { a2 = _g; a2.cancelAlarm("Atmosphere", this, source); } foreach (dynamic _h in Lang13.Enumerate(GlobalVars.mob_list, typeof(Mob_Living_SimpleAnimal_Drone))) { D2 = _h; D2.cancelAlarm("Atmosphere", this, source); } } this.atmosalm = danger_level; return(true); } return(false); }
// Function from file: areas.dm public void firealert(Obj_Machinery source = null) { ByTable cameras = null; dynamic RA = null; Obj_Machinery_Door_Firedoor D = null; Obj_Machinery_Firealarm F = null; Obj_Machinery_Camera C = null; Obj_Machinery_Computer_StationAlert a = null; Mob_Living_Silicon aiPlayer = null; Mob_Living_SimpleAnimal_Drone D2 = null; if (this.always_unpowered) { return; } cameras = new ByTable(); foreach (dynamic _d in Lang13.Enumerate(this.related)) { RA = _d; if (!RA.fire) { ((Zone)RA).set_fire_alarm_effect(); foreach (dynamic _a in Lang13.Enumerate(RA, typeof(Obj_Machinery_Door_Firedoor))) { D = _a; if (!D.blocked) { if (D.operating) { D.nextstate = GlobalVars.CLOSED; } else if (!D.density) { Task13.Schedule(0, (Task13.Closure)(() => { D.close(); return; })); } } } foreach (dynamic _b in Lang13.Enumerate(RA, typeof(Obj_Machinery_Firealarm))) { F = _b; F.update_icon(); } } foreach (dynamic _c in Lang13.Enumerate(RA, typeof(Obj_Machinery_Camera))) { C = _c; cameras.Add(C); } } foreach (dynamic _e in Lang13.Enumerate(GlobalVars.machines, typeof(Obj_Machinery_Computer_StationAlert))) { a = _e; a.triggerAlarm("Fire", this, cameras, source); } foreach (dynamic _f in Lang13.Enumerate(GlobalVars.player_list, typeof(Mob_Living_Silicon))) { aiPlayer = _f; aiPlayer.triggerAlarm("Fire", this, cameras, source); } foreach (dynamic _g in Lang13.Enumerate(GlobalVars.mob_list, typeof(Mob_Living_SimpleAnimal_Drone))) { D2 = _g; D2.triggerAlarm("Fire", this, cameras, source); } return; }
// Function from file: areas.dm public void firereset(Obj_Machinery source = null) { dynamic RA = null; Obj_Machinery_Door_Firedoor D = null; Obj_Machinery_Firealarm F = null; Mob_Living_Silicon aiPlayer = null; Obj_Machinery_Computer_StationAlert a = null; Mob_Living_SimpleAnimal_Drone D2 = null; foreach (dynamic _c in Lang13.Enumerate(this.related)) { RA = _c; if (RA.fire) { RA.fire = false; RA.mouse_opacity = 0; ((Zone)RA).updateicon(); foreach (dynamic _a in Lang13.Enumerate(RA, typeof(Obj_Machinery_Door_Firedoor))) { D = _a; if (!D.blocked) { if (D.operating) { D.nextstate = 1; } else if (D.density) { Task13.Schedule(0, (Task13.Closure)(() => { D.open(); return; })); } } } foreach (dynamic _b in Lang13.Enumerate(RA, typeof(Obj_Machinery_Firealarm))) { F = _b; F.update_icon(); } } } foreach (dynamic _d in Lang13.Enumerate(GlobalVars.player_list, typeof(Mob_Living_Silicon))) { aiPlayer = _d; aiPlayer.cancelAlarm("Fire", this, source); } foreach (dynamic _e in Lang13.Enumerate(GlobalVars.machines, typeof(Obj_Machinery_Computer_StationAlert))) { a = _e; a.cancelAlarm("Fire", this, source); } foreach (dynamic _f in Lang13.Enumerate(GlobalVars.mob_list, typeof(Mob_Living_SimpleAnimal_Drone))) { D2 = _f; D2.cancelAlarm("Fire", this, source); } return; }
// Function from file: headcrab.dm public override dynamic sting_action(Mob user = null, Ent_Static target = null) { Mind M = null; ByTable organs = null; Obj_Item_Organ_Internal I = null; Mob_Living_Carbon_Human H = null; Mob_Living_Silicon S = null; dynamic turf = null; Mob_Living_SimpleAnimal_Hostile_Headcrab crab = null; Obj_Item_Organ_Internal I2 = null; M = user.mind; organs = user.getorganszone("head", true); foreach (dynamic _a in Lang13.Enumerate(organs, typeof(Obj_Item_Organ_Internal))) { I = _a; I.Remove(user, true); } GlobalFuncs.explosion(GlobalFuncs.get_turf(user), 0, 0, 2, 0, null, null, null, true); foreach (dynamic _b in Lang13.Enumerate(Map13.FetchInRange(user, 2), typeof(Mob_Living_Carbon_Human))) { H = _b; H.WriteMsg("<span class='userdanger'>You are blinded by a shower of blood!</span>"); H.Stun(1); H.blur_eyes(20); H.adjust_eye_damage(5); H.confused += 3; } foreach (dynamic _c in Lang13.Enumerate(Map13.FetchInRange(user, 2), typeof(Mob_Living_Silicon))) { S = _c; S.WriteMsg("<span class='userdanger'>Your sensors are disabled by a shower of blood!</span>"); S.Weaken(3); } turf = GlobalFuncs.get_turf(user); Task13.Schedule(5, (Task13.Closure)(() => { crab = new Mob_Living_SimpleAnimal_Hostile_Headcrab(turf); foreach (dynamic _d in Lang13.Enumerate(organs, typeof(Obj_Item_Organ_Internal))) { I2 = _d; I2.loc = crab; } crab.origin = M; if (crab.origin != null) { crab.origin.active = true; crab.origin.transfer_to(crab); crab.WriteMsg("<span class='warning'>You burst out of the remains of your former body in a shower of gore!</span>"); } return; })); user.gib(); GlobalFuncs.feedback_add_details("changeling_powers", "LR"); return(1); }