// Start is called before the first frame update
 void Start()
 {
     ownNavMeshAgent = GetComponent <NavMeshAgent>();
     ownAiming       = GetComponent <AIAiming>();
     ownMoving       = GetComponent <AIMoving>();
     Refactor();
 }
    // Start is called before the first frame update
    void Start()
    {
        rigidbody    = GetComponent <Rigidbody>();
        aiController = new AIController();
        aiMovement   = new AIMovement(ref rigidbody, speed, torque, sensors);
        aiAiming     = new AIAiming(turret, barrelWheel, barrels, emitters, maxShots, coolDown, fireRate);

        frontEmission         = frontParticles.emission;
        backEmission          = backParticles.emission;
        frontEmission.enabled = false;
        backEmission.enabled  = false;

        StartCoroutine(GetClosestPlayerInterval());
    }