Example #1
0
        //投票 解散房间
        public void SendRequestHandsUp(object data)
        {
            int        type     = (int)data;
            JhUserInfo userInfo = GameData.GetPlayerInfo <JhUserInfo>();

            if (GameData.GStatus > YxEGameStatus.Normal)
            {
                ISFSObject iobj = new SFSObject();
                iobj.PutUtfString("cmd", "dismiss");
                iobj.PutInt(RequestKey.KeyType, type);
                iobj.PutInt(RequestKey.KeyId, int.Parse(userInfo.UserId));
                SendFrameRequest("hup", iobj);
            }
            else
            {
                //局外只有房主才能解散,其他玩家只能退出
                if (int.Parse(userInfo.UserId) == GameData.OwnerId)
                {
                    SendFrameRequest("dissolve", new SFSObject());
                }
                else
                {
                    EventObj.SendEvent("GameManagerEvent", "Quit", null);
                }
            }
        }
Example #2
0
        public override void OnGetGameInfo(ISFSObject gameInfo)
        {
            GameData.SetGameStatus();
            JhUserInfo player = GameData.GetPlayerInfo <JhUserInfo>();

            if (GameData.IsCreatRoom)
            {
                GameData.HupUp.OnGameInfo(gameInfo);
                GameData.GStatus = gameInfo.GetBool("playing") ? YxEGameStatus.Play : YxEGameStatus.Normal;
            }
            else
            {
                if (GameData.RStatus == RoomStatus.Over && player.IsPlaying())
                {
                    GameData.GStatus = YxEGameStatus.Over;
                }
                else if (GameData.RStatus > RoomStatus.CanStart && player.IsPlaying())
                {
                    GameData.GStatus = YxEGameStatus.PlayAndConfine;
                }
                else
                {
                    GameData.GStatus = YxEGameStatus.Ready;
                }
            }
        }
Example #3
0
        //跟注
        protected void SendRequestFollow(object data)
        {
            JhUserInfo userInfo = GameData.GetPlayerInfo <JhUserInfo>();
            int        gold     = (int?)data ?? GameData.SingleBet;

            if (gold < GameData.SingleBet)
            {
                gold = GameData.SingleBet;
            }
            if (userInfo.IsLook)
            {
                gold *= 2;
            }
            if (!GameData.IsCreatRoom && gold > userInfo.CoinA)
            {
                return;
            }

            ISFSObject isfsSata = new SFSObject();

            isfsSata.PutInt(RequestKey.KeyGold, gold);
            isfsSata.PutInt(RequestKey.KeyType, JhTypeKey.TypeGenZhu);
            SendGameRequest(isfsSata);
        }