(defrule move-by-default
	?f <- (TurnRemaining ?x)
	(NewTurn)
	(not (OnTheMove))
    =>
    (retract ?f)
    (store TurnRight 10000)
    (store MaxVelocity 5)
    (store Ahead 10000)
    (assert (NowTurning Right))
    (assert (NowMoving Ahead)))

(defrule visto-enemigo
    (ScannedRobotEvent)
    =>
    (store Fire 1))

(defrule choco-con-alguien
	?event<-(HitRobotEvent)
      ?me<-(< -10 Bearing)
	?h<-(< Bearing 10)
	?cond<-(&& ?me ?h)
	=>
	(retract ?event)
	(retract ?cond)
	(store Fire 3))

(defrule choco-a-alguien
	?event<-(HitRobotEvent)
	?cond<-(isMyFault)
	=>
	(retract ?event)
	(retract ?cond)
	(store TurnRight 10)
	(assert (NowTurning Right)))

(defrule muerto
	?event<-(DeathEvent)
	=>
	(retract ?event))