김김김의 게임개발
  • 유니티 게임개발 - 최종 프로젝트 #8
    2023년 11월 01일 20시 12분 23초에 업로드 된 글입니다.
    작성자: noun06

    JSON 파일로 저장 및 로드하는 것을 관리하는 데이터 시스템을 만들었다.

    GameData 클래스에서 데이터를 저장하며 데이터는 이 클래스의 생성자에서 초기화된다.

    그리고 데이터를 로드하고 저장하는 메서드를 정의하는 인터페이스 IData를 만들었다.

    DataManager 클래스는 싱글톤으로 구현되었으며 IData를 구현한 객체들을 저장하는 리스트를 선언하였다.

    클래스 내에서 현재 씬에서 IData를 구현한 객체를 찾아 리스트로 반환한다. 

    LoadGame() 메서드를 통해 IData를 구현한 객체들에게 전달한다.

    SaveGame() 메서드를 IData를 구현한 객체들에게 저장을 요청한다.

    FileDataHandler 클래스는 데이터를 파일에서 로드하고 파일로 저장하는 역할을 한다.

    Save() 메서드에서 게임 데이터를 JSON 형식으로 파일에 저장한다.

    테스트 용도로 플레이어의 코인을 관리하는 클래스를 만들었고 인터페이스를 구현하였다.

    코인이 추가되어도 원활하게 저장과 로드가 된 것을 성공적으로 테스트하였다.

    플레이어 정보를 담고있는 SO를 연결시키고 설정 관리자의 변경 값들을 저장하면 될 것이다.

    댓글