コード例 #1
0
        public void HandlerChangeCardData(ChangeShareVo valuess)
        {
            _netSaleList.Clear();
            var heroInfor = playerInfor;
            var turnIndex = Client.Unit.BattleController.Instance.CurrentPlayerIndex;



            if (playerInfor.playerID == PlayerManager.Instance.HostPlayerInfo.playerID)
            {
                if (_isBuyShare == false)
                {
                    MessageTips.Show(GameTipManager.Instance.gameTips.overOuterCardSellShare);
                }
                else
                {
                    MessageTips.Show(GameTipManager.Instance.gameTips.overOuterCardSmallShare);
                    heroInfor.Settlement._smallIntegral += cardData.rankScore;
                }
            }

            for (var k = 0; k < _changeVoList.Count; k++)
            {
                var isAddCard = true;
                var value     = _changeVoList[k];

                if (GameModel.GetInstance.isPlayNet == false)
                {
                    //Console.Error.WriteLine("当前玩家的金币:----:"+value.changeMoney);
                    heroInfor.totalMoney += value.changeMoney;
                }

                value.shareData.shareNum += value.changeNum;
                if (value.shareData.shareNum <= 0)
                {
                    value.shareData.shareNum = 0;
                    isAddCard = false;
                }

                for (var i = heroInfor.shareCardList.Count - 1; i >= 0; i--)
                {
                    var tmpValue = heroInfor.shareCardList[i];

                    if (tmpValue.id == value.shareData.id)
                    {
                        if (_isBuyShare == false)
                        {
                            tmpValue.shareNum = value.shareData.shareNum;
                            if (GameModel.GetInstance.isPlayNet == true)
                            {
                                var tmpsale = new NetSaleCardVo();
                                tmpsale.cardId     = tmpValue.id;
                                tmpsale.cardNumber = Math.Abs(value.changeNum);
                                tmpsale.cardType   = (int)SpecialCardType.sharesChance;
                                _netSaleList.Add(tmpsale);
                            }
                        }
                        else
                        {
                            tmpValue.shareNum += value.shareData.shareNum;

                            heroInfor.PlayerIntegral += cardData.rankScore;
                            heroInfor.Settlement._smallOpportunitiesNum += 1;
                        }

                        if (tmpValue.shareNum <= 0)
                        {
                            if (GameModel.GetInstance.isPlayNet == false)
                            {
                                heroInfor.shareCardList.Remove(tmpValue);
                                heroInfor.totalIncome += value.changeNum * tmpValue.income;
                            }
                        }

                        // 记录卖股票记录
                        if (_isBuyShare == false)
                        {
                            var tmpVo = new SaleRecordVo();
                            tmpVo.title     = tmpValue.title;
                            tmpVo.price     = -tmpValue.payment;
                            tmpVo.number    = value.changeNum;
                            tmpVo.mortage   = -1;
                            tmpVo.saleMoney = -cardData.payment;
                            tmpVo.income    = tmpValue.income;
                            tmpVo.quality   = tmpValue.qualityScore;
                            tmpVo.getMoney  = (cardData.payment - tmpValue.payment) * value.changeNum;
                            playerInfor.saleRecordList.Add(tmpVo);
                            playerInfor.Settlement._saleNums += 1;

                            if (tmpVo.getMoney < 0)
                            {
                                playerInfor.Settlement._smallIntegral += tmpValue.quitScore;
                            }
                        }

                        if (GameModel.GetInstance.isPlayNet == false)
                        {
                            heroInfor.qualityScore += value.changeNum * value.shareData.qualityScore;
                        }

                        if (cardData.qualityScore != 0)
                        {
                            var recordInfor = new InforRecordVo();
                            recordInfor.title = value.shareData.title;
                            recordInfor.num   = value.changeNum * value.shareData.qualityScore;;
                            heroInfor.AddQualityScoreInfor(recordInfor);
                        }

                        isAddCard = false;
                        break;
                    }
                }

                if (isAddCard == true)
                {
                    if (GameModel.GetInstance.isPlayNet == false)
                    {
                        heroInfor.shareCardList.Add(value.shareData);

                        heroInfor.totalIncome  += value.changeNum * value.shareData.income;
                        heroInfor.qualityScore += value.changeNum * value.shareData.qualityScore;
                    }

                    if (cardData.qualityScore != 0)
                    {
                        var recordInfor = new InforRecordVo();
                        recordInfor.title = value.shareData.title;
                        recordInfor.num   = value.changeNum * value.shareData.qualityScore;
                        heroInfor.AddQualityScoreInfor(recordInfor);
                    }
                }
            }


            if (GameModel.GetInstance.isPlayNet == false)
            {
                var battleController = UIControllerManager.Instance.GetController <UIBattleController>();
                if (null != battleController)
                {
                    if (PlayerManager.Instance.HostPlayerInfo.playerID == heroInfor.playerID)
                    {
                        battleController.SetQualityScore((int)heroInfor.qualityScore);
                        battleController.SetTimeScore((int)heroInfor.timeScore);
                        battleController.SetNonLaberIncome((int)heroInfor.totalIncome, (int)heroInfor.MonthPayment);
                        battleController.SetCashFlow((int)heroInfor.totalMoney);
                    }
                    else
                    {
                        battleController.SetPersonInfor(heroInfor, turnIndex);
                    }
                }
            }
        }
コード例 #2
0
        /// <summary>
        /// 卖出固定资产
        /// </summary>
        public void SaleFiexedData()
        {
            _netSaleList.Clear();
            var playerInfor = PlayerManager.Instance.HostPlayerInfo;

            for (var i = 0; i < _saleFixedList.Count; i++)
            {
                var tmpvalue = _saleFixedList[i];
                if (tmpvalue.isSlected == true)
                {
                    for (var k = playerInfor.chanceFixedCardList.Count - 1; k >= 0; k--)
                    {
                        var tmpFixed = playerInfor.chanceFixedCardList[k];
                        if (tmpvalue.id == tmpFixed.id)
                        {
                            var getMoney = tmpvalue.saleMoney * tmpvalue.baseNum + tmpvalue.mortgage;

                            playerInfor.totalMoney   += getMoney;
                            playerInfor.totalIncome  += tmpvalue.income;
                            playerInfor.qualityScore += tmpvalue.quality;
                            playerInfor.chanceFixedCardList.Remove(tmpFixed);

                            if (GameModel.GetInstance.isPlayNet == true)
                            {
                                var saleVo = new NetSaleCardVo();
                                saleVo.cardId     = tmpFixed.id;
                                saleVo.cardNumber = 1;
                                saleVo.cardType   = (int)SpecialCardType.fixedChance;
                                _netSaleList.Add(saleVo);
                            }

                            if (tmpvalue.quality != 0)
                            {
                                var recordInfor = new InforRecordVo();
                                recordInfor.title = cardData.title;
                                recordInfor.num   = tmpvalue.quality;
                                playerInfor.AddQualityScoreInfor(recordInfor);
                            }

                            var saleRecord = new SaleRecordVo();
                            saleRecord.title     = tmpFixed.title;
                            saleRecord.price     = Mathf.Abs(tmpFixed.payment);
                            saleRecord.number    = tmpFixed.baseNumber;
                            saleRecord.income    = tmpFixed.income;
                            saleRecord.mortage   = Mathf.Abs(tmpFixed.mortgage);
                            saleRecord.quality   = tmpFixed.scoreNumber;
                            saleRecord.getMoney  = getMoney;
                            saleRecord.saleMoney = tmpvalue.saleMoney;
                            playerInfor.saleRecordList.Add(saleRecord);

                            playerInfor.Settlement._saleNums          += 1;
                            playerInfor.Settlement._outerFateIntegral += cardData.rankScore;
                            playerInfor.Settlement._smallIntegral     += cardData.rankScore;
                            break;
                        }
                    }

                    for (var k = playerInfor.opportCardList.Count - 1; k >= 0; k--)
                    {
                        var tmpFixed = playerInfor.opportCardList[k];
                        if (tmpvalue.id == tmpFixed.id)
                        {
                            var getMoney = tmpvalue.saleMoney * tmpvalue.baseNum + tmpvalue.mortgage;
                            playerInfor.totalMoney   += getMoney;
                            playerInfor.totalIncome  += tmpvalue.income;
                            playerInfor.qualityScore += tmpvalue.quality;
                            playerInfor.opportCardList.Remove(tmpFixed);

                            if (tmpvalue.quality != 0)
                            {
                                var recordInfor = new InforRecordVo();
                                recordInfor.title = cardData.title;
                                recordInfor.num   = tmpvalue.quality;
                                playerInfor.AddQualityScoreInfor(recordInfor);
                            }

                            if (GameModel.GetInstance.isPlayNet == true)
                            {
                                var saleVo = new NetSaleCardVo();
                                saleVo.cardId     = tmpFixed.id;
                                saleVo.cardNumber = 1;
                                saleVo.cardType   = (int)SpecialCardType.bigChance;
                                _netSaleList.Add(saleVo);
                            }

                            var saleRecord = new SaleRecordVo();
                            saleRecord.title     = tmpFixed.title;
                            saleRecord.price     = Mathf.Abs(tmpFixed.payment);
                            saleRecord.number    = tmpFixed.baseNumber;
                            saleRecord.income    = tmpFixed.income;
                            saleRecord.mortage   = Mathf.Abs(tmpFixed.mortgage);
                            saleRecord.quality   = 0;
                            saleRecord.getMoney  = getMoney;
                            saleRecord.saleMoney = tmpvalue.saleMoney;
                            playerInfor.saleRecordList.Add(saleRecord);

                            playerInfor.Settlement._saleNums          += 1;
                            playerInfor.Settlement._outerFateIntegral += cardData.rankScore;
                            playerInfor.Settlement._bigIntegral       += cardData.rankScore;

                            break;
                        }
                    }
                }
            }

            playerInfor.AddCapticalData();

            if (playerInfor.playerID == PlayerManager.Instance.HostPlayerInfo.playerID)
            {
                MessageTips.Show(GameTipManager.Instance.gameTips.overOuterCardOuerFate);
            }


            var battleController = UIControllerManager.Instance.GetController <UIBattleController>();

            if (null != battleController)
            {
                battleController.SetQualityScore((int)playerInfor.qualityScore);
                battleController.SetTimeScore((int)playerInfor.timeScore);
                battleController.SetNonLaberIncome((int)playerInfor.totalIncome, (int)playerInfor.MonthPayment);
                battleController.SetCashFlow((int)playerInfor.totalMoney);
            }
        }