// ------------------------------------------------------------------------------- // ShowPrompt // ------------------------------------------------------------------------------- public void ShowPrompt(UIState source, bool Party, bool AliveOnly, RankTargetType rankTargetType = RankTargetType.All) { selectedCharacters = new CharacterBase[Constants.MAX_PARTY_MEMBERS]; sourceState = source; party = Party; aliveOnly = AliveOnly; foreach (Transform t in content) { Destroy(t.gameObject); } if (party) { // -- Iterate and Add party members foreach (CharacterBase character in Finder.party.characters) { if ((character.IsRearguard && rankTargetType == RankTargetType.Rear || !character.IsRearguard && rankTargetType == RankTargetType.Front || rankTargetType == RankTargetType.All) && (aliveOnly && character.IsAlive) || !aliveOnly) { GameObject newObj = (GameObject)Instantiate(buttonPrefab, content); ButtonCharacterSelect button = newObj.GetComponent <ButtonCharacterSelect>(); button.Initialize(this, character); } } } else { // -- Iterate and Add enemies foreach (CharacterBase character in Finder.battle.monsterParty.characters) { if ((character.IsRearguard && rankTargetType == RankTargetType.Rear || !character.IsRearguard && rankTargetType == RankTargetType.Front || rankTargetType == RankTargetType.All) && (aliveOnly && character.IsAlive) || !aliveOnly) { GameObject newObj = (GameObject)Instantiate(buttonPrefab, content); ButtonCharacterSelect button = newObj.GetComponent <ButtonCharacterSelect>(); button.Initialize(this, character); } } } // -- Add the Cancel button GameObject cancelObj = (GameObject)Instantiate(buttonPrefab, content); cancelObj.GetComponentInChildren <Text>().text = Finder.txt.buttonNames.cancel; ButtonCharacterSelect cancelButton = cancelObj.GetComponent <ButtonCharacterSelect>(); cancelButton.icon.sprite = Finder.fx.cancelButtonIcon; cancelButton.selectionPanel = this; cancelButton.characterBase = null; gameObject.SetActive(true); StartCoroutine(ShowSelection()); }
// ------------------------------------------------------------------------------- // Prompt // ------------------------------------------------------------------------------- public void Prompt(UIState sourceState, bool party, bool alive, RankTargetType rankTargetType = RankTargetType.All) { selectionPanel.ShowPrompt(sourceState, party, alive, rankTargetType); StartCoroutine(WaitForPromptSelection()); }