Example #1
0
        void HandleOrangeCard(Guid managerId, int itemCode, ref int orangeCount, ref int pupleCount, bool hasTask, ref int luckyCoinNumber)
        {
            var item = CacheFactory.ItemsdicCache.GetItem(itemCode);

            if (item != null && item.ItemType == (int)EnumItemType.PlayerCard)
            {
                if (item.PlayerCardLevel == (int)EnumPlayerCardLevel.Orange)
                {
                    orangeCount++;
                    //抽卡得幸运币
                    if (TurntableCore.Instance.IsActivity)
                    {
                        var truntable = new TurntableFrame(managerId);
                        truntable.Save(true);
                        bool isAddSuccess = false;
                        TurntableManagerMgr.AddSystemProduceLuckyCoin(managerId, ref isAddSuccess);
                        if (isAddSuccess)
                        {
                            luckyCoinNumber++;
                        }
                    }
                    if (!hasTask)
                    {
                        //ChatHelper.SendBannerScouting(managerId, managerName, item.ItemCode, item.PlayerKpi);
                    }
                }
                else if (item.PlayerCardLevel == (int)EnumPlayerCardLevel.BlackGold)
                {
                    if (!hasTask)
                    {
                        //ChatHelper.SendBannerScouting(managerId, managerName, item.ItemCode, item.PlayerKpi);
                    }
                }
                else if (item.PlayerCardLevel == (int)EnumPlayerCardLevel.Purple)
                {
                    pupleCount++;
                }
                var player = CacheFactory.PlayersdicCache.GetPlayer(item.LinkId);
                if (player != null)
                {
                    //欧洲之星
                    if (ActivityExThread.Instance.IsActivity(EnumActivityExEffectType.EuropeTheStars, 0, 0))
                    {
                        if (player != null)
                        {
                            if (player.KpiLevel.Trim() == "A")
                            {
                                ActivityExThread.Instance.EuropeTheStars(managerId, EnumActivityExRequire.ScoutingEurope);
                            }
                            else if (player.KpiLevel.Trim() == "A+" || player.KpiLevel.Trim() == "S")
                            {
                                ActivityExThread.Instance.EuropeTheStars(managerId,
                                                                         EnumActivityExRequire.ScoutingHugeEurope);
                            }
                        }
                    }
                    ActivityExThread.Instance.ScoutingCardLevel(managerId, player.KpiLevel.Trim());
                }
            }
        }
Example #2
0
        /// <summary>
        /// 保存
        /// </summary>
        /// <returns></returns>
        public bool Save(DbTransaction trans = null)
        {
            var turntableString = GenerateFightMapString();

            _turntableManagerEntity.DetailsString = turntableString;
            _turntableManagerEntity.UpdateTime    = DateTime.Now;
            if (!TurntableManagerMgr.Update(_turntableManagerEntity, trans))
            {
                return(false);
            }
            return(true);
        }
Example #3
0
        public TurntableFrame(Guid managerId)
        {
            var      frame = TurntableManagerMgr.GetById(managerId);
            DateTime date  = DateTime.Now;

            if (frame == null)
            {
                frame = new TurntableManagerEntity(managerId, 0, CacheFactory.TurntableCache.GiveLuckyCoin, CacheFactory.TurntableCache.DayProduceLuckyCoin, (int)EnumTurntableType.Bronze, new byte[0], "", date, date, date);
                TurntableManagerMgr.Insert(frame);
            }
            if (frame.RefreshDate != date.Date)
            {
                if (TurntableCore.Instance.IsActivity)
                {
                    frame.GiveLuckyCoin       = CacheFactory.TurntableCache.GiveLuckyCoin;
                    frame.DayProduceLuckyCoin = CacheFactory.TurntableCache.DayProduceLuckyCoin;
                    frame.ResetNumber         = "1,0|2,0|3,0";
                    frame.RefreshDate         = date.Date;
                    isUpdate = true;
                }
            }
            _turntableManagerEntity = frame;
            AnalyseTurntable();
        }
Example #4
0
        MessageCode Tran_SaveAttachment(DbTransaction transaction, List <MailInfoEntity> mails, ItemPackageFrame package, NbManagerEntity manager, int coin, int sophicate, int point, int prestige, int bindPoint, int addGoldBar, Guid managerId, int addluckyCoin, int addGameCoin)
        {
            var orderId = mails[0].Idx.ToString();

            foreach (var mail in mails)
            {
                if (!MailInfoMgr.Update(mail, transaction))
                {
                    return(MessageCode.NbUpdateFail);
                }
            }
            if (package != null)
            {
                if (!package.Save(transaction))
                {
                    return(MessageCode.NbUpdateFail);
                }
            }

            if (coin > 0)
            {
                var code = ManagerCore.Instance.AddCoin(manager, coin, EnumCoinChargeSourceType.MailAttachment, orderId, transaction);
                if (code != MessageCode.Success)
                {
                    return(MessageCode.NbUpdateFail);
                }
            }
            if (sophicate > 0)
            {
                int resultSophisticate = manager.Sophisticate;
                if (!NbManagerMgr.AddSophisticate(manager.Idx, sophicate, ref resultSophisticate, transaction))
                {
                    return(MessageCode.NbUpdateFail);
                }
            }
            if (point > 0)
            {
                var code = PayCore.Instance.AddBonus(manager.Account, point, EnumChargeSourceType.MailAttachment,
                                                     orderId, transaction);
                if (code != MessageCode.Success)
                {
                    return(MessageCode.NbUpdateFail);
                }
            }
            if (bindPoint > 0)
            {
                var payUser = PayUserMgr.GetById(manager.Account);
                if (payUser == null)
                {
                    payUser           = new PayUserEntity();
                    payUser.Account   = manager.Account;
                    payUser.BindPoint = bindPoint;
                    payUser.RowTime   = DateTime.Now;
                    payUser.IsNew     = true;
                }
                else
                {
                    payUser.BindPoint += bindPoint;
                }
                if (payUser.IsNew)
                {
                    if (!PayUserMgr.Insert(payUser, transaction))
                    {
                        return(MessageCode.NbUpdateFail);
                    }
                }
                else
                {
                    if (!PayUserMgr.Update(payUser, transaction))
                    {
                        return(MessageCode.NbUpdateFail);
                    }
                }
            }
            if (addGoldBar > 0)
            {
                var goldBarManager = ScoutingGoldbarMgr.GetById(managerId);
                if (goldBarManager == null)
                {
                    goldBarManager = new ScoutingGoldbarEntity(managerId, addGoldBar, 0, 0, 0, DateTime.Now,
                                                               DateTime.Now);
                    if (!ScoutingGoldbarMgr.Insert(goldBarManager, transaction))
                    {
                        return(MessageCode.NbUpdateFail);
                    }
                }
                else
                {
                    goldBarManager.GoldBarNumber = goldBarManager.GoldBarNumber + addGoldBar;
                    if (!ScoutingGoldbarMgr.Update(goldBarManager, transaction))
                    {
                        return(MessageCode.NbUpdateFail);
                    }
                }
                GoldbarRecordEntity record = new GoldbarRecordEntity(0, managerId, true, addGoldBar, (int)EnumCoinChargeSourceType.MailAttachment, DateTime.Now);
                GoldbarRecordMgr.Insert(record);
            }
            if (addluckyCoin > 0)
            {
                if (!TurntableManagerMgr.AddLuckyCoin(managerId, addluckyCoin, transaction))
                {
                    return(MessageCode.NbUpdateFail);
                }
            }
            if (addGameCoin > 0)
            {
                if (!PenaltykickManagerMgr.AddGameCurrency(managerId, addGameCoin, transaction))
                {
                    return(MessageCode.NbUpdateFail);
                }
            }

            return(MessageCode.Success);
        }