/// <summary> /// 检索目标数量 /// </summary> /// <param name="taskInfo"></param> /// <param name="plotNpcId"></param> /// <param name="currMonsterList"></param> /// <returns></returns> private static List <string> FindTargetMonsterNum(StoryTaskInfo taskInfo, int plotNpcId, string[] currMonsterList) { string[] targetMonsterList = taskInfo.TargetMonsterID.ToNotNullString().Split(','); string[] targetMonsterNumList = ObjectExtend.ToNotNullString(taskInfo.TargetMonsterNum).Split(','); List <string> targetNumList = new List <string>(); int index = 0; foreach (string monster in targetMonsterList) { int num = currMonsterList.Length > index?ObjectExtend.ToInt(currMonsterList[index]) : 0; int maxNum = targetMonsterNumList.Length > index?ObjectExtend.ToInt(targetMonsterNumList[index]) : 0; if (num < maxNum) { var plotEmbattleList = new ConfigCacheSet <PlotEmbattleInfo>().FindAll(m => m.PlotNpcID == plotNpcId); foreach (PlotEmbattleInfo plotEmbattle in plotEmbattleList) { if (plotEmbattle.MonsterID == ObjectExtend.ToInt(monster)) { num += 1; } } targetNumList.Add(num.ToString()); } else { targetNumList.Add(maxNum.ToString()); } index++; } return(targetNumList); }
public override void BuildPacket() { this.PushIntoStack(heritageList.Count); foreach (var item in heritageList) { UserGeneral userGeneral = new GameDataCacheSet <UserGeneral>().FindKey(ContextUser.UserID, item.GeneralID); GeneralInfo general = new ConfigCacheSet <GeneralInfo>().FindKey(item.GeneralID); DataStruct dsItem = new DataStruct(); dsItem.PushIntoStack((short)item.Type); dsItem.PushIntoStack(userGeneral == null ? 0 : userGeneral.GeneralID); dsItem.PushIntoStack(userGeneral == null ? string.Empty : ObjectExtend.ToNotNullString(userGeneral.GeneralName)); dsItem.PushIntoStack(general == null ? string.Empty : ObjectExtend.ToNotNullString(general.BattleHeadID)); dsItem.PushIntoStack(item.GeneralLv); dsItem.PushIntoStack(item.PowerNum); dsItem.PushIntoStack(item.SoulNum); dsItem.PushIntoStack(item.IntellectNum); dsItem.PushIntoStack(userGeneral == null ? (short)0 : (short)userGeneral.GeneralQuality); this.PushIntoStack(dsItem); } this.PushIntoStack(opsInfoList.Count); foreach (var item in opsInfoList) { DataStruct dsItem = new DataStruct(); dsItem.PushIntoStack(item.Type); dsItem.PushIntoStack(item.VipLv); dsItem.PushIntoStack(item.UseGold); dsItem.PushIntoStack(item.ItemID); dsItem.PushIntoStack(item.ItemNum); this.PushIntoStack(dsItem); } this.PushIntoStack(heritageName.ToNotNullString()); this.PushIntoStack(heritageLv); this.PushIntoStack(disGeneralName.ToNotNullString()); }
public override void BuildPacket() { PushIntoStack(ContextUser.CityID); PushIntoStack(ContextUser.PointX); PushIntoStack(ContextUser.PointY); PushIntoStack(generalID); PushIntoStack(guildID.ToNotNullString()); PushIntoStack(ObjectExtend.ToNotNullString(ContextUser.NickName)); PushIntoStack(genlv); PushIntoStack(careerID); PushIntoStack(sex); PushIntoStack(headID.ToNotNullString()); PushIntoStack(ContextUser.GoldNum); PushIntoStack(ContextUser.GameCoin); PushIntoStack(lifeNum); PushIntoStack(lifeMaxNum); PushIntoStack((ContextUser.EnergyNum).ToShort()); PushIntoStack(maxEnergyNum); PushIntoStack(userGeneralInfo == null ? 0 : userGeneralInfo.CurrExperience); PushIntoStack(escalateInfo == null ? 0 : escalateInfo.UpExperience); PushIntoStack((short)ContextUser.VipLv); PushIntoStack((short)ContextUser.CountryID); //加状态 PushIntoStack(_itemLiveNum); PushIntoStack(_itemLiveMaxNum); PushIntoStack(_blessingList.Count); foreach (var blessing in _blessingList) { DataStruct dsItem = new DataStruct(); dsItem.PushIntoStack(blessing.BlessingType); dsItem.PushIntoStack(blessing.BlessingNum); dsItem.PushIntoStack(blessing.PropDate); dsItem.PushIntoStack(string.Empty); dsItem.PushIntoStack(blessing.PropDesc.ToNotNullString()); PushIntoStack(dsItem); } PushIntoStack((short)ContextUser.UserLocation); PushIntoStack(ContextUser.ExpNum); PushIntoStack((short)ContextUser.UserStatus); PushIntoStack(ContextUser.SweepPool == null ? 0 : ContextUser.SweepPool.PlotID); PushIntoStack(ContextUser.IsUseupItem ? (short)1 : (short)0); PushIntoStack(pictureID.ToNotNullString()); PushIntoStack(pictureTime); PushIntoStack(demandGold); PushIntoStack(ContextUser.SurplusEnergy); PushIntoStack(isHelper); PushIntoStack(plotstatucID); PushIntoStack(mercenarySeq); PushIntoStack(cardUserID.ToNotNullString()); PushIntoStack(0); this.PushIntoStack(battleNum); this.PushIntoStack(totalBattle); this.PushIntoStack(rstore); this.PushIntoStack(totalRstore); PushIntoStack(_honourNum); PushIntoStack(_nextHonourNum); PushIntoStack(ContextUser.CombatNum); PushIntoStack(_talPriority); PushIntoStack(ContextUser.IsLv ? 1.ToShort() : 0.ToShort()); this.PushIntoStack(functionList.Count); foreach (UserFunction item in functionList) { DataStruct dsItem = new DataStruct(); dsItem.PushIntoStack(item.FunEnum.ToShort()); PushIntoStack(dsItem); } if (ContextUser.OpenFun != null && ContextUser.OpenFun.Count > 0) { var OpenFun = ContextUser.OpenFun; this.PushIntoStack(OpenFun.Count); foreach (UserFunction item in OpenFun) { DataStruct dsItem = new DataStruct(); dsItem.PushIntoStack(item.FunEnum.ToShort()); PushIntoStack(dsItem); } ContextUser.OpenFun.Clear(); } else { PushIntoStack(0); } PushIntoStack(ContextUser.WizardNum); // PushIntoStack(unReadCount); // 未读的信件数目 PushIntoStack(unReadCount); }
public override void BuildPacket() { PushIntoStack(ObjectExtend.ToNotNullString(ContextUser.NickName)); PushIntoStack(sportsName.ToNotNullString()); PushIntoStack(ContextUser.ObtainNum); PushIntoStack(rankID); PushIntoStack(victoryNum); PushIntoStack(sportsReward == null ? 0 : sportsReward.RewardGoin); PushIntoStack(sportsReward == null ? 0 : sportsReward.RewardObtian); PushIntoStack(receiveDate); PushIntoStack(sportNum); PushIntoStack(codeTime); PushIntoStack(_userRankArray.Count); var userGeneralCacheSet = new PersonalCacheStruct <UserGeneral>(); foreach (UserRank user in _userRankArray) { DataStruct dsItem = new DataStruct(); dsItem.PushIntoStack(user.UserID.ToNotNullString()); dsItem.PushIntoStack(user.NickName.ToNotNullString()); dsItem.PushIntoStack(user.HeadID.ToNotNullString()); dsItem.PushIntoStack(user.RankId); dsItem.PushIntoStack(user.UserLv); var embattleList = EmbattleHelper.CurrEmbattle(user.UserID, true); dsItem.PushIntoStack(embattleList.Count); foreach (var item in embattleList) { var userGenearl = userGeneralCacheSet.FindKey(item.UserID, item.GeneralID); DataStruct dsItem1 = new DataStruct(); dsItem1.PushIntoStack(item.GeneralID); dsItem1.PushIntoStack(userGenearl == null ? string.Empty : userGenearl.GeneralName.ToNotNullString()); dsItem1.PushIntoStack(userGenearl == null ? string.Empty : userGenearl.HeadID.ToNotNullString()); dsItem1.PushIntoStack(userGenearl == null ? 0 : userGenearl.GeneralQuality.ToInt()); dsItem1.PushIntoStack(userGenearl == null ? 0 : userGenearl.GeneralLv.ToInt()); dsItem.PushIntoStack(dsItem1); } SportsRewardInfo sportsInfo = new ShareCacheStruct <SportsRewardInfo>().FindKey(user.RankId); var embatList = EmbattleHelper.CurrEmbattle(user.UserID, false); dsItem.PushIntoStack(embatList.Count); dsItem.PushIntoStack(embattleList.Count); dsItem.PushIntoStack(sportsInfo == null ? 0 : sportsInfo.RewardObtian); PushIntoStack(dsItem); } int index = 0; PushIntoStack(_userCombatArray.Count); foreach (var usercombat in _userCombatArray) { short iswin = usercombat.IsWin ? (short)1 : (short)2; string userName = string.Empty; string toUserName = string.Empty; if (usercombat.IsSelf) { userName = LanguageManager.GetLang().St5101_JingJiChangMingCheng; toUserName = usercombat.ToUserName; } else { userName = usercombat.ToUserName; toUserName = LanguageManager.GetLang().St5101_JingJiChangMingCheng; } DataStruct dsItem = new DataStruct(); dsItem.PushIntoStack(MathUtils.ToNotNullString(usercombat.CombatDate.ToString("t"))); dsItem.PushIntoStack(userName.ToNotNullString()); dsItem.PushIntoStack(toUserName.ToNotNullString()); dsItem.PushIntoStack(iswin); dsItem.PushIntoStack(usercombat.RankStatus.ToInt()); dsItem.PushIntoStack(usercombat.TopID); dsItem.PushIntoStack(index.ToNotNullString()); PushIntoStack(dsItem); index++; } string spoName = string.Empty; PushIntoStack(userRankArray.Count); foreach (UserRank rank in userRankArray) { spoName = UserHelper.SportTitleName(rank.ObtainNum); DataStruct dsItem = new DataStruct(); dsItem.PushIntoStack(rank.RankId); dsItem.PushIntoStack(rank.UserID.ToNotNullString()); dsItem.PushIntoStack(rank.NickName.ToNotNullString()); dsItem.PushIntoStack(rank.UserLv); dsItem.PushIntoStack(rank.TotalCombatNum > 0 ? rank.TotalCombatNum : UserHelper.GetTotalCombatNum(rank.UserID)); dsItem.PushIntoStack(spoName); dsItem.PushIntoStack(rank.VictoryNum); var embattleList = EmbattleHelper.CurrEmbattle(rank.UserID, true); dsItem.PushIntoStack(embattleList.Count); foreach (var item in embattleList) { var userGenearl = userGeneralCacheSet.FindKey(item.UserID, item.GeneralID); DataStruct dsItem1 = new DataStruct(); dsItem1.PushIntoStack(item.GeneralID); dsItem1.PushIntoStack(userGenearl == null ? string.Empty : userGenearl.GeneralName.ToNotNullString()); dsItem1.PushIntoStack(userGenearl == null ? string.Empty : userGenearl.HeadID.ToNotNullString()); dsItem1.PushIntoStack(userGenearl == null ? 0 : userGenearl.GeneralQuality.ToInt()); dsItem1.PushIntoStack(userGenearl == null ? 0 : userGenearl.GeneralLv.ToInt()); dsItem.PushIntoStack(dsItem1); } SportsRewardInfo sportsInfo = new ShareCacheStruct <SportsRewardInfo>().FindKey(rank.RankId); var embatList = EmbattleHelper.CurrEmbattle(rank.UserID, false); dsItem.PushIntoStack(embatList.Count); dsItem.PushIntoStack(embattleList.Count); dsItem.PushIntoStack(sportsInfo == null ? 0 : sportsInfo.RewardObtian); PushIntoStack(dsItem); } PushIntoStack(sportsIntegral); }