inflearn logo
강의

Course

Instructor

Unity game development turning 3 books into videos

Display user information

섹션5-11

Resolved

71

legojjang7363

1 asked

1

유저데이터로드와 유저레지스터를 이렇게 수정했는데 상관없나요?

수업에 나온 그대로 코드를 입력했는데 유닛 123도 같이 비활성화되서요ㅠㅠ

일단은 123활성화 45비활성화는 되는데 코드가 너무 달라진 것 같아서 질문드립니다.

using UnityEngine;
using UnityEngine.UI;

public class UserDataLoad : MonoBehaviour
{
    [SerializeField] Text UserNickNameText;
    [SerializeField] Button[] CharBtns;

    int[] CharNum;

    void Start()
    {
        CharNum = new int[5];

        // 유닛 데이터 불러오기 (Unit1~Unit3 기본값 1, Unit4~Unit5 기본값 0)
        for (int i = 0; i < 5; i++)
        {
            CharNum[i] = PlayerPrefs.GetInt("Unit" + (i + 1), (i < 3 ? 1 : 0)); // Unit1~Unit3 기본값 1, Unit4~Unit5 기본값 0
        }

        // 버튼 활성화 상태 설정
        UpdateButtonStates();
    }

    void Update()
    {
        // 닉네임 업데이트
        UserNickNameText.text = PlayerPrefs.GetString("UserNickName");
    }

    void UpdateButtonStates()
    {
        for (int i = 0; i < 5; i++)
        {
            CharBtns[i].interactable = (CharNum[i] == 1);
        }
    }
}

 

using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;

public class UserRegister : MonoBehaviour
{
    [SerializeField] InputField NickNameInput;

    string NickName;

    public void OnClickRegister()
    {
        NickName = NickNameInput.text;

        // 사용자 정보 저장
        PlayerPrefs.SetString("UserNickName", NickName);
        PlayerPrefs.SetInt("Coin", 1000);
        PlayerPrefs.SetInt("Level", 1);
        PlayerPrefs.SetInt("WinCount", 0);

        // 유닛 활성화 상태 저장
        PlayerPrefs.SetInt("Unit1", 1);
        PlayerPrefs.SetInt("Unit2", 1);
        PlayerPrefs.SetInt("Unit3", 1);
        PlayerPrefs.SetInt("Unit4", 0);
        PlayerPrefs.SetInt("Unit5", 0);

        PlayerPrefs.Save();

        // 다음 씬으로 이동
        SceneManager.LoadScene("User Scene");
    }
}

C# unity

Answer 1

0

JEngineer

질문 감사드립니다!

 

주신 코드대로 수정하셔도 정상적으로 작동이 된다면 문제가 되는 부분이 아니며 코드 가독성 면에서 더 최척화된 코드로 보입니다!

 

그리고 해당 기능에 대한 코드는 검토를 한 후에 문제가 있을 시 수정하도록 하겠습니다! 감사합니다!

Spider와 Monster 구현 방식을 구분한 이유

1

7

1

Sprute Sheet에 대해서.

0

9

1

15강 12-3) 값 제출후 mysql 저장이 안됩니다.

0

10

2

혹시 언리얼 CEF기반 UI에서 한글 입력 오류 해결하신분??

0

26

2

ResourceManager 클래스 관련 질문

1

32

2

FBX chan 모델

0

25

1

크레딧 충전

0

40

1

수업자료 관련

0

27

1

첨부된 수업자료와 강의 내용이 다릅니다.

0

50

2

몬스터 HP 게이지바 이동

0

22

1

TextMeshPro용 커스텀 한글 2350자.txt 파일은 어디에 있나요?

0

26

1

02-02 NavMesh 응용 캐릭터 멈춤 문제

0

34

1

02-02 NavMesh 응용 캐릭터 멈춤 문제

0

43

2

비주얼 스튜디오 2026

0

43

2

C#에서의 RAII

0

66

3

public string Title { get; set; } 에서 WFO1000 오류가납니다.

0

44

1

SuperDefender 구매오류

0

85

2

승리수가 안 올라갑니다

1

88

2

Knight구매시 오류

1

182

2

OnTriggerEnter2D에서 문제가 생겼어요

1

241

2

에너미 이동 질문

1

135

2

유닛 리지드바디 질문

1

125

2

애니메이션 질문

1

121

1

닉네임 텍스트에 이름 기입은

1

143

1