using System; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; namespace TKS.OutGame { /// 아웃게임 화면 1장(본영 로비 · 영웅 · 편성 · 거래). OutGameRoot 가 만들고 전환한다. public abstract class OutGameScreen { public OutGameRoot Root; public RectTransform Rt; /// 하단 탭 강조(0 영웅 · 4 거래 · −1 없음). public int Tab = -1; public OutGameSession S { get { return Root.Session; } } public abstract void Build(); public virtual void Refresh() { } public virtual void OnShow() { } /// 뒤로 가기를 화면 안에서 처리했으면 true. public virtual bool OnBack() { return false; } /// 제목 띠(재화 바 아래 · 팩 PanelFrame03 진남 + 왼쪽 붙은 뒤로 · UI 상업용 재설계 공통 크롬) · back = 뒤로 버튼 · sub 빈 문자열 = 부제 없음. protected RectTransform Header(string title, string sub, bool back) { var band = UiKit.TopBand("Header", Rt, OutGameRoot.TopBarH, OutGameRoot.HeaderH); if (UISkin.Has("header_bar")) UiKit.Skin(band, "header_bar", UiKit.Col("chrome_header", UiKit.Header)); else UiKit.Paint(band, UiKit.Header, false); float x = 36f; if (back && UISkin.Has("back_flush")) { var bb = UiKit.Rect("Back", band, new Vector2(0f, 0.5f), new Vector2(0f, 0.5f), Vector2.zero, new Vector2(132f, 90f)); UiKit.Skin(bb, "back_flush", UiKit.White, true); bb.gameObject.AddComponent