내일배움캠프_Unity_6기/TIL_최종프로젝트

TIL : 2024-12-31(화) :: 최종프로젝트 개발 일지(24) - 게임 저장/불러오기 (인벤토리 데이터 저장/불러오기 구현)

BirdHead 2024. 12. 31. 22:41

Json으로 저장되는 UserData

오늘은 캐릭터 스텟뿐만 아닌 플레이어가 가지고있는 아이템을 Json으로 저장하였고

실제 게임에 적용될때 해당 데이터를 통해 스텟을 원복하는 코드를 구현 하였다. 

 

InventoryModel.cs :: UIInventory의 데이터를 담당하는 cs

저장된 .json 파일의 Item리스트를 불러와서 내가 소지한 아이템 ID와 같으면 내 인벤토리에 등록 및 패시브 효과를 적용 시킨다.


Json에서 소지한 아이템(GainItem) 리스트를 읽어와서 LoadInData에서 해당 Stat 및 데이터를 원복한다. 

 

Item.cs

LoadIndata를 이용하여 해당 아이템의 스텟 및 데이터들을 원복하는 작업을 진행 후

 

내 인벤토리에 해당 아이템을 활성화 시키는 작업을 구현 하였다.

 

JsonController.cs

 

JsonController를 이용하여 Json의 데이터를 저장/로드를 구현하였다. 

 

저장할때는 사용하던 데이터를 Json형식으로 변경해줘야하는데 

 

UserDB.cs의 JsonDataConvert 메서드

해당 메서드를 활용하여 직렬화 가능한 데이터들을 파싱하여 사용하였다.