에러 좀 잡아주세요~~~~~~

(에러1)Assets\UserIdManager.cs(24,28): error CS1503: Argument 1: cannot convert from ‘method group’ to ‘bool’

(에러2)Assets\UserIdManager.cs(94,21): error CS0019: Operator ‘==’ cannot be applied to operands of type ‘string’ and ‘int’

using UnityEngine;

using TMPro;

using UnityEngine.UI;

using BackEnd;

public class UserIdManager : MonoBehaviour

{

private const string UserIdKey = "UserId";

private const string PasswordKey = "Password";

private string userId;

private string password;

// TMP Input Field 및 Text 요소를 연결하기 위한 변수

public TMP_InputField userIdInputField;

public TMP_InputField passwordInputField;

public Button submitButton;

public TMP_Text resultText;

private bool isBackendInitialized = false;

void Start()

{

    // 백엔드 서버 초기화

    Backend.Initialize(BackendInitializeCallback);

}

void BackendInitializeCallback(BackendReturnObject backendCallback)

{

    if (backendCallback.IsSuccess())

    {

        isBackendInitialized = true;

        if (PlayerPrefs.HasKey(UserIdKey) && PlayerPrefs.HasKey(PasswordKey))

        {

            // 기존 유저 ID와 비밀번호 로드

            userId = PlayerPrefs.GetString(UserIdKey);

            password = PlayerPrefs.GetString(PasswordKey);

            // 토큰 로그인을 시도합니다.

            Backend.BMember.LoginWithTheBackendToken(bro =>

            {

                if (bro.IsSuccess())

                {

                    resultText.text = $"{userId}님 자동 로그인되었습니다.";

                }

                else

                {

                    // 토큰 로그인 실패 시, ID와 비밀번호를 통한 로그인 시도

                    CustomLogin(userId, password);

                }

            });

        }

        else

        {

            // 유저 ID 입력 UI 표시

            ShowUserIdInput();

        }

        // 버튼 클릭 이벤트 설정

        submitButton.onClick.AddListener(OnSubmitButtonClicked);

        // Input Field 변화 이벤트 설정

        userIdInputField.onValueChanged.AddListener(OnUserIdInputChanged);

    }

    else

    {

        Debug.LogError("Failed to initialize Backend: " + backendCallback.ToString());

    }

}

void ShowUserIdInput()

{

    if (userIdInputField != null && passwordInputField != null)

    {

        userIdInputField.gameObject.SetActive(true);

        passwordInputField.gameObject.SetActive(true);

        submitButton.gameObject.SetActive(true);

        resultText.gameObject.SetActive(false);

    }

}

void OnUserIdInputChanged(string newUserId)

{

    if (!isBackendInitialized || userIdInputField == null)

    {

        return;

    }

    if (!string.IsNullOrEmpty(newUserId) && IsValidCustomId(newUserId))

    {

        // 입력된 유저 ID가 중복인지 확인

        Backend.BMember.CustomSignUp(newUserId, "password", bro =>

        {

            if (bro.GetStatusCode() == 409) // Conflict 상태 코드, 이미 존재하는 ID

            {

                // 중복된 아이디

                resultText.gameObject.SetActive(true);

                resultText.text = "동일한 아이디가 존재합니다.";

                submitButton.interactable = false;

            }

            else if (bro.IsSuccess())

            {

                // 중복되지 않는 아이디

                resultText.gameObject.SetActive(false);

                submitButton.interactable = true;

            }

            else

            {

                // 다른 오류 처리

                resultText.gameObject.SetActive(true);

                resultText.text = $"오류 발생: {bro.GetMessage()}";

                submitButton.interactable = false;

            }

        });

    }

    else

    {

        resultText.gameObject.SetActive(false);

        submitButton.interactable = false;

    }

}

void OnSubmitButtonClicked()

{

    userId = userIdInputField.text;

    password = passwordInputField.text;

    if (!string.IsNullOrEmpty(userId) && !string.IsNullOrEmpty(password) && IsValidCustomId(userId))

    {

        // 유저 ID와 비밀번호 저장

        PlayerPrefs.SetString(UserIdKey, userId);

        PlayerPrefs.SetString(PasswordKey, password);

        PlayerPrefs.Save();

        // 뒤끝 서버에 유저 정보 저장

        Backend.BMember.CustomSignUp(userId, password, bro =>

        {

            if (bro.IsSuccess())

            {

                resultText.fontSize = 36; // 원하는 글자 크기로 설정

                resultText.gameObject.SetActive(true);

                resultText.text = "등록되었습니다.";

                submitButton.interactable = false;

            }

            else

            {

                resultText.fontSize = 36;

                resultText.gameObject.SetActive(true);

                resultText.text = $"오류 발생: {bro.GetMessage()}";

                submitButton.interactable = true;

            }

        });

    }

}

void CustomLogin(string userId, string password)

{

    Backend.BMember.CustomLogin(userId, password, bro =>

    {

        if (bro.IsSuccess())

        {

            resultText.text = $"{userId}님 환영합니다.";

        }

        else

        {

            resultText.text = $"로그인 실패: {bro.GetMessage()}";

            ShowUserIdInput();

        }

    });

}

// CustomId 유효성 검사 함수

bool IsValidCustomId(string customId)

{

    // customId 유효성 검사 로직 (예: 알파벳과 숫자로만 구성, 길이 제한 등)

    if (string.IsNullOrEmpty(customId)) return false;

    foreach (char c in customId)

    {

        if (!char.IsLetterOrDigit(c))

            return false;

    }

    return customId.Length >= 3 && customId.Length <= 20; // 예시로 길이 제한 설정

}

// 필요에 따라 유저 로그아웃 기능도 추가할 수 있습니다.

public void LogoutUser()

{

    PlayerPrefs.DeleteKey(UserIdKey);

    PlayerPrefs.DeleteKey(PasswordKey);

    ShowUserIdInput();

    Debug.Log("User logged out");

}

}

안녕하세요 개발자님,

  1. CS1503 에러: 함수를 호출하지 않고 함수 그룹을 사용하려고 해서 발생합니다. 함수 호출을 명확히 하도록 수정이 필요합니다.
  2. CS0019 에러: 서로 다른 타입 (stringint)을 비교하려고 해서 발생합니다. 비교하기 전에 두 피연산자의 타입을 맞춰 주어야 합니다.

각 cs파일의 24행과 94행의 코드를 확인하여 정확한 원인을 확인하고 수정을 진행하여 주세요 :D
코드 정보를 확인할 수 없기에 에러 정보만으로 안내드려 더욱 상세히 안내드리지 못하는 점 양해 바랍니다.