#include "Behaviors/Demos/Navigation/PilotDemo.h"

$nodeclass PushBox1 : PilotDemo {
  
  virtual void buildMap() {
    NEW_SHAPE(object, EllipseData,
	      new EllipseData(worldShS, Point(600,0,0,allocentric), 125, 100));
    object->setColor("red");
    
    NEW_SHAPE(target, PointData,
	      new PointData(worldShS, Point(1200,600,0,allocentric)));
    target->setObstacle(false);
    
    NEW_SHAPE(obstacle, EllipseData,
	      new EllipseData(worldShS, Point(900,300,0,allocentric), 125, 125, -M_PI/4));
  }
  
  $nodeclass PushIt : PilotNode(PilotTypes::pushObject) : doStart {
    GET_SHAPE(object, EllipseData, worldShS);
    GET_SHAPE(target, PointData, worldShS);
    pilotreq.objectShape = object;
    pilotreq.targetShape = target;
  }
  
  $setupmachine {
  startdemo: PushIt =C=> SpeechNode("done")
  }

}

REGISTER_BEHAVIOR(PushBox1);
