All Downloads are FREE. Search and download functionalities are using the official Maven repository.

APT.all-test.clean-house-new.deposit-object.move-to-room-center.elaborations.soar Maven / Gradle / Ivy

## If collision sensor is on, mark that there is a collision


## If there is an object that is within 2 and I'm headed for it, mark that there is a collision

sp {move-to-room-center*elaborate*collision-object
   (state  ^name move-to-room-center
              ^io.input-link.objects.object )
   ( -^distance > 2
          -^type player
           ^abs-relative-bearing < 10)
-->
   ( ^collision true)
}

## If there none of the things above is true, mark that there is a not a collision
##  Useful in other rules to compute both true and false for collision

#sp {move-to-room-center*elaborate*collision-false
#   (state  ^name move-to-room-center
#             -^io.input-link.objects.object.distance < 3
#             -^collision-distance < 3)
##              ^io.input-link.self.collision )
##   ( ^x false
##          ^y false)
#-->
#   ( ^collision false)
#}
#
sp {move-to-room-center*elaborate*achieved-center
  # :interrupt
   (state   ^name move-to-room-center
               ^top-state.io.input-link.waypoints.waypoint )
   ( ^id 1001001
        -^distance > 1.2)
-->
   ( ^collision true)
}