//--------    FILE: alpha.bhv   -------------

initialize   DEPLOY = false
initialize   RETURN = false
initialize   ZIGGING = false

set MODE = ACTIVE {
  DEPLOY = true
} INACTIVE

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

set MODE = ZIGZAG {
  MODE = ACTIVE
  ZIGGING = true
}
	
set MODE = LEGRUN {
  MODE = ACTIVE
  RETURN != true
} 

	
//------------------------------------------------o
Behavior = BHV_LegRunZ
{
  name      = legs
  pwt       = 100
  condition = MODE == LEGRUN
  updates   = LEG_UPDATE
  perpetual = true

//            lead = 5
//     lead_damper = 1
           speed = 1.4
					 //    capture_line = true
  capture_radius = 5
     slip_radius = 15
        patience = 20
   offboard_tgap = 20

         leg = x=65,y=-110,len=200,ang=90
  turn1_bias = 100
  turn2_bias = 100
   turn1_dir = star
   turn2_dir = port
    turn_ext = 10

        repeat = 3
     turn1_rad = 15
     turn2_rad = 15
       mid_pct = 20

	midflag = ZIGGING=true
	midpct = 20
	
   adjust_turn = false

    legflag = PCT_TO_NEXT=$[PCT_NP]
    wptflag = LEG_RESULT="id=$[LEG_ID],dist=$[LEG_ODO],wraps=$[WRAPS]"

  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=6, edge_size=1
  visual_hints = turn_edge_color=gray80
  visual_hints = turn_vertex_color=green
}

	
//------------------------------------------------o
Behavior = BHV_Waypoint
{
  name       = waypt_return
  pwt        = 100
  condition  = MODE == RETURNING
  perpetual  = true
  endflag    = RETURN = false
  endflag    = DEPLOY = false
  endflag    = MISSION = complete

           speed = 2.0
  capture_radius = 2.0
     slip_radius = 8.0
          points = 0,-20
}

//------------------------------------------------o
Behavior = BHV_ZigZag
{
  name       = avd_zigzag
  pwt        = 110
  condition  = MODE == ACTIVE
  updates    = ZIG_UPDATES

           speed = 1.4
	stem_on_active = true
      hdg_thresh = 2   // Default is zero

	fierce_zigging = true
	     zig_angle = 30
	     zig_first = star
	  max_zig_zags = 1
			
	zig_angle_fierce = 70

	visual_hints = draw_set_hdg = true
	visual_hints = draw_req_hdg = true
	visual_hints = set_hdg_color = white
	visual_hints = draw_req_color = lime_green
}

//----------------------------------------------
Behavior = BHV_ZigZag
{ 
  name      = zig
  pwt       = 100
  condition = MODE==ZIGZAG
	endflag   = ZIGGING = false

  updates   = ZIG_UPDATE
  perpetual = true

            speed = 3.0   // meters per second
	 stem_on_active = true
        zig_first = star
     max_zig_zags = 1
        zig_angle = 45

	zig_angle_fierce = 74
	
       hdg_thresh = 2 
   fierce_zigging = true
}