using UnityEngine; public class AtlantisDungeonView : View { [SerializeField] ExtendText dungeonLevelText; [SerializeField] ExtendSlider scoreBar; [SerializeField] ExtendText scoreText; [SerializeField] ExtendText remainTimeText; AtlantisDungeon dungeon; private void Start() { viewState = ViewState.Hidden; gameObject.SetActive(false); } public override void Show() { ResetPosition(); viewState = ViewState.Shown; gameObject.SetActive(true); } public override void Hide() { gameObject.SetActive(false); viewState = ViewState.Hidden; } private void LateUpdate() { scoreBar?.SetRate(dungeon.CurrentScore, dungeon.Data.GoalScore); scoreText?.SetText(FormatString.StringFormat(LocalizationText.GetText("global_killogram_format"), dungeon.CurrentScore)); remainTimeText?.SetText(FormatString.TextTime((int)dungeon.ModRemainingTime)); } public void SetDungeon(AtlantisDungeon dungeon) { this.dungeon = dungeon; string levelFormat = LocalizationText.GetText("dg_diff"); dungeonLevelText?.SetText(FormatString.StringFormat(levelFormat, dungeon.Data.Level)); scoreBar?.SetRateImmediate(dungeon.CurrentScore, dungeon.Data.GoalScore); scoreText?.SetText(FormatString.StringFormat(LocalizationText.GetText("global_killogram_format"), dungeon.CurrentScore)); remainTimeText?.SetText(FormatString.TextTime((int)dungeon.ModRemainingTime)); } }