Exemple #1
0
 /// <summary>
 /// 处理游戏按键响应处理
 /// </summary>
 private void ProcessKeyDown()
 {
     if (Input.GetKeyUp(KeyCode.Escape) && hall_ != null)
     {
         CCustomDialog.OpenCustomDialogUI("确定退出游戏吗", ExitApplication, "系 统");
     }
 }
Exemple #2
0
    /// <summary>
    /// 显示兑换物品历史记录界面
    /// </summary>
    public void ShowExchangeItemRecordPanel()
    {
        if (ExchangeItemPanelGameObject == null)
        {
            LoadExchangeItemPanelResource();
        }
        CurItemData = null;
        UnityEngine.Transform ItemPopTransform    = ExchangeItemPanelGameObject.transform.Find("pop_up");
        UnityEngine.Transform ItemRecordTransform = ItemPopTransform.Find("Exchange_Record");

        ItemRecordTransform.gameObject.SetActive(true);
        ItemPopTransform.gameObject.SetActive(true);
        ExchangeItemPanelGameObject.SetActive(true);

        if (!ExChangeRecordDataFlag)
        {
            ExChangeRecordDataFlag = true;
            //请求兑换记录数据
            UMessage recordMsg = new UMessage((uint)GameCity.EMSG_ENUM.CrazyCityMsg_PLAYERGETTRADEINFO);
            recordMsg.Add(GameMain.hall_.GetPlayerId());
            NetWorkClient.GetInstance().SendMsg(recordMsg);

            CCustomDialog.OpenCustomWaitUI("正在进行兑换记录查询...");
        }
    }
Exemple #3
0
    /// <summary>
    /// 兑换钻石消息
    /// </summary>
    bool BackDiamondCashToDiamond(uint _msgType, UMessage _ms)
    {
        byte state = _ms.ReadByte();

        if (state == 1)
        {
            if (DiamondOkButton)
            {
                DiamondOkButton.interactable = true;
            }
            CCustomDialog.OpenCustomConfirmUI(1508);
            return(false);
        }

        if (RedBagInputField)
        {
            RedBagInputField.text = string.Empty;
        }
        if (DiamondOkButton)
        {
            DiamondOkButton.interactable = false;
        }
        CCustomDialog.OpenCustomConfirmUI(1507);
        return(true);
    }
Exemple #4
0
    bool BackCheckMobileLogin(uint _msgType, UMessage _ms)
    {
        //1获取成功
        // 2改账号已经有绑定手机
        // 3该手机号已经绑定账号
        byte nState = _ms.ReadByte();

        if (nState == 1)
        {
            Debug.Log("该手机号没有绑定任何号");
        }
        else if (nState == 2)
        {
            //Debug.Log("该账号已经有绑定手机");
            CCustomDialog.OpenCustomConfirmUI(1009);
        }
        else if (nState == 3)
        {
            Debug.Log("该手机号已经绑定账号");
            CCustomDialog.OpenCustomConfirmUI(1005);
            PlayerInfoUI.Instance.HandleBindMobileResult(false);
        }

        return(true);
    }
Exemple #5
0
    //展示排行榜界面
    public void ShowCoinBankInterface()
    {
        AssetBundle bundle = AssetBundleManager.GetAssetBundle(GameDefine.HallAssetbundleName);

        if (bundle == null)
        {
            return;
        }

        if (null == m_ObjCoinRank)
        {
            Object tipsobj = bundle.LoadAsset("Lobby_Ranking");
            m_ObjCoinRank = (GameObject)GameMain.instantiate(tipsobj);
            //GameObject background = GameObject.Find("Canvas/Root");
            m_ObjCoinRank.transform.SetParent(CanvasObj.transform, false);

            XPointEvent.AutoAddListener(m_ObjCoinRank.transform.Find("ImageBG").Find("ButtonClose").gameObject, OnClickCoinRankClose, null);
        }

        m_ObjCoinRank.SetActive(true);

        //0没事 1需要去服务器更新数据 2等待服务器的数据 3需要把数据更新到面板上
        if (m_iCoinRankState == 0)
        {
            GameObject subback = m_ObjCoinRank.transform.Find("ImageBG").Find("Ranking_List").Find("Content_RankingList").gameObject;
            for (int index = subback.transform.childCount - 1; index >= 0; index--)
            {
                GameMain.safeDeleteObj(subback.transform.GetChild(index).gameObject);
            }

            FillCoinRankData();
            return;
        }
        else if (m_iCoinRankState == 1)
        {
            CCustomDialog.OpenCustomWaitUI(1014);
            SendGetCoinRankData();
            m_iCoinRankState = 2;

            GameObject subback = m_ObjCoinRank.transform.Find("ImageBG").Find("Ranking_List").Find("Content_RankingList").gameObject;
            for (int index = subback.transform.childCount - 1; index >= 0; index--)
            {
                GameMain.safeDeleteObj(subback.transform.GetChild(index).gameObject);
            }
            return;
        }
        else if (m_iCoinRankState == 2)
        {
            return;
        }
        else if (m_iCoinRankState == 3)
        {
            FillCoinRankData();
            m_iCoinRankState = 0;
        }
    }
Exemple #6
0
    //创建比赛
    private void OnCreateContest()
    {
        CustomAudio.GetInstance().PlayCustomAudio(1002);

        if (selfcreateNumber_ >= 10)
        {
            CCustomDialog.OpenCustomConfirmUI(1651);
            return;
        }

        byte gameid = SelfContestDataManager.instance().gameid;
        int  power  = SelfContestDataManager.instance().selfcontestcsvs[gameid].datas[0];
        int  level  = SelfContestDataManager.instance().selfcontestcsvs[gameid].datas[playtimesindex_];

        int pay4appointment = power * level;

        if (GameMain.hall_.GetPlayerData().GetDiamond() + GameMain.hall_.GetPlayerData().GetCoin() < pay4appointment)
        {
            CCustomDialog.OpenCustomConfirmUI(1501);
            return;
        }

        UMessage createContestDataMsg = new UMessage((uint)GameCity.EMSG_ENUM.Contestmsg_PlayerCreateContestRequest);

        createContestDataMsg.Add(GameMain.hall_.GetPlayerId());
        createContestDataMsg.Add(SelfContestDataManager.instance().gamedataid);
        createContestDataMsg.Add(scr_.playernumber);
        createContestDataMsg.Add(scr_.cost);
        createContestDataMsg.Add(scr_.precontest);
        createContestDataMsg.Add(scr_.finalcontest);

        Debug.Log(" 比赛游戏:" + SelfContestDataManager.instance().gamedataid + " 比赛人数:" + scr_.playernumber + " 报名费:" + scr_.cost + "预赛场数:" + scr_.precontest + " 决赛场数" + scr_.finalcontest);

        if (rulepanel2_ == null)
        {
            createContestDataMsg.Add((uint)0);
        }
        else
        {
            if (!rulepanel2_.activeSelf)
            {
                createContestDataMsg.Add((uint)0);
            }
            else
            {
                createContestDataMsg.Add(scr_.timeseconds);
            }
        }

        NetWorkClient.GetInstance().SendMsg(createContestDataMsg);

        UnityEngine.Transform groupTransform = rulepanel1_ ? rulepanel1_.transform : rulepanel2_.transform;
        groupTransform.Find("Right/ImageBG/Button_chuangjian").GetComponent <Button>().interactable   = false;
        groupTransform.Find("Right/ImageBG/Button_chuangjian_0").GetComponent <Button>().interactable = false;
    }
Exemple #7
0
    void OnClickQuickMatch()
    {
        CustomAudio.GetInstance().PlayCustomAudio(1002);
        CCustomDialog.OpenCustomWaitUI("正在进入...");

        UMessage msg = new UMessage((uint)GameCity.EMSG_ENUM.CrazyCityMsg_CM_APPLYQUITSTARTGAME);

        msg.Add((byte)GameMain.hall_.GameBaseObj.GetGameType());
        msg.Add(GameMain.hall_.CurRoomIndex);
        msg.Add(GameMain.hall_.GetPlayerId());
        HallMain.SendMsgToRoomSer(msg);
    }
Exemple #8
0
    //玩家支付订单信息处理
    private bool PlayerTradeAppPayInfo(uint msgType, UMessage umsg)
    {
        uint   playerid     = umsg.ReadUInt();
        byte   payplatform  = umsg.ReadByte();
        string paytradeInfo = umsg.ReadString();

        Debug.Log("玩家:" + playerid + "订单:" + paytradeInfo);

        //订单信息过来后就可以关闭购买等待框了
        BuyEnd();

        if (payplatform == (byte)PayPlatform.AliPay)
        {
#if UNITY_ANDROID
            AlipayWeChatPay.RequestAliPay(paytradeInfo, false);
#elif UNITY_IOS
            WechatPlatfrom_IOS.MayunJieZhang_IOS(paytradeInfo);
#endif
        }
        else if (payplatform == (byte)PayPlatform.Wechat)
        {
            string noncestr = umsg.ReadString();
#if UNITY_ANDROID
            if (AlipayWeChatPay.IsWxAppInstalled())
            {
                AlipayWeChatPay.ReqWxPay(paytradeInfo, noncestr);
            }
            else
            {
                //还末安装微信失败处理
                // BuyEnd();
                CCustomDialog.OpenCustomConfirmUI(1010);
            }
#elif UNITY_IOS
            if (WechatPlatfrom_IOS.WeChat_IsWXAppInstalled())
            {
                WechatPlatfrom_IOS.WXLgoinJieZhang_IOS(paytradeInfo, noncestr);
            }
            else
            {
                //还末安装微信失败处理
                //BuyEnd();
                CCustomDialog.OpenCustomConfirmUI(1010);
            }
#endif
        }
        else if (payplatform == (byte)PayPlatform.vvPay_Wechat || payplatform == (byte)PayPlatform.vvPay_Alipay)
        {
            Application.OpenURL(paytradeInfo);
        }

        return(true);
    }
Exemple #9
0
    /// <summary>
    /// 获取验证码
    /// </summary>
    void OnBtn_GetCode(EventTriggerType eventtype, object button, PointerEventData eventData)
    {
        if (eventtype == EventTriggerType.PointerClick)
        {
            CustomAudio.GetInstance().PlayCustomAudio(1002);

            if (CanvasObj == null)
            {
                CanvasObj = GameObject.Find("Canvas/Root");
            }

            InputField PhonePanel = CanvasObj.transform.Find("Login").Find("Panel_PhoneLogin")
                                    .Find("InputField_PhoneNum").gameObject.GetComponent <InputField>();

            long phonenum = 0;
            if (!long.TryParse(PhonePanel.text, out phonenum))
            {
                CCustomDialog.OpenCustomConfirmUI(1003);
                return;
            }

            if (!GameCommon.CheckPhoneIsAble(PhonePanel.text))
            {
                CCustomDialog.OpenCustomConfirmUI(1003);
                return;
            }

            if (phonenum > 0)
            {
                if (!NetWorkClient.GetInstance().IsSocketConnected)
                {
                    HallMain.ConnectLoginServer();
                }
                SendApplyGetCode(phonenum, 1);

                //if(MobileCodeTimer == null)
                MobileCodeTimer = new CTimerPersecondCall(60f, UpdataGetCodeBtnText);
                xTimeManger.Instance.RegisterTimer(MobileCodeTimer);

                GameObject PhoneLogin = CanvasObj.transform.Find("Login").Find("Panel_PhoneLogin").gameObject;
                if (null != PhoneLogin)
                {
                    Button btn    = PhoneLogin.transform.Find("Button_GetCode").gameObject.GetComponent <Button>();
                    Image  btnimg = PhoneLogin.transform.Find("Button_GetCode").gameObject.GetComponent <Image>();
                    btn.interactable     = false;
                    btnimg.raycastTarget = false;

                    Text strCode = PhoneLogin.transform.Find("Button_GetCode").Find("Text_GetCode").gameObject.GetComponent <Text>();
                    strCode.text = "60S可重新获取";
                }
            }
        }
    }
Exemple #10
0
    /// <summary>
    /// 更新游戏排行榜数据
    /// </summary>
    /// <param name="_ms"></param>
    public bool UpdateGameRankingData(UMessage _ms)
    {
        CCustomDialog.CloseCustomWaitUI();
        RightChessScrolllRect.vertical = true;
        byte State = _ms.ReadByte();

        if (State != 0)
        {
            Debug.Log("比赛排行榜数据错误!错误码:" + State);
            return(false);
        }

        SerializableDictionary <int, CPlayerRankingInfo> GameRankingDataDictionary = null;
        long ContestID = _ms.ReadLong();

        if (!ContestRankingDataDictionary.ContainsKey(ContestID))
        {
            ContestRankingDataDictionary.Add(ContestID, new SerializableDictionary <int, CPlayerRankingInfo>());
        }
        GameRankingDataDictionary = ContestRankingDataDictionary[ContestID];
        ushort             StartIndex        = _ms.ReaduShort();
        byte               DataNum           = _ms.ReadByte();
        ushort             EndIndex          = (ushort)(StartIndex + DataNum - 1);
        CPlayerRankingInfo PlayerRankingInfo = null;

        for (int index = 0; index < DataNum; ++index)
        {
            PlayerRankingInfo                = new CPlayerRankingInfo();
            PlayerRankingInfo.PlayerName     = _ms.ReadString();
            PlayerRankingInfo.PlayerIconUrl  = _ms.ReadString();
            PlayerRankingInfo.PlayerFaceID   = _ms.ReadInt();
            PlayerRankingInfo.PlayerScore    = _ms.ReadInt();
            PlayerRankingInfo.PlayerOppScore = _ms.ReadInt();
            PlayerRankingInfo.ShengJuValue   = _ms.ReadByte();
            PlayerRankingInfo.ZhiShengValue  = _ms.ReadByte();
            PlayerRankingInfo.HouShouValue   = _ms.ReadByte();
            int RankIndex = StartIndex + index;
            if (GameRankingDataDictionary.ContainsKey(RankIndex))
            {
                GameRankingDataDictionary[RankIndex] = PlayerRankingInfo;
            }
            else
            {
                GameRankingDataDictionary.Add(RankIndex, PlayerRankingInfo);
            }
        }

        if (m_ContestID == ContestID)
        {
            RefreshGameContestRankingPlayerPanel(StartIndex, EndIndex);
        }
        return(true);
    }
Exemple #11
0
 /// <summary>
 /// 顶号处理
 /// </summary>
 /// <param name="_msgType"></param>
 /// <param name="_ms"></param>
 /// <returns></returns>
 bool ServerCutConnect(uint _msgType, UMessage _ms)
 {
     //清除本地保存的绑定账号
     BindMobileAccountId = 0;
     WriteAccountConfig(false);
     HallMain.bDisconnectReconnection = true;//切断重连机制
     CCustomDialog.OpenCustomConfirmUI(1015, (p) =>
     {
         GameMain.hall_.AnyWhereBackToLoginUI();
     });
     return(false);
 }
Exemple #12
0
    private bool LoginFailed2(uint _msgType, UMessage _ms)
    {
        byte errState = _ms.ReadByte();

        switch (errState)
        {
        //被封号
        case 1:
        {
            CCustomDialog.OpenCustomConfirmUI(1023);
        }
        break;
        }
        return(true);
    }
Exemple #13
0
    /// <summary>
    /// 登陆失败返回消息处理
    /// </summary>
    /// <param name="_msgType"></param>
    /// <param name="_ms"></param>
    /// <returns></returns>
    private bool LoginFailed(uint _msgType, UMessage _ms)
    {
        CCustomDialog.CloseCustomWaitUI();
        byte errState = _ms.ReadByte();

        switch (errState)
        {
        //app版本不符
        case 1:
        {
            CCustomDialog.OpenCustomConfirmUI(1019);
        }
        break;
        }
        return(true);
    }
Exemple #14
0
    void OnClickCDKey()
    {
        Transform  tfm   = OldPlayerTfm.Find("ImageBG/cdkey/InputField");
        InputField field = tfm.GetComponent <InputField>();

        if (field.text.Length != 6)
        {
            CCustomDialog.OpenCustomConfirmUI(1402);
            return;
        }
        UMessage msg = new UMessage((uint)GameCity.EMSG_ENUM.CrazyCityMsg_CM_PLAYERAPPLYBINDINVITE);

        msg.Add(GameMain.hall_.GetPlayerId());
        msg.Add(field.text);
        NetWorkClient.GetInstance().SendMsg(msg);
    }
Exemple #15
0
    void OnClickSit(ushort desk, sbyte sit)
    {
        CustomAudio.GetInstance().PlayCustomAudio(1002);

        DebugLog.Log("Click desk:" + desk + " sit:" + sit);

        CCustomDialog.OpenCustomWaitUI("正在进入...");

        UMessage msg = new UMessage((uint)GameCity.EMSG_ENUM.CrazyCityMsg_CM_APPLYENTERROOMANDSIT);

        msg.Add((byte)GameMain.hall_.GameBaseObj.GetGameType());
        msg.Add(GameMain.hall_.GetPlayerId());
        msg.Add(desk);
        msg.Add(sit);
        HallMain.SendMsgToRoomSer(msg);
    }
Exemple #16
0
    /// <summary>
    /// 保存金钱排行榜的数据
    /// </summary>
    bool BackUpdateCoinRank(uint _msgType, UMessage _ms)
    {
        //m_lstCoinRank.Clear();
        //int nSize = _ms.ReadInt();
        short nBeginSign = _ms.ReadShort();
        short nSize      = _ms.ReadShort();

        if (nBeginSign == 0)
        {
            m_lstCoinRank.Clear();
        }

        for (int i = 0; i < nSize; i++)
        {
            strCoinRank nRank = new strCoinRank();
            nRank.nUseID    = _ms.ReadUInt();
            nRank.faceid    = _ms.ReadUInt();
            nRank.url       = _ms.ReadString();
            nRank.nCoin     = _ms.ReadLong();
            nRank.sNickName = _ms.ReadString();

            m_lstCoinRank.Add(nRank);
            Debug.Log("Add coin rank data!Index:" + i.ToString() +
                      " Name:" + nRank.sNickName +
                      " Coin:" + nRank.nCoin.ToString());
        }

        if (nBeginSign == -1)
        {
            CCustomDialog.CloseCustomWaitUI();
            if (m_iCoinRankState == 2)
            {
                FillCoinRankData();
            }
            else
            {
                m_iCoinRankState = 3;
            }
        }
        else
        {
            nBeginSign += nSize;
            SendGetCoinRankData(nBeginSign);
        }

        return(true);
    }
Exemple #17
0
    /// <summary>
    /// 开始手机登陆
    /// </summary>
    void OnBtn_StartPhoneLogin(EventTriggerType eventtype, object button, PointerEventData eventData)
    {
        if (eventtype != EventTriggerType.PointerClick)
        {
            return;
        }

        if (CanvasObj == null)
        {
            CanvasObj = GameObject.Find("Canvas/Root");
        }

        //检测是否同意协议
        Toggle agreementToggle = CanvasObj.transform.Find("Login").Find("Toggle_agreement")
                                 .gameObject.GetComponent <Toggle>();

        if (!agreementToggle.isOn)
        {
            CCustomDialog.OpenCustomConfirmUI(1007);
            return;
        }

        InputField CodePanel = CanvasObj.transform.Find("Login").Find("Panel_PhoneLogin").Find("InputField_Code").gameObject.GetComponent <InputField>();

        uint nCode = 0;

        if (!uint.TryParse(CodePanel.text, out nCode))
        {
            CCustomDialog.OpenCustomConfirmUI(1002);
            return;
        }

        if (nCode > 0)
        {
            SendCodeApplyLogin(nCode, 1);

            GameObject rtnBtn = CanvasObj.transform.Find("Login").Find("Panel_PhoneLogin").Find("Button_Return").gameObject;
            rtnBtn.GetComponent <Image>().raycastTarget = false;
            rtnBtn.GetComponent <Button>().interactable = false;

            GameObject loginBtn = CanvasObj.transform.Find("Login").Find("Panel_PhoneLogin").Find("Button_FinishLogin").gameObject;
            loginBtn.GetComponent <Image>().raycastTarget = false;
            loginBtn.GetComponent <Button>().interactable = false;
        }
        CanvasObj.transform.Find("Login").gameObject.SetActive(false);
    }
Exemple #18
0
    /// <summary>
    /// 处理兑换记录数据消息
    /// </summary>
    private bool HandleExchangeRecordDataMsg(uint msgType, UMessage umsg)
    {
        CCustomDialog.CloseCustomWaitUI();
        uint playerid    = umsg.ReadUInt();
        int  recordcount = umsg.ReadInt();

        for (int i = 0; i < recordcount; i++)
        {
            string orderid    = umsg.ReadString();
            byte   orderstate = umsg.ReadByte();
            uint   itemid     = umsg.ReadUInt();

            AddExchangeRecordData(orderid, itemid, orderstate);
        }
        UpdateExchangeRecordData();
        return(true);
    }
Exemple #19
0
    bool BackReqConnIdForWxQR(uint _msgType, UMessage _ms)
    {
        uint connId          = _ms.ReadUInt();
        uint GateLoginConnId = _ms.ReadUInt();

        CCustomDialog.CloseCustomWaitUI();
        //申请微信登录扫描登录二维码
        //string QRCodeurl =  CWechatUserAuth.GetInstance().ReqBuildAuthQRcode(connId, GateLoginConnId);
        //if (CanvasObj == null)
        //    CanvasObj = GameObject.Find("Canvas/Root");

        //GameObject QRCodePanel = CanvasObj.transform.FindChild("Login").FindChild("ImageQRcode").gameObject;
        //QRCodePanel.SetActive(true);
        //WebBrowser2D browser = QRCodePanel.transform.FindChild("ImageIcon").GetComponent<WebBrowser2D >();
        //browser.OnNavigate(QRCodeurl);
        return(true);
    }
Exemple #20
0
    void OnBuyNewComer(EventTriggerType eventtype, object button, PointerEventData eventData)
    {
        if (eventtype == EventTriggerType.PointerUp)
        {
            uint ui2csvindex = (uint)button;
            if (ui2csvindex == 4)
            {
                ui2csvindex = 0;
            }
            currentNewComerItem = ui2csvindex + 40000;
            int  newcomerInfo = GameMain.hall_.GetPlayerData().newcomerGift;
            bool isbuy        = GameKind.HasFlag((int)currentNewComerItem - 40000, newcomerInfo);
            if (isbuy)
            {
                CCustomDialog.OpenCustomConfirmUI(1109);
                return;
            }
            else
            {
                if ((int)currentNewComerItem - 40000 == 0)
                {
                    bool buyother1 = GameKind.HasFlag(1, newcomerInfo);
                    bool buyother2 = GameKind.HasFlag(2, newcomerInfo);
                    bool buyother3 = GameKind.HasFlag(3, newcomerInfo);
                    if (buyother1 || buyother2 || buyother3)
                    {
                        CCustomDialog.OpenCustomConfirmUI(1109);
                        return;
                    }
                }
                else
                {
                    bool buyother4 = GameKind.HasFlag(0, newcomerInfo);
                    if (buyother4)
                    {
                        CCustomDialog.OpenCustomConfirmUI(1109);
                        return;
                    }
                }

                DoBuyByItemID(currentNewComerItem);
            }
        }
    }
Exemple #21
0
    bool BackCheckIndentfying(uint _msgType, UMessage _ms)
    {
        byte nState = _ms.ReadByte();

        if ((nState % 10) == 0)
        {
            //检测失败
            if ((nState / 10) == 0)
            {
                CanvasObj.transform.Find("Login").gameObject.SetActive(true);

                GameObject rtnBtn = CanvasObj.transform.Find("Login").Find("Panel_PhoneLogin").Find("Button_Return").gameObject;
                rtnBtn.GetComponent <Image>().raycastTarget = true;
                rtnBtn.GetComponent <Button>().interactable = true;

                GameObject loginBtn = CanvasObj.transform.Find("Login").Find("Panel_PhoneLogin").Find("Button_FinishLogin").gameObject;
                loginBtn.GetComponent <Image>().raycastTarget = true;
                loginBtn.GetComponent <Button>().interactable = true;
            }

            CCustomDialog.OpenCustomConfirmUI(1002);
        }
        else
        {
            long nMobile = _ms.ReadLong();
            GameMain.hall_.GetPlayerData().SetBindPhoneNumber(nMobile);
            BindMobileAccountId = GameMain.hall_.GetPlayerId();
            WriteAccountConfig(false);
            //直接手机号登陆不提示绑定成功
            if (nState == 11)
            {
                CCustomDialog.OpenCustomConfirmUI(1012);
                PlayerInfoUI.Instance.HandleBindMobileResult(true);
            }
            else
            {
                MobileCodeTimer.SetDeleteFlag(true);
            }

            Debug.Log("验证码验证成功!登陆游戏!" + nMobile.ToString());
        }

        return(true);
    }
Exemple #22
0
    public void OnAnswer(byte result, byte state, byte pos)
    {
        if (result == 0)
        {
            switch (state)
            {
            case 1:    //停叫
            case 5:    //投降
                OnQuitTurn(state);
                break;

            case 2:    //加倍
                OnDouble(pos);
                break;

            case 3:    //要牌
                break;

            case 4:    //分牌
                OnSplitBegin();
                return;

            default:    //fail
                OnTurn(-1.0f);
                break;
            }

            UpdateInfoUI();
        }
        else
        {
            if (state == 4)
            {
                CCustomDialog.OpenCustomConfirmUI(2220);
                m_bCanSplit = false;
            }

            m_BjGameBase.UpdatePlayerUI(this);
            ShowTimeImg(true, 0f);
        }

        StopAsk();
    }
Exemple #23
0
    /// 处理绑定邀请码的回复
    private bool HandlePlayerSetInviteCode(uint _msgType, UMessage _ms)
    {
        byte isSuccess = _ms.ReadByte();

        if (isSuccess == 0)
        {
            PlayerData playerdata = GameMain.hall_.GetPlayerData();
            playerdata.nIsBindInvite = 100;
            uint userid = _ms.ReadUInt();
            playerdata.nTodayAward    = _ms.ReadUInt();
            playerdata.nTomorrowAward = _ms.ReadUInt();
            SetupOldPlayer();
        }
        else//1:already 2:used 3:none
        {
            CCustomDialog.OpenCustomConfirmUI((uint)1399 + isSuccess);
        }
        return(true);
    }
Exemple #24
0
    bool BackMailGetReward(uint _msgType, UMessage msg)
    {
        byte state = msg.ReadByte();

        if (state == 0) //没找到邮件
        {
            CCustomDialog.OpenCustomConfirmUI(1703);
            return(false);
        }
        else if (state == 1)
        {
            CCustomDialog.OpenCustomConfirmUI(1702);
        }

        uint mailid = msg.ReadUInt();

        if (emailobjects_.ContainsKey(mailid))
        {
            GameMain.safeDeleteObj(emailobjects_[mailid]);
            emailobjects_.Remove(mailid);
        }

        if (EmailDataManager.GetNewsInstance().emilsdata_.ContainsKey(mailid))
        {
            EmailDataManager.GetNewsInstance().emilsdata_.Remove(mailid);
            SetNoMailUI();
        }

        if (m_MailinfoTransform)
        {
            m_MailinfoTransform.Find("ImageBG/Button_lingqu").GetComponent <Button>().interactable  = true;
            m_MailinfoTransform.Find("ImageBG/Button_queding").GetComponent <Button>().interactable = true;
            m_MailinfoTransform.gameObject.SetActive(false);
        }

        //if(GameMain.hall_.contestui_ != null)
        //    GameMain.hall_.contestui_.transform.FindChild("Panelbottom/Bottom/Button_News/ImageSpot").gameObject.SetActive(EmailDataManager.GetNewsInstance().emilsdata_.Count > 0);
        GameMain.hall_.GetPlayerData().mailNumber -= 1;
        GameMain.hall_.m_Bulletin.OnEmailChange(EmailDataManager.GetNewsInstance().emilsdata_.Count <= 0);

        return(true);
    }
Exemple #25
0
    //请求购买物品(奖券兑换京东卡,手机充值卡)
    public bool RequestBuyItem(uint itemId, string consigneePhone, string consigneeName = null, string consigneeAddr = null)
    {
        ShopItemdata itemdata = CCsvDataManager.Instance.ShopItemDataMgr.GetShopItemData(itemId);

        if (itemdata == null)
        {
            return(false);
        }
        if (bBuyingProcess)
        {
            Debug.LogWarning("当前正处于购买过程中。。。。");
            return(false);
        }
        iBuyingItemId  = itemId;
        bBuyingProcess = true;

        CCustomDialog.OpenCustomWaitUI(1107);
        switch (itemdata.ItemType)
        {
        case Shop.ITEMTYPE.ITEMTYPE_JINGDONG:
        case Shop.ITEMTYPE.ITEMTYPE_MOBILE:
        {
            //判断奖券是否足够
            if (playerData.GetLottery() < itemdata.ItemPrice)
            {
                BuyEnd();
                CCustomDialog.OpenCustomConfirmUI(1103);
            }
            else
            {
                SendBuyReq(itemdata.ItemID, consigneePhone, consigneeName, consigneeAddr);
            }
        }
        break;

        case Shop.ITEMTYPE.ITEMTYPE_GOODS:
            SendBuyReq(itemdata.ItemID, consigneePhone, consigneeName, consigneeAddr);
            break;
        }
        return(true);
    }
Exemple #26
0
    void OnBuyDiscounts(EventTriggerType eventtype, object button, PointerEventData eventData)
    {
        if (eventtype == EventTriggerType.PointerUp)
        {
            GameObject buttonBuy = discountobj.transform.Find("ImageBG").Find("goodsinfo").Find("Button_buy").gameObject;
            Text       buyTX     = buttonBuy.transform.Find("Text").gameObject.GetComponent <Text>();
            buyTX.text = "购买";

            int  discountInfo = GameMain.hall_.GetPlayerData().discountsGift;
            bool isbuy        = GameKind.HasFlag((int)currentDiscountItem - 50000, discountInfo);
            if (isbuy)
            {
                CCustomDialog.OpenCustomConfirmUI(1110);
                return;
            }
            else
            {
                DoBuyByItemID(currentDiscountItem);
            }
        }
    }
Exemple #27
0
    /// <summary>
    /// 检测是否可以发送加入比赛消息
    /// </summary>
    /// <param name="contestid"></param>
    /// <param name="tipShowState"></param>
    /// <returns></returns>
    public bool CheckSendJoinMsg(uint contestid, bool tipShowState = true)
    {
        if (currentPassWord_ != 0)
        {
            if (contestid != currentPassWord_)
            {
                if (tipShowState)
                {
                    CCustomDialog.OpenCustomConfirmUI(1302);
                }
                return(false);
            }
        }

        if (GameMain.hall_.contest != null)
        {
            if (GameMain.hall_.contest.CheckContestInfoListRefreshState() &&
                ContestDataManager.Instance().selfcontestdatas_.Count == 0)
            {
                if (!tipShowState)
                {
                    return(true);
                }
                CCustomDialog.OpenCustomConfirmUI(1610);
                return(false);
            }
        }

        if (!ContestDataManager.Instance().selfcontestdatas_.ContainsKey(contestid))
        {
            if (!tipShowState)
            {
                return(true);
            }
            CCustomDialog.OpenCustomConfirmUI(1610);
            return(false);
        }
        return(true);
    }
Exemple #28
0
    /// <summary>
    /// 请求比赛排行数据
    /// </summary>
    /// <param name="StartIndex"></param>
    /// <param name="EndIndex"></param>
    void RequestContestRankData(ushort StartIndex, ushort EndIndex)
    {
        ushort _StartIndex = StartIndex, _EndIndex = EndIndex;

        if (ContestRankingDataDictionary.ContainsKey(m_ContestID))
        {
            bool State = true;
            while (State && _StartIndex <= _EndIndex)
            {
                State = false;
                if (ContestRankingDataDictionary[m_ContestID].ContainsKey(_StartIndex))
                {
                    ++_StartIndex;
                    State = true;
                }
                if (ContestRankingDataDictionary[m_ContestID].ContainsKey(_EndIndex))
                {
                    --_EndIndex;
                    State = true;
                }
            }
        }
        if (_StartIndex <= _EndIndex)
        {
            RightChessScrolllRect.vertical = false;
            CCustomDialog.OpenCustomWaitUI("正在加载数据...");
            UMessage msg = new UMessage((uint)GameCity.EMSG_ENUM.CrazyCityMsg_ReqContestRankData);
            msg.Add(GameMain.hall_.GetPlayerId());
            msg.Add(m_ContestID);
            msg.Add(_StartIndex);
            msg.Add(_EndIndex);
            NetWorkClient.GetInstance().SendMsg(msg);
        }
        else
        {
            RefreshGameContestRankingPlayerPanel(StartIndex, EndIndex);
        }
    }
Exemple #29
0
    /// <summary>
    /// unionid码登陆
    /// </summary>
    /// <param name="unionid"></param>
    private void UnionIdLogin(string unionid)
    {
        if (!NetWorkClient.GetInstance().IsSocketConnected)
        {
            HallMain.ConnectLoginServer();
        }
        CCustomDialog.OpenCustomWaitUI(1008);

        UMessage unionLoginMsg = new UMessage((uint)GameCity.EMSG_ENUM.CrazyCityMsg_PLAYERLOGIN);

        MessageLogin ml_ = new MessageLogin();

        ml_.smachinecode = SystemInfo.deviceUniqueIdentifier;
        ml_.sVersion     = GameMain.Instance.GetAppVersion();

        if (Application.platform == RuntimePlatform.IPhonePlayer)
        {
            ml_.nPlatform = 1;
        }
        else if (Application.platform == RuntimePlatform.Android)
        {
            ml_.nPlatform = 2;
        }
        else
        {
            ml_.nPlatform = 0;
        }
        unionLoginMsg.Add((int)0);
        unionLoginMsg.Add(ml_.smachinecode);
        unionLoginMsg.Add(ml_.sVersion);
        unionLoginMsg.Add(ml_.nPlatform);
        unionLoginMsg.Add((byte)1);
        unionLoginMsg.Add(unionid);
        //unionLoginMsg.Add();
        //unionLoginMsg.Add(CWechatUserAuth.GetInstance().GetUserNickname());

        NetWorkClient.GetInstance().SendMsg(unionLoginMsg);
    }
Exemple #30
0
    public void OnEnd(long diamond = 0)
    {
        if (RoomTfm == null)
        {
            return;
        }

        GameMain.hall_.GameBaseObj.OnDisconnect(false);

        ShowTable(false);
        m_bMoving = true;
        RoomTfm.gameObject.SetActive(true);
        if (diamond == 0)
        {
            diamond = GameMain.hall_.GetPlayerData().GetDiamond();
        }
        UpdateDiamond(diamond);

        CustomAudio.GetInstance().PlayCustomAudio(1001, true);

        CCustomDialog.CloseCustomWaitUI();
        m_nBystanderRoom = 0;
    }