private void SetDeactivateNotAvailableUnit() { using (List <GameObject> .Enumerator enumerator1 = this.mCurrentUnitObjects.GetEnumerator()) { while (enumerator1.MoveNext()) { GameObject current = enumerator1.Current; QuestBookmarkWindow.ItemAndQuests dataOfClass = DataSource.FindDataOfClass <QuestBookmarkWindow.ItemAndQuests>(current, (QuestBookmarkWindow.ItemAndQuests)null); QuestParam[] availableQuests = MonoSingleton <GameManager> .Instance.Player.AvailableQuests; bool flag = false; long currentTime = Network.GetServerTime(); using (List <QuestParam> .Enumerator enumerator2 = dataOfClass.quests.GetEnumerator()) { while (enumerator2.MoveNext()) { QuestParam quest = enumerator2.Current; if (((IEnumerable <QuestParam>)availableQuests).Any <QuestParam>((Func <QuestParam, bool>)(q => { if (this.IsAvailableQuest(q, currentTime)) { return(quest.iname == q.iname); } return(false); }))) { flag = true; break; } } } ((BookmarkUnit)current.GetComponent <BookmarkUnit>()).Overlay.SetActive(!flag); } } }
private void OnUnitSelect(SRPG_Button button) { if (!((Selectable)button).get_interactable() || this.mSelectQuestFlag) { return; } QuestBookmarkWindow.ItemAndQuests dataOfClass1 = DataSource.FindDataOfClass <QuestBookmarkWindow.ItemAndQuests>(((Component)button).get_gameObject(), (QuestBookmarkWindow.ItemAndQuests)null); long currentTime = Network.GetServerTime(); QuestParam[] availableQuests = MonoSingleton <GameManager> .Instance.Player.AvailableQuests; QuestParam[] questParamArray = !(this.mLastSectionName == this.BookmarkSectionName) ? dataOfClass1.quests.Where <QuestParam>((Func <QuestParam, bool>)(q => q.world == this.mLastSectionName)).ToArray <QuestParam>() : QuestDropParam.Instance.GetItemDropQuestList(MonoSingleton <GameManager> .Instance.MasterParam.GetItemParam(dataOfClass1.itemName), GlobalVars.GetDropTableGeneratedDateTime()).Where <QuestParam>((Func <QuestParam, bool>)(q => ((IEnumerable <string>) this.mAvailableSections).Contains <string>(q.world))).ToArray <QuestParam>(); if (questParamArray.Length <= 0) { return; } List <QuestParam> questParamList = new List <QuestParam>(); foreach (QuestParam questParam1 in questParamArray) { foreach (QuestParam questParam2 in ((IEnumerable <QuestParam>)availableQuests).Where <QuestParam>((Func <QuestParam, bool>)(q => this.IsAvailableQuest(q, currentTime)))) { if (questParam1.iname == questParam2.iname) { questParamList.Add(questParam1); } } } if (questParamList.Count <= 0) { QuestParam questParam = questParamArray[0]; UIUtility.SystemMessage((string)null, LocalizedText.Get("sys.TXT_QUESTBOOKMARK_BOOKMARK_NOT_AVAIABLE_QUEST", (object)questParam.title, (object)questParam.name), (UIUtility.DialogResultEvent)null, (GameObject)null, true, -1); } else if (this.mIsBookmarkEditing) { this.OnUnitSelectBookmark(dataOfClass1, (BookmarkUnit)((Component)button).GetComponent <BookmarkUnit>()); } else if (questParamArray.Length > 1) { if (!UnityEngine.Object.op_Inequality((UnityEngine.Object) this.QuestSelectorTemplate, (UnityEngine.Object)null)) { return; } GameObject gameObject = (GameObject)UnityEngine.Object.Instantiate <GameObject>((M0)this.QuestSelectorTemplate); gameObject.get_transform().SetParent(((Component)this).get_transform().get_parent(), false); QuestBookmarkKakeraWindow component = (QuestBookmarkKakeraWindow)gameObject.GetComponent <QuestBookmarkKakeraWindow>(); if (!UnityEngine.Object.op_Inequality((UnityEngine.Object)component, (UnityEngine.Object)null)) { return; } UnitParam dataOfClass2 = DataSource.FindDataOfClass <UnitParam>(((Component)button).get_gameObject(), (UnitParam)null); component.Refresh(dataOfClass2, (IEnumerable <QuestParam>)questParamArray); } else { this.mSelectQuestFlag = true; GlobalVars.SelectedQuestID = questParamArray[0].iname; FlowNode_GameObject.ActivateOutputLinks((Component)this, 100); } }
private void DeleteBookmark(QuestBookmarkWindow.ItemAndQuests item) { this.mBookmarkedPieces.RemoveAt(this.mBookmarkedPieces.FindIndex((Predicate <QuestBookmarkWindow.ItemAndQuests>)(p => p.itemName == item.itemName))); if (this.mBookmarkedPieces.Count >= this.MaxBookmarkCount) { return; } this.SetActivateWithoutBookmarkedUnit(true); this.SetDeactivateNotAvailableUnit(); }
private bool AddBookmark(QuestBookmarkWindow.ItemAndQuests item) { if (this.mBookmarkedPieces.Count > this.MaxBookmarkCount) { return(false); } this.mBookmarkedPieces.Add(item); if (this.mBookmarkedPieces.Count >= this.MaxBookmarkCount) { this.SetActivateWithoutBookmarkedUnit(false); } return(true); }
private void SetDeactivateNotAvailableUnit() { using (List <GameObject> .Enumerator enumerator1 = this.mCurrentUnitObjects.GetEnumerator()) { while (enumerator1.MoveNext()) { GameObject current = enumerator1.Current; // ISSUE: object of a compiler-generated type is created // ISSUE: variable of a compiler-generated type QuestBookmarkWindow.\u003CSetDeactivateNotAvailableUnit\u003Ec__AnonStorey362 unitCAnonStorey362 = new QuestBookmarkWindow.\u003CSetDeactivateNotAvailableUnit\u003Ec__AnonStorey362(); // ISSUE: reference to a compiler-generated field unitCAnonStorey362.\u003C\u003Ef__this = this; QuestBookmarkWindow.ItemAndQuests dataOfClass = DataSource.FindDataOfClass <QuestBookmarkWindow.ItemAndQuests>(current, (QuestBookmarkWindow.ItemAndQuests)null); QuestParam[] availableQuests = MonoSingleton <GameManager> .Instance.Player.AvailableQuests; bool flag = false; // ISSUE: reference to a compiler-generated field unitCAnonStorey362.currentTime = Network.GetServerTime(); // ISSUE: object of a compiler-generated type is created // ISSUE: variable of a compiler-generated type QuestBookmarkWindow.\u003CSetDeactivateNotAvailableUnit\u003Ec__AnonStorey363 unitCAnonStorey363 = new QuestBookmarkWindow.\u003CSetDeactivateNotAvailableUnit\u003Ec__AnonStorey363(); // ISSUE: reference to a compiler-generated field unitCAnonStorey363.\u003C\u003Ef__ref\u0024866 = unitCAnonStorey362; // ISSUE: reference to a compiler-generated field unitCAnonStorey363.\u003C\u003Ef__this = this; using (List <QuestParam> .Enumerator enumerator2 = dataOfClass.quests.GetEnumerator()) { while (enumerator2.MoveNext()) { // ISSUE: reference to a compiler-generated field unitCAnonStorey363.quest = enumerator2.Current; // ISSUE: reference to a compiler-generated method if (((IEnumerable <QuestParam>)availableQuests).Any <QuestParam>(new Func <QuestParam, bool>(unitCAnonStorey363.\u003C\u003Em__3E2))) { flag = true; break; } } } ((BookmarkUnit)current.GetComponent <BookmarkUnit>()).Overlay.SetActive(!flag); } } }
private void OnUnitSelectBookmark(QuestBookmarkWindow.ItemAndQuests target, BookmarkUnit unit) { if (this.mBookmarkedPieces.Exists((Predicate <QuestBookmarkWindow.ItemAndQuests>)(p => p.itemName == target.itemName))) { this.DeleteBookmark(target); if (!UnityEngine.Object.op_Inequality((UnityEngine.Object)unit, (UnityEngine.Object)null)) { return; } unit.BookmarkIcon.SetActive(false); } else { bool flag = this.AddBookmark(target); if (!UnityEngine.Object.op_Inequality((UnityEngine.Object)unit, (UnityEngine.Object)null) || !flag) { return; } unit.BookmarkIcon.SetActive(true); } }
private void CreateUnitPanels(IEnumerable <QuestBookmarkWindow.ItemAndQuests> targetPieces, string sectionName) { UnitParam[] allUnits = MonoSingleton <GameManager> .Instance.MasterParam.GetAllUnits(); Dictionary <string, QuestParam> dictionary = ((IEnumerable <QuestParam>)MonoSingleton <GameManager> .Instance.Player.AvailableQuests).ToDictionary <QuestParam, string>((Func <QuestParam, string>)(quest => quest.iname)); foreach (QuestBookmarkWindow.ItemAndQuests targetPiece in targetPieces) { QuestBookmarkWindow.ItemAndQuests itemQuests = targetPiece; GameObject root = (GameObject)UnityEngine.Object.Instantiate <GameObject>((M0)this.ItemTemplate); BookmarkUnit component = (BookmarkUnit)root.GetComponent <BookmarkUnit>(); bool flag1 = this.mBookmarkedPieces.Exists((Predicate <QuestBookmarkWindow.ItemAndQuests>)(p => p.itemName == itemQuests.itemName)); component.BookmarkIcon.SetActive(flag1); long serverTime = Network.GetServerTime(); bool flag2 = false; foreach (QuestParam questParam1 in !(sectionName == this.BookmarkSectionName) ? itemQuests.quests.Where <QuestParam>((Func <QuestParam, bool>)(q => q.world == sectionName)) : (IEnumerable <QuestParam>)itemQuests.quests) { QuestParam questParam2; if (dictionary.TryGetValue(questParam1.iname, out questParam2) && this.IsAvailableQuest(questParam2, serverTime)) { flag2 = true; break; } } component.Overlay.SetActive(!flag2); component.Button.AddListener(new SRPG_Button.ButtonClickEvent(this.OnUnitSelect)); ItemParam itemParam = MonoSingleton <GameManager> .Instance.GetItemParam(itemQuests.itemName); UnitParam data = ((IEnumerable <UnitParam>)allUnits).FirstOrDefault <UnitParam>((Func <UnitParam, bool>)(unit => unit.piece == itemParam.iname)); DataSource.Bind <ItemParam>(root, itemParam); DataSource.Bind <UnitParam>(root, data); DataSource.Bind <QuestBookmarkWindow.ItemAndQuests>(root, itemQuests); root.get_transform().SetParent(this.ItemContainer.get_transform(), false); this.mCurrentUnitObjects.Add(root); GameParameter.UpdateAll(root); root.SetActive(true); } }
private void OnUnitSelect(SRPG_Button button) { // ISSUE: object of a compiler-generated type is created // ISSUE: variable of a compiler-generated type QuestBookmarkWindow.\u003COnUnitSelect\u003Ec__AnonStorey367 selectCAnonStorey367 = new QuestBookmarkWindow.\u003COnUnitSelect\u003Ec__AnonStorey367(); // ISSUE: reference to a compiler-generated field selectCAnonStorey367.\u003C\u003Ef__this = this; if (!((Selectable)button).get_interactable()) { return; } QuestBookmarkWindow.ItemAndQuests dataOfClass1 = DataSource.FindDataOfClass <QuestBookmarkWindow.ItemAndQuests>(((Component)button).get_gameObject(), (QuestBookmarkWindow.ItemAndQuests)null); // ISSUE: reference to a compiler-generated field selectCAnonStorey367.currentTime = Network.GetServerTime(); QuestParam[] availableQuests = MonoSingleton <GameManager> .Instance.Player.AvailableQuests; // ISSUE: reference to a compiler-generated method // ISSUE: reference to a compiler-generated method QuestParam[] questParamArray = !(this.mLastSectionName == this.BookmarkSectionName) ? dataOfClass1.quests.Where <QuestParam>(new Func <QuestParam, bool>(selectCAnonStorey367.\u003C\u003Em__3E8)).ToArray <QuestParam>() : QuestDropParam.Instance.GetItemDropQuestList(MonoSingleton <GameManager> .Instance.MasterParam.GetItemParam(dataOfClass1.itemName), GlobalVars.GetDropTableGeneratedDateTime()).Where <QuestParam>(new Func <QuestParam, bool>(selectCAnonStorey367.\u003C\u003Em__3E7)).ToArray <QuestParam>(); if (questParamArray.Length <= 0) { return; } List <QuestParam> questParamList = new List <QuestParam>(); foreach (QuestParam questParam1 in questParamArray) { // ISSUE: reference to a compiler-generated method foreach (QuestParam questParam2 in ((IEnumerable <QuestParam>)availableQuests).Where <QuestParam>(new Func <QuestParam, bool>(selectCAnonStorey367.\u003C\u003Em__3E9))) { if (questParam1.iname == questParam2.iname) { questParamList.Add(questParam1); } } } if (questParamList.Count <= 0) { QuestParam questParam = questParamArray[0]; UIUtility.SystemMessage((string)null, LocalizedText.Get("sys.TXT_QUESTBOOKMARK_BOOKMARK_NOT_AVAIABLE_QUEST", (object)questParam.title, (object)questParam.name), (UIUtility.DialogResultEvent)null, (GameObject)null, true, -1); } else if (this.mIsBookmarkEditing) { this.OnUnitSelectBookmark(dataOfClass1, (BookmarkUnit)((Component)button).GetComponent <BookmarkUnit>()); } else if (questParamArray.Length > 1) { if (!UnityEngine.Object.op_Inequality((UnityEngine.Object) this.QuestSelectorTemplate, (UnityEngine.Object)null)) { return; } GameObject gameObject = (GameObject)UnityEngine.Object.Instantiate <GameObject>((M0)this.QuestSelectorTemplate); gameObject.get_transform().SetParent(((Component)this).get_transform().get_parent(), false); QuestBookmarkKakeraWindow component = (QuestBookmarkKakeraWindow)gameObject.GetComponent <QuestBookmarkKakeraWindow>(); if (!UnityEngine.Object.op_Inequality((UnityEngine.Object)component, (UnityEngine.Object)null)) { return; } UnitParam dataOfClass2 = DataSource.FindDataOfClass <UnitParam>(((Component)button).get_gameObject(), (UnitParam)null); component.Refresh(dataOfClass2, (IEnumerable <QuestParam>)questParamArray); } else { GlobalVars.SelectedQuestID = questParamArray[0].iname; FlowNode_GameObject.ActivateOutputLinks((Component)this, 100); } }