// Start is called before the first frame update
    void Start()
    {
        gameController = FindObjectOfType <SNKGameController>();

        player        = FindObjectOfType <SNKPlayerHeadSegment>().transform;
        range         = 15f;
        rotationSpeed = 60f;
        timer         = 0;
        shootSpeed    = 3f;

        myColor = Color.HSVToRGB(Random.Range(0f, 1f), 1, 1);
    }
    // Start is called before the first frame update
    public virtual void Start()
    {
        gameController   = FindObjectOfType <SNKGameController>();
        playerController = FindObjectOfType <SNKPlayerController>();

        rigid       = gameObject.GetComponent <Rigidbody2D>();
        Speed       = 5f;
        initialized = false;
        IsMoving    = true;

        upRotation    = Quaternion.Euler(0, 0, 0);
        leftRotation  = Quaternion.Euler(0, 0, 90);
        rightRotation = Quaternion.Euler(0, 0, 270);
        downRotation  = Quaternion.Euler(0, 0, 180);

        gameObject.tag = "Player";
    }