Пример #1
0
 // Update is called once per frame
 void Update()
 {
     if (target != null)
     {
         SteeringAlign.DelegatedSteer(myMotor, target.position - transform.position);
     }
 }
Пример #2
0
 void Start()
 {
     //TODO ALIGN THROUGH STEERING
     agent = GetComponent <NavMeshAgent>();
     seek  = GetComponent <SteeringSeek>();
     aling = GetComponent <SteeringAlign>();
     agent.updatePosition = false;
     //agent.updateRotation = false;
 }
Пример #3
0
    // Use this for initialization
    void Start()
    {
        move   = GetComponent <Move>();
        arrive = GetComponent <SteeringArrive>();
        seek   = GetComponent <SteeringSeek>();
        align  = GetComponent <SteeringAlign>();
        Vector3 x = Vector3.zero;

        path = new NavMeshPath();
    }
Пример #4
0
    protected void Awake()
    {
        // Init Vars
        InitializeVars();

        // Initialize behaviors
        arrive    = new Behavior[2];
        arrive[0] = new KinematicArrive()
        {
            maxSpeed = maxSpeed
        };
        arrive[1] = new SteeringArrive()
        {
            maxSpeed = maxSpeed, timeToTarget = timeToTarget, slowRadius = slowRadius, targetRadius = targetRadius
        };

        wander = new KinematicWander(wanderSpeed);
        pursue = new KinematicPursue(maxSpeed)
        {
            maxPredication = maxPrediction
        };

        // Initialize Rotation behaviors
        align    = new Align[2];
        align[0] = new KinematicAlign(rotationSpeed);
        align[1] = new SteeringAlign();

        if (steeringAtStart)
        {
            behaviorIndex = 1;
        }
        else
        {
            behaviorIndex = 0;
        }
    }
Пример #5
0
 // Update is called once per frame
 void Update()
 {
     SteeringAlign.DelegatedSteer(myMotor, myMotor.velocity);
 }