Beispiel #1
0
 protected void Awake()
 {
     //Inherits the Engine script to allow driving force towards nodes
     engine             = GetComponent <Engine>();
     driveState         = DriveStates.Drive;
     engine.targetNodes = routeNodes[currentNode];
     visitedNodes       = new List <Collider>();
 }
Beispiel #2
0
        private void SetState(DriveStates state, Func <bool> func, string traceMessage)
        {
            if (_driveState != state && DrivingEnabled &&
                (state == DriveStates.Stopped || GazePointer.IsHandsFreeInvoked))
            {
                _driveState = state;

                if (func())
                {
                    _trace.TraceInformation(traceMessage);
                }

                VisualStateManager.GoToElementState(Canvas, state.ToString(), true);
            }
        }
Beispiel #3
0
    //This function determines when a node has been met and what its next target (node) is
    void OnTriggerEnter(Collider collider)
    {
        if (collider.tag == "node")
        {
            if (!visitedNodes.Exists(delegate(Collider col) { return(col == collider); }))
            {
                visitedNodes.Add(collider);

                if (currentNode == (routeNodes.Length - 1))
                {
                    driveState = DriveStates.Stop;
                }
                else
                {
                    engine.targetNodes = routeNodes[++currentNode];
                }
            }
        }
    }
 void Awake()
  {
      Mover = GetComponent<CougarMover>();
      drivestate = DriveStates.DriveForward;
      Mover.target = PatrolRoute[currentWaypointIndex]; // set the target to the transform in patrol routes 
  }