//---------------------------------------------------
// Helm Behavior file 

initialize   DEPLOY  = false
initialize   RETURN  = false
initialize   STATION_KEEP = false
initialize   LOITER  = true
initialize   AVOID   = true

set MODE = ACTIVE {
  DEPLOY = true
} INACTIVE

set MODE = STATION-KEEPING {
  MODE = ACTIVE
  STATION_KEEP = true
}                       

set MODE = RETURNING {
  MODE = ACTIVE
  RETURN = true
} 

set MODE = LOITERING {
  MODE = ACTIVE
  LOITER = true
} 


//----------------------------------------------
Behavior = BHV_Waypoint
{ 
  name      = waypt_survey
  pwt       = 100
  condition = RETURN = false
  condition = DEPLOY = true
  endflag   = RETURN = true
  updates   = WPT_UPDATE
  perpetual = true

                lead = 8
         lead_damper = 1
       lead_to_start = true
               speed = 2   // meters per second
        capture_line = true
      capture_radius = 5.0
         slip_radius = 15.0

             polygon = 60,-40 : 60,-160 : 150,-160 : 180,-100 : 150,-40
             repeat = 0

  visual_hints = nextpt_color=yellow
    visual_hints = nextpt_vertex_size=8
    visual_hints = nextpt_lcolor=gray70
    visual_hints = vertex_color=dodger_blue, edge_color=white
    visual_hints = vertex_size=5, edge_size=1
}

//----------------------------------------------
Behavior = BHV_Waypoint
{
  name      = waypt_return
  pwt       = 100
  updates   = RETURN_UPDATES
  condition = MODE==RETURNING
  endflag   = STATION_KEEP = true
  endflag   = DEPLOY = false
	perpetual = true

              speed = 2.0
     capture_radius = 3.0
        slip_radius = 15.0
             points = $(START_POS)
             repeat = 10
       lead = 8
}

//----------------------------------------------
Behavior = BHV_StationKeep
{
  name         = station-keep
  pwt          = 100
  condition    = MODE==STATION-KEEPING
  inactiveflag = STATIONING = false
  activeflag   = STATIONING = true

     center_activate = true
        inner_radius = 5
        outer_radius = 10 
         outer_speed = 1.0

       transit_speed = 1.3
          swing_time = 7
        visual_hints = vertex_size=0, edge_color=gray50
}