protected override void OnDecision() { List <GameSectionHistory.HistoryData> historyList = MonoBehaviourSingleton <GameSceneManager> .I.GetHistoryList(); string sectionName = historyList[historyList.Count - 2].sectionName; bool flag = sectionName == "ItemDetailSkillDialog" || sectionName == "ItemDetailSkill"; if (selectIndex == -1) { if (equipSkillItem == null) { GameSection.BackSection(); } else { GameSection.ChangeEvent("DETACH", null); SendDetachEquipSkill(); } } else { SortCompareData sortCompareData = inventory.datas[selectIndex]; if (equipSkillItem != null && equipSkillItem.uniqueID == sortCompareData.GetUniqID()) { GameSection.BackSection(); } else { EquipItemInfo equipItemInfo = null; SkillItemInfo skillItemInfo = sortCompareData.GetItemData() as SkillItemInfo; if (skillItemInfo.IsCurrentEquipSetAttached) { EquipSetSkillData equipSetSkillData = skillItemInfo.equipSetSkill.Find((EquipSetSkillData x) => x.equipSetNo == MonoBehaviourSingleton <StatusManager> .I.GetCurrentEquipSetNo()); equipItemInfo = MonoBehaviourSingleton <InventoryManager> .I.equipItemInventory.Find(equipSetSkillData.equipItemUniqId); } if (equipSkillItem != null) { if (!skillItemInfo.IsCurrentEquipSetAttached) { GameSection.ChangeEvent((!flag) ? "EQUIP" : "EQUIP_DETAIL", null); CheckSendEquipSkill(); } else { GameSection.ChangeEvent((!flag) ? "STEAL" : "STEAL_DETAIL", new object[5] { equipSkillItem.tableData.name, equipSkillItem.level.ToString(), equipItemInfo.tableData.name, sortCompareData.GetName(), sortCompareData.GetLevel().ToString() }); } } else if (skillItemInfo.IsCurrentEquipSetAttached) { GameSection.ChangeEvent((!flag) ? "REPLACE" : "REPLACE_DETAIL", new object[3] { equipItemInfo.tableData.name, sortCompareData.GetName(), sortCompareData.GetLevel().ToString() }); } else { GameSection.ChangeEvent((!flag) ? "EQUIP" : "EQUIP_DETAIL", null); CheckSendEquipSkill(); } } } }