コード例 #1
0
    private void onCreateRoomCallback(ClientResponse response)
    {
        Debug.Log("创建房间返回数据=> " + response.message);
        if (response.status == 1)
        {
            int roomId = Int32.Parse(response.message);
            sendVo.roomId = roomId;
            // 全局数据设置房间信息
            GlobalDataScript.roomVo = sendVo;
            // 设置房间ID
            GlobalDataScript.loginResponseData.roomId = roomId;
            // 设置房主为true
            GlobalDataScript.loginResponseData.main = true;
            // 设置在线状态
            GlobalDataScript.loginResponseData.onLine = true;
            // 设置游戏界面
            GlobalDataScript.gamePlayPanel = PrefabManage.loadPerfab("Prefab/Panel_Game_Play");

            GlobalDataScript.gamePlayPanel.GetComponent <MyMahjongScript>().createRoomAddAvatarVO(GlobalDataScript.loginResponseData);

            closeDialog();
        }
        else
        {
            TipsManagerScript.getInstance().setTips(response.message);
        }
    }
コード例 #2
0
    public void exit()
    {
        GlobalDataScript.isAutoLogin = false;
        PlayerPrefs.DeleteKey("loginInfo");
        PrefabManage.loadPerfab("Prefab/Panel_start");


        /*
         * //取消微信授权
         * WechatOperateScript wechatOperate = GameObject.Find("Canvas").GetComponent<WechatOperateScript>();
         * wechatOperate.cancelAuth ();
         *
         * Destroy (this);
         * Destroy (gameObject);
         *
         * GameObject setting = GameObject.Find ("Panel_Setting(Clone)") as GameObject;
         * Destroy (setting);
         */

        #if UNITY_ANDROID
        Application.Quit();
        #elif UNITY_IPHONE
        TipsManagerScript.getInstance().setTips("苹果手机请按Home键盘进行退出!");
        #endif

        //多态  调用退出登录接口
    }
コード例 #3
0
    public void login()
    {
        MyDebug.Log("----------------1-------------------");
        if (!CustomSocket.getInstance().isConnected)
        {
            StartCoroutine(ConnectTime1(3f, 1));
            InvokeRepeating("isConnected", 0.1f, 0.1f);

            tapCount = 0;
            MyDebug.Log("----------------2------------------");
            return;
        }

        GlobalDataScript.reinitData();         //初始化界面数据
        if (agreeProtocol.isOn)
        {
            MyDebug.Log("----------------3------------------");
            doLogin();
            watingPanel.GetComponentInChildren <Text> ().text = "进入游戏中";
            watingPanel.SetActive(true);

            StartCoroutine(ConnectTime(5f, 1));
        }
        else
        {
            MyDebug.Log("请先同意用户使用协议");
            TipsManagerScript.getInstance().setTips("请先同意用户使用协议");
        }

        tapCount += 1;
        Invoke("resetClickNum", 10f);
    }
コード例 #4
0
ファイル: VoteScript.cs プロジェクト: iuvei/AMH
    private void dissoliveRoomResponse(ClientResponse response)
    {
        DissoliveRoomResponseVo dissoliveRoomResponseVo = JsonMapper.ToObject <DissoliveRoomResponseVo> (response.message);
        string plyerName = dissoliveRoomResponseVo.accountName;

        if (dissoliveRoomResponseVo.type == "1")
        {
            playerList [getPlayerIndex(plyerName)].changeResult("同意");
        }
        else if (dissoliveRoomResponseVo.type == "2")
        {
            GlobalDataScript.isonApplayExitRoomstatus = false;
            playerList [getPlayerIndex(plyerName)].changeResult("拒绝");
            disagreeCount += 1;
            bool isDisagree = false;
            if (GlobalDataScript.count_Players_DN - disagreeCount <= disagreeCount)
            {
                isDisagree = true;
            }
            if (disagreeCount >= 2 || isDisagree)
            {
                TipsManagerScript.getInstance().setTips("同意解散房间申请人数不够,本轮投票结束,继续游戏");
                removeListener();
                Destroy(this);
                Destroy(gameObject);
            }
        }
    }
コード例 #5
0
ファイル: EnterRoomScript.cs プロジェクト: YLancer/client
 public void serviceErrorNotice(ClientResponse response)
 {
     SocketEventHandle.getInstance().serviceErrorNotice -= serviceErrorNotice;
     watingPanel.gameObject.SetActive(false);
     clear();
     TipsManagerScript.getInstance().setTips(response.message);
 }
コード例 #6
0
 // Update is called once per frame
 void Update()
 {
     if (Input.GetKey(KeyCode.Escape))         //Android系统监听返回键,由于只有Android和ios系统所以无需对系统做判断
     {
         if (panelCreateDialog == null)
         {
             panelCreateDialog = Instantiate(Resources.Load("Prefab/Panel_Exit")) as GameObject;
             panelCreateDialog.transform.parent     = gameObject.transform;
             panelCreateDialog.transform.localScale = Vector3.one;
             //panelCreateDialog.transform.localPosition = new Vector3 (200f,150f);
             panelCreateDialog.GetComponent <RectTransform>().offsetMax = new Vector2(0f, 0f);
             panelCreateDialog.GetComponent <RectTransform>().offsetMin = new Vector2(0f, 0f);
         }
     }
     else
     {
         if (watingPanel.activeSelf)
         {
             waitTime -= Time.deltaTime;
             if (waitTime < 0)
             {
                 watingPanel.SetActive(false);
                 TipsManagerScript.getInstance().setTips("登录失败,请重试");
             }
         }
     }
 }
コード例 #7
0
    public void onCreateRoomCallback(ClientResponse response)
    {
        if (response.handleCode == StatusCode.SESSION_expire ||
            response.handleCode == StatusCode.SESSION_invalid || response.bytes == null)
        {
            TipsManagerScript.getInstance().setTips("错误:" + response.handleCode);
            return;
        }

        staticc__room_opreation_response res = ClientRequest.DeSerialize <staticc__room_opreation_response>(response.bytes);

        Debug.Log("room number: " + res.data.room_num);

        //进入游戏中等待其他玩家加入
        GlobalDataScript.roomInfo = res.data;
        int roomid = Int32.Parse(response.message);

        sendVo.roomId = roomid;
        //			GlobalDataScript.roomVo = sendVo;
        GlobalDataScript.loginResponseData.roomId = roomid;
        //GlobalDataScript.loginResponseData.isReady = true;
        GlobalDataScript.loginResponseData.main     = true;
        GlobalDataScript.loginResponseData.isOnLine = true;

        GlobalDataScript.gamePlayPanel = PrefabManage.loadPerfab("Prefab/Panel_GamePlay");
        GlobalDataScript.gamePlayPanel.GetComponent <MyMahjongScript>().createRoomAddAvatarVO(GlobalDataScript.loginResponseData);
        closeDialog();
    }
コード例 #8
0
ファイル: EnterRoomScript.cs プロジェクト: sangjiexun/client
    public void onJoinRoomCallBack(ClientResponse response)
    {
        watingPanel.gameObject.SetActive(false);
        MyDebug.Log(response);
        if (response.status == 1)
        {
            GlobalDataScript.roomJoinResponseData = JsonMapper.ToObject <RoomCreateVo>(response.message);
            GlobalDataScript.roomVo                   = GlobalDataScript.roomJoinResponseData;
            GlobalDataScript.surplusTimes             = GlobalDataScript.roomJoinResponseData.roundNumber;
            GlobalDataScript.loginResponseData.roomId = GlobalDataScript.roomJoinResponseData.roomId;
            //loadPerfab("Prefab/Panel_GamePlay");
            GlobalDataScript.reEnterRoomData = null;

            GlobalDataScript.gamePlayPanel = PrefabManage.loadPerfab("Prefab/Panel_GamePlay");
            //SocketEventHandle.getInstance().gameReadyNotice += GlobalDataScript.gamePlayPanel.GetComponent<MyMahjongScript>().gameReadyNotice;
            //GlobalDataScript.gamePlayPanel.GetComponent<MyMahjongScript>().joinToRoom(GlobalDataScript.roomJoinResponseData.playerList);

            connectRetruen = true;
            closeDialog();
        }
        else
        {
            clear();
            TipsManagerScript.getInstance().setTips2("");
            //TipsManagerScript.getInstance();
            //watingPanel.gameObject.SetActive(true);
            //watingPanel.gameObject.transform.gameObject.SetActive(true);
            //watingPanel.gameObject.transform.FindChild("tip3/Text").GetComponent<Text>().text = response.message;


            TipsManagerScript.getInstance().setTips(response.message);
            closeDialog();
            GlobalDataScript.homePanel.GetComponent <HomePanelScript>().openEnterRoomDialog();
        }
    }
コード例 #9
0
    public void login()
    {
        if (!CustomSocket.getInstance().isConnected)
        {
            CustomSocket.getInstance().Connect();
            ChatSocket.getInstance().Connect();
            tapCount = 0;
            return;
        }



        GlobalDataScript.reinitData();         //初始化界面数据
        if (agreeProtocol.isOn)
        {
            doLogin();
            watingPanel.SetActive(true);
        }
        else
        {
            MyDebug.Log("请先同意用户使用协议");
            TipsManagerScript.getInstance().setTips("请先同意用户使用协议");
        }

        tapCount += 1;
        Invoke("resetClickNum", 10f);
    }
コード例 #10
0
//	public void toggleHongClick(){
//
//		if (zhuanzhuanGameRule [2].isOn) {
//			zhuanzhuanGameRule [0].isOn = true;
//		}
//	}
//
//	public void toggleQiangGangHuClick(){
//		if (zhuanzhuanGameRule [1].isOn) {
//			zhuanzhuanGameRule [2].isOn = false;
//		}
//	}

    public void onCreateRoomCallback(ClientResponse response)
    {
        MyDebug.Log(response.message);
        if (response.status == 1)
        {
            GlobalDataScript.reEnterRoomData = null;
            RoomCreateResponseVo responseVO = JsonMapper.ToObject <RoomCreateResponseVo> (response.message);
            int roomid = Int32.Parse(response.message);
            sendVo.roomId           = roomid;
            GlobalDataScript.roomVo = sendVo;
            GlobalDataScript.loginResponseData.roomId   = roomid;
            GlobalDataScript.loginResponseData.isReady  = true;
            GlobalDataScript.loginResponseData.main     = true;
            GlobalDataScript.loginResponseData.isOnLine = true;


            GlobalDataScript.gamePlayPanel = PrefabManage.loadPerfab("Prefab/Panel_GamePlay");

            GlobalDataScript.gamePlayPanel.GetComponent <MyMahjongScript> ().createRoomAddAvatarVO(GlobalDataScript.loginResponseData);
            GlobalDataScript.homePanel.GetComponent <HomePanelScript>().checkEnterInRoom();
            closeDialog();
        }
        else
        {
            TipsManagerScript.getInstance().setTips(response.message);
        }
    }
コード例 #11
0
    void Start()
    {
        try{
            IPAddress[] IPs = Dns.GetHostAddresses(APIS.socketUrl);
            APIS.socketUrl = IPs [0].ToString();

            IPAddress[] IPs2 = Dns.GetHostAddresses(APIS.chatSocketUrl);
            APIS.chatSocketUrl = IPs2 [0].ToString();
        }catch (Exception ex) {
            MyDebug.Log(ex.Message);
        }
        MicroPhoneInput.getInstance();
        GlobalDataScript.getInstance();
        //CustomSocket.getInstance().Connect();
        //ChatSocket.getInstance ();
        TipsManagerScript.getInstance().parent = gameObject.transform;
        SoundCtrl.getInstance();

        //检查更新
        //UpdateScript update = new UpdateScript ();
        //StartCoroutine (update.updateCheck ());

        //ServiceErrorListener seriveError = new ServiceErrorListener();
        Screen.sleepTimeout = SleepTimeout.NeverSleep;
        heartbeatThread();

        StartCoroutine(LoadGD());

        //预加载场景
        StartCoroutine(LoadRes());
    }
コード例 #12
0
    private void onJoinRoomCallBack(ClientResponse response)
    {
        Debug.Log(response);

        if (response.status == 1)
        {
            GlobalDataScript.roomJoinResponseData     = JsonMapper.ToObject <RoomJoinResponseVo>(response.message);
            GlobalDataScript.roomVo.addWordCard       = GlobalDataScript.roomJoinResponseData.addWordCard;
            GlobalDataScript.roomVo.hong              = GlobalDataScript.roomJoinResponseData.hong;
            GlobalDataScript.roomVo.ma                = GlobalDataScript.roomJoinResponseData.ma;
            GlobalDataScript.roomVo.name              = GlobalDataScript.roomJoinResponseData.name;
            GlobalDataScript.roomVo.roomId            = GlobalDataScript.roomJoinResponseData.roomId;
            GlobalDataScript.roomVo.roomType          = GlobalDataScript.roomJoinResponseData.roomType;
            GlobalDataScript.roomVo.roundNumber       = GlobalDataScript.roomJoinResponseData.roundNumber;
            GlobalDataScript.roomVo.sevenDouble       = GlobalDataScript.roomJoinResponseData.sevenDouble;
            GlobalDataScript.roomVo.xiaYu             = GlobalDataScript.roomJoinResponseData.xiaYu;
            GlobalDataScript.roomVo.ziMo              = GlobalDataScript.roomJoinResponseData.ziMo;
            GlobalDataScript.roomVo.magnification     = GlobalDataScript.roomJoinResponseData.magnification;
            GlobalDataScript.surplusTimes             = GlobalDataScript.roomJoinResponseData.roundNumber;
            GlobalDataScript.loginResponseData.roomId = GlobalDataScript.roomJoinResponseData.roomId;
            //loadPerfab("Prefab/Panel_GamePlay");
            GlobalDataScript.gamePlayPanel = PrefabManage.loadPerfab("Prefab/Panel_Game_Play");
            GlobalDataScript.gamePlayPanel.GetComponent <MyMahjongScript>().joinToRoom(GlobalDataScript.roomJoinResponseData.playerList);
            closeDialog();
        }
        else
        {
            TipsManagerScript.getInstance().setTips(response.message);
        }
    }
コード例 #13
0
    public void OnGetApplyClubCallBack(ClientResponse response)
    {
        ClubAccountVO vo = JsonMapper.ToObject <ClubAccountVO>(response.message);

        if (vo.msgcode != 0)
        {
            TipsManagerScript.getInstance().setTips(vo.msgstring);
        }
        else
        {
            isagreePanelShow = true;
            agreeListPanel.SetActive(true);
            PrefabUtils.ClearChild(agreeListGrid);
            foreach (ClubAccount ac in vo.listaccount)
            {
                GameObject     child = PrefabUtils.AddChild(agreeListGrid, agreesub);
                agreeSubScript cs    = child.GetComponent <agreeSubScript>();
                cs.setValue(ac);
                cs.agreebtn.onClick.AddListener(() =>
                {
                    ClientRequest cr  = new ClientRequest();
                    cr.headCode       = APIS.AGREE_CLUB_REQUEST;
                    cr.messageContent = "{'agree':1,'uuid':" + ac.uuid + "}";
                    CustomSocket.getInstance().sendMsg(cr);
                });
                cs.nobtn.onClick.AddListener(() =>
                {
                    ClientRequest cr  = new ClientRequest();
                    cr.headCode       = APIS.AGREE_CLUB_REQUEST;
                    cr.messageContent = "{'agree':0,'uuid':" + ac.uuid + "}";
                    CustomSocket.getInstance().sendMsg(cr);
                });
            }
        }
    }
コード例 #14
0
 public void init()
 {
     canvsTransfrom = GameObject.Find("Container").transform;
     TipsManagerScript.getInstance().parent = GameObject.Find("Canvas").transform;
     wechatOperate = GameObject.Find("Canvas").GetComponent <WechatOperateScript>();
     initMessageBox();
 }
コード例 #15
0
    /// <summary>
    /// 异步连接的回调函数
    /// </summary>
    /// <param name="ar"></param>
    private void ConnectCallback(IAsyncResult ar)
    {
        //connectDone.Set();
        if ((tcpclient != null) && (tcpclient.Connected))
        {
            stream = tcpclient.GetStream();
            asyncread(tcpclient);
            isConnected = true;
            Debug.Log("服务器已经连接!");
            MyDebug.Log("---------------ConnectCallback----------------ConnectCallback--");
        }
        else
        {
            TipsManagerScript.getInstance().setTips("连接服务器失败");
            //tcpclient.BeginConnect(IPAddress.Parse(APIS.socketUrl), APIS.socketPort, new AsyncCallback(ConnectCallback), tcpclient);
        }

        TcpClient t = (TcpClient)ar.AsyncState;

        try
        {
            t.EndConnect(ar);
        }
        catch (Exception ex)
        {
            MyDebug.Log("---------------ConnectCallback----------------Exception--");
            //设置标志,连接服务端失败!
            Debug.Log(ex.ToString());
            //tcpclient.BeginConnect(IPAddress.Parse(APIS.socketUrl), APIS.socketPort, new AsyncCallback(ConnectCallback), tcpclient);
        }
    }
コード例 #16
0
    private void ReqForCreateRoom(string msg)
    {
        int gold = 10;

        if (GlobalDataScript.userGameType == GameType.GameType_PK_DN)
        {
            gold = 5;
        }
        if (GlobalDataScript.goldType)
        {
            if (GlobalDataScript.loginResponseData.account.gold >= gold)
            {
                watingPanel.gameObject.SetActive(true);
                CustomSocket.getInstance().sendMsg(new CreateRoomRequest(msg));
                userDefaultSet = msg;
            }
            else
            {
                TipsManagerScript.getInstance().setTips("你的金币不足,不能匹配到训练场");
            }
        }
        else
        {
            if (GlobalDataScript.loginResponseData.account.roomcard > 0)
            {
                watingPanel.gameObject.SetActive(true);
                CustomSocket.getInstance().sendMsg(new CreateRoomRequest(msg));
                userDefaultSet = msg;
            }
            else
            {
                TipsManagerScript.getInstance().setTips("你的房卡数量不足,不能创建房间");
            }
        }
    }
コード例 #17
0
    /**
     * 创建划水麻将房间
     */
    public void createHuashuiRoom()
    {
        int  roundNumber = 4;     //房卡数量
        bool isZimo      = false; //自摸
        bool isFengpai   = false; //七小对
        int  maCount     = 0;

        for (int i = 0; i < huashuiRoomCards.Count; i++)
        {
            Toggle item = huashuiRoomCards [i];
            if (item.isOn)
            {
                if (i == 0)
                {
                    roundNumber = 8;
                }
                else if (i == 1)
                {
                    roundNumber = 16;
                }
                break;
            }
        }
        if (huashuiGameRule [0].isOn)
        {
            isFengpai = true;
        }
        if (huashuiGameRule [1].isOn)
        {
            isZimo = true;
        }


        for (int i = 0; i < huashuixiayu.Count; i++)
        {
            if (huashuixiayu [i].isOn)
            {
                maCount = 2 * (i + 1);
                break;
            }
        }

        sendVo             = new RoomCreateVo();
        sendVo.xiaYu       = maCount;
        sendVo.roundNumber = roundNumber;
        sendVo.ziMo        = isZimo?1:0;
        sendVo.roomType    = GameConfig.GAME_TYPE_HUASHUI;
        sendVo.addWordCard = isFengpai;
        sendVo.sevenDouble = true;
        string sendmsgstr = JsonMapper.ToJson(sendVo);

        if (GlobalDataScript.loginResponseData.account.roomcard > 0)
        {
            CustomSocket.getInstance().sendMsg(new CreateRoomRequest(sendmsgstr));
        }
        else
        {
            TipsManagerScript.getInstance().setTips("你的房卡数量不足,不能创建房间");
        }
    }
コード例 #18
0
    //对比版本虚
    public void compareVersion()
    {
        int currentVerCode;       //当前版本号数字
        int serverVerCode;        //服务器上版本号数字

        currentVersion = currentVersion.Replace(".", "");
        currentVerCode = int.Parse(currentVersion);
        Version123 versionTemp = new Version123();        //版本信息

        //versionTemp = serviceVersionVo.Android;
        if (Application.platform == RuntimePlatform.Android)
        {
            versionTemp = serviceVersionVo.Android;
        }
        else if (Application.platform == RuntimePlatform.IPhonePlayer)
        {
            versionTemp = serviceVersionVo.ios;
        }

        if (versionTemp != null && versionTemp.version != null)
        {
            serverVersion = versionTemp.version;
            serverVersion = serverVersion.Replace(".", "");
            serverVerCode = int.Parse(serverVersion);
            if (serverVerCode > currentVerCode)              //服务器上有新版本
            {
                string note = versionTemp.note;
                downloadPath = versionTemp.url;

                TipsManagerScript.getInstance().loadDialog("发现新版本软件", note, onSureClick, onCancle);
            }
        }
    }
コード例 #19
0
ファイル: EnterRoomScript.cs プロジェクト: iuvei/PKGame
    public void sureRoomNumber()
    {
        if (inputChars.Count != 6)
        {
            MyDebug.Log("请先完整输入房间号码!");

            TipsManagerScript.getInstance().setTips("请先完整输入房间号码!");
            return;
        }

        if (watingPanel != null)
        {
            watingPanel.gameObject.SetActive(true);
        }


        String roomNumber = inputChars[0] + inputChars[1] + inputChars[2] + inputChars[3] + inputChars[4] + inputChars[5];

        MyDebug.Log(roomNumber + "此处加入房间输入房间号,并发送到服务器判断是否有此房间存在");
        RoomJoinVo roomJoinVo = new RoomJoinVo();

        roomJoinVo.roomId = int.Parse(roomNumber);
        string sendMsg = JsonMapper.ToJson(roomJoinVo);

        StartCoroutine(ConnectTime(4f, 1));
        CustomSocket sok = CustomSocket.getInstance();

        sok.sendMsg(new JoinRoomRequest(sendMsg));

        if (SocketEventHandle.getInstance().serviceErrorNotice != null)
        {
            SocketEventHandle.getInstance().serviceErrorNotice = null;
        }
        SocketEventHandle.getInstance().serviceErrorNotice += serviceErrorNotice;
    }
コード例 #20
0
    public void init()
    {
        //socketEventHandle = GameObject.Find ("Canvas").transform.GetComponent<SocketEventHandle> ();
        canvsTransfrom = GameObject.Find("container").transform;
        TipsManagerScript.getInstance().parent = GameObject.Find("Canvas").transform;
//		wechatOperate = GameObject.Find("Canvas").GetComponent<WechatOperateScript>();
        initMessageBox();
    }
コード例 #21
0
ファイル: TipsManagerScript.cs プロジェクト: YLancer/DN
 public static TipsManagerScript getInstance()
 {
     if (_instance == null)
     {
         _instance = new TipsManagerScript();
     }
     return(_instance);
 }
コード例 #22
0
 void Start()
 {
     SocketEventHandle.getInstance().giftResponse += giftResponse;
     CommonEvent.getInstance().prizeCountChange   += prizeCountChange;
     CustomSocket.getInstance().sendMsg(new GetGiftRequest("0"));
     choujiangNum.text = GlobalDataScript.loginResponseData.account.prizecount + "";
     TipsManagerScript.getInstance().setTips2("");
 }
コード例 #23
0
    /**
     * 创建长沙麻将房间
     */
    public void createChangshaRoom()
    {
        int  roundNumber = 4;     //房卡数量
        bool isZimo      = false; //自摸
        int  maCount     = 0;

        for (int i = 0; i < changshaRoomCards.Count; i++)
        {
            Toggle item = changshaRoomCards[i];
            if (item.isOn)
            {
                if (i == 0)
                {
                    roundNumber = 8;
                }
                else if (i == 1)
                {
                    roundNumber = 16;
                }
                break;
            }
        }
        if (changshaGameRule [0].isOn)
        {
            isZimo = true;
        }
        for (int i = 0; i < changshaZhuama.Count; i++)
        {
            if (changshaZhuama[i].isOn)
            {
                // pow(x,y) 返回值 x 的 y 次幂。
                maCount = (int)Math.Pow(2, i);
                break;
            }
        }
        sendVo = new RoomCreateVo();
        // 游戏倍数
        sendVo.magnification = maCount;
        // 游戏局数
        sendVo.roundNumber = roundNumber;
        // 设置游戏类型
        sendVo.roomType = GameConfig.GAME_TYPE_CHANGSHA;
        // 设置是否只允许自摸才能胡牌
        sendVo.ziMo = isZimo?1:0;
        string sendMessage = JsonMapper.ToJson(sendVo);

        Debug.Log(sendMessage);
        if (GlobalDataScript.loginResponseData.account.roomCard > 0)
        {
            CustomSocket.getInstance().sendMsg(new CreateRoomRequest(sendMessage));
        }
        else
        {
            TipsManagerScript.getInstance().setTips("你的房卡数量不足,不能创建房间");
        }
    }
コード例 #24
0
    public void init()
    {
        //socketEventHandle = GameObject.Find ("Canvas").transform.GetComponent<SocketEventHandle> ();
        canvsTransfrom = GameObject.Find("container").transform;
        TipsManagerScript.getInstance().parent = GameObject.Find("Canvas").transform;
        wechatOperate = GameObject.Find("Canvas").GetComponent <WechatOperateScript>();
        initMessageBox();

        headSprite = Resources.Load("xianlai/public_ui/head_img_male", typeof(Sprite)) as Sprite;
    }
コード例 #25
0
    // Update is called once per frame
    void Update()
    {
        if (ButtonCallbackMethod.instant.isBegin && isbegin)
        {
            startGame();
            isbegin = false;

            TipsManagerScript.getInstance().loadDialog("说明", "这是一款单机版的长沙麻将 旨在为做联机版麻将做铺垫 电脑没有ai 只是傻瓜式把拿到的牌出出去 我是新手 对框架等理解的不好 想到什么写什么 所以代码非常的乱 但是基本逻辑都在 欢迎大家和我讨论vx:mzzy1029zy", doDissoliveRoomRequest, cancle);
        }
    }
コード例 #26
0
    private void DiscoverPCHG()
    {
        // 记录玩家手里的牌有几个等于最新桌面上出的牌
        int sum = 0;

        // 遍历自己的牌

        for (int i = 0; i < handerCardList [0].Count; i++)
        {
            // 检测 碰吃胡
            if (handerCardList[0][i].GetComponent <bottomScript>().getPoint() == cardPoint)
            {
                // 如果有三个等于 就是杠 如果两个等于就是碰

                sum = sum + 1;
            }
        }

        if (sum == 3)
        {
            // 碰 杠全部打开

            btnActioonScript.ShowBtn(2);
            btnActioonScript.ShowBtn(3);

            Debug.Log("当前可以碰杠");
        }
        else if (sum == 2)
        {
            // 碰打开
            btnActioonScript.ShowBtn(3);
            Debug.Log("当前可以碰");
        }
        else if (sum == 0 || sum == 1)
        {
            TipsManagerScript.getInstance().setTips("当前牌碰不到杠不到胡不到");

            // 不可以碰 吃 杠 胡 那么就下位玩家出牌
            // 上家top玩家出牌
            isChuPaiT = true;
            CurrentPutCardPlayerTop("T");
            // 时间重置16s
            timer = 16;

            timeCount.text = timer.ToString();
            isTimeSub      = true;
        }

        // 检测是否胡
//		else if()
//		{
//
//
//		}
    }
コード例 #27
0
ファイル: LotteryPanelScript.cs プロジェクト: YLancer/DN
    public void giftResponse(ClientResponse response)
    {
        //TipsManagerScript.getInstance().setTips("----:" + response.message);
        JsonData data = JsonMapper.ToObject(response.message);

        if (int.Parse(data ["type"].ToString()) == 2)
        {
            TipsManagerScript.getInstance().setTips("抽奖活动暂时没有开放,3秒后将关闭对话框");
            Invoke("closeDialog", 3f);
        }
        else if (int.Parse(data ["type"].ToString()) == 3)
        {
            TipsManagerScript.getInstance().setTips("您今天未玩过游戏还不能抽奖");
            //Invoke ("closeDialog",3f);
        }
        else
        {
            try
            {
                giftDes = JsonMapper.ToObject <GiftList> (response.message);

                if (giftDes.type == "0")  //所有
                                          //ruleText.text = giftDes.data[0].notice;
                {
                    for (int i = 0; i < giftDes.data.Count; i++)
                    {
                        GiftItemVo itemData = giftDes.data [i];
                        lotteryItems [i].nameTxt.text = itemData.prizeName;
                        lotteryItems [i].setPic(itemData.imageUrl);
                    }
                }
            }catch (Exception e) {
                if (GlobalDataScript.loginResponseData.account.prizecount > 0)
                {
                    GlobalDataScript.loginResponseData.account.prizecount--;
                    choujiangNum.text = GlobalDataScript.loginResponseData.account.prizecount + "";
                }
                Drawl returndata = JsonMapper.ToObject <Drawl> (response.message);
                StopIndex = returndata.data;
                MyDebug.Log("StopIndex" + StopIndex);
                if (action == false)
                {
                    float a = UnityEngine.Random.Range(-2, 2f);
                    end = Math.Abs(StopIndex * 36 - 34 + a);
                    MyDebug.Log("end = " + end);
                    x        = 0;
                    action   = true;
                    callBack = true;
                }
            }
        }

        callBack = true;
    }
コード例 #28
0
 public void AuthResultHandle(int reqID, ResponseState state, PlatformType type, Hashtable data)
 {
     if (state == ResponseState.Success)
     {
         shareSdk.GetUserInfo(PlatformType.WeChat);
     }
     else if (state == ResponseState.Fail)
     {
         TipsManagerScript.getInstance().setTips("微信登录失败");
     }
 }
コード例 #29
0
    /**
     * 创建长沙麻将房间
     */
    public void createChangshaRoom()
    {
        SoundCtrl.getInstance().playSoundByActionButton(1);
        int  roundNumber = 4;     //房卡数量
        bool isZimo      = false; //自摸
        int  maCount     = 0;

        for (int i = 0; i < changshaRoomCards.Count; i++)
        {
            Toggle item = changshaRoomCards [i];
            if (item.isOn)
            {
                if (i == 0)
                {
                    roundNumber = 8;
                }
                else if (i == 1)
                {
                    roundNumber = 16;
                }
                break;
            }
        }
        if (changshaGameRule [0].isOn)
        {
            isZimo = true;
        }

        for (int i = 0; i < changshaZhuama.Count; i++)
        {
            if (changshaZhuama [i].isOn)
            {
                maCount = 2 * (i + 1);
                break;
            }
        }

        sendVo             = new RoomCreateVo();
        sendVo.ma          = maCount;
        sendVo.roundNumber = roundNumber;
        sendVo.ziMo        = isZimo?1:0;
        sendVo.roomType    = GameConfig.GAME_TYPE_CHANGSHA;
        string sendmsgstr = JsonMapper.ToJson(sendVo);

        if (GlobalDataScript.loginResponseData.account.roomcard > 0)
        {
            watingPanel.gameObject.SetActive(true);
            CustomSocket.getInstance().sendMsg(new CreateRoomRequest(sendmsgstr));
        }
        else
        {
            TipsManagerScript.getInstance().setTips("你的房卡数量不足,不能创建房间");
        }
    }
コード例 #30
0
    /**
     * 创建长沙麻将房间
     */
    public void createChangshaRoom()
    {
        int  roundNumber = 4;     //房卡数量
        bool isZimo      = false; //自摸
        int  maCount     = 0;

        for (int i = 0; i < changshaRoomCards.Count; i++)
        {
            Toggle item = changshaRoomCards [i];
            if (item.isOn)
            {
                if (i == 0)
                {
                    roundNumber = 8;
                }
                else if (i == 1)
                {
                    roundNumber = 16;
                }
                break;
            }
        }

        /*
         * if (changshaGameRule [0].isOn) {
         *      isZimo = true;
         * }
         */
        //	isZimo = true;
        for (int i = 0; i < changshaZhuama.Count; i++)
        {
            if (changshaZhuama [i].isOn)
            {
                maCount = (int)Math.Pow(2, i);
                break;
            }
        }

        sendVo = new RoomCreateVo();
        sendVo.magnification = maCount;
        sendVo.roundNumber   = roundNumber;
        //sendVo.ziMo = isZimo?1:0;
        sendVo.roomType = GameConfig.GAME_TYPE_CHANGSHA;
        string sendmsgstr = JsonMapper.ToJson(sendVo);

        if (GlobalDataScript.loginResponseData.account.roomcard > 0)
        {
            CustomSocket.getInstance().sendMsg(new CreateRoomRequest(sendmsgstr));
        }
        else
        {
            TipsManagerScript.getInstance().setTips("你的房卡数量不足,不能创建房间");
        }
    }