Пример #1
0
 void ChooseCard(TarotCardData card, Button button)
 {
     if (gameRunner.cardsSelectedToDeal.Contains(card.order))
     {
         // this card is already selected; remove it!
         Debug.Log("removing card " + card.name);
         button.image.color = cardButtonDefaultColor;
         gameRunner.RemoveChosenCard(card);
         Destroy(deckOrderToSelectedCardButtonMap[card.order]);
         deckOrderToSelectedCardButtonMap.Remove(card.order);
         deckOrderToDeckCardButtonMap.Remove(card.order);
         MaybeEnableAllButtons();
     }
     else
     {
         Debug.Log("choosing card " + card.name);
         button.interactable = false;
         gameRunner.ChooseCard(card);
         deckOrderToDeckCardButtonMap.Add(card.order, button.gameObject);
         Button selectedCardButton = Instantiate(cardChooseButtonPrefab);
         selectedCardButton.transform.SetParent(chosenCardsList);
         selectedCardButton.image.color = cardButtonSelectedColor;
         TextMeshProUGUI textComp = null;
         textComp = selectedCardButton.GetComponentInChildren <TextMeshProUGUI>();
         selectedCardButton.onClick.AddListener(() => ChooseCard(card, selectedCardButton));
         if (textComp)
         {
             textComp.text = card.cardName;
         }
         deckOrderToSelectedCardButtonMap.Add(card.order, selectedCardButton.gameObject);
         MaybeDisableAllButtons();
     }
 }
Пример #2
0
 private static void UpdateTarotData2DB(GameClient client, TarotCardData tarotData, TarotKingData tarotKingBuffData)
 {
     string[]             dbFields        = null;
     string               tarotStrInfo    = (tarotData == null) ? "-1" : tarotData.GetDataStrInfo();
     string               kingBuffStrInfo = (tarotKingBuffData == null) ? "-1" : tarotKingBuffData.GetDataStrInfo();
     string               sCmd            = string.Format("{0}:{1}:{2}", client.ClientData.RoleID, tarotStrInfo, kingBuffStrInfo);
     TCPProcessCmdResults retcmd          = Global.RequestToDBServer(Global._TCPManager.tcpClientPool, Global._TCPManager.TcpOutPacketPool, 20100, sCmd, out dbFields, client.ServerId);
 }
Пример #3
0
 // public bool isReversed;
 // Start is called before the first frame update
 public void Init(TarotCardData cd, string cardMeaning, int order, GameRunner gr)
 {
     readingOrder         = order;
     gameRunner           = gr;
     cardMeaningText.text = cardMeaning;
     cardData             = cd;
     cardFront.sprite     = cardData.cardPicture2x;
     EnableButton(false);
 }
Пример #4
0
        /// <summary>
        /// 处理塔罗牌升级或激活
        /// </summary>
        /// <param name="client"></param>
        /// <param name="goodID"></param>
        /// <param name="partCount"></param>
        /// <returns></returns>
        public ETarotResult ProcessTarotUpCmd(GameClient client, int goodID)
        {
            //判断功能是否开启
            if (!GlobalNew.IsGongNengOpened(client, GongNengIDs.TarotCard))
            {
                return(ETarotResult.NotOpen);
            }

            TarotSystemData tarotData = client.ClientData.TarotData;
            //获取要升级的塔罗牌数据
            TarotCardData currentTarot = tarotData.TarotCardDatas.Find(x => x.GoodId == goodID);

            if (currentTarot == null)
            {
                //激活
                currentTarot        = new TarotCardData();
                currentTarot.GoodId = goodID;
                tarotData.TarotCardDatas.Add(currentTarot);
            }
            //判断是否可以升级
            if (currentTarot.Level >= TarotMaxLevelDict[goodID])
            {
                return(ETarotResult.MaxLevel);
            }
            //获取下级塔罗牌对应配置模板
            TarotTemplate nextTemp = TarotTemplates.Find(x => x.GoodsID == goodID && x.Level == currentTarot.Level + 1);

            if (nextTemp == null)
            {
                return(ETarotResult.Error);
            }
            //判断背包碎片是否足够
            var hasPartCount = Global.GetTotalGoodsCountByID(client, nextTemp.NeedGoodID);

            if (hasPartCount < nextTemp.NeedPartCount)
            {
                return(ETarotResult.NeedPart);
            }

            //使用物品  优先使用绑定物品
            bool usedBinding     = false;
            bool usedTimeLimited = false;

            if (Global.UseGoodsBindOrNot(client, nextTemp.NeedGoodID, nextTemp.NeedPartCount, true, out usedBinding, out usedTimeLimited) < 1)
            {
                return(ETarotResult.NeedPart);
            }

            //处理升级
            currentTarot.Level += 1;
            //更新玩家数据
            UpdataPalyerTarotAttr(client);
            //向DB服更新数据
            UpdateTarotData2DB(client, currentTarot, null);
            return(ETarotResult.Success);
        }
Пример #5
0
    public IEnumerator DoRereadCard(int cardToReread)
    {
        Debug.Log("rereading card " + cardToReread);
        SetGameState(GameState.RereadingCard);
        TarotCardData cardData = selectedCardData[cardToReread];

        readingUI.Init(selectedCardData[cardToReread], true);
        yield return(StartCoroutine(readingUI.FadeIn()));

        Cursor.SetCursor(null, Vector2.zero, CursorMode.Auto);
        SetGameState(GameState.ReadingCardDone);
    }
Пример #6
0
    void CallbackFunction(object in_cookie, AkCallbackType in_type, object in_info)
    {
        if (gameState == GameState.PreReading)
        {
            StartCoroutine(ReadCard());
        }

        else if (gameState == GameState.GenerativePhase || gameState == GameState.ShowingEndInstructions)
        {
            if (new int[] { 0, 2, 5, 8 }.Contains(generativeSection))
            {
                videoCanvas.gameObject.SetActive(false);
                videoCardUI.cardDefinitionText.gameObject.SetActive(false);
                videoPlayer.clip = videoClips[playingClipNumber];
                videoPlayer.Stop();
                videoPlayer.targetTexture.Release();
                if (generativeSection != 0)
                {
                    if (new int[] { 5, 8 }.Contains(generativeSection))
                    {
                        currentGenerativeCard++;
                    }
                    StartCoroutine(generativeUI.ShowMeaningText(cardMeanings[currentGenerativeCard]));
                }
                generativeSection++;
            }
            else if (generativeSection >= 11)
            {
                SetGameState(GameState.GenerativePhaseDone);
            }

            else
            {
                StartCoroutine(generativeUI.HideTitleText());
                StartCoroutine(generativeUI.HideMeaningText());
                videoPlayer.clip = videoClips[playingClipNumber];
                videoPlayer.Play();
                videoCanvas.gameObject.SetActive(true);
                if (new int[] { 3, 6, 9 }.Contains(generativeSection))
                {
                    TarotCardData cardData = selectedCardData[currentGenerativeCard];
                    videoCardUI.SetTextFromCardData(cardData);
                    videoCardUI.cardDefinitionText.gameObject.SetActive(true);
                }
                else
                {
                    videoCardUI.cardDefinitionText.gameObject.SetActive(false);
                }
                playingClipNumber++;
                generativeSection++;
            }
        }
    }
Пример #7
0
        //更新数据库资料
        private static void UpdateTarotData2DB(GameClient client, TarotCardData tarotData, TarotKingData tarotKingBuffData)
        {
            string[] dbFields = null;

            var tarotStrInfo = tarotData == null ? "-1" : tarotData.GetDataStrInfo();

            var kingBuffStrInfo = tarotKingBuffData == null ? "-1" : tarotKingBuffData.GetDataStrInfo();

            var sCmd = string.Format("{0}:{1}:{2}", client.ClientData.RoleID, tarotStrInfo, kingBuffStrInfo);

            TCPProcessCmdResults retcmd = Global.RequestToDBServer(Global._TCPManager.tcpClientPool, Global._TCPManager.TcpOutPacketPool,
                                                                   (int)TCPGameServerCmds.CMD_DB_UPDATA_TAROT, sCmd, out dbFields, client.ServerId);
        }
Пример #8
0
        /// <summary>
        /// 设置塔罗牌上阵位置 (0=为上阵)
        /// </summary>
        /// <param name="client"></param>
        /// <param name="goodID"></param>
        /// <param name="pos"></param>
        /// <returns></returns>
        public ETarotResult ProcessSetTarotPosCmd(GameClient client, int goodID, byte pos)
        {
            //判断功能是否开启
            if (!GlobalNew.IsGongNengOpened(client, GongNengIDs.TarotCard))
            {
                return(ETarotResult.NotOpen);
            }

            //判断位置是否合法
            if (pos < 0 || pos > 6)
            {
                return(ETarotResult.Error);
            }
            TarotSystemData tarotData = client.ClientData.TarotData;
            //获取塔罗牌数据
            TarotCardData currentTarot = tarotData.TarotCardDatas.Find(x => x.GoodId == goodID);

            if (currentTarot == null)
            {
                return(ETarotResult.Error);
            }
            if (currentTarot.Postion == pos)
            {
                return(ETarotResult.Error);
            }
            //上阵
            if (pos > 0)
            {
                //判断当前卡牌是否已在阵上
                if (currentTarot.Postion > 0)
                {
                    return(ETarotResult.Error);
                }
                //判断装备的位置是否为空
                TarotCardData targetTarot = tarotData.TarotCardDatas.Find(x => x.Postion == pos);
                if (targetTarot != null)
                {
                    targetTarot.Postion = 0;
                }
            }
            currentTarot.Postion = pos;
            //更新玩家塔罗牌加成属性
            UpdataPalyerTarotAttr(client);
            //向DB服更新数据
            UpdateTarotData2DB(client, currentTarot, null);

            return(ETarotResult.Success);
        }
Пример #9
0
 public TarotManager.ETarotResult ProcessSetTarotPosCmd(GameClient client, int goodID, byte pos)
 {
     TarotManager.ETarotResult result;
     if (!GlobalNew.IsGongNengOpened(client, GongNengIDs.TarotCard, false))
     {
         result = TarotManager.ETarotResult.NotOpen;
     }
     else if (pos < 0 || pos > 6)
     {
         result = TarotManager.ETarotResult.Error;
     }
     else
     {
         TarotSystemData tarotData    = client.ClientData.TarotData;
         TarotCardData   currentTarot = tarotData.TarotCardDatas.Find((TarotCardData x) => x.GoodId == goodID);
         if (currentTarot == null)
         {
             result = TarotManager.ETarotResult.Error;
         }
         else if (currentTarot.Postion == pos)
         {
             result = TarotManager.ETarotResult.Error;
         }
         else
         {
             if (pos > 0)
             {
                 if (currentTarot.Postion > 0)
                 {
                     return(TarotManager.ETarotResult.Error);
                 }
                 TarotCardData targetTarot = tarotData.TarotCardDatas.Find((TarotCardData x) => x.Postion == pos);
                 if (targetTarot != null)
                 {
                     targetTarot.Postion = 0;
                 }
             }
             currentTarot.Postion = pos;
             this.UpdataPalyerTarotAttr(client);
             TarotManager.UpdateTarotData2DB(client, currentTarot, null);
             result = TarotManager.ETarotResult.Success;
         }
     }
     return(result);
 }
Пример #10
0
 public TarotManager.ETarotResult ProcessTarotUpCmd(GameClient client, int goodID)
 {
     TarotManager.ETarotResult result;
     if (!GlobalNew.IsGongNengOpened(client, GongNengIDs.TarotCard, false))
     {
         result = TarotManager.ETarotResult.NotOpen;
     }
     else
     {
         TarotSystemData tarotData    = client.ClientData.TarotData;
         TarotCardData   currentTarot = tarotData.TarotCardDatas.Find((TarotCardData x) => x.GoodId == goodID);
         if (currentTarot == null)
         {
             currentTarot        = new TarotCardData();
             currentTarot.GoodId = goodID;
             tarotData.TarotCardDatas.Add(currentTarot);
         }
         if (currentTarot.Level >= TarotManager.TarotMaxLevelDict[goodID])
         {
             result = TarotManager.ETarotResult.MaxLevel;
         }
         else
         {
             TarotManager.TarotTemplate nextTemp = TarotManager.TarotTemplates.Find((TarotManager.TarotTemplate x) => x.GoodsID == goodID && x.Level == currentTarot.Level + 1);
             if (nextTemp == null)
             {
                 result = TarotManager.ETarotResult.Error;
             }
             else if (currentTarot.TarotMoney < nextTemp.NeedPartCount)
             {
                 result = TarotManager.ETarotResult.NeedPart;
             }
             else
             {
                 currentTarot.TarotMoney -= nextTemp.NeedPartCount;
                 currentTarot.Level++;
                 this.UpdataPalyerTarotAttr(client);
                 TarotManager.UpdateTarotData2DB(client, currentTarot, null);
                 result = TarotManager.ETarotResult.Success;
             }
         }
     }
     return(result);
 }
Пример #11
0
    void CreateChooseCardButton(TarotCardData card)
    {
        TextMeshProUGUI textComp;
        Button          button = Instantiate(cardChooseButtonPrefab).GetComponent <Button>();

        button.transform.parent = cardsList;
        button.image.color      = cardButtonDefaultColor;
        textComp = null;
        textComp = button.GetComponentInChildren <TextMeshProUGUI>();
        button.onClick.AddListener(() => ChooseCard(card, button));
        if (textComp)
        {
            textComp.text = card.cardName;
        }
        if (gameRunner.cardsSelectedToDeal.Contains(card.order))
        {
            button.interactable = false;
        }
    }
Пример #12
0
    IEnumerator FadeInCard()
    {
        float         t        = 0;
        TarotCardData cardData = selectedCardData[numCardsAlreadyRead];

        cardReadingSpots[numCardsAlreadyRead].Init(cardData, cardMeanings[numCardsAlreadyRead], numCardsAlreadyRead, this);
        int   groupNumber = cardData.thematicGroup;
        Color sparkColor  = groupSparkColors[groupNumber - 1];

        Debug.Log(groupNumber + " " + sparkColor);
        ParticleSystem.MainModule ma = sparks[numCardsAlreadyRead].main;
        ma.startColor = sparkColor;
        sparks[numCardsAlreadyRead].Play();
        while (t < 1)
        {
            t += Time.deltaTime / cardFlipSpeed;
            cardReadingSpots[numCardsAlreadyRead].canvasGroup.alpha = t;
            yield return(null);
        }
        SetGameState(GameState.FadingCardInDone);
    }
Пример #13
0
    public void Init(TarotCardData cardData, bool isReread = false)
    {
        cardImage.sprite = cardData.cardPicture2x;

        totalReadingTime = DEBUG_gottaGoFast ? 2f : (cardData.clipDuration - 2);
        cardText.text    = cardData.cardLongDescription.ToString() + ReadingUtils.readingBreakCharacter + "\n\n";

        if (cardData.suit == CardSuit.Cups)
        {
            backgroundColor.color = cupsBGColor;
        }
        else if (cardData.suit == CardSuit.Wands)
        {
            backgroundColor.color = wandsBGColor;
        }
        else if (cardData.suit == CardSuit.Swords)
        {
            backgroundColor.color = swordsBGColor;
        }
        else if (cardData.suit == CardSuit.Pentacles)
        {
            backgroundColor.color = pentaclesBGColor;
        }
        else
        {
            backgroundColor.color = majorArcanaBGColor;
        }
        if (isReread)
        {
            ReadingUtils.ShowAllCharacters(cardText);
        }
        else
        {
            ReadingUtils.HideAllCharacters(cardText);
        }
    }
Пример #14
0
    IEnumerator ReadCard()
    {
        SetGameState(GameState.ReadingCard);
        TarotCardData cardData = selectedCardData[numCardsAlreadyRead];

        cardData.readingMusicEvent.Post(gameObject);
        readingUI.Init(selectedCardData[numCardsAlreadyRead]);
        yield return(StartCoroutine(readingUI.FadeIn()));

        Coroutine readingCoroutine = StartCoroutine(readingUI.ReadCard());

        while (readingUI.reading)
        {
            yield return(null);
        }
        if (readingCoroutine != null)
        {
            StopCoroutine(readingCoroutine);
        }
        cardReadingSpots[numCardsAlreadyRead].EnableButton(true);
        numCardsAlreadyRead++;
        Cursor.SetCursor(null, Vector2.zero, CursorMode.Auto);
        SetGameState(GameState.ReadingCardDone);
    }
Пример #15
0
 public void SetTextFromCardData(TarotCardData cardData)
 {
     cardTitleText.text            = cardData.name;
     cardDescriptionShortText.text = cardData.cardShortDescription;
 }
Пример #16
0
 public void RemoveChosenCard(TarotCardData card)
 {
     cardsSelectedToDeal.Remove(card.order);
 }
Пример #17
0
        public static TCPProcessCmdResults ProcessUpdateTarotDataCmd(DBManager dbMgr, TCPOutPacketPool pool, int nID, byte[] data, int count, out TCPOutPacket tcpOutPacket)
        {
            tcpOutPacket = null;
            string cmdData = null;

            try
            {
                cmdData = new UTF8Encoding().GetString(data, 0, count);
            }
            catch (Exception)
            {
                LogManager.WriteLog(LogTypes.Error, string.Format("解析指令字符串错误, CMD={0}", (TCPGameServerCmds)nID), null, true);
                tcpOutPacket = TCPOutPacket.MakeTCPOutPacket(pool, "0", 20100);
                return(TCPProcessCmdResults.RESULT_DATA);
            }
            try
            {
                string[] fields = cmdData.Split(new char[]
                {
                    ':'
                });
                if (fields.Length != 3)
                {
                    LogManager.WriteLog(LogTypes.Error, string.Format("指令参数个数错误, CMD={0}, Recv={1}, CmdData={2}", (TCPGameServerCmds)nID, fields.Length, cmdData), null, true);
                    tcpOutPacket = TCPOutPacket.MakeTCPOutPacket(pool, "0", 30767);
                    return(TCPProcessCmdResults.RESULT_DATA);
                }
                int        roleID       = Convert.ToInt32(fields[0]);
                string     dataInfo     = fields[1];
                string     kingBuffInfo = fields[2];
                string     dbTarotInfo  = string.Empty;
                string     dbKingInfo   = string.Empty;
                DBRoleInfo dbRoleInfo   = dbMgr.GetDBRoleInfo(ref roleID);
                if (null != dbRoleInfo)
                {
                    lock (dbRoleInfo)
                    {
                        TarotCardData tarotData = new TarotCardData(dataInfo);
                        if (tarotData.GoodId > 0)
                        {
                            TarotCardData oldData = dbRoleInfo.TarotData.TarotCardDatas.Find((TarotCardData x) => x.GoodId == tarotData.GoodId);
                            if (oldData == null)
                            {
                                dbRoleInfo.TarotData.TarotCardDatas.Add(tarotData);
                            }
                            else
                            {
                                TarotCardData targetData = dbRoleInfo.TarotData.TarotCardDatas.Find((TarotCardData x) => x.Postion == tarotData.Postion);
                                if (targetData != null)
                                {
                                    targetData.Postion = 0;
                                }
                                oldData.Level      = tarotData.Level;
                                oldData.Postion    = tarotData.Postion;
                                oldData.TarotMoney = tarotData.TarotMoney;
                            }
                        }
                        foreach (TarotCardData info in dbRoleInfo.TarotData.TarotCardDatas)
                        {
                            dbTarotInfo += info.GetDataStrInfo();
                        }
                        if (kingBuffInfo != "-1")
                        {
                            TarotKingData kingBuffData = new TarotKingData(kingBuffInfo);
                            dbRoleInfo.TarotData.KingData = kingBuffData;
                        }
                    }
                }
                else
                {
                    LogManager.WriteLog(LogTypes.Error, string.Format("指令参数个数错误, CMD={0}, Recv={1}, CmdData={2}", (TCPGameServerCmds)nID, fields.Length, cmdData), null, true);
                    tcpOutPacket = TCPOutPacket.MakeTCPOutPacket(pool, "0", 0x782f);
                    return(TCPProcessCmdResults.RESULT_DATA);
                }
                string strcmd = DBWriter.UpdateTarotData(dbMgr, roleID, dbTarotInfo, dbRoleInfo.TarotData.KingData.GetDataStrInfo()) ? "1" : "0";
                tcpOutPacket = TCPOutPacket.MakeTCPOutPacket(pool, strcmd, nID);
                return(TCPProcessCmdResults.RESULT_DATA);
            }
            catch (Exception ex)
            {
                DataHelper.WriteFormatExceptionLog(ex, "", false, false);
            }
            tcpOutPacket = TCPOutPacket.MakeTCPOutPacket(pool, "0", 30767);
            return(TCPProcessCmdResults.RESULT_DATA);
        }
Пример #18
0
    void AddCardData(int cardOrder)
    {
        TarotCardData cardData = GetCardData(cardOrder);

        selectedCardData.Add(cardData);
        videoClips[setClipNumber] = cardData.cardAndGroupClips[setClipNumber - 1];
        Debug.Log("Card Clip " + setClipNumber + " chosen.");
        setClipNumber++;
        videoClips[setClipNumber] = cardData.cardAndGroupClips[setClipNumber - 1];
        Debug.Log("Group Clip " + setClipNumber + " chosen.");
        setClipNumber++;


        if (numberCardsAlreadyDealt == 0)
        {
            groupMelodyEvents[0] = card1MelodyEvents[cardData.thematicGroup - 1];
            int s = (int)cardData.suit;
            cardSuitMelodyEvents[numberCardsAlreadyDealt] = card1SuitEvents[s];
        }

        else if (numberCardsAlreadyDealt == 1)
        {
            groupMelodyEvents[1] = card2MelodyEvents[cardData.thematicGroup - 1];
            int s = (int)cardData.suit;
            cardSuitMelodyEvents[numberCardsAlreadyDealt] = card2SuitEvents[s];
        }
        else if (numberCardsAlreadyDealt == 2)
        {
            groupMelodyEvents[2] = card3MelodyEvents[cardData.thematicGroup - 1];
            int s = (int)cardData.suit;
            cardSuitMelodyEvents[numberCardsAlreadyDealt] = card3SuitEvents[s];

            foreach (AK.Wwise.Event e in groupMelodyEvents)
            {
                e.Post(gameObject);
            }

            foreach (AK.Wwise.Event e in cardSuitMelodyEvents)
            {
                e.Post(gameObject);
                Debug.Log(cardSuitMelodyEvents[0] + " " + cardSuitMelodyEvents[1] + " " + cardSuitMelodyEvents[2]);
            }

            setClipNumber = 1;
        }
        numberCardsAlreadyDealt++;
        if (cardData.suit == CardSuit.MajorArcana)
        {
            majorArcanaTotal++;
        }
        else if (cardData.suit == CardSuit.Cups)
        {
            cupsTotal++;
        }
        else if (cardData.suit == CardSuit.Wands)
        {
            wandsTotal++;
        }
        else if (cardData.suit == CardSuit.Swords)
        {
            swordsTotal++;
        }

        else if (cardData.suit == CardSuit.Pentacles)
        {
            pentaclesTotal++;
        }
    }
Пример #19
0
 public TarotManager.ETarotResult ProcessTarotMoneyCmd(GameClient client, int goodId, int num, int dbid, out int resNum)
 {
     resNum = 0;
     TarotManager.ETarotResult result;
     if (!GlobalNew.IsGongNengOpened(client, GongNengIDs.TarotCard, false))
     {
         result = TarotManager.ETarotResult.NotOpen;
     }
     else
     {
         GoodsData Data = Global.GetGoodsByDbID(client, dbid);
         if (Data == null)
         {
             result = TarotManager.ETarotResult.Error;
         }
         else if (TarotManager.TarotNeedCardNum.ContainsKey(goodId))
         {
             if (num < 0 || num > Data.GCount)
             {
                 result = TarotManager.ETarotResult.MoneyNumError;
             }
             else
             {
                 TarotManager.TarotTemplate nextTemp = TarotManager.TarotTemplates.Find((TarotManager.TarotTemplate x) => x.NeedGoodID == goodId);
                 if (nextTemp == null)
                 {
                     result = TarotManager.ETarotResult.NotFindGood;
                 }
                 else
                 {
                     TarotSystemData tarotData    = client.ClientData.TarotData;
                     TarotCardData   currentTarot = tarotData.TarotCardDatas.Find((TarotCardData x) => x.GoodId == nextTemp.GoodsID);
                     if (currentTarot == null)
                     {
                         currentTarot        = new TarotCardData();
                         currentTarot.GoodId = nextTemp.GoodsID;
                         tarotData.TarotCardDatas.Add(currentTarot);
                     }
                     int reNum = TarotManager.TarotNeedCardNum[goodId] - this.CountTarotNowToCurrLevel(goodId, currentTarot.Level) - currentTarot.TarotMoney;
                     if (reNum == 0)
                     {
                         result = TarotManager.ETarotResult.HasMaxNum;
                     }
                     else
                     {
                         if (num > reNum)
                         {
                             num = reNum;
                         }
                         if (GameManager.ClientMgr.NotifyUseGoodsByDbId(Global._TCPManager.MySocketListener, Global._TCPManager.tcpClientPool, Global._TCPManager.TcpOutPacketPool, client, dbid, num, false, false))
                         {
                             GoodsData goodsData = Global.GetGoodsByDbID(client, dbid);
                             if (null != goodsData)
                             {
                                 resNum = goodsData.GCount;
                             }
                             currentTarot.TarotMoney += num;
                             EventLogManager.AddRoleEvent(client, OpTypes.Trace, OpTags.TarotMoney, LogRecordType.TarotMoney, new object[]
                             {
                                 num,
                                 currentTarot.TarotMoney,
                                 dbid,
                                 "塔罗牌货币增加"
                             });
                             this.UpdataPalyerTarotAttr(client);
                             TarotManager.UpdateTarotData2DB(client, currentTarot, null);
                             GameManager.logDBCmdMgr.AddDBLogInfo(dbid, "塔罗牌货币", "塔罗牌", client.ClientData.RoleName, "系统", "修改", 0, client.ClientData.ZoneID, client.strUserID, num, client.ServerId, null);
                             result = TarotManager.ETarotResult.Success;
                         }
                         else
                         {
                             result = TarotManager.ETarotResult.UseGoodError;
                         }
                     }
                 }
             }
         }
         else
         {
             result = TarotManager.ETarotResult.GoodIdError;
         }
     }
     return(result);
 }
Пример #20
0
 public void ChooseCard(TarotCardData card)
 {
     cardsSelectedToDeal.Add(card.order);
 }