Beispiel #1
0
 public override void BuildPacket()
 {
     this.PushIntoStack(pageCount);
     this.PushIntoStack(abilityArray.Count);
     foreach (GuildAbility ability in abilityArray)
     {
         GuildAbilityInfo abilityInfo = new ConfigCacheSet<GuildAbilityInfo>().FindKey(ability.ID);
         if (abilityInfo != null)
         {
             isCityCombat = abilityInfo.IsCityCombat ? (short)1 : (short)0;
         }
         GuildAbilityLvInfo abilityLvInfo = new ConfigCacheSet<GuildAbilityLvInfo>().FindKey(ability.ID, ability.Lv);
         DataStruct dsItem = new DataStruct();
         dsItem.PushIntoStack(ability.ID);
         dsItem.PushIntoStack(abilityInfo == null ? string.Empty : abilityInfo.AbilityName.ToNotNullString());
         dsItem.PushIntoStack(abilityInfo == null ? string.Empty : abilityInfo.AbilityHead.ToNotNullString());
         dsItem.PushIntoStack(ability.Lv);
         dsItem.PushIntoStack(abilityLvInfo == null ? string.Empty : abilityLvInfo.EffectNum.ToString().ToNotNullString());
         dsItem.PushIntoStack(abilityLvInfo == null ? 0 : abilityLvInfo.UpDonateNum);
         dsItem.PushIntoStack(isCityCombat);
         dsItem.PushIntoStack(abilityInfo == null ? (short)0 : (short)abilityInfo.GuildAbilityType);
         this.PushIntoStack(dsItem);
     }
     this.PushIntoStack(gAbilityInfo == null ? string.Empty : gAbilityInfo.AbilityName.ToNotNullString());
     this.PushIntoStack(currExperience);
     this.PushIntoStack(donateCoin);
     this.PushIntoStack(donateGold);
 }
Beispiel #2
0
        public override void BuildPacket()
        {
            this.PushIntoStack(lifeNum);
            this.PushIntoStack((short)powerNum);
            this.PushIntoStack((short)soulNum);
            this.PushIntoStack((short)intelligenceNum);
            this.PushIntoStack((short)isPractice);
            this.PushIntoStack(storyTaskArray.Length);
            foreach (var task in storyTaskArray)
            {
                int collectNum = TrumpHelper.GetUserItemNum(ContextUser.UserID, task.TargetItemID);
                iscomplete = IsComplete(ContextUser, task);
                PlotInfo plotInfo = new ConfigCacheSet<PlotInfo>().FindKey(task.PlotID);
                ItemBaseInfo itemInfo = new ConfigCacheSet<ItemBaseInfo>().FindKey(task.TargetItemID);
                DataStruct dsItem = new DataStruct();
                dsItem.PushIntoStack(task.TaskID);
                dsItem.PushIntoStack(task.TaskName.ToNotNullString());
                dsItem.PushIntoStack(task.TaskDescp.ToNotNullString());
                dsItem.PushIntoStack(plotInfo == null ? 0 : plotInfo.CityID);
                dsItem.PushIntoStack(task.PlotID);
                dsItem.PushIntoStack(task.TargetItemID);
                dsItem.PushIntoStack(itemInfo == null ? string.Empty : itemInfo.ItemName.ToNotNullString());
                dsItem.PushIntoStack(itemInfo == null ? string.Empty : itemInfo.HeadID.ToNotNullString());
                dsItem.PushIntoStack(collectNum);
                dsItem.PushIntoStack(task.TargetItemNum);
                dsItem.PushIntoStack((short)iscomplete);

                this.PushIntoStack(dsItem);
            }

        }
Beispiel #3
0
        public override void BuildPacket()
        {
            PushIntoStack(firstName.ToNotNullString());
            this.PushIntoStack((short)postType);
            this.PushIntoStack((short)isApply);
            this.PushIntoStack(fightList.Count);
            foreach (var fight in fightList)
            {
                CityInfo cityInfo = new ConfigCacheSet<CityInfo>().FindKey(fight.CityID);
                DataStruct dsItem = new DataStruct();
                dsItem.PushIntoStack(fight.CityID);
                dsItem.PushIntoStack(cityInfo == null ? string.Empty : cityInfo.CityName.ToNotNullString());
                dsItem.PushIntoStack(fight.CityHead.ToNotNullString());
                dsItem.PushIntoStack((short)fight.GuildLv);
                dsItem.PushIntoStack(fight.SkillNum);
                this.PushIntoStack(dsItem);
            }
            this.PushIntoStack(currCityName.ToNotNullString());
            this.PushIntoStack(rewardDesc.ToNotNullString());
            this.PushIntoStack(guildName.ToNotNullString());
            this.PushIntoStack(endData);
            this.PushIntoStack((short)isChampion);


        }
Beispiel #4
0
        public override void BuildPacket()
        {
            PushIntoStack(moreTeam.MorePlot.PlotID);
            PushIntoStack(moreTeam.MorePlot.PlotName.ToNotNullString());
            PushIntoStack(moreTeam.UserList.Count);
            PushIntoStack(PlotTeamCombat.TeamMaxPeople);
            PushIntoStack(moreTeam.MorePlot.ItemId);
            PushIntoStack(moreTeam.MorePlot.ItemName.ToNotNullString());
            PushIntoStack(moreTeam.MorePlot.ItemNum);
            PushIntoStack(moreTeam.MorePlot.ExpNum);
            PushIntoStack(moreTeam.TeamUser != null && moreTeam.TeamUser.UserId.ToNotNullString().Equals(Uid) ? 1 : 0);
            PushIntoStack(moreTeam.Status);

            PushIntoStack(moreTeam.UserList.Count);
            foreach (var teamUser in moreTeam.UserList)
            {
                var gameUser = new GameDataCacheSet<GameUser>().FindKey(teamUser.UserId);
                UserGeneral general = UserGeneral.GetMainGeneral(teamUser.UserId);
                CareerInfo careerInfo = null;
                if (general != null)
                {
                    careerInfo = new ConfigCacheSet<CareerInfo>().FindKey(general.CareerID);
                }

                DataStruct dsItem = new DataStruct();
                dsItem.PushIntoStack(teamUser.UserId);
                dsItem.PushIntoStack(teamUser.NickName.ToNotNullString());
                dsItem.PushIntoStack(careerInfo == null ? 0 : (int)careerInfo.CareerID);
                dsItem.PushIntoStack(careerInfo == null ? string.Empty : careerInfo.CareerName.ToNotNullString());
                dsItem.PushIntoStack(gameUser == null ? (short)0 : gameUser.UserLv);
                PushIntoStack(dsItem);
            }
        }
Beispiel #5
0
 public override void BuildPacket()
 {
     PushIntoStack(plotInfo.PlotName.ToNotNullString());
     PushIntoStack(plotInfo.BgScene.ToNotNullString());
     PushIntoStack(plotInfo.FgScene.ToNotNullString());
     PushIntoStack(npcList.Count);
     foreach (PlotNPCInfo item in npcList)
     {
         DataStruct ds = new DataStruct();
         ds.PushIntoStack(item.PlotNpcID);
         ds.PushIntoStack(item.NpcSeqNo);
         ds.PushIntoStack(item.NpcName.ToNotNullString());
         ds.PushIntoStack(item.HeadID.ToNotNullString());
         ds.PushIntoStack(item.NpcTip.ToNotNullString());
         ds.PushIntoStack(item.PointX);
         ds.PushIntoStack(item.PointY);
         bool isPlayStory = false;
         var userPlot = UserPlotHelper.GetUserPlotInfo(ContextUser.UserID, plotID);
         if (userPlot == null || userPlot.PlotStatus != PlotStatus.Completed)
         {
             isPlayStory = true;
         }
         ds.PushIntoStack(isPlayStory ? item.PreStoryCode.ToNotNullString() : string.Empty);
         ds.PushIntoStack(isPlayStory ? item.AftStoryCode.ToNotNullString() : string.Empty);
         PushIntoStack(ds);
     }
     PushIntoStack(_isOverCombat ? (short)1 : (short)0);
     PushIntoStack(_plotNum);
 }
Beispiel #6
0
        public override void BuildPacket()
        {
            this.PushIntoStack(medicineArray.Length);
            foreach (string item in medicineArray)
            {
                short mType = (short)medicineType;
                string[] mArray = item.Replace("{", "").Replace("}", "").Split('=');
                short medicineLv = 0;
                int useGold = 0;
                List<ItemBaseInfo> itemInfoArray = new List<ItemBaseInfo>();
                if (mArray.Length > 0)
                {
                    string q = mArray[0];
                    string b = mArray[1];
                    medicineLv = q.ToShort();
                    useGold = b.ToShort();
                    itemInfoArray = new ConfigCacheSet<ItemBaseInfo>().FindAll(u => u.MedicineLv.Equals(medicineLv) && u.MedicineType.Equals(mType) && u.ItemType == ItemType.YaoJi);
                }
                DataStruct dsItem = new DataStruct();
                dsItem.PushIntoStack(itemInfoArray.Count == 0 ? 0 : itemInfoArray[0].ItemID);
                dsItem.PushIntoStack(itemInfoArray.Count == 0 ? string.Empty : itemInfoArray[0].ItemName.ToNotNullString());
                dsItem.PushIntoStack(medicineLv);
                dsItem.PushIntoStack(itemInfoArray.Count == 0 ? string.Empty : itemInfoArray[0].HeadID.ToNotNullString());
                dsItem.PushIntoStack(useGold);

                this.PushIntoStack(dsItem);
            }
        }
Beispiel #7
0
        public override void BuildPacket()
        {
            this.PushIntoStack(itemBaseList.Count);
            foreach (ItemBaseInfo itemInfo in itemBaseList)
            {
                DataStruct dsItem = new DataStruct();
                dsItem.PushIntoStack(itemInfo.ItemID);
                dsItem.PushIntoStack(itemInfo.ItemName.ToNotNullString());
                dsItem.PushIntoStack(itemInfo.HeadID.ToNotNullString());
                dsItem.PushIntoStack(itemInfo.ItemDesc.ToNotNullString());
                dsItem.PushIntoStack(itemInfo.ItemType.ToShort());
                dsItem.PushIntoStack(itemInfo.EquParts.ToShort());
                dsItem.PushIntoStack(itemInfo.QualityType.ToShort());
                dsItem.PushIntoStack(itemInfo.DemandLv.ToShort());

                string[] careerList = itemInfo.CareerRange.Split(new char[] { ',' });
                dsItem.PushIntoStack(careerList.Length);
                foreach (string CareerID in careerList)
                {
                    CareerInfo careerInfo = new ConfigCacheSet<CareerInfo>().FindKey(CareerID.ToInt());
                    DataStruct dsItem1 = new DataStruct();
                    dsItem1.PushIntoStack(careerInfo != null ? careerInfo.CareerID.ToInt() : (int)0);
                    dsItem1.PushIntoStack(careerInfo != null ? careerInfo.CareerName.ToNotNullString() : string.Empty);

                    dsItem.PushIntoStack(dsItem1);
                }

                var equList = new ConfigCacheSet<ItemEquAttrInfo>().FindAll(m => m.ItemID == itemInfo.ItemID);
                dsItem.PushIntoStack(equList.Count);
                foreach (ItemEquAttrInfo equ in equList)
                {
                    DataStruct dsItem1 = new DataStruct();
                    dsItem1.PushIntoStack(equ.AttributeID.ToInt());
                    dsItem1.PushIntoStack(equ.BaseNum);
                    dsItem1.PushIntoStack(equ.IncreaseNum);

                    dsItem.PushIntoStack(dsItem1);
                }

                dsItem.PushIntoStack(itemInfo.MedicineType);
                dsItem.PushIntoStack(itemInfo.MedicineLv);
                dsItem.PushIntoStack(itemInfo.MedicineNum);
                dsItem.PushIntoStack(itemInfo.PropType);
                dsItem.PushIntoStack(itemInfo.EffectNum.ToNotNullString());

                var itemSynthesisList = new ConfigCacheSet<ItemSynthesisInfo>().FindAll(m => m.ItemID == itemInfo.ItemID);
                dsItem.PushIntoStack(itemSynthesisList.Count);
                foreach (ItemSynthesisInfo synthesisInfo in itemSynthesisList)
                {
                    DataStruct dsItem1 = new DataStruct();
                    dsItem1.PushIntoStack(synthesisInfo.SynthesisID);
                    dsItem1.PushIntoStack(synthesisInfo.DemandNum);
                    dsItem1.PushIntoStack(synthesisInfo.SynthesisNum);

                    dsItem.PushIntoStack(dsItem1);
                }

                this.PushIntoStack(dsItem);
            }
        }
Beispiel #8
0
        public override void BuildPacket()
        {
            PushIntoStack(_gameActiveList.Length);
            foreach (GameActive gameActive in _gameActiveList)
            {
                DateTime enableTime = DateTime.MinValue;
                DateTime endTime = DateTime.MinValue;
                short isEnable = 0;
                RefEnableTime(gameActive, ref enableTime, ref endTime, ref isEnable);

                DataStruct dsItem = new DataStruct();
                dsItem.PushIntoStack(gameActive.ActiveId);
                dsItem.PushIntoStack(gameActive.ActiveName.ToNotNullString());
                dsItem.PushIntoStack(gameActive.ActiveType.ToShort());
                dsItem.PushIntoStack(enableTime.ToString("HH:mm").ToNotNullString());
                dsItem.PushIntoStack(endTime.ToString("HH:mm").ToNotNullString());
                dsItem.PushIntoStack(isEnable);
                dsItem.PushIntoStack(gameActive.BossLv);
                dsItem.PushIntoStack(gameActive.HeadID.ToNotNullString());
                dsItem.PushIntoStack(gameActive.Descption.ToNotNullString());
                dsItem.PushIntoStack(gameActive.ActiveStyle);
                dsItem.PushIntoStack(!string.IsNullOrEmpty(ContextUser.MercenariesID)
                                         ? ContextUser.MercenariesID
                                         : string.Empty);
                PushIntoStack(dsItem);
            }

        }
Beispiel #9
0
 public override void BuildPacket()
 {
     PushIntoStack(worshipLv);
     PushIntoStack(itemName.ToNotNullString());
     PushIntoStack(worshipInfo == null ? 0 : worshipInfo.ItemNum);
     PushIntoStack(worshipInfo == null ? 0 : worshipInfo.GameCoin);
     PushIntoStack(worshipInfo == null ? 0 : worshipInfo.ObtainNum);
     PushIntoStack(TrumpHelper.IsUpWorshLv(ContextUser) ? (short)1 : (short)0);
     PushIntoStack(worshipInfoInfoArray.Length);
     int propertycount = 0;
     foreach (var item in worshipInfoInfoArray)
     {
         short isFull = 0;
         GeneralProperty property = GetPropertyType(ContextUser.UserID, propertycount);
         if (property != null && property.AbilityLv >= TrumpPropertyInfo.MaxTrumpPropertyLv)
         {
             isFull = 1;
         }
         DataStruct dsItem = new DataStruct();
         dsItem.PushIntoStack(property == null ? 0 : (int)property.AbilityType);
         dsItem.PushIntoStack(property == null ? (short)0 : (short)property.AbilityLv);
         dsItem.PushIntoStack(totalNum > propertycount ? (short)1 : (short)0);
         dsItem.PushIntoStack(worshipLv >= item.WorshipLv ? (short)1 : (short)0);
         dsItem.PushIntoStack(isFull);
         PushIntoStack(dsItem);
         propertycount++;
     }
     this.PushIntoStack((short)isItem);
     this.PushIntoStack((short)isCoin);
     this.PushIntoStack((short)isObtain);
     PushIntoStack(successNum.ToNotNullString());
 }
Beispiel #10
0
 public override void BuildPacket()
 {
     this.PushIntoStack(userGeneral == null ? string.Empty : userGeneral.GeneralName.ToNotNullString());
     this.PushIntoStack(userGeneral == null ? string.Empty : userGeneral.HeadID.ToNotNullString());
     this.PushIntoStack(userGeneral == null ? (short)0 : userGeneral.FeelLv);
     this.PushIntoStack(userGeneral == null ? 0 : userGeneral.FeelExperience);
     this.PushIntoStack(upExperience);
     this.PushIntoStack(giftName.ToNotNullString());
     this.PushIntoStack(userGeneral == null ? (short)0 : userGeneral.SaturationNum);
     this.PushIntoStack(goldNum);
     this.PushIntoStack(skillName.ToNotNullString());
     this.PushIntoStack(demandLv);
     this.PushIntoStack(isLearn);
     this.PushIntoStack(skillDesc.ToNotNullString());
     this.PushIntoStack(isSaturation);
     this.PushIntoStack(propertyList.Count);
     foreach (var item in propertyList)
     {
         int upNum = GiftHelper.FeelUpPropertyNum(ContextUser.UserID, generalID, item.AbilityType);
         DataStruct dsItem = new DataStruct();
         dsItem.PushIntoStack((int)item.AbilityType);
         dsItem.PushIntoStack((int)item.AbilityValue);
         dsItem.PushIntoStack(upNum);
         this.PushIntoStack(dsItem);
     }
 }
Beispiel #11
0
 public override void BuildPacket()
 {
     PushIntoStack(pageCount);
     PushIntoStack(userRankArray.Count);
     foreach (UserRank userInfo in userRankArray)
     {
         if (rankType == RankType.UserLv)
         {
             baseNum = userInfo.UserLv;
         }
         else if (rankType == RankType.Obtion)
         {
             baseNum = userInfo.ObtainNum;
         }
         else if (rankType == RankType.GameCoin)
         {
             baseNum = userInfo.GameCoin;
         }
         else if (rankType == RankType.ZhanLi)
         {
             baseNum = userInfo.TotalCombatNum;
         }
         DataStruct dsItem = new DataStruct();
         dsItem.PushIntoStack(userInfo.RankId);
         dsItem.PushIntoStack(userInfo.UserID.ToNotNullString());
         dsItem.PushIntoStack(userInfo.NickName.ToNotNullString());
         dsItem.PushIntoStack(baseNum);
         dsItem.PushIntoStack((short)userInfo.CountryID);
         dsItem.PushIntoStack((short)userInfo.VipLv);
         PushIntoStack(dsItem);
     }
     PushIntoStack(currRankID);
 }
Beispiel #12
0
        public override void BuildPacket()
        {

            PushIntoStack(generalInfo == null ? string.Empty : generalInfo.GeneralName.ToNotNullString());
            PushIntoStack(generalMedicineArray.Count);
            foreach (GeneralMedicine item in generalMedicineArray)
            {
                ItemBaseInfo itemInfo = new ShareCacheStruct<ItemBaseInfo>().FindKey(item.MedicineID);

                int itemcount = TrumpHelper.GetUserItemNum(item.UserID, item.MedicineID);
                if (itemcount > 0)
                {
                    gridStatus = 1;
                }
                else
                {
                    gridStatus = 2;
                }

                DataStruct ds = new DataStruct();
                ds.PushIntoStack(item.MedicineID);
                ds.PushIntoStack(itemInfo == null ? string.Empty : itemInfo.HeadID.ToNotNullString());
                ds.PushIntoStack(itemInfo == null ? LanguageManager.GetLang().shortInt : itemInfo.MedicineLv);
                ds.PushIntoStack(itemInfo == null ? LanguageManager.GetLang().shortInt : itemInfo.MedicineType);
                ds.PushIntoStack((short)GetGeneralMedicine(item));
                ds.PushIntoStack(gridStatus);
                ds.PushIntoStack(itemInfo == null ? string.Empty : itemInfo.ItemName.ToNotNullString());
                PushIntoStack(ds);
            }
            this.PushIntoStack(powerNum);
            this.PushIntoStack(soulNum);
            this.PushIntoStack(intellectNum);
        }
Beispiel #13
0
 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());
 }
Beispiel #14
0
 public override void BuildPacket()
 {
     PushIntoStack(pageCount);
     PushIntoStack(_itemCount);
     PushIntoStack(_gridNum);
     PushIntoStack(ContextUser.GameCoin);
     PushIntoStack(ContextUser.GoldNum);
     PushIntoStack(mlist.Count);
     foreach (UserItemInfo item in mlist)
     {
         DataStruct ds = new DataStruct();
         ItemBaseInfo itemInfo = new ConfigCacheSet<ItemBaseInfo>().FindKey(item.ItemID);
         ds.PushIntoStack(item.UserItemID.ToNotNullString());
         ds.PushIntoStack(itemInfo == null ? 0 : itemInfo.ItemID);
         ds.PushIntoStack(itemInfo == null ? LanguageManager.GetLang().shortInt : (short)itemInfo.ItemType);
         ds.PushIntoStack(item.Num);
         ds.PushIntoStack(itemInfo == null ? string.Empty : itemInfo.HeadID.ToNotNullString());
         ds.PushIntoStack(itemInfo == null ? LanguageManager.GetLang().shortInt : itemInfo.PropType);
         ds.PushIntoStack(itemInfo == null ? string.Empty : itemInfo.ItemName.ToNotNullString());
         ds.PushIntoStack(itemInfo == null ? string.Empty : itemInfo.ItemDesc.ToNotNullString());
         ds.PushIntoStack(itemInfo == null ? 0 : itemInfo.SalePrice);
         ds.PushIntoStack(itemInfo == null ? 0 : itemInfo.IsUse ? 1 : 0);
         ds.PushIntoStack(itemInfo == null ? 0 : itemInfo.IsCostly ? 1 : 0);
         ds.PushIntoStack(itemInfo == null ? string.Empty : itemInfo.MaxHeadID);
         ds.PushIntoStack(itemInfo == null ? 0 : itemInfo.PropType != 15 ? 0 : ItemUseHelper.ItemNum(ContextUser.UserID, itemInfo.EffectNum) <= 0 ? 0 : 1);
         PushIntoStack(ds);
     }
 }
Beispiel #15
0
        public override void BuildPacket()
        {
            PushIntoStack(codeTime);
            PushIntoStack(ContextUser.GameCoin);
            PushIntoStack(ContextUser.GoldNum);
            PushIntoStack(mysteryShopsList.Count);
            foreach (MysteryShops shops in mysteryShopsList)
            {
                ItemBaseInfo itemInfo = new ConfigCacheSet<ItemBaseInfo>().FindKey(shops.ItemID);
                int mallPrice = 0;
                if (itemInfo != null)
                {
                    mallPrice = itemInfo.MysteryPrice;
                }
                DataStruct dsItem = new DataStruct();
                dsItem.PushIntoStack(shops.ItemID);
                dsItem.PushIntoStack(itemInfo == null ? string.Empty : itemInfo.ItemName.ToNotNullString());
                dsItem.PushIntoStack(itemInfo == null ? LanguageManager.GetLang().shortInt : (short)itemInfo.QualityType);
                dsItem.PushIntoStack(itemInfo == null ? string.Empty : itemInfo.HeadID.ToNotNullString());
                dsItem.PushIntoStack(mallPrice);
                dsItem.PushIntoStack(shops.ItemNum);
                dsItem.PushIntoStack(shops.BuyNum == 0 ? 1 : 2);

                PushIntoStack(dsItem);
            }
        }
Beispiel #16
0
        public override void BuildPacket()
        {
            this.PushIntoStack(TaskHelper.DailyEveryMaxNum);
            this.PushIntoStack(currNum);
            this.PushIntoStack(userTaskList.Count);
            foreach (UserTask userTask in userTaskList)
            {
                DailyTaskInfo dtaskInfo = new ConfigCacheSet<DailyTaskInfo>().FindKey(userTask.TaskID);
                var userItem = userTask.GetDailyItem(userLv);
                ItemBaseInfo itemInfo = new ConfigCacheSet<ItemBaseInfo>().FindKey(userItem != null ? userItem.ItemID : 0);

                DataStruct dsItem = new DataStruct();
                dsItem.PushIntoStack(userTask.TaskID);
                dsItem.PushIntoStack(dtaskInfo.TaskName.ToNotNullString());
                dsItem.PushIntoStack((short)userTask.TaskState);
                dsItem.PushIntoStack((short)userTask.TaskType);
                dsItem.PushIntoStack((short)userTask.TaskStar);
                dsItem.PushIntoStack(dtaskInfo.TaskDescp.ToNotNullString());
                dsItem.PushIntoStack(dtaskInfo.TaskTarget);
                dsItem.PushIntoStack((int)userTask.TaskStar);
                dsItem.PushIntoStack(userTask.TaskTargetNum.ToInt());
                dsItem.PushIntoStack(userTask.GetDailyExpNum(userLv));
                dsItem.PushIntoStack(itemInfo != null ? itemInfo.ItemName.ToNotNullString() : string.Empty);
                dsItem.PushIntoStack(userItem != null ? userItem.Num : 0);

                this.PushIntoStack(dsItem);
            }
        }
Beispiel #17
0
        public override void BuildPacket()
        {
            this.PushIntoStack(pageCount);
            this.PushIntoStack(userItemArray.Count);
            foreach (UserItemInfo item in userItemArray)
            {
                ItemBaseInfo itemInfo = new ConfigCacheSet<ItemBaseInfo>().FindKey(item.ItemID);
                DataStruct dsItem = new DataStruct();
                int mallPrice = 0;
                if (itemInfo != null && itemInfo.ItemType == ItemType.ZhuangBei)
                {
                    mallPrice = UserHelper.StrongEquPayPrice(Uid, item.UserItemID);
                }
                else if (itemInfo != null)
                {
                    mallPrice = ((itemInfo.SalePrice) * item.Num / 4);
                }

                dsItem.PushIntoStack(item.UserItemID.ToNotNullString());
                dsItem.PushIntoStack(itemInfo == null ? string.Empty : itemInfo.ItemName.ToNotNullString());
                dsItem.PushIntoStack(itemInfo == null ? LanguageManager.GetLang().shortInt : (short)itemInfo.QualityType);
                dsItem.PushIntoStack(itemInfo == null ? string.Empty : itemInfo.HeadID.ToNotNullString());
                dsItem.PushIntoStack(mallPrice);

                PushIntoStack(dsItem);
            }
            PushIntoStack(ContextUser.GameCoin);
            PushIntoStack(ContextUser.GoldNum);
        }
Beispiel #18
0
        public override void BuildPacket()
        {
            PushIntoStack(ContextUser.GoldNum);
            PushIntoStack(ContextUser.GameCoin);
            PushIntoStack(freeNum);
            PushIntoStack(isSale);
            PushIntoStack(issTelegrams);
            PushIntoStack(grayCrystalArray.Count);
            foreach (GrayCrystal crystal in grayCrystalArray)
            {
                CrystalInfo crystalInfo = new ConfigCacheSet<CrystalInfo>().FindKey(crystal.CrystalID) ?? new CrystalInfo();
                DataStruct dsItem = new DataStruct();
                dsItem.PushIntoStack(crystal.UserCrystalID);
                dsItem.PushIntoStack(crystalInfo.CrystalID);
                dsItem.PushIntoStack(crystalInfo.CrystalName.ToNotNullString());
                dsItem.PushIntoStack(crystalInfo.HeadID.ToNotNullString());
                dsItem.PushIntoStack((short)crystalInfo.CrystalQuality);
                PushIntoStack(dsItem);
            }
            PushIntoStack(userLightArray.Count);
            foreach (UserLight light in userLightArray)
            {
                ProbabilityInfo probabilityInfo = new ConfigCacheSet<ProbabilityInfo>().FindKey(light.HuntingID);
                DataStruct dsItem = new DataStruct();
                dsItem.PushIntoStack(light.HuntingID);
                dsItem.PushIntoStack(probabilityInfo == null ? 0 : probabilityInfo.Price);
                dsItem.PushIntoStack(light.IsLight);
                PushIntoStack(dsItem);
            }
            this.PushIntoStack(prompt.ToNotNullString());

        }
Beispiel #19
0
 public override void BuildPacket()
 {
     PushIntoStack(trumpInfoArray.Length);
     foreach (var trumpInfo in trumpInfoArray)
     {
         isOpen = trumpLv >= trumpInfo.TrumpLv ? 1 : 0;
         SkillInfo skillInfo = TrumpHelper.GetSkillInfo(ContextUser.UserID, skillcount);
         if (skillInfo != null && skillInfo.AbilityLv >= GameConfigSet.MaxSkillLv)
         {
             isFull = 1;
         }
         else
         {
             isFull = 0;
         }
         AbilityInfo abilityInfo = TrumpHelper.GetAbilityInfo(ContextUser.UserID, skillcount);
         DataStruct dsItem = new DataStruct();
         dsItem.PushIntoStack(abilityInfo == null ? (short)0 : (short)abilityInfo.AbilityID);
         dsItem.PushIntoStack(abilityInfo == null ? string.Empty : abilityInfo.AbilityName.ToNotNullString());
         dsItem.PushIntoStack(abilityInfo == null ? string.Empty : abilityInfo.HeadID.ToNotNullString());
         dsItem.PushIntoStack(skillInfo == null ? (short)0 : skillInfo.AbilityLv);
         dsItem.PushIntoStack(abilityInfo == null ? string.Empty : abilityInfo.AbilityDesc.ToNotNullString());
         dsItem.PushIntoStack((short)isOpen);
         dsItem.PushIntoStack(trumpInfo.TrumpLv);
         dsItem.PushIntoStack(isFull);
         PushIntoStack(dsItem);
         skillcount++;
     }
 }
Beispiel #20
0
        public override void BuildPacket()
        {
            PushIntoStack(bossPlotID);
            PushIntoStack(_guild == null ? (short)0 : _guild.GuildBossInfo.BossLv);
            PushIntoStack(_guild == null ? 0 : _guild.ColdTime);
            PushIntoStack(_regNum);
            PushIntoStack(_guild == null ? (short)0 : _guild.CombatStatus.ToShort());
            PushIntoStack((_inspirePercent * 100).ToInt());
            PushIntoStack(_reLiveNum);


            PushIntoStack(_bossUserList.Count);
            foreach (BossUser bossUser in _bossUserList)
            {
                DataStruct dsItem = new DataStruct();
                dsItem.PushIntoStack(bossUser.NickName.ToNotNullString());
                UserGeneral userGeneral = UserGeneral.GetMainGeneral(bossUser.UserId);
                dsItem.PushIntoStack(userGeneral == null ? string.Empty : userGeneral.HeadID.ToNotNullString());
                dsItem.PushIntoStack(bossUser.IsRelive ? 0 : 1);
                dsItem.PushIntoStack(bossUser.CodeTime);
                dsItem.PushIntoStack(NoviceHelper.IsWingFestivalInfo(bossUser.UserId) ? (short)1 : (short)0);
                dsItem.PushIntoStack(0);
                PushIntoStack(dsItem);
            }
            PushIntoStack((_reliveInspirePercent * 100).ToInt());
        }
Beispiel #21
0
        public override void BuildPacket()
        {
            PushIntoStack(_currVersion);
            PushIntoStack(_chatArray.Count);

            foreach (var chatMessage in _chatArray)
            {
                var chat = chatMessage as ChatData ?? new ChatData();
                UserFriends friends = new ShareCacheStruct<UserFriends>().FindKey(ContextUser.UserID, chat.FromUserID);
                int isFriend = friends != null && friends.FriendType == FriendType.Friend ? 1 : 2;
                DataStruct dsItem = new DataStruct();
                dsItem.PushIntoStack(chat.FromUserID.ToNotNullString());
                dsItem.PushIntoStack(chat.FromUserName.ToNotNullString());
                dsItem.PushIntoStack(chat.Content.ToNotNullString());
                dsItem.PushIntoStack(FormatDate(chat.SendDate));
                dsItem.PushIntoStack((short)chat.ChatType);
                dsItem.PushIntoStack(chat.ToUserID.ToNotNullString());
                dsItem.PushIntoStack(chat.ToUserName.ToNotNullString());
                dsItem.PushIntoStack(isFriend);
                dsItem.PushIntoStack(chat.FromUserVip);
                dsItem.PushIntoStack(chat.ToUserVip);
                PushIntoStack(dsItem);
            }
            PushIntoStack(_charItemNum);
        }
Beispiel #22
0
 public override void BuildPacket()
 {
     this.PushIntoStack(currNum);
     this.PushIntoStack(unopened);
     this.PushIntoStack(userGeneralArray.Count);
     foreach (var general in userGeneralArray)
     {
         int worseNum = 0;
         int demandNum = 0;
         short isRecruit = GeneralHelper.IsGeneralRecruit(general.UserID, general.GeneralID, out worseNum, out demandNum);
         DataStruct dsItem = new DataStruct();
         dsItem.PushIntoStack(general.GeneralID);
         dsItem.PushIntoStack(general.GeneralName.ToNotNullString());
         dsItem.PushIntoStack(general.HeadID.ToNotNullString());
         dsItem.PushIntoStack(general.GeneralLv);
         dsItem.PushIntoStack((short)general.GeneralQuality);
         dsItem.PushIntoStack(general.AtmanNum);
         dsItem.PushIntoStack(worseNum);
         dsItem.PushIntoStack((short)isRecruit);
         dsItem.PushIntoStack(general.IsBattle ? 1 : 0);
         dsItem.PushIntoStack(demandNum);
         this.PushIntoStack(dsItem);
     }
     PushIntoStack(_isEnabled);
 }
Beispiel #23
0
        public override void BuildPacket()
        {
            PushIntoStack(pageCount);
            PushIntoStack(ContextUser.ExpNum);
            PushIntoStack(queueID);
            PushIntoStack(coldTime);
            PushIntoStack(userMagicArray.Count);
            foreach (UserMagic magic in userMagicArray)
            {
                magicInfo = new ConfigCacheSet<MagicInfo>().FindKey(magic.MagicID);
                if (IsUp(magic.MagicID, magic.MagicLv, ContextUser))
                {
                    isUp = 1;
                }
                else
                {
                    isUp = 0;
                }

                DataStruct ds = new DataStruct();
                ds.PushIntoStack(magic.MagicID);
                ds.PushIntoStack((int)magic.MagicType);
                ds.PushIntoStack(magicInfo == null ? string.Empty : magicInfo.MagicName.ToNotNullString());
                ds.PushIntoStack(magicInfo == null ? string.Empty : magicInfo.HeadID.ToNotNullString());
                ds.PushIntoStack((short)magic.MagicLv);
                ds.PushIntoStack(isUp);
                ds.PushIntoStack(magic.IsOpen ? 1 : 0);
                ds.PushIntoStack(magic.IsLv);
                PushIntoStack(ds);
            }
        }
Beispiel #24
0
        public override void BuildPacket()
        {
            PushIntoStack(pageCount);
            PushIntoStack(memberArray.Count);
            foreach (GuildMember member in memberArray)
            {
                GameUser gameUser = UserCacheGlobal.CheckLoadUser(member.UserID);
                int isOnline = 0;
                if (gameUser != null && gameUser.IsOnline)
                {
                    isOnline = 1;
                }
                else
                {
                    isOnline = 2;
                }
                DataStruct dsItem = new DataStruct();
                dsItem.PushIntoStack(member.UserID);
                dsItem.PushIntoStack(gameUser == null ? string.Empty : gameUser.NickName.ToNotNullString());
                dsItem.PushIntoStack(gameUser == null ? LanguageManager.GetLang().shortInt : gameUser.UserLv);
                dsItem.PushIntoStack((short)member.PostType);
                dsItem.PushIntoStack(gameUser == null ? 0 : gameUser.RankID);
                dsItem.PushIntoStack(member.Contribution);
                dsItem.PushIntoStack(member.TotalContribution);
                dsItem.PushIntoStack(gameUser == null ? string.Empty : gameUser.LoginTime.ToString("t"));
                dsItem.PushIntoStack(isOnline);

                PushIntoStack(dsItem);
            }
        }
Beispiel #25
0
 public override void BuildPacket()
 {
     PushIntoStack(_pageCount);
     PushIntoStack(ContextUser.GameCoin);
     PushIntoStack(ContextUser.GoldNum);
     PushIntoStack(_mallItemsInfoArray.Count);
     foreach (MallItemsInfo mallItems in _mallItemsInfoArray)
     {
         ItemBaseInfo itemInfo = new ConfigCacheSet<ItemBaseInfo>().FindKey(mallItems.ItemID);
         int mallPrice = 0;
         int specilPrice = 0;
         if (itemInfo != null)
         {
             mallPrice = mallItems.Price;
             if (mallItems.MallType == ShopType.Props || mallItems.MallType == ShopType.PresendBox)
             {
                 mallPrice = (FestivalHelper.StoreDiscount() * mallPrice).ToInt();
             }
             specilPrice = mallItems.SpecialPrice;
         }
         DataStruct dsItem = new DataStruct();
         dsItem.PushIntoStack(mallItems.ItemID);
         dsItem.PushIntoStack(itemInfo == null ? string.Empty : itemInfo.ItemName.ToNotNullString());
         dsItem.PushIntoStack(itemInfo == null ? string.Empty : itemInfo.HeadID.ToNotNullString());
         dsItem.PushIntoStack(itemInfo == null ? string.Empty : itemInfo.MaxHeadID.ToNotNullString());
         dsItem.PushIntoStack(itemInfo == null ? string.Empty : itemInfo.ItemDesc.ToNotNullString());
         dsItem.PushIntoStack(itemInfo == null ? LanguageManager.GetLang().shortInt : (short)itemInfo.QualityType);
         dsItem.PushIntoStack(mallPrice);
         dsItem.PushIntoStack(specilPrice);
         dsItem.PushIntoStack(mallItems.SeqNO);
         dsItem.PushIntoStack((short)_commandType);
         PushIntoStack(dsItem);
     }
     PushIntoStack(ContextUser.ObtainNum);
 }
Beispiel #26
0
        public override void BuildPacket()
        {
            PushIntoStack(_chargePacksArray.Count);
            foreach (RechargePacks packs in _chargePacksArray)
            {
                short _isRevice = 0;
                short _isShow = 0;
                List<PackageReceive> receivesArray = new GameDataCacheSet<PackageReceive>().FindAll(ContextUser.UserID, u => u.IsReceive == false && u.PacksID == packs.PacksID);
                if (receivesArray.Count == 0)
                {
                    _isRevice = 2;
                }
                else
                {
                    _isRevice = 1;
                }
                SaveLog(receivesArray.Count + ContextUser.UserID + packs.PacksID);

                DataStruct dsItem = new DataStruct();
                dsItem.PushIntoStack(packs.PacksID);
                dsItem.PushIntoStack(packs.PacksName);
                dsItem.PushIntoStack(_isRevice);
                dsItem.PushIntoStack(_isShow);
                dsItem.PushIntoStack(receivesArray.Count);
                PushIntoStack(dsItem);
            }
        }
Beispiel #27
0
        public override void BuildPacket()
        {
            PushIntoStack(_pageCount);
            PushIntoStack(_petRunPools.Count);
            foreach (var item in _petRunPools)
            {
                var user = UserCacheGlobal.LoadOffline(item.UserID) ?? new GameUser();
                string guidName = string.Empty;
                if (!string.IsNullOrEmpty(user.MercenariesID))
                {
                    guidName = (new ShareCacheStruct<UserGuild>().FindKey(user.MercenariesID) ?? new UserGuild()).GuildName;
                }
                string friendName = string.Empty;
                if (!string.IsNullOrEmpty(item.FriendID))
                {
                    friendName = (UserCacheGlobal.LoadOffline(item.FriendID) ?? new GameUser()).NickName;
                }

                DataStruct dsItem = new DataStruct();
                dsItem.PushIntoStack(item.UserID.ToNotNullString());
                dsItem.PushIntoStack(user.NickName.ToNotNullString());
                dsItem.PushIntoStack(user.UserLv);
                dsItem.PushIntoStack(guidName.ToNotNullString());
                dsItem.PushIntoStack(item.ColdTime);
                dsItem.PushIntoStack(item.PetID);
                dsItem.PushIntoStack(friendName.ToNotNullString());
                dsItem.PushIntoStack(item.InterceptGameCoin);
                dsItem.PushIntoStack(item.InterceptObtainNum);

                this.PushIntoStack(dsItem);
            }
        }
Beispiel #28
0
        public override void BuildPacket()
        {
            var cacheSetItemEqu = new ConfigCacheSet<ItemEquAttrInfo>();
            PushIntoStack(_userItemArray.Count);
            foreach (UserItemInfo item in _userItemArray)
            {
                ItemBaseInfo itemInfo = new ConfigCacheSet<ItemBaseInfo>().FindKey(item.ItemID);
                var general = new GameDataCacheSet<UserGeneral>().FindKey(Uid, item.GeneralID);
                var itemEquList = cacheSetItemEqu.FindAll(e => e.ItemID.Equals(item.ItemID));
                DataStruct dsItem = new DataStruct();
                dsItem.PushIntoStack(item.UserItemID.ToNotNullString());
                dsItem.PushIntoStack(itemInfo == null ? string.Empty : itemInfo.ItemName.ToNotNullString());
                dsItem.PushIntoStack(itemInfo == null ? string.Empty : itemInfo.HeadID.ToNotNullString());
                dsItem.PushIntoStack(item.ItemLv);
                dsItem.PushIntoStack(itemInfo == null ? LanguageManager.GetLang().shortInt : (short)itemInfo.QualityType);
                dsItem.PushIntoStack(general != null ? general.GeneralName : string.Empty);
                PushIntoStack(dsItem);
                dsItem.PushIntoStack(itemEquList.Count);
                foreach (var itemEquAttrInfo in itemEquList)
                {
                    DataStruct dsItem1 = new DataStruct();
                    dsItem1.PushIntoStack(itemEquAttrInfo.AttributeID.ToInt());
                    int strengNum = 0;
                    strengNum = MathUtils.Addition(itemEquAttrInfo.BaseNum, (itemEquAttrInfo.IncreaseNum * item.ItemLv), int.MaxValue);
                    //    dsItem1.PushIntoStack(itemEqu.BaseNum);
                    dsItem1.PushIntoStack(strengNum);
                    dsItem.PushIntoStack(dsItem1);
                }

            }
        }
Beispiel #29
0
        public override void BuildPacket()
        {
            this.PushIntoStack(magicList.Count);
            foreach (MagicInfo magicInfo in magicList)
            {
                DataStruct dsItem = new DataStruct();
                dsItem.PushIntoStack(magicInfo.MagicID);
                dsItem.PushIntoStack(magicInfo.MagicType.ToInt());
                dsItem.PushIntoStack(magicInfo.MagicName.ToNotNullString());
                dsItem.PushIntoStack(magicInfo.HeadID.ToNotNullString());
                dsItem.PushIntoStack(magicInfo.MagicDesc.ToNotNullString());

                var magicLvList = new ConfigCacheSet<MagicLvInfo>().FindAll(m => m.MagicID == magicInfo.MagicID);
                dsItem.PushIntoStack(magicLvList.Count);
                foreach (MagicLvInfo magicLv in magicLvList)
                {
                    DataStruct dsItem1 = new DataStruct();
                    dsItem1.PushIntoStack(magicLv.MagicLv.ToShort());
                    dsItem1.PushIntoStack(magicLv.ExpNum);
                    dsItem1.PushIntoStack(magicLv.ColdTime);
                    dsItem1.PushIntoStack(magicLv.EscalateMinLv.ToShort());
                    dsItem1.PushIntoStack(magicLv.AbilityType.ToShort());
                    dsItem1.PushIntoStack(magicLv.EffectNum.ToNotNullString());
                    dsItem1.PushIntoStack(magicLv.GridMaxNum);

                    dsItem.PushIntoStack(dsItem1);
                }

                this.PushIntoStack(dsItem);
            }
        }
Beispiel #30
0
        public override void BuildPacket()
        {
            this.PushIntoStack(abilityInfoArray.Count);
            foreach (GuildAbilityInfo abilityInfo in abilityInfoArray)
            {
                var guildAbilityLvInfos = new ConfigCacheSet<GuildAbilityLvInfo>().FindAll(m => m.ID == abilityInfo.ID);
                DataStruct dsItem = new DataStruct();
                dsItem.PushIntoStack(abilityInfo.ID);
                dsItem.PushIntoStack(abilityInfo.IsCityCombat ? (short)1 : (short)0);
                dsItem.PushIntoStack(abilityInfo.AbilityName.ToNotNullString());
                dsItem.PushIntoStack((short)abilityInfo.GuildAbilityType);
                dsItem.PushIntoStack(abilityInfo.AbilityHead.ToNotNullString());
                dsItem.PushIntoStack(abilityInfo.AbilityDesc.ToNotNullString());

                dsItem.PushIntoStack(guildAbilityLvInfos.Count);
                foreach (GuildAbilityLvInfo lvInfo in guildAbilityLvInfos)
                {
                    DataStruct dsItem1 = new DataStruct();
                    dsItem1.PushIntoStack(lvInfo.AbilityLv);
                    dsItem1.PushIntoStack(lvInfo.UpDonateNum);
                    dsItem1.PushIntoStack(lvInfo.EffectNum.ToString().ToNotNullString());
                    dsItem.PushIntoStack(dsItem1);
                }
                this.PushIntoStack(dsItem);
            }
        }
Beispiel #31
0
 /// <summary>
 /// 内部输出Action的值
 /// </summary>
 /// <returns>无</returns>
 protected void InternalWriteAction(IGameResponse response)
 {
     foreach (object obj in arrayList)
     {
         Type type = obj.GetType();
         if (type == typeof(String))
         {
             WriteString(response, Convert.ToString(obj));
         }
         else if (type == typeof(double))
         {
             WriteDouble(response, Convert.ToDouble(obj));
         }
         else if (type == typeof(float))
         {
             WriteFloat(response, Convert.ToSingle(obj));
         }
         else if (type == typeof(Int64))
         {
             WriteLong(response, Convert.ToInt64(obj));
         }
         else if (type == typeof(Int32) || type.IsEnum)
         {
             WriteDWord(response, Convert.ToInt32(obj));
         }
         else if (type == typeof(Int16))
         {
             WriteWord(response, Convert.ToInt16(obj));
         }
         else if (type == typeof(Byte))
         {
             WriteByte(response, Convert.ToByte(obj));
         }
         else if (type == typeof(bool))
         {
             WriteBool(response, Convert.ToBoolean(obj));
         }
         else if (type == typeof(DataStruct))
         {
             DataStruct ds = ((DataStruct)obj);
             ds.WriteActionNum(response);
             ds.InternalWriteAction(response);
         }
         else if (type == typeof(byte[]))
         {
             //By Seamoon已序列化好的内容,直接写入
             var bytes = (byte[])(obj);
             WriteDWord(response, bytes.Length);
             response.Write(bytes);
         }
     }
 }
Beispiel #32
0
 /// <summary>
 /// 输出回返结果
 /// </summary>
 public bool BuildPacket(DataStruct writer)
 {
     if (_pyContext != null)
     {
         try
         {
             return(_pyContext.Scope.buildPacket(writer, _urlParam, _actionResult));
         }
         catch (Exception ex)
         {
             TraceLog.WriteError("Action{0}.BuildPacket method:{1}", _actionId, ex);
         }
     }
     return(false);
 }
 /// <summary>
 /// 增加头部属性
 /// </summary>
 /// <param name="propertyStruct"></param>
 internal void PushHeadProperty(DataStruct propertyStruct)
 {
     _propertyStruct = propertyStruct;
 }
Beispiel #34
0
 /// <summary>
 /// 将数据加到栈尾
 /// </summary>
 /// <param name="obj"></param>
 public void PushIntoStack(DataStruct obj)
 {
     dataStruct.PushIntoStack(obj);
 }
Beispiel #35
0
 /// <summary>
 /// 将数据加到栈尾
 /// </summary>
 /// <param name="obj"></param>
 public void PushIntoStack(DataStruct obj)
 {
     PushIntoStackObj(obj);
 }
Beispiel #36
0
 /// <summary>
 /// 增加头部属性
 /// </summary>
 /// <param name="propertyStruct"></param>
 private void PushHeadProperty(DataStruct propertyStruct)
 {
     dataStruct.PushHeadProperty(propertyStruct);
 }