// Function from file: venus_human_trap.dm public override bool handle_automated_action( ) { Mob_Living L = null; dynamic B = null; Mob_Living L2 = null; if (base.handle_automated_action()) { foreach (dynamic _a in Lang13.Enumerate(this.grasping, typeof(Mob_Living))) { L = _a; if (L.stat == 2) { B = this.grasping[L]; if (Lang13.Bool(B)) { B.End(); } this.grasping.Remove(L); } if (L.Adjacent(this)) { L.attack_animal(this); } else if (Rand13.PercentChance(this.grasp_pull_chance)) { this.dir = Map13.GetDistance(this, L); Map13.Step(L, Map13.GetDistance(L, this)); L.Weaken(3); } } if (this.grasping.len < this.max_grasps) { foreach (dynamic _b in Lang13.Enumerate(Map13.FetchInRange(this, this.grasp_range), typeof(Mob_Living))) { L2 = _b; if (L2 == this || this.faction_check(L2)) { continue; } if (!this.grasping.Contains(L2) && L2 != this.target && Rand13.PercentChance(this.grasp_chance)) { L2.WriteMsg(new Txt("<span class='userdanger'>").the(this).item().str(" has you entangled!</span>").ToString()); this.grasping[L2] = this.Beam(L2, "vine", "icons/effects/spacevines.dmi", Double.PositiveInfinity, 5, typeof(Obj_Effect_Ebeam_Vine)); break; } } } } return(false); }