최종 갱신 (KST)

← 일감 목록
T-015

산업 5종 아이템 클라 적용 · 특별 이벤트 탭 자리 확보

태웅 New 우선순위 보통 목표 미정 · 🎨 아트만 남음

T-005의 이양분이다. 서버가 엑셀 작업과 패킷 테스트를 끝내면 여기서 이어받는다.

배경

지금 클라가 표시할 수 있는 채취 산출물은 낚시 6종뿐이다. T-005가 끝나면 5산업 × 6등급 = 30종이 한 번에 들어온다.

⚠️ 표시 대상이 156종이 됐다 (2026-08-02 정정). 2026-08-01 산업 레벨 도입으로 레벨마다 6종이 붙어 산업 자원 150종 + 가챠 전용 6종이다. 아래 서술의 "30종"은 그 이전 시점 기준이며, 아이콘·툴팁 작업량이 5배다. → 아이템 1.3

  • 아이템 TID가 산업별 10000 단위 대역으로 정리된다 (낚시 10001~, 농사 20001~, …)
  • 낚시 아이템 TID가 1001~1006 → 10001~10006으로 이설된다. 클라에 TID를 하드코딩한 곳이 있으면 조용히 깨진다 — 전수 확인이 필요하다

할 일

◐ = 일부만 됐다 · 🎨 = 연출·리소스. 의도적 후순위다(메인 시스템이 선 뒤에 한다)

2026-09-16 — 메인 항목이 다 끝나 🎨(획득 표시)만 남았다. INDEX ▶ → 🎨로 옮긴다. 칸 위치의 서버 연동은 이 일감이 아니라 T-058 · T-044의 몫이다.

  • [x] 채취 푸시로 5종 산업 아이템이 실제로 내려오는지 확인 ← T-005에서 넘어옴 (2026-07-31) 2026-08-27 실측 완료 — 5종 산업을 각각 적성 맞는 캐릭터로 배치해 보니 해당 산업의 아이템이 인벤토리로 들어온다
  • [x] 클라에 아이템 TID를 상수로 박아 둔 곳이 있는지 전수 확인 (1001~1006) → 0건. PlayerDataModel.cs:43에 설명용으로 쓰인 주석 하나뿐이라 이설의 영향을 받지 않는다
  • [x] 인벤토리에 5종 산업 아이템 표시 (T-007과 함께) → 격자(당시 InventoryPresenter · 지금 StorageGridPresenter)가 ItemId를 키로 쓰는 범용 구조라 산업을 가리지 않는다. 🎨 아이콘은 뒤로 미뤘다 — SlotView.Bind에 대입 지점(TODO)만 열어 두었다. 이름·색으로 이미 구분되므로 기능은 서 있다
  • [x] 희귀도 색상 적용 — GlobalRarity 색상값이 Enum.xlsx에 이미 있다. 클라가 임의 색을 쓰지 않고 이 값을 따른다 (게임UI 4장) → RarityPalette.Get → SlotView.Bind. 가챠 결과 팝업도 같은 표를 쓴다
  • [x] 산업별 필터·정렬 (게임UI 2.2 팝업 탭) (2026-09-16) → 필터는 두지 않기로 했다. 칸 200개를 탭이 함께 쓰는 격자라 일부만 보이면 빈 칸이 "사라진 아이템"처럼 읽힌다. 캐주얼 방치형의 관례대로 [정렬] 버튼 하나로 정리한다. 탭 줄 아래 도구 줄의 화살표(▼▲)가 자원(등급↓ → 산업 순 → TID)·캐릭터(등급↓ → TID → 개체 번호)를 줄 세우고, 그 순서를 클라가 세션 동안 기억한다(StorageToolPresenter → StorageSlotSource.Sort). 같은 줄에 일괄 담기가 함께 산다(T-056) · 특성 탭에서는 줄이 숨는다. 재접속해도 남는 자리는 서버 T-058 → 클라 T-044(드래그 이동과 함께)
  • [ ] 🎨 ◐ 채취 푸시 수신 시 획득 표시 — 일반 채취는 알림을 띄우지 않는다 (게임UI 2.3, P1). 희귀 이상만 위젯 내 조용한 표시 → 골격은 이미 섰다(9dee28b) — 위젯 수확 스트립이 배치된 칸을 그리고 게이지가 돈다. 남은 것은 WidgetMiniSlotView의 Harvest Text에 무엇을 얻었는지 띄우는 표현이라 연출 쪽이다. 캐릭터 스프라이트와 함께 뒤로 미뤄 뒀다
  • [x] 중앙 UI 최하단 탭 자리 확보 (아래 참조) (2026-09-16) → 기존 Menu Presenter 줄(인벤토리·거래 버튼)이 그 자리다 — 기획 6장 Q12 해소. 별도 층을 두지 않는다. 줄이 pref 100 · flexH 0, 갈아 끼워지는 화면이 flexH 1이라 버튼이 늘어도 슬롯 영역은 밀리지 않는다(씬에서 확인)

중앙 UI 최하단 탭 — 특별 이벤트 자리

중앙 UI 최하단에 탭 한 줄을 비워 둔다. 지금은 비어 있어도 되지만, 나중에 채취 루프 바깥의 콘텐츠가 여기로 들어온다.

들어올 후보 근거
보스 사냥에서 티켓을 모아 도전. 채취 루프 밖으로 나가는 유일한 통로 → 사냥 4장
대형 작업물 채취 여러 슬롯·시간을 들여 하나를 캐는 형태 (미기획)
기타 기간·조건부 이벤트 미기획

요구사항은 "자리를 만들어 두는 것"이지 콘텐츠를 만드는 것이 아니다.

  • 중앙은 작업슬롯 전용이고(방향제안 2장), 최하단 탭은 그 아래 별도 층이다
  • 탭이 늘어나도 슬롯 영역이 밀리거나 줄지 않게 레이아웃을 잡는다
  • 비어 있을 때는 탭 줄 자체를 숨긴다. 잠긴 탭을 보여 주면 "지금 못 하는 것"이 상시로 눈에 남는다

⚠️ P1을 지키는 선은 보스 기획에 이미 있다 (사냥 4.2) — 도전 시점 자유 · 실시간 조작 없음 · 실패해도 티켓만 손실 · 기간 한정 없음. 이 탭에 들어오는 것은 무엇이든 같은 선을 지킨다. 배지·타이머·"오늘까지" 표시를 붙이지 않는다. 붙이는 순간 상시 위젯이 재촉하는 물건이 된다.

⚠️ 연출은 큰 창에서만 돌린다 (방향제안 8.2). 상시 위젯은 텍스트+게이지 유지. 창을 닫으면 그리기를 멈춘다 — 상시 실행 앱에서 리소스는 기능이 아니라 생존 조건이다.

완료 조건

5종 산업을 슬롯에 배치했을 때 각 산업의 아이템이 실제로 내려와 인벤토리에 희귀도 색으로 정상 표시되고, 중앙 UI 최하단에 탭을 추가해도 슬롯 레이아웃이 흔들리지 않는다.

막고 있는 것 / 선행 일감

  • T-005 2단계 — 서버 측은 끝났다 (2026-07-31). 엑셀 30종 + 드롭 시트 5종 생성, DropTableCatalog 등록, 빌드·테스트 통과, 서버 기동 시 "드롭 테이블 5개 등록 완료" 확인. 클라 착수 가능 상태다
  • T-007(인벤토리·재화 UI) — 표시 대상이 겹친다. 함께 하는 편이 낫다
  • T-006(작업슬롯 UI) — 중앙 UI 레이아웃의 주인

관련 커밋

  • 53f71d3 — 가챠 결과 팝업 추가. 희귀도 색상이 여기서 들어왔다 (RarityPalette 신규 · SlotView.Bind에 등급 인자)
  • 9dee28b — 상주 위젯에 요약 줄과 수확 스트립 추가 (획득 표시의 자리까지)

참고

  • GameDesign/design/ui/README.md 2장 · 4장 (희귀도 색상) · 6장 Q7·Q8
  • GameDesign/design/ui/게임UI목업(2026-07-30 업데이트).html
  • GameDesign/design/proposals/2026-07-30/2026-07-30-종합제안정리.md 2장(3열 배치) · 8장(연출 2레이어)