public void UpdateData(IPlayerCharacterData character) { this.character = character; var selectedQuestId = SelectionManager.SelectedUI != null ? SelectionManager.SelectedUI.Data.dataId : 0; SelectionManager.DeselectSelectedUI(); SelectionManager.Clear(); if (character == null) { CacheList.HideAll(); return; } var characterQuests = character.Quests; CacheList.Generate(characterQuests, (index, characterQuest, ui) => { var uiCharacterQuest = ui.GetComponent <UICharacterQuest>(); uiCharacterQuest.Setup(characterQuest, character, index); uiCharacterQuest.Show(); SelectionManager.Add(uiCharacterQuest); if (selectedQuestId.Equals(characterQuest.dataId)) { uiCharacterQuest.OnClickSelect(); } }); }
public void UpdateData(ICharacterData character) { this.character = character; var selectedBuffKey = SelectionManager.SelectedUI != null?SelectionManager.SelectedUI.CharacterBuff.GetKey() : string.Empty; SelectionManager.DeselectSelectedUI(); SelectionManager.Clear(); if (character == null) { CacheList.HideAll(); return; } var buffs = character.Buffs; CacheList.Generate(buffs, (index, characterBuff, ui) => { var uiCharacterBuff = ui.GetComponent <UICharacterBuff>(); uiCharacterBuff.Setup(characterBuff, character, index); uiCharacterBuff.Show(); SelectionManager.Add(uiCharacterBuff); if (selectedBuffKey.Equals(characterBuff.GetKey())) { uiCharacterBuff.OnClickSelect(); } }); }
public void UpdateData(ICharacterData character) { this.character = character; var selectedIdx = SelectionManager.SelectedUI != null?SelectionManager.IndexOf(SelectionManager.SelectedUI) : -1; SelectionManager.DeselectSelectedUI(); SelectionManager.Clear(); if (character == null) { CacheList.HideAll(); return; } var nonEquipItems = character.NonEquipItems; CacheList.Generate(nonEquipItems, (index, characterItem, ui) => { var uiCharacterItem = ui.GetComponent <UICharacterItem>(); uiCharacterItem.Setup(new CharacterItemLevelTuple(characterItem, characterItem.level), this.character, index, string.Empty); uiCharacterItem.Show(); SelectionManager.Add(uiCharacterItem); if (selectedIdx == index) { uiCharacterItem.OnClickSelect(); } }); }
private void LoadCharacters() { SelectionManager.Clear(); // Unenabled buttons buttonStart.gameObject.SetActive(false); buttonDelete.gameObject.SetActive(false); // Remove all models characterModelContainer.RemoveChildren(); CharacterModels.Clear(); // Show list of created characters var selectableCharacters = PlayerCharacterDataExtension.LoadAllPersistentCharacterData(); selectableCharacters.Sort(new PlayerCharacterDataLastUpdateComparer().Desc()); CacheList.Generate(selectableCharacters, (index, character, ui) => { var uiCharacter = ui.GetComponent <UICharacter>(); uiCharacter.Data = character; // Select trigger when add first entry so deactivate all models is okay beacause first model will active var characterModel = character.InstantiateModel(characterModelContainer); CharacterModels[character.Id] = characterModel; characterModel.gameObject.SetActive(false); characterModel.SetEquipWeapons(character.EquipWeapons); characterModel.SetEquipItems(character.EquipItems); SelectionManager.Add(uiCharacter); }); }
private void OnLoadCharacters(AckResponseCode responseCode, BaseAckMessage message) { var castedMessage = (ResponseCharactersMessage)message; SelectionManager.Clear(); // Unenabled buttons buttonStart.gameObject.SetActive(false); buttonDelete.gameObject.SetActive(false); // Remove all models characterModelContainer.RemoveChildren(); CharacterModels.Clear(); var selectableCharacters = new List <PlayerCharacterData>(); switch (responseCode) { case AckResponseCode.Error: var errorMessage = string.Empty; switch (castedMessage.error) { case ResponseCharactersMessage.Error.NotLoggedin: errorMessage = "User not logged in"; break; } UISceneGlobal.Singleton.ShowMessageDialog("Cannot Load Characters", errorMessage); break; case AckResponseCode.Timeout: UISceneGlobal.Singleton.ShowMessageDialog("Cannot Load Characters", "Connection timeout"); break; default: selectableCharacters = castedMessage.characters; break; } // Show list of created characters for (var i = selectableCharacters.Count - 1; i >= 0; --i) { var selectableCharacter = selectableCharacters[i]; if (selectableCharacter == null || !GameInstance.PlayerCharacters.ContainsKey(selectableCharacter.DataId)) { selectableCharacters.RemoveAt(i); } } selectableCharacters.Sort(new PlayerCharacterDataLastUpdateComparer().Desc()); CacheList.Generate(selectableCharacters, (index, character, ui) => { var uiCharacter = ui.GetComponent <UICharacter>(); uiCharacter.Data = character; // Select trigger when add first entry so deactivate all models is okay beacause first model will active var characterModel = character.InstantiateModel(characterModelContainer); CharacterModels[character.Id] = characterModel; characterModel.gameObject.SetActive(false); characterModel.SetEquipWeapons(character.EquipWeapons); characterModel.SetEquipItems(character.EquipItems); SelectionManager.Add(uiCharacter); }); }
public void UpdateData(ICharacterData character) { this.character = character; var selectedSkillId = SelectionManager.SelectedUI != null ? SelectionManager.SelectedUI.Data.characterSkill.dataId : 0; SelectionManager.DeselectSelectedUI(); SelectionManager.Clear(); if (character == null) { CacheList.HideAll(); return; } var characterSkills = character.Skills; switch (listingMode) { case ListingMode.DefiningByCharacter: CacheList.Generate(characterSkills, (index, characterSkill, ui) => { var uiCharacterSkill = ui.GetComponent <UICharacterSkill>(); uiCharacterSkill.Setup(new CharacterSkillLevelTuple(characterSkill, characterSkill.level), character, index); uiCharacterSkill.Show(); SelectionManager.Add(uiCharacterSkill); if (selectedSkillId.Equals(characterSkill.dataId)) { uiCharacterSkill.OnClickSelect(); } }); break; case ListingMode.Predefined: CacheList.HideAll(); for (var i = 0; i < characterSkills.Count; ++i) { var characterSkill = characterSkills[i]; var level = characterSkill.level; var skill = characterSkill.GetSkill(); UICharacterSkill cacheUICharacterSkill; if (CacheUICharacterSkills.TryGetValue(skill, out cacheUICharacterSkill)) { cacheUICharacterSkill.Setup(new CharacterSkillLevelTuple(characterSkill, level), character, i); cacheUICharacterSkill.Show(); if (selectedSkillId.Equals(characterSkill.dataId)) { cacheUICharacterSkill.OnClickSelect(); } } else { cacheUICharacterSkill.Hide(); } } break; } }
private void ResponseCashShopInfo(AckResponseCode responseCode, BaseAckMessage message) { var castedMessage = (ResponseCashShopInfoMessage)message; switch (responseCode) { case AckResponseCode.Error: UISceneGlobal.Singleton.ShowMessageDialog("Error", "Cannot retrieve cash shop info"); break; case AckResponseCode.Timeout: UISceneGlobal.Singleton.ShowMessageDialog("Error", "Connection timeout"); break; default: if (uiTextCash != null) { uiTextCash.text = string.Format(cashFormat, castedMessage.cash.ToString("N0")); } var cashShopItems = new List <CashShopItem>(); foreach (var cashShopItemId in castedMessage.cashShopItemIds) { CashShopItem cashShopItem; if (GameInstance.CashShopItems.TryGetValue(cashShopItemId, out cashShopItem)) { cashShopItems.Add(cashShopItem); } } var selectedIdx = SelectionManager.SelectedUI != null?SelectionManager.IndexOf(SelectionManager.SelectedUI) : -1; SelectionManager.DeselectSelectedUI(); SelectionManager.Clear(); CacheList.Generate(cashShopItems, (index, cashShopItem, ui) => { var uiCashShopItem = ui.GetComponent <UICashShopItem>(); uiCashShopItem.uiCashShop = this; uiCashShopItem.Data = cashShopItem; uiCashShopItem.Show(); SelectionManager.Add(uiCashShopItem); if (selectedIdx == index) { uiCashShopItem.OnClickSelect(); } }); break; } }
public void UpdateData(ICharacterData character) { this.character = character; var selectedSummonObjectId = SelectionManager.SelectedUI != null ? SelectionManager.SelectedUI.CharacterSummon.objectId : 0; SelectionManager.DeselectSelectedUI(); SelectionManager.Clear(); if (character == null) { CacheList.HideAll(); return; } var stackingSkillSummons = new Dictionary <int, UICharacterSummon>(); var summons = character.Summons; CacheList.Generate(summons, (index, characterSummon, ui) => { if (characterSummon.type == SummonType.Skill && stackingSkillSummons.ContainsKey(characterSummon.dataId)) { stackingSkillSummons[characterSummon.dataId].AddStackingEntry(characterSummon); ui.gameObject.SetActive(false); } else { var uiCharacterSummon = ui.GetComponent <UICharacterSummon>(); uiCharacterSummon.Setup(characterSummon, character, index); uiCharacterSummon.Show(); switch (characterSummon.type) { case SummonType.Skill: stackingSkillSummons.Add(characterSummon.dataId, uiCharacterSummon); break; case SummonType.Pet: ui.transform.SetAsFirstSibling(); break; } SelectionManager.Add(uiCharacterSummon); if (selectedSummonObjectId == characterSummon.objectId) { uiCharacterSummon.OnClickSelect(); } } }); }
private void OnReceiveChat(ChatMessage chatMessage) { chatMessages.Add(chatMessage); if (chatMessages.Count > chatEntrySize) { chatMessages.RemoveAt(0); } CacheList.Generate(chatMessages, (index, message, ui) => { var uiChatMessage = ui.GetComponent <UIChatMessage>(); uiChatMessage.uiChatHandler = this; uiChatMessage.Data = message; uiChatMessage.Show(); }); StartCoroutine(VerticalScroll(0f)); }
protected virtual void OnEnable() { SelectionManager.DeselectSelectedUI(); SelectionManager.Clear(); MmoNetworkSetting[] networkSettings = MMOClientInstance.Singleton.NetworkSettings; CacheList.Generate(networkSettings, (index, networkSetting, ui) => { UIMmoServerEntry uiServerEntry = ui.GetComponent <UIMmoServerEntry>(); uiServerEntry.Data = networkSetting; uiServerEntry.Show(); SelectionManager.Add(uiServerEntry); if (index == 0) { uiServerEntry.OnClickSelect(); } }); }
public override void Show() { base.Show(); SelectionManager.DeselectSelectedUI(); SelectionManager.Clear(); var networkSettings = MMOClientInstance.Singleton.networkSettings; CacheList.Generate(networkSettings, (index, networkSetting, ui) => { var uiServerEntry = ui.GetComponent <UIMmoServerEntry>(); uiServerEntry.Data = networkSetting; uiServerEntry.Show(); SelectionManager.Add(uiServerEntry); if (index == 0) { uiServerEntry.OnClickSelect(); } }); }
private void LoadCharacters() { SelectionManager.Clear(); // Show list of characters that can be create var selectableCharacters = GameInstance.PlayerCharacters.Values.ToList(); CacheList.Generate(selectableCharacters, (index, character, ui) => { var dataId = character.HashId; var characterData = new PlayerCharacterData(); characterData.DataId = dataId; characterData.SetNewCharacterData(character.title, character.HashId); var uiCharacter = ui.GetComponent <UICharacter>(); uiCharacter.Setup(characterData, dataId); // Select trigger when add first entry so deactivate all models is okay beacause first model will active var characterModel = characterData.InstantiateModel(characterModelContainer); CharacterModels[characterData.dataId] = characterModel; characterModel.gameObject.SetActive(false); SelectionManager.Add(uiCharacter); }); }
public void UpdateData(ICharacterData character) { this.character = character; var selectedSkillId = SelectionManager.SelectedUI != null ? SelectionManager.SelectedUI.Skill.DataId : 0; SelectionManager.DeselectSelectedUI(); SelectionManager.Clear(); if (character == null) { CacheList.HideAll(); return; } displayingSkills = character.GetSkills(); Skill tempSkill; short tempLevel; var skillLevels = character.GetDatabase().CacheSkillLevels; CacheList.Generate(skillLevels, (index, skillLevel, ui) => { var uiCharacterSkill = ui.GetComponent <UICharacterSkill>(); tempSkill = skillLevel.Key; tempLevel = 0; if (displayingSkills.ContainsKey(tempSkill)) { tempLevel = displayingSkills[tempSkill]; } uiCharacterSkill.Setup(new SkillTuple(tempSkill, tempLevel), character, character.IndexOfSkill(tempSkill.DataId)); uiCharacterSkill.Show(); SelectionManager.Add(uiCharacterSkill); if (selectedSkillId.Equals(skillLevel.Key)) { uiCharacterSkill.OnClickSelect(); } }); }
protected virtual void LoadCharacters() { SelectionManager.Clear(); // Show list of characters that can be create var selectableCharacters = GetCreatableCharacters(); CacheList.Generate(selectableCharacters, (index, characterEntity, ui) => { var character = characterEntity.database; var characterData = new PlayerCharacterData(); characterData.DataId = characterEntity.DataId; characterData.EntityId = characterEntity.EntityId; characterData.SetNewPlayerCharacterData(character.title, characterEntity.DataId, characterEntity.EntityId); var uiCharacter = ui.GetComponent <UICharacter>(); uiCharacter.Data = characterData; // Select trigger when add first entry so deactivate all models is okay beacause first model will active var characterModel = characterData.InstantiateModel(characterModelContainer); CharacterModels[characterData.EntityId] = characterModel; characterModel.gameObject.SetActive(false); SelectionManager.Add(uiCharacter); }); }