void PursueNearestEnemy() { float nearestDistance = Mathf.Infinity; GameEntity nearestTarget = null; foreach (GameEntity thisEntity in sensing.enemyFishies) { if (thisEntity != null) { if (thisEntity.teamID != entity.teamID) { float currentDistance = (thisEntity.myTransform.position - myTransform.position).sqrMagnitude; if (currentDistance < nearestDistance) { nearestDistance = currentDistance; nearestTarget = thisEntity; } } } } if (nearestTarget != null) { actions.MoveToDestination(nearestTarget.transform.position); } }
public override void UpdateEntityComponent(float deltaTime, float time) { //lmb if (Input.GetMouseButton(0)) { //simple movement code clickedPoint = mainCam.ScreenToWorldPoint(Input.mousePosition); actions.MoveToDestination(clickedPoint); } }