// Function from file: spell.dm public bool los_check(dynamic A = null, Mob_Living B = null) { Obj dummy = null; dynamic turf = null; Ent_Dynamic AM = null; dummy = new Obj(A.loc); dummy.pass_flags |= 1; foreach (dynamic _b in Lang13.Enumerate(GlobalFuncs.getline(A, B))) { turf = _b; foreach (dynamic _a in Lang13.Enumerate(turf, typeof(Ent_Dynamic))) { AM = _a; if (!AM.CanPass(dummy, turf, 1)) { GlobalFuncs.qdel(dummy); return(false); } } } GlobalFuncs.qdel(dummy); return(true); }
// Function from file: turf.dm public override bool Enter(Ent_Dynamic O = null, Ent_Static oldloc = null) { Obj obstacle = null; ByTable large_dense = null; Ent_Dynamic border_obstacle = null; Ent_Dynamic obstacle2 = null; if (!(O != null)) { return(true); } if (O.loc is Tile) { foreach (dynamic _a in Lang13.Enumerate(O.loc, typeof(Obj))) { obstacle = _a; if (!obstacle.CheckExit(O, this) && obstacle != O && obstacle != oldloc) { O.Bump(obstacle, 1); return(false); } } } large_dense = new ByTable(); foreach (dynamic _b in Lang13.Enumerate(this, typeof(Ent_Dynamic))) { border_obstacle = _b; if (Lang13.Bool(border_obstacle.flags & 512)) { if (!border_obstacle.CanPass(O, O.loc, 1) && oldloc != border_obstacle) { O.Bump(border_obstacle, 1); return(false); } } else { large_dense.Add(border_obstacle); } } if (!this.CanPass(O, this)) { O.Bump(this, 1); return(false); } foreach (dynamic _c in Lang13.Enumerate(large_dense, typeof(Ent_Dynamic))) { obstacle2 = _c; if (!obstacle2.CanPass(O, O.loc, 1) && oldloc != obstacle2) { O.Bump(obstacle2, 1); return(false); } } return(true); }
// Function from file: medbeam.dm public bool los_check(Ent_Static user = null, dynamic target = null) { dynamic user_turf = null; Obj dummy = null; dynamic turf = null; Ent_Dynamic AM = null; Obj_Effect_Ebeam_Medical B = null; user_turf = user.loc; if (this.mounted) { user_turf = GlobalFuncs.get_turf(user); } else if (!(user_turf is Tile)) { return(false); } dummy = new Obj(user_turf); dummy.pass_flags |= 7; foreach (dynamic _c in Lang13.Enumerate(GlobalFuncs.getline(user_turf, target))) { turf = _c; if (this.mounted && turf == user_turf) { continue; } if (turf.density) { GlobalFuncs.qdel(dummy); return(false); } foreach (dynamic _a in Lang13.Enumerate(turf, typeof(Ent_Dynamic))) { AM = _a; if (!AM.CanPass(dummy, turf, 1)) { GlobalFuncs.qdel(dummy); return(false); } } foreach (dynamic _b in Lang13.Enumerate(turf, typeof(Obj_Effect_Ebeam_Medical))) { B = _b; if (B.owner != this.current_beam) { GlobalFuncs.explosion(B.loc, 0, 3, 5, 8); GlobalFuncs.qdel(dummy); return(false); } } } GlobalFuncs.qdel(dummy); return(true); }