// Function from file: shadowling_abilities.dm public override bool cast(dynamic targets = null, dynamic thearea = null, dynamic user = null) { thearea = thearea ?? Task13.User; dynamic T = null; Obj_Item F = null; Obj_Machinery_Light L = null; Obj_Machinery_Computer C = null; Obj_Effect_Glowshroom G = null; Mob_Living H = null; Mob_Living_Silicon_Robot borgie = null; if (!this.shadowling_check(thearea) && !this.admin_override) { this.revert_cast(); return(false); } thearea.WriteMsg("<span class='shadowling'>You silently disable all nearby lights.</span>"); foreach (dynamic _g in Lang13.Enumerate(targets)) { T = _g; foreach (dynamic _a in Lang13.Enumerate(T.contents, typeof(Obj_Item))) { F = _a; this.extinguishItem(F); } foreach (dynamic _b in Lang13.Enumerate(T.contents, typeof(Obj_Machinery_Light))) { L = _b; L.on = false; L.visible_message("<span class='warning'>" + L + " flickers and falls dark.</span>"); L.update(false); } foreach (dynamic _c in Lang13.Enumerate(T.contents, typeof(Obj_Machinery_Computer))) { C = _c; C.SetLuminosity(0); C.visible_message("<span class='warning'>" + C + " grows dim, its screen barely readable.</span>"); } foreach (dynamic _d in Lang13.Enumerate(Map13.FetchInRangeExcludeThis(thearea, 7), typeof(Obj_Effect_Glowshroom))) { G = _d; G.visible_message("<span class='warning'>" + G + " withers away!</span>"); GlobalFuncs.qdel(G); } foreach (dynamic _e in Lang13.Enumerate(T.contents, typeof(Mob_Living))) { H = _e; this.extinguishMob(H); } foreach (dynamic _f in Lang13.Enumerate(T.contents, typeof(Mob_Living_Silicon_Robot))) { borgie = _f; borgie.update_headlamp(true); } } return(false); }