public BABELTOWER_DATA GetBabelTowerData(short _floor, short _subfloor, short _floortype = 1) { BabelTowerManager.BabelTower_Floor babelTowerFloorInfo = this.GetBabelTowerFloorInfo(_floor, _floortype); if (babelTowerFloorInfo == null) { return(null); } if (_floortype == 2) { foreach (BABELTOWER_DATA current in babelTowerFloorInfo.m_listBabelTowerData_Type2) { if (current.m_nFloor == _floor && current.m_nSubFloor == _subfloor && current.m_nFloorType == _floortype) { BABELTOWER_DATA result = current; return(result); } } } else { foreach (BABELTOWER_DATA current2 in babelTowerFloorInfo.m_listBabelTowerData_Type1) { if (current2.m_nFloor == _floor && current2.m_nSubFloor == _subfloor && current2.m_nFloorType == _floortype) { BABELTOWER_DATA result = current2; return(result); } } } return(null); }
public override bool ParseDataFromNDT(TsDataReader dr) { foreach (TsDataReader.Row data in dr) { BABELTOWER_DATA bABELTOWER_DATA = new BABELTOWER_DATA(); bABELTOWER_DATA.SetData(data); NrTSingleton <BabelTowerManager> .Instance.AddBabelTowerData(bABELTOWER_DATA); } return(true); }
public void AddBabelDataInfo(BABELTOWER_DATA data) { if (data.m_nFloorType == 2) { if (data.m_nSubFloor > this.m_SubFloor_Type2) { this.m_SubFloor_Type2 = data.m_nSubFloor; } } else if (data.m_nSubFloor > this.m_SubFloor_Type1) { this.m_SubFloor_Type1 = data.m_nSubFloor; } List <BABELTOWER_DATA> list; if (data.m_nFloorType == 2) { if (this.m_listBabelTowerData_Type2 == null) { this.m_listBabelTowerData_Type2 = new List <BABELTOWER_DATA>(); } list = this.m_listBabelTowerData_Type2; } else { if (this.m_listBabelTowerData_Type1 == null) { this.m_listBabelTowerData_Type1 = new List <BABELTOWER_DATA>(); } list = this.m_listBabelTowerData_Type1; } this.m_Column = NrTSingleton <BabelTowerManager> .Instance.GetBabelColumnNumFromFloor(data.m_nFloor, data.m_nSubFloor); int num = (int)(((data.m_nFloor - 1) * 5 + data.m_nSubFloor) % 63); long num2 = 1L << num; this.m_ClearInfo += num2; if (list == null) { TsLog.LogError("!!!!!!!!!!!!!!!!!listBabelTowerData == null FloorType = {0}", new object[] { data.m_nFloorType }); return; } if (data == null) { TsLog.LogError("!!!!!!!!!!!!!!!!!data == null FloorType = {0}", new object[] { data.m_nFloorType }); return; } list.Add(data); }
public bool IsEnableBattleUseActivityPoint(short nFloor, short nSubFloor, short nFloorType) { NrMyCharInfo kMyCharInfo = NrTSingleton <NkCharManager> .Instance.m_kMyCharInfo; if (kMyCharInfo == null) { return(false); } BABELTOWER_DATA babelTowerData = this.GetBabelTowerData(nFloor, nSubFloor, nFloorType); return(babelTowerData != null && kMyCharInfo.IsEnableBattleUseActivityPoint(babelTowerData.m_nWillSpend)); }
public void AddBabelTowerData(BABELTOWER_DATA _data) { if (_data.m_nFloorType == 2 && this.m_LastFloor_Type2 < _data.m_nFloor) { this.m_LastFloor_Type2 = _data.m_nFloor; } else if (this.m_LastFloor_Type1 < _data.m_nFloor) { this.m_LastFloor_Type1 = _data.m_nFloor; } BabelTowerManager.BabelTower_Floor babelTowerFloorInfo = this.GetBabelTowerFloorInfo(_data.m_nFloor, _data.m_nFloorType); babelTowerFloorInfo.AddBabelDataInfo(_data); }
private bool CheckBattlePos() { if (this.m_nSelectStage <= 0 || this.m_nSubFloor < 0) { string textFromNotify = NrTSingleton <NrTextMgr> .Instance.GetTextFromNotify("614"); Main_UI_SystemMessage.ADDMessage(textFromNotify, SYSTEM_MESSAGE_TYPE.IMPORTANT_MESSAGE); return(false); } NrPersonInfoUser charPersonInfo = NrTSingleton <NkCharManager> .Instance.GetCharPersonInfo(1); NrMyCharInfo kMyCharInfo = NrTSingleton <NkCharManager> .Instance.m_kMyCharInfo; BABELTOWER_DATA babelTowerData = NrTSingleton <BabelTowerManager> .Instance.GetBabelTowerData(this.m_nSelectStage, this.m_nSubFloor, this.m_nFloorType); if (babelTowerData == null) { TsLog.LogError("BABELTOWER_DATA == NULL FloorType ={0} Floor={1} SubFloor={2}", new object[] { this.m_nFloorType, this.m_nSelectStage, this.m_nSubFloor }); return(false); } if (!kMyCharInfo.IsEnableBattleUseActivityPoint(babelTowerData.m_nWillSpend)) { string textFromNotify2 = NrTSingleton <NrTextMgr> .Instance.GetTextFromNotify("488"); Main_UI_SystemMessage.ADDMessage(textFromNotify2, SYSTEM_MESSAGE_TYPE.IMPORTANT_MESSAGE); return(false); } this.m_nMyBatchSolNum = 0; byte b; if (this.m_BatchUserSol != null) { b = 0; while ((int)b < this.MYSOL_NUM_MAX) { this.m_BatchUserSol[(int)b].Init(); b += 1; } } if (this.m_FriendBatch != null) { for (b = 0; b < 3; b += 1) { this.m_FriendBatch[(int)b].Init(); } } for (b = 1; b <= 20; b += 1) { if (this.m_nMyBatchSolNum >= this.MYSOL_NUM_MAX) { break; } if (b >= 17) { string value = "0"; PlayerPrefs.SetString(this.babel_solpos_string + b.ToString(), value); } else { string @string = PlayerPrefs.GetString(this.babel_solpos_string + b.ToString()); if (@string != string.Empty) { long num = long.Parse(@string); NkSoldierInfo soldierInfoFromSolID = charPersonInfo.GetSoldierInfoFromSolID(num); byte b2 = 0; byte nGridPos = 0; SoldierBatch.GetCalcBattlePos((long)b, ref b2, ref nGridPos); if (soldierInfoFromSolID != null) { if (soldierInfoFromSolID.GetSolPosType() == 1 || soldierInfoFromSolID.GetSolPosType() == 0 || soldierInfoFromSolID.GetSolPosType() == 2 || soldierInfoFromSolID.GetSolPosType() == 6) { this.m_BatchUserSol[this.m_nMyBatchSolNum].m_nSolID = num; this.m_BatchUserSol[this.m_nMyBatchSolNum].m_nGridPos = nGridPos; this.m_BatchUserSol[this.m_nMyBatchSolNum].m_bInjury = soldierInfoFromSolID.IsInjuryStatus(); this.m_nMyBatchSolNum++; } } } } } if (this.m_nMyBatchSolNum < this.MYSOL_NUM_MAX) { Main_UI_SystemMessage.ADDMessage(NrTSingleton <NrTextMgr> .Instance.GetTextFromNotify("610"), SYSTEM_MESSAGE_TYPE.NAGATIVE_MESSAGE); return(false); } List <byte> list = new List <byte>(); for (b = 0; b < 16; b += 1) { list.Add(b); } b = 0; while ((int)b < this.m_nMyBatchSolNum) { list.Remove(this.m_BatchUserSol[(int)b].m_nGridPos); b += 1; } this.m_kFriendSolList.Clear(); foreach (USER_FRIEND_INFO uSER_FRIEND_INFO in NrTSingleton <NkCharManager> .Instance.m_kMyCharInfo.m_kFriendInfo.GetFriendInfoValues()) { if (uSER_FRIEND_INFO.FriendHelpSolInfo.i64HelpSolID > 0L) { if (uSER_FRIEND_INFO.ui8HelpUse < 1) { this.m_kFriendSolList.Add(uSER_FRIEND_INFO); } } } this.m_kFriendSolList.Sort(new Comparison <USER_FRIEND_INFO>(this.CompareFriendSolLevel)); int num2 = 0; for (int i = 0; i < this.m_kFriendSolList.Count; i++) { if (num2 >= 3) { break; } USER_FRIEND_INFO uSER_FRIEND_INFO2 = this.m_kFriendSolList[i]; int index = UnityEngine.Random.Range(0, list.Count); byte b3 = list[index]; this.m_FriendBatch[num2].m_nPersonID = uSER_FRIEND_INFO2.nPersonID; this.m_FriendBatch[num2].m_nSolID = uSER_FRIEND_INFO2.FriendHelpSolInfo.i64HelpSolID; this.m_FriendBatch[num2].m_nGridPos = b3; this.m_FriendBatch[num2].m_bInjury = false; list.Remove(b3); num2++; } if (NrTSingleton <NkClientLogic> .Instance.IsWorldScene() && NrTSingleton <FormsManager> .Instance.GetForm(G_ID.BABELTOWER_REPEAT_MAIN_DLG) == null) { NrTSingleton <FormsManager> .Instance.LoadForm(G_ID.BABELTOWER_REPEAT_MAIN_DLG); } return(true); }
private void SetSubFloorInfo(short sub_floor) { NrMyCharInfo kMyCharInfo = NrTSingleton <NkCharManager> .Instance.m_kMyCharInfo; BABELTOWER_DATA babelTowerData = NrTSingleton <BabelTowerManager> .Instance.GetBabelTowerData(this.m_nFloor, sub_floor, this.m_nFloorType); if (babelTowerData != null) { this.m_nsubFloor = sub_floor; string text = string.Empty; string empty = string.Empty; text = NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("2846"); NrTSingleton <CTextParser> .Instance.ReplaceParam(ref empty, new object[] { text, "count", babelTowerData.m_nWillSpend }); if (this.m_nFloorType == 2) { text = NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("2786"); } else { text = NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("640"); } NrTSingleton <CTextParser> .Instance.ReplaceParam(ref empty, new object[] { text, "floor", babelTowerData.m_nFloor }); this.m_laTitle.SetText(empty); if (this.m_nFloorType == 2) { text = NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("2787"); } else { text = NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("833"); } NrTSingleton <CTextParser> .Instance.ReplaceParam(ref empty, new object[] { text, "floor", this.m_nFloor, "subfloor", (int)(sub_floor + 1) }); this.m_laSubFloorNum.SetText(empty); if (!kMyCharInfo.IsBabelClear(this.m_nFloor, sub_floor, this.m_nFloorType)) { text = NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1697"); NrTSingleton <CTextParser> .Instance.ReplaceParam(ref empty, new object[] { text, "itemname", NrTSingleton <ItemManager> .Instance.GetItemNameByItemUnique(babelTowerData.m_nFirstReward_ItemUniq), "count", babelTowerData.m_nFirstReward_ItemNum }); this.m_laFirstRewardItem.SetText(empty); this.m_itFirstRewardItem.Visible = true; this.m_itFirstRewardItem.ClearData(); this.m_itFirstRewardItem.SetItemTexture(babelTowerData.m_nFirstReward_ItemUniq); this.m_dtFirstRewardItemBG.Visible = true; text = NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("723"); this.m_laFristRewardItemText.SetText(text); this.m_dtFirstRewardItemFrame.Visible = true; this.m_dtFirstRewardItemLine.Visible = true; } else if (!kMyCharInfo.IsBabelTreasure(this.m_nFloor, sub_floor, this.m_nFloorType)) { text = NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1697"); NrTSingleton <CTextParser> .Instance.ReplaceParam(ref empty, new object[] { text, "itemname", NrTSingleton <ItemManager> .Instance.GetItemNameByItemUnique(babelTowerData.m_i32TreasureRewardUnique), "count", babelTowerData.m_i32TreasureRewardNum }); this.m_laFirstRewardItem.SetText(empty); this.m_itFirstRewardItem.Visible = true; this.m_itFirstRewardItem.ClearData(); ITEM iTEM = new ITEM(); iTEM.m_nItemUnique = babelTowerData.m_i32TreasureRewardUnique; iTEM.m_nItemNum = babelTowerData.m_i32TreasureRewardNum; iTEM.m_nOption[2] = babelTowerData.m_i32TreasureRewardRank; this.m_itFirstRewardItem.SetItemTexture(iTEM, false, true, 1f); this.m_dtFirstRewardItemBG.Visible = true; text = NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1931"); this.m_laFristRewardItemText.SetText(text); this.m_dtFirstRewardItemFrame.Visible = true; this.m_dtFirstRewardItemLine.Visible = true; } else { this.m_itFirstRewardItem.Visible = false; this.m_dtFirstRewardItemBG.Visible = false; this.m_dtFirstRewardItemFrame.Visible = false; this.m_dtFirstRewardItemLine.Visible = false; this.m_laFirstRewardItem.SetText(string.Empty); this.m_laFristRewardItemText.SetText(string.Empty); } BATTLE_BABEL_SREWARD battleBabelSRewardData = NrTSingleton <BattleSReward_Manager> .Instance.GetBattleBabelSRewardData(babelTowerData.m_i32ShowSpecialReward_DataUnique); if (battleBabelSRewardData != null) { int num = babelTowerData.m_i32ShowSpecialReward_DataPos - 1; if (num < 0 || num >= 4) { num = 3; } int nRewardValue = battleBabelSRewardData.m_sRewardProduct[num].m_nRewardValue1; text = NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1803"); NrTSingleton <CTextParser> .Instance.ReplaceParam(ref empty, new object[] { text, "itemname", NrTSingleton <ItemManager> .Instance.GetItemNameByItemUnique(nRewardValue) }); this.m_laSpecialRewardItem.SetText(empty); this.m_itSpecialRewardItem.ClearData(); this.m_itSpecialRewardItem.SetItemTexture(nRewardValue); } text = NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1697"); NrTSingleton <CTextParser> .Instance.ReplaceParam(ref empty, new object[] { text, "itemname", NrTSingleton <ItemManager> .Instance.GetItemNameByItemUnique(babelTowerData.m_nReward_ItemUniq), "count", babelTowerData.m_nReward_ItemNum }); this.m_laRewardItem.SetText(empty); this.m_itRewardItem.SetItemTexture(babelTowerData.m_nReward_ItemUniq); text = NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("726"); NrTSingleton <CTextParser> .Instance.ReplaceParam(ref empty, new object[] { text, "exp", babelTowerData.m_nReward_Exp }); this.m_laRewardExp.SetText(empty); short babelTowerLastSubFloor = NrTSingleton <BabelTowerManager> .Instance.GetBabelTowerLastSubFloor(this.m_nFloor, this.m_nFloorType); if (this.m_SelectOldEffect != null) { UnityEngine.Object.DestroyImmediate(this.m_SelectOldEffect); } NrTSingleton <FormsManager> .Instance.AttachEffectKey("FX_BABEL_SELECT", this.m_btSubFloor[(int)babelTowerLastSubFloor][(int)this.m_nsubFloor], this.m_btSubFloor[(int)babelTowerLastSubFloor][(int)this.m_nsubFloor].GetSize()); this.m_btSubFloor[(int)babelTowerLastSubFloor][(int)this.m_nsubFloor].AddGameObjectDelegate(new EZGameObjectDelegate(this.OldeffectDelete)); } }