Store
public class Store
{
#region Property
public StoreSize Size => size;
#endregion
#region Variable
private List<Employee> employees;
private StoreSize size;
#endregion
#region Public Method
public Store(StoreSize size)
{
employees = new List<Employee>(3);
this.size = size;
}
public void SetEmployee(int idx, Employee employee)
{
employees[idx] = employee;
}
public void SetSize(StoreSize size)
{
this.size = size;
}
#endregion
}
우선 스토어 클래스를 만들었다.
전에 만들었던 UML 그대로 만들었다.
점포를 만들 때 크기를 선택할 수 있게 할 것이라 생성자로 size를 받게 하였다.
어찌 됐든 이 store라는 클래스는 employee 클래스와 비슷하게 정보를 저장하는 역할을 할 것이고 대부분의 작업을 할 store presenter로 넘어갔다.
직원 배치
public void Initialize(List<Store> stores, EmployeeListUIPresenter employeeListUI)
{
this.stores = stores;
uIPresenter.Initialize(employeeListUI
, (int idx, Employee employee) => SetEmployee(idx, employee));
}
public void SetEmployee(int idx, Employee employee)
{
store.SetEmployee(idx, employee);
}
store presenter도 employee presenter와 비슷하게 store 리스트를 가져온다.
그리고 ui 직원을 배치하고 콜백이 넘어오면 현재 보고 있는 store 정보를 가져와서 set 해주어야 하는데 여기서 문제가 발생했다.
게임 흐름 상 store는 월드맵에서 선택해 들어가야 하는데 월드맵 기능이 아직 없다는 것.
그래서 다시, 초기화 때 임의의 store를 하나 생성했다.
public void SetEmployee(int idx, Employee employee)
{
store.SetEmployee(idx, employee);
Debug.Log(store.Employees[idx].Character.Name);
}
잘 들어가는지 확인하기 위해 Debug문 추가.
잘 된다.
일정 변경
아무래도 월드맵을 만드는 게 우선인 것 같아 순서를 좀 바꿨다.
그전에 모든 화면에서 보일 UI도 만들고 말이다.
사실 UI는 이미 만들어 놨고 이제 기능 개발을 해야 한다.
돈을 벌거나 썼을 때 UI를 바꿔주고, 하단 버튼을 누르면 각 캔버스가 켜지도록 말이다.
참고로 점포는 월드맵에서 불러오는 거라 따로 메뉴가 있진 않다.
오늘 그리 한 건 없지만 주말에 안 쉬었더니 너무 피곤해서 이제 내일 하도록 하겠다.
이번 주말부터는 할 거 없다고 개발 하지 말고 확실히 쉬어야겠다...
'개인프로젝트 > [Unity] 키우기 게임' 카테고리의 다른 글
[Unity] 키우기 게임 개발 일지 Day 10 (1) | 2024.03.27 |
---|---|
[Unity] 키우기 게임 개발 일지 Day 8 (0) | 2024.03.25 |
[Unity] 키우기 게임 개발 일지 Day 7 (0) | 2024.03.24 |
[Unity] 키우기 게임 개발 일지 Day 6 (2) | 2024.03.23 |
[Unity] 키우기 게임 개발 일지 Day 5 (1) | 2024.03.22 |