private void RefreshSelection() { List <UiVerticalListItem> items = _verticalList.GetItems(); for (int i = 0; i < items.Count; i++) { UiPopupAssignWorkerItem item = items[i] as UiPopupAssignWorkerItem; item.SetSelected(_questBuilding.Worker == item.QuestCharacter); item.Refresh(); } }
private void OnItemClick(UiPopupAssignWorkerItem item) { if (_questBuilding.Worker == item.QuestCharacter) { _questBuilding.SetWorker(null); } else { _questBuilding.SetWorker(item.QuestCharacter); } RefreshSelection(); }
private void Refresh() { List <QuestCharacter> characters = Quest.Instance.Status.Characters.FindAlive(); _verticalList.Clear(); for (int i = 0; i < characters.Count; i++) { UiPopupAssignWorkerItem item = _verticalList.CreateItem <UiPopupAssignWorkerItem>(); item.SetData(characters[i]); item.OnClick += OnItemClick; } }