// Token: 0x060008C2 RID: 2242 RVA: 0x000B4510 File Offset: 0x000B2710 public static bool sendBattleEnd() { if (DataManager.StageDataController._stageMode == StageMode.Dare) { return(BattleNetwork.sendBattleEndEx()); } if (!GUIManager.Instance.ShowUILock(EUILock.Battle)) { return(false); } ushort num = (ushort)BSInvokeUtil.getInstance.getEventDataLen(); int num2 = (int)(num + 22); if (num2 < 1024) { num2 = 1024; } MessagePacket messagePacket = new MessagePacket((ushort)num2); messagePacket.AddSeqId(); messagePacket.Protocol = Protocol._MSG_REQUEST_BATTLEEND; messagePacket.Add(DataManager.Instance.BattleSeqID); messagePacket.Add(num); messagePacket.Add(BattleController.EventBuffer, 0, (int)num); if (!messagePacket.Send(false)) { GUIManager.Instance.HideUILock(EUILock.Battle); return(false); } return(true); }
// Token: 0x060008C0 RID: 2240 RVA: 0x000B4154 File Offset: 0x000B2354 public static bool sendInitBattle() { if (DataManager.StageDataController._stageMode == StageMode.Dare) { return(BattleNetwork.sendInitBattleEx()); } if (!GUIManager.Instance.ShowUILock(EUILock.Battle)) { return(false); } MessagePacket messagePacket = new MessagePacket(1024); messagePacket.AddSeqId(); messagePacket.Protocol = Protocol._MSG_REQUEST_BATTLEINIT_NPC; ushort currentPointID = BattleNetwork.battlePointID; if (!BattleNetwork.bReplay) { currentPointID = DataManager.StageDataController.currentPointID; BattleNetwork.battlePointID = currentPointID; } messagePacket.Add((byte)(DataManager.StageDataController._stageMode + 1)); messagePacket.Add(currentPointID); for (int i = 0; i < 5; i++) { messagePacket.Add(DataManager.Instance.heroBattleData[i].HeroID); } if (!messagePacket.Send(false)) { GUIManager.Instance.HideUILock(EUILock.Battle); return(false); } return(true); }
public void removeClient(BattleNetwork loginClient) { if (!_loggedClients.Contains(loginClient)) { return; } _loggedClients.Remove(loginClient); }
public void addClient(UdpClient client) { BattleNetwork lc = new BattleNetwork(client); if (_loggedClients.Contains(lc)) { //CLogger.info("Client is Have"); return; } _loggedClients.Add(lc); }
// Token: 0x060008D9 RID: 2265 RVA: 0x000B55F4 File Offset: 0x000B37F4 public void Recv_MSG_RESP_GAMBLE_INFO(MessagePacket MP) { byte b = MP.ReadByte(-1); GUIManager.Instance.HideUILock(EUILock.UIBattleGambling); if (b == 0 || b == 1) { this.m_GambleGameInfo.InitGambleGameInfo(); this.m_GambleGameInfo.BigCost = MP.ReadUInt(-1); this.m_GambleGameInfo.SmallCost = MP.ReadUInt(-1); for (int i = 0; i < this.m_GambleGameInfo.GambleData.Length; i++) { this.m_GambleGameInfo.GambleData[i].Stage = MP.ReadByte(-1); this.m_GambleGameInfo.GambleData[i].RemainFreePlay = MP.ReadByte(-1); if (this.m_GambleGameInfo.GambleData[i].RemainFreePlay != 0 && this.mComboMax == 0) { this.mComboMax = this.m_GambleGameInfo.GambleData[i].RemainFreePlay; GUIManager.Instance.UpdateUI(EGUIWindow.UI_Battle_Gambling, 22, 0); } } this.m_GambleGameInfo.Prize = MP.ReadUInt(-1); GUIManager guimanager = GUIManager.Instance; DataManager dataManager = DataManager.Instance; guimanager.bClearWindowStack = false; this.BattleMonsterID = this.m_GambleEventSave.MonsterID; if (!DataManager.CheckGambleBattleResources()) { GUIManager.Instance.AddHUDMessage(dataManager.mStringTable.GetStringByID(8350u), 255, true); return; } if (BattleController.IsGambleMode) { BattleController.GambleResult = 0; BattleNetwork.RefreshGambleMode(BattleController.GambleMode); } else { DataManager.Instance.WorldCameraTransitionsPos = GameConstants.GamblingGuy; BattleController.GambleMode = EGambleMode.Normal; BattleController.GambleResult = 0; BattleController.BattleMode = EBattleMode.Gambling; guimanager.pDVMgr.NextTransitions(eTrans.BEGIN, eTransFunc.GambleBattle); } } }
// Token: 0x060008C5 RID: 2245 RVA: 0x000B4860 File Offset: 0x000B2A60 public static void GambleGetRandomHero() { Array.Clear(BattleNetwork.GambleHeroIDTemp, 0, 15); Array.Clear(BattleNetwork.GambleHeroCount, 0, 3); Array.Clear(BattleNetwork.GambleActionHeroIDTemp, 0, 5); GamblingManager instance = GamblingManager.Instance; DataManager instance2 = DataManager.Instance; int num = 0; int num2 = 0; while ((long)num2 < (long)((ulong)instance2.CurHeroDataCount)) { ushort num3 = (ushort)instance2.sortHeroData[num2]; int num4 = BattleNetwork.GambleGetHeroPriority(num3); if (num4 != -1 && DataManager.CheckHeroResourceReady(num3)) { BattleNetwork.GambleHeroIDTemp[num4, BattleNetwork.GambleHeroCount[num4]] = num3; BattleNetwork.GambleHeroCount[num4]++; } num2++; } for (int i = 0; i < 3; i++) { for (int j = 0; j < BattleNetwork.GambleHeroPriorityCount[i]; j++) { if (BattleNetwork.GambleHeroCount[i] > 0) { int num5 = UnityEngine.Random.Range(0, BattleNetwork.GambleHeroCount[i]); BattleNetwork.GambleActionHeroIDTemp[num] = BattleNetwork.GambleHeroIDTemp[i, num5]; num++; BattleNetwork.GambleHeroIDTemp[i, num5] = BattleNetwork.GambleHeroIDTemp[i, BattleNetwork.GambleHeroCount[i] - 1]; BattleNetwork.GambleHeroCount[i]--; } } } int num6; do { num6 = 0; if (BattleNetwork.GambleHeroCount[1] > 0) { BattleNetwork.GambleHeroIDTemp[0, BattleNetwork.GambleHeroCount[0]] = BattleNetwork.GambleHeroIDTemp[1, 0]; BattleNetwork.GambleHeroCount[0]++; BattleNetwork.GambleHeroCount[1]--; } else { num6++; } if (BattleNetwork.GambleHeroCount[2] > 0) { BattleNetwork.GambleHeroIDTemp[0, BattleNetwork.GambleHeroCount[0]] = BattleNetwork.GambleHeroIDTemp[2, 0]; BattleNetwork.GambleHeroCount[0]++; BattleNetwork.GambleHeroCount[2]--; } else { num6++; } }while (num6 != 2); for (int k = 0; k < 5; k++) { if (BattleNetwork.GambleActionHeroIDTemp[k] == 0 && BattleNetwork.GambleHeroCount[0] > 0) { int num7 = UnityEngine.Random.Range(0, BattleNetwork.GambleHeroCount[0]); BattleNetwork.GambleActionHeroIDTemp[k] = BattleNetwork.GambleHeroIDTemp[0, num7]; BattleNetwork.GambleHeroIDTemp[0, num7] = BattleNetwork.GambleHeroIDTemp[0, BattleNetwork.GambleHeroCount[0] - 1]; BattleNetwork.GambleHeroCount[0]--; } } instance.BattleHeroCount = 0; Array.Clear(instance.BattleHeroData, 0, 5); for (int l = 0; l < 5; l++) { if (BattleNetwork.GambleActionHeroIDTemp[l] != 0) { instance.BattleHeroData[(int)instance.BattleHeroCount].HeroID = BattleNetwork.GambleActionHeroIDTemp[l]; GamblingManager gamblingManager = instance; gamblingManager.BattleHeroCount += 1; } } for (int m = 0; m < (int)instance.BattleHeroCount; m++) { CurHeroData curHeroData = instance2.curHeroData[(uint)instance.BattleHeroData[m].HeroID]; instance.BattleHeroData[m].AttrData.SkillLV1 = curHeroData.SkillLV[0]; instance.BattleHeroData[m].AttrData.SkillLV2 = curHeroData.SkillLV[1]; instance.BattleHeroData[m].AttrData.SkillLV3 = curHeroData.SkillLV[2]; instance.BattleHeroData[m].AttrData.SkillLV4 = curHeroData.SkillLV[3]; instance.BattleHeroData[m].AttrData.LV = curHeroData.Level; instance.BattleHeroData[m].AttrData.Star = curHeroData.Star; instance.BattleHeroData[m].AttrData.Enhance = curHeroData.Enhance; instance.BattleHeroData[m].AttrData.Equip = curHeroData.Equip; } }
// Token: 0x060008DA RID: 2266 RVA: 0x000B57B0 File Offset: 0x000B39B0 public void Recv_MSG_RESP_GAMBLE_STARTGAME(MessagePacket MP) { GUIManager.Instance.HideUILock(EUILock.UIBattleGambling); byte b = 0; if (this.GambleMode < (UIBattle_Gambling.eMode) this.m_GambleGameInfo.GambleData.Length) { b = this.m_GambleGameInfo.GambleData[(int)this.GambleMode].RemainFreePlay; } bool flag = this.IsDailyFreeScardStar(this.GambleMode); byte b2 = MP.ReadByte(-1); byte b3 = MP.ReadByte(-1); if ((int)b3 >= this.m_GambleGameInfo.GambleData.Length) { return; } if (b2 > 100) { return; } this.m_GambleGameInfo.GambleData[(int)b3].Stage = MP.ReadByte(-1); uint num = MP.ReadUInt(-1); GUIManager.Instance.SetRoleAttrDiamond(DataManager.Instance.RoleAttr.Diamond + num, 0, eSpentCredits.eMax); DataManager.Instance.RoleAttr.ScardStar = MP.ReadUInt(-1); this.m_GambleGameInfo.Prize = MP.ReadUInt(-1); CommonItemDataType item = default(CommonItemDataType); item.ItemID = MP.ReadUShort(-1); item.Num = MP.ReadUShort(-1); item.ItemRank = MP.ReadByte(-1); int remainFreePlay = (int)this.m_GambleGameInfo.GambleData[(int)b3].RemainFreePlay; this.m_GambleGameInfo.GambleData[(int)b3].RemainFreePlay = MP.ReadByte(-1); if (remainFreePlay == 0 && this.m_GambleGameInfo.GambleData[(int)b3].RemainFreePlay > 0) { this.mComboMax = this.m_GambleGameInfo.GambleData[(int)b3].RemainFreePlay; GUIManager.Instance.UpdateUI(EGUIWindow.UI_Battle_Gambling, 22, 0); } DataManager.Instance.RoleAttr.DailyFreeScardStar = MP.ReadByte(-1); if (BattleController.IsGambleMode) { BattleController battleController = GameManager.ActiveGameplay as BattleController; if (b2 == 0) { BattleNetwork.SetBattleGambleState(EBattleGambleState.MONSTER_HIT); } else if (b2 == 1 || b2 == 4) { BattleNetwork.SetBattleGambleState(EBattleGambleState.MONSTER_DIE); if (b2 == 4) { DataManager.MissionDataManager.CheckChanged(eMissionKind.Mark, 159, 1); } } else if (b2 == 2) { BattleNetwork.SetBattleGambleState(EBattleGambleState.SUPPORT_WORK); DataManager.MissionDataManager.CheckChanged(eMissionKind.Mark, 158, 1); } else if (b2 == 3) { BattleNetwork.SetBattleGambleState(EBattleGambleState.MONSTER_LEAVE); } if (b2 != 4 && item.ItemID != 0) { this.m_QueueGamebleItem.Add(item); battleController.AddGambleItemBox(item.ItemID, item.ItemRank); if (num == 0u) { ushort curItemQuantity = DataManager.Instance.GetCurItemQuantity(item.ItemID, item.ItemRank); DataManager.Instance.SetCurItemQuantity(item.ItemID, curItemQuantity + item.Num, item.ItemRank, 0L); } } } if (b2 == 1 || b2 == 2) { GUIManager.Instance.UpdateUI(EGUIWindow.UI_Battle_Gambling, 7, 0); } else if (this.m_GambleGameInfo.GambleData[(int)b3].Stage != 1) { GUIManager.Instance.UpdateUI(EGUIWindow.UI_Battle_Gambling, 6, 0); } GUIManager.Instance.UpdateUI(EGUIWindow.UI_Battle_Gambling, 0, 0); GUIManager.Instance.UpdateUI(EGUIWindow.UI_Battle_Gambling, 8, (int)b2); GUIManager.Instance.UpdateUI(EGUIWindow.UI_MonsterCrypt, 0, 0); GUIManager.Instance.BuildingData.UpdateBuildState(5, 255); GameManager.OnRefresh(NetworkNews.Refresh, null); if (b != 0 && this.m_GambleGameInfo.GambleData[(int)this.GambleMode].RemainFreePlay == 0 && this.m_GambleGameInfo.GambleData[(int)b3].RemainFreePlay == 0) { GUIManager.Instance.UpdateUI(EGUIWindow.UI_Battle_Gambling, 16, 0); } if (flag && !this.IsDailyFreeScardStar(this.GambleMode) && DataManager.Instance.RoleAttr.DailyFreeScardStar == 1) { GUIManager.Instance.UpdateUI(EGUIWindow.UI_Battle_Gambling, 16, 0); } if (b == 0 && this.m_GambleGameInfo.GambleData[(int)this.GambleMode].RemainFreePlay > 0) { AudioManager.Instance.PlaySFX(40029, 0f, PitchKind.NoPitch, null, null); } }