메인 화면 UI 구조 변경

This commit is contained in:
aube.lee
2025-02-04 17:57:23 +09:00
parent a971567ffd
commit ab433ef46b
12 changed files with 2530 additions and 259 deletions

View File

@@ -9,6 +9,8 @@ namespace TON
// 사용자가 생성해둔 플레이어 데이터를 싱글톤으로 전역 사용하기 위함
public List<PlayerData> playersData { get; private set; }
public PlayerData player { get; private set; }
protected override void Awake()
{
base.Awake();
@@ -24,5 +26,18 @@ namespace TON
}
}
public void SetCurrentUserData()
{
int characterId = PlayerPrefs.GetInt("SelectedPlayerIndex", -1);
if (characterId > -1)
{
player = playersData[characterId];
}
else
{
Debug.LogError("유효하지 않은 캐릭터 정보 입니다.");
}
}
}
}

View File

@@ -23,7 +23,7 @@ namespace TON
UIManager.Show<LobbyUI>(UIList.LobbyUI);
// UIManager.Show<ControllerUI>(UIList.ControllerUI);
PlayerSpawner.SpawnPlayerCharacter();
// PlayerSpawner.SpawnPlayerCharacter();
}

View File

@@ -55,6 +55,7 @@ namespace TON
// 생성한 캐릭터를 저장한다
PlayerData player = new PlayerData(playerDatas.Count, selectedCharacter, characterName.text);
playerDatas.Add(player);
PlayerDataManager.Singleton.SetCurrentUserData();
JSONLoader.SaveToFile(playerDatas, "player");
// 하트 시스템을 생성한다

View File

@@ -60,6 +60,7 @@ namespace TON
public void OnClickPlayButton()
{
PlayerPrefs.SetInt("SelectedPlayerIndex", currentSelectCharacterIndex);
PlayerDataManager.Singleton.SetCurrentUserData();
HeartDataManager.Singleton.SetCurrentUserHeart();
UIManager.Hide<CharaterSelectUI>(UIList.CharaterSelectUI);

View File

@@ -1,15 +1,25 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
namespace TON
{
public class LobbyUI : UIBase
{
public SerializableDictionary<string, Sprite> playerImages;
private void Start()
{
Image playerObj = GameObject.Find("TON.Player").GetComponent<Image>();
PlayerData player = PlayerDataManager.Singleton.player;
playerObj.sprite = playerImages.GetValueOrDefault(player.type);
}
public void OnClickStageEntryButton()
{
UIManager.Hide<LobbyUI>(UIList.LobbyUI);
UIManager.Show<StageEntryUI>(UIList.StageEntryUI);
}
}
}