feat: 캐릭터 스펙 정보 서버에 저장하도록 변경
This commit is contained in:
@@ -11,9 +11,8 @@ namespace TON
|
||||
public class CharaterCreateUI : UIBase
|
||||
{
|
||||
[SerializeField] private Button cancelButton; // cancel 버튼 참조
|
||||
[SerializeField] private Button confirmButton; // cancel 버튼 참조
|
||||
[SerializeField] private Button confirmButton; // confirm 버튼 참조
|
||||
[SerializeField] private Button createButton; // Create 버튼 참조
|
||||
[SerializeField] private List<PlayerData> playerDatas;
|
||||
[SerializeField] private TextMeshProUGUI nicknameCondition;
|
||||
|
||||
|
||||
@@ -26,8 +25,6 @@ namespace TON
|
||||
|
||||
private void Start()
|
||||
{
|
||||
playerDatas = PlayerDataManager.Singleton.playersData;
|
||||
|
||||
// 처음에는 버튼을 비활성화
|
||||
createButton.interactable = false;
|
||||
|
||||
@@ -68,9 +65,6 @@ namespace TON
|
||||
return;
|
||||
}
|
||||
|
||||
// 선택된 캐릭터 인덱스 정보를 저장 (다음 씬에서도 사용할 수 있도록)
|
||||
PlayerPrefs.SetInt("SelectedPlayerIndex", 0);
|
||||
|
||||
// 캐릭터 이름 입력 모달 활성화
|
||||
characterCreateUI_Modal.SetActive(true);
|
||||
}
|
||||
@@ -120,20 +114,24 @@ namespace TON
|
||||
if (success)
|
||||
{
|
||||
// 생성한 캐릭터를 저장한다
|
||||
PlayerData player = new PlayerData(playerDatas.Count, selectedCharacter, nickname);
|
||||
playerDatas.Add(player);
|
||||
Assert.IsTrue(JSONLoader.SaveUpdatedJsonToPersistentData(playerDatas, "player"));
|
||||
PlayerData player = new PlayerData(selectedCharacter, nickname);
|
||||
PlayerDataManager.Singleton.SetPlayerData(player);
|
||||
|
||||
PlayerDataManager.Singleton.SetCurrentUserData();
|
||||
// 뒤끝 서버 데이터 저장 로직 적용
|
||||
PlayerDataManager.Singleton.CreateNewPlayer(player, isSuccess =>
|
||||
{
|
||||
if (isSuccess)
|
||||
{
|
||||
// 하트 시스템을 생성한다
|
||||
HeartDataManager.Singleton.CreateNewHeartSystem(0);
|
||||
HeartDataManager.Singleton.SetCurrentUserHeart();
|
||||
|
||||
// 하트 시스템을 생성한다
|
||||
HeartDataManager.Singleton.CreateNewHeartSystem(playerDatas.Count);
|
||||
HeartDataManager.Singleton.SetCurrentUserHeart();
|
||||
// 씬 변경
|
||||
UIManager.Hide<CharaterCreateUI>(UIList.CharaterCreateUI);
|
||||
Main.Singleton.ChangeScene(SceneType.Lobby);
|
||||
}
|
||||
});
|
||||
|
||||
// 씬 변경
|
||||
UIManager.Hide<CharaterCreateUI>(UIList.CharaterCreateUI);
|
||||
|
||||
Main.Singleton.ChangeScene(SceneType.Lobby);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -6,7 +6,6 @@ namespace TON
|
||||
{
|
||||
public class TitleUI : UIBase
|
||||
{
|
||||
public CharaterSelectUI charaterSelectUI;
|
||||
|
||||
public void OnClickStartButton()
|
||||
{
|
||||
@@ -17,25 +16,18 @@ namespace TON
|
||||
{
|
||||
yield return new WaitForSeconds(0.2f); // 0.2초 대기
|
||||
|
||||
// Main.Singleton?.ChangeScene(SceneType.Ingame);
|
||||
UIManager.Hide<TitleUI>(UIList.TitleUI);
|
||||
|
||||
// 플레이어가 가지고 있는 캐릭터들의 데이터 불러옴
|
||||
List<PlayerData> players = PlayerDataManager.Singleton.playersData;
|
||||
PlayerData player = PlayerDataManager.Singleton.player;
|
||||
|
||||
if (players == null || players.Count == 0)
|
||||
if (player == null)
|
||||
{
|
||||
// 현재 가지고 있는 캐릭터가 없다면 CharaterCreateUI 를 보여주고
|
||||
// 현재 가지고 있는 캐릭터가 없다면 캐릭터 생성 화면으로 이동
|
||||
UIManager.Show<CharaterCreateUI>(UIList.CharaterCreateUI);
|
||||
}
|
||||
else
|
||||
{
|
||||
// 캐릭터가 있다면 내 캐릭터 목록에서 선택할 수 있도록 함
|
||||
// UIManager.Show<CharaterSelectUI>(UIList.CharaterSelectUI);
|
||||
|
||||
// select 요소는 나중에 인게임 화면으로 바로 전환
|
||||
PlayerPrefs.SetInt("SelectedPlayerIndex", 0);
|
||||
PlayerDataManager.Singleton.SetCurrentUserData();
|
||||
HeartDataManager.Singleton.SetCurrentUserHeart();
|
||||
Main.Singleton.ChangeScene(SceneType.Lobby);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user