Esempio n. 1
0
 private void Start()
 {
     ballArea = GetComponentInParent <Ballarea>();
     goal     = ballArea.goal;
     //animator = GetComponent<Animator>();
     rayPerception = GetComponent <RayPerception3D>();
 }
Esempio n. 2
0
    private void Swim()
    {
        if (Time.fixedTime >= nextActionTime)
        {
            //radom speeds
            randomizedSpeed = bananaSpeed * UnityEngine.Random.Range(.5f, 1.5f);
            // pic random spawn
            targetPosition = Ballarea.ChooseRandomPosition(transform.parent.position, 100f, 260f, 2f, 13f);
            //rotate to direction
            transform.rotation = Quaternion.LookRotation(targetPosition = transform.position, Vector3.up);

            // calculate the time to get ther
            float timetoGetThere = Vector3.Distance(transform.position, targetPosition) / randomizedSpeed;
            nextActionTime = Time.fixedTime + timetoGetThere;
        }
        else
        {
            //make sure we dont go off screen hopefully this time
            Vector3 moveVector = randomizedSpeed * transform.forward * Time.fixedDeltaTime;
            if (moveVector.magnitude <= Vector3.Distance(transform.position, targetPosition))
            {
                transform.position += moveVector;
            }
            else
            {
                transform.position = targetPosition;
                nextActionTime     = Time.fixedTime;
            }
        }
    }
Esempio n. 3
0
    private void Start()
    {
        ballArea = GetComponentInParent <Ballarea>();
        //below this is line is causing this problem

        goal = ballArea.goal;
        //animator = GetComponent<Animator>();
        //rayPerception = GetComponent<RayPerception3D>();
    }