public override void onTargetExitLOS(AIPlayer obj)
     {
     setImageTrigger(0, false);
     }
 public override void onReachDestination(AIPlayer obj)
     {
     if (this["HoldAndFire"].AsBool())
         return;
     if (this["path"] == "")
         return;
     MoveToNextNode();
     }
 public override void onTargetEnterLOS(AIPlayer obj)
     {
     setImageTrigger(0, true);
     }
 public override void onMoveStuck(AIPlayer obj)
     {
     SimSet path = this["path"];
     uint targetnode = this["targetNode"].AsUint();
     Marker node = path.getObject(targetnode);
     TransformF t = node.getTransform();
     t.mPositionZ += r.Next(10, 100);
     t.mPositionX += r.Next(10, 30);
     t.mPositionY += r.Next(10, 30);
     this.setTransform(t);
     }