void Update()
    {
        // Cheap AI Control
        core.SetThrottle(1f);
        Vector3 firstDir = (player.transform.position - transform.position).normalized;

        firstDir = Quaternion.Euler(0f, -shipPivot.transform.eulerAngles.y, 0f) * firstDir;
        Vector3 orbitOffset;

        if (firstDir.x > 0f)
        {
            orbitOffset = Quaternion.Euler(0f, -90f, 0f) * (player.transform.position - transform.position).normalized;
        }
        else
        {
            orbitOffset = Quaternion.Euler(0f, 90f, 0f) * (player.transform.position - transform.position).normalized;
        }
        Vector3 targetDir = (player.transform.position + orbitOffset * targetOrbitDistance - transform.position).normalized;

        targetDir = Quaternion.Euler(0f, -shipPivot.transform.eulerAngles.y, 0f) * targetDir;
        if (targetDir.x > 0f)
        {
            core.SetRudder(1f);
        }
        else
        {
            core.SetRudder(-1f);
        }
        turret.UpdateAim(player.transform.position + Quaternion.Euler(0f, player.transform.Find("Ship Pivot").eulerAngles.y, 0f) * new Vector3(0f, 0.25f, -0.65f), player.GetComponent <ShipCore>().GetVelocity());
        if (turret.IfOnTarget())
        {
            turret.FireCannon(playerMask);
        }
        if (core.GetHealth() == 0f)
        {
            //player.GetComponent<PlayerShipController>().IncreaseScore();
            //gameMaster.EnemyDestroyed();
            Destroy(gameObject);
        }
    }