public bool CouldBet(long gold) { var gdata = App.GetGameData <BrttzGameData>(); if (!gdata.BeginBet) { YxMessageTip.Show("下注时间到,不能下注。"); return(false); } if (gold > gdata.CurrentCanInGold) { YxMessageTip.Show("庄家的金币不够,不能下注。"); return(false); } if (gold > gdata.ThisCanInGold) { YxMessageTip.Show("您的金币不够,不能下注。"); return(false); } if (gdata.BankerPlayer.Info.Seat == gdata.SelfSeat) { YxMessageTip.Show("您是庄家,不能下注。"); return(false); } return(true); }
public bool CouldBet(long gold) { var gdata = App.GetGameData <BrnnGameData>(); if (!gdata.BeginBet) { YxMessageTip.Show("下注时间到,不能下注。"); return(false); } if (gold > gdata.ThisCanInGold) { YxMessageTip.Show(string.Format("你最多只能下注您所有金币的1/{0}。", gdata.MaxNiuRate)); return(false); } if (gold > gdata.CurrentCanInGold) { YxMessageTip.Show("庄家的金币不够,不能下注。"); return(false); } if (gdata.CurrentBanker.Info == null || gdata.CurrentBanker.Info.Seat == -1) { YxMessageTip.Show("当前没有庄,不能下注。"); return(false); } return(true); }
// 发送开始游戏请求 private void StartRequest() { var gdata = App.GetGameData <SlyzGameData>(); // 初始化游戏数据 if (App.GetGameData <SlyzGameData>().GMessage.OnGameInit == null) { return; } App.GetGameData <SlyzGameData>().GMessage.OnGameInit(); long deductGold = Mathf.Abs(gdata.Ante * 4 * 110 / 100); var player = gdata.GetPlayer(gdata.SelfLocalSeat); if (player.Coin < deductGold) { YxMessageTip.Show("金币不足!"); if (mIsAutoStart) { mIsAutoStart = false; } return; } player.Coin -= deductGold; if (App.GetGameData <SlyzGameData>().GMessage.OnShowTotalGlod != null) { App.GetGameData <SlyzGameData>().GMessage.OnShowTotalGlod(); } // 发送请求数据 App.GetRServer <SlyzGameServer>().SendStart(); Facade.Instance <MusicManager>().Play("FlopCards"); }
/// <summary> /// 是否可以下注 /// </summary> /// <param name="gold"></param> /// <returns></returns> public bool IsBet(int gold) { if (!BetManager.GetInstance().IsBeginBet) { return(false); } var gameMgr = App.GetGameManager <CschGameManager>(); var self = App.GameData.GetPlayerInfo(); if (gameMgr.BankerMgr.IsBanker(self.Seat)) { YxMessageTip.Show("您是店主,不能跟自己玩哦!"); return(false); } if (self.CoinA < gold) { YxMessageTip.Show("金币不足,请充值或换更小的筹码!"); return(false); } if (gold > CanBet) { YxMessageTip.Show("不能下注,店家金币不足!"); return(false); } return(true); }
public void OnFengGangSure() { var selectCount = _selectList.Count; if (selectCount != 3 && selectCount != 4) { YxMessageTip.Show("风杠选择数量不正确,请重新选择!"); ResetSelect(); return; } var checkList = new List <int>(); foreach (var mahJongItem in _selectList) { if (mahJongItem) { checkList.Add(mahJongItem.Value); } } checkList.Sort(); if (FengGangHelper.Instance.CheckFengGangLimit(checkList)) { if (OnFengSureEvent != null) { OnFengSureEvent(checkList); } OnClose(); } else { YxMessageTip.Show("牌型选择错误,请重新选择!"); ResetSelect(); } }
/// <summary> /// 申请下庄 /// </summary> public void ApplyQuitBanker() { if (Data.IsOnBanker) { YxMessageTip.Show(GameConifig.QuitBankerNotice); } App.GetRServer <NbjlGameServer>().ApplyQuitBanker(); }
public override void GameResponseStatus(int type, ISFSObject response) { var gdata = App.GetGameData <BrnnGameData>(); switch (type) { case RequestType.BeginBet: Reset(); WaitView.Hide(); base.GameResponseStatus(type, response); if (response.ContainsKey("bankRound")) { gdata.CurrentBanker.SetBankerTime(response.GetInt("bankRound")); } else { gdata.CurrentBanker.HideBankerTime(); } YxMessageTip.Show("开始下注"); break; case RequestType.EndBet: WaitView.Hide(); base.GameResponseStatus(type, response); YxMessageTip.Show("停止下注"); break; case RequestType.Result: WaitView.Hide(); gdata.SetGameStatus(YxEGameStatus.Normal); CardsCtrl.ReceiveResult(response); ResultBet(CardsCtrl.Bpg, ShowNumCtrl.ZBet); StartCoroutine(ResultMoveChip()); if (ResultWin != null) { if (!isCounting) { StartCoroutine(ShowResultView(response)); } } TableResultInfo.ShowTableResultInfo(response); UserListCtrl.RefreshBanker(response); RefreshSelf(response); gdata.GetPlayer <BrnnPlayer>().ReSet(); ApplyCtrl.HideApplyBanker(); ProgressCtrl.SetNum(response); break; default: base.GameResponseStatus(type, response); break; } }
/// <summary> /// 申请上庄 /// </summary> public void ApplyBanker() { if (Data.CurPlayerInfo.CoinA < Data.BankerLimit) { YxMessageTip.Show(GameConifig.BankerGoldNotEnough); return; } App.GetRServer <NbjlGameServer>().ApplyBanker(); }
/// <summary> /// 尝试下注 /// </summary> public bool CheckBet() { if (CurrentChipValue > App.GameData.GetPlayerInfo().CoinA) { YxMessageTip.Show(GameConifig.MoneyIsNotEnough); return(false); } return(true); }
/// <summary> /// 遥控骰子失败交互 /// </summary> /// <param name="data"></param> private void ControlDicResult(ISFSObject data) { if (data.ContainsKey(RequestKey.KeyMessage)) { string errmeg = ""; SfsHelper.Parse(data, RequestKey.KeyMessage, ref errmeg); YxMessageTip.Show(errmeg); GameData.MainUser.OnControlDiceFail(); } }
public void GetIsXiPai(ISFSObject data) { if ((data.ContainsKey(Parameter.XiPai) && data.GetBool(Parameter.XiPai)) || IsNeedRefresh) { HasGiveNum = 0; InitHistoryCards(); YxMessageTip.Show("开始洗牌"); } ShowAllCards(); RefreshHistoryCards(); }
/// <summary> /// 减分 /// </summary> public void DedCurScore() { if (_curScore <= 0) { YxMessageTip.Show("没有可下的分数啦!"); return; } var selfPlayer = GetPlayer(SelfLocalSeat); selfPlayer.Coin += _curScore; _curScore = 0; }
public void AddCurScore() { int upScore = Ante * 8; var selfPlayer = GetPlayer(SelfLocalSeat); if (selfPlayer.Coin <= upScore) { YxMessageTip.Show("您的金币不足!"); return; } selfPlayer.Coin -= upScore; _curScore += upScore; }
/// <summary> /// 重复上轮 /// </summary> public void OnClickLastTime() { var self = App.GameData.GetPlayerInfo(); if (App.GetGameManager <CschGameManager>().BankerMgr.IsBanker(self.Seat))// || CurNum == LastTimeNum) { return; } if (!BetManager.GetInstance().IsBeginBet) { return; } if (App.GetGameManager <CschGameManager>().BankerMgr.IsBanker(self.Seat)) { YxMessageTip.Show("您是店主,不能跟自己玩哦!"); return; } var golds = UpValue.ToArray(); var gold = 0; var regions = App.GetGameManager <CschGameManager>().Regions; for (int i = 0; i < golds.Length; i++) { if (golds[i] > regions[i].CanBet) { //golds[i] = 0; LastTime.isEnabled = false; YxMessageTip.Show("不能下注,店家金币不足!"); return; } gold += golds[i]; } if (self.CoinA < gold) { YxMessageTip.Show("金币不足,请充值或换更小的筹码!"); return; } IDictionary bet = new Dictionary <string, object>(); bet.Add("golds", golds); CschGameServer.GetInstance().SendRequest(RequestType.Bet, bet); //LastTime.isEnabled = false; }
public void OnRechargeClick() { if (_curType == null) { return; } var goodsInfo = GetData <YxGoods>(); if (goodsInfo.BuyNum <= 0) { YxMessageTip.Show("请输入金额", 3); return; } OnPayClick(goodsInfo, _curType); }
public void SendLastGameBet() { int[] wBet = ShowNumCtrl.LastWBet; long sum = GetSum(wBet); if (wBet == null || sum == 0) { YxMessageTip.Show("上局游戏您没有下注!!"); return; } if (BetCtrl.CouldBet(sum)) { App.GetRServer <BrnnGameServer>().BetAsLastGame(wBet); } }
/// <summary> /// 下注阶段检测 /// </summary> /// <returns></returns> public bool CheckBetState() { var canBet = true; if (Data.IsOnBanker) { YxMessageTip.Show(GameConifig.OnBankerCanNotBet); canBet = false; } if (Data.ReqStatus != ServerRequest.ReqBeginBet) { YxMessageTip.Show(GameConifig.OutOfBetStateNotice); canBet = false; } return(canBet); }
/// <summary> /// 申请上庄 /// </summary> public void ApplyBanker() { if (App.GameData.GetPlayerInfo() == null) { return; } if (App.GameData.GetPlayerInfo().CoinA < BankerLimit) { var limit = YxUtiles.GetShowNumberToString(BankerLimit); YxMessageTip.Show("开店资金需要" + limit + "金币."); return; } CschGameServer.GetInstance().SendRequest(RequestType.ApplyBanker, null); }
public void OnOqCopy() { var dict = GetData <Dictionary <string, object> >(); if (dict == null || !dict.ContainsKey("qrcodeStr")) { return; } var qrcodeStr = dict["qrcodeStr"].ToString(); if (string.IsNullOrEmpty(qrcodeStr)) { return; } Facade.Instance <YxGameTools>().PasteBoard = qrcodeStr; YxMessageTip.Show("复制成功!", 3); }
public virtual void ApplyOne() { switch (Status) { case 1: App.GetRServer <BtwGameServer>().ApplyBankerOne(); break; case 0: App.GetRServer <BtwGameServer>().ApplyQuitOne(); break; case 2: var s = YxUtiles.ReduceNumber(App.GetGameData <BtwGameData>().MiniApplyBanker); YxMessageTip.Show(string.Format("金币大于{0}可以申请成为团长...", s)); break; } }
/// <summary> /// 重新下注 /// </summary> public void ReBets() { if (CheckBetState()) { var history = Data.BetHistory.HistoryBets; var checkValue = Data.BetHistory.Sum(); if (checkValue == 0) { YxMessageTip.Show(GameConifig.HaveNotBet); return; } if (checkValue > App.GameData.GetPlayerInfo().CoinA) { YxMessageTip.Show(GameConifig.MoneyIsNotEnough); return; } App.GetRServer <NbjlGameServer>().UserBets(history); } }
public void BankerBtnOnClick() { var gserver = App.GetRServer <BjlGameServer>(); switch (CurBankerType) { case BankerType.StayedBanker: gserver.ApplyQuit(); break; case BankerType.CanBecomeBanker: gserver.ApplyBanker(); break; case BankerType.CanNotBeBanker: YxMessageTip.Show(string.Format("金!币!大于{0}可以申请成为庄家...", YxUtiles.GetShowNumberForm(MinApplyBanker))); break; } }
private void SendContent(string content) { var cur = DateTime.Now; var c = cur - _lastTalkTime; if (c.TotalMilliseconds < TalkCycle) { YxMessageTip.Show("慢点,频率太快了!!!"); return; } _lastTalkTime = cur; // todo 类型 // 世界、队伍、私聊、系统、喇叭 // [05:55][世界]玩家:内容 YxChatManager.SendChatContent(content); //普通内容格式 // /chat 类型 内容 [from] [to] }
private void SendContent(string content) { var cur = DateTime.Now; var c = cur - _lastTalkTime; if (c.TotalMilliseconds < TalkCycle) { YxMessageTip.Show("慢点,频率太快了!!!"); return; } _lastTalkTime = cur; if (Type == ExpType.Normal) { YxChatManager.SendChatContent(string.Format("/{0} {1}", YxChatManager.ChatCmd.Exp, content)); return; } if (AttackIndex == -1) { return; } YxChatManager.SendChatContent(string.Format("/{0} {1} {2}", YxChatManager.ChatCmd.HeadExp, content, AttackIndex)); }
public virtual void Apply() { switch (Status) { case 0: App.GetRServer <BrnnGameServer>().ApplyQuit(); if (App.GetGameData <BrnnGameData>().IsBanker) { YxMessageTip.Show("此局游戏结束后自动下庄,请稍后!!!"); } break; case 1: App.GetRServer <BrnnGameServer>().ApplyBanker(); break; case 2: YxMessageTip.Show("金币大于" + YxUtiles.ReduceNumber(App.GetGameData <BrnnGameData>().MiniApplyBanker) + "可以申请成为庄家..."); break; } }
/// <summary> /// 发送验证码请求 /// </summary> public void OnSendVerification(UIButton btn, UILabel label) { if (!btn.isEnabled) { YxMessageTip.Show("验证码已发送,请稍后再试!"); return; } _veriBtn = btn; _verifyLabel = label; var phone = MobileNumInput.value; if (string.IsNullOrEmpty(phone) || phone.Length < 11) { YxMessageBox.Show("请输入手机号码!!!"); return; } btn.isEnabled = false; var parm = new Dictionary <string, object>(); parm["phone"] = phone; Facade.Instance <TwManager>().SendAction("sendTelephoneVerify", parm, OnVerificationSuccess, true, OnFaile); _coroutine = StartCoroutine(VerifFinishCyc(btn, label)); }
public virtual void Apply() { var gdata = App.GetGameData <BrttzGameData>(); switch (Status) { case 1: App.GetRServer <BrttzGameServer>().ApplyBanker(); break; case 0: App.GetRServer <BrttzGameServer>().ApplyQuit(); if (gdata.GetPlayerInfo(0).Seat == gdata.BankerPlayer.Info.Seat) { YxMessageTip.Show("此局游戏结束后自动下庄,请稍后!!!"); } break; case 2: var s = YxUtiles.ReduceNumber(App.GetGameData <BrttzGameData>().MiniApplyBanker); YxMessageTip.Show(string.Format("金币大于{0}可以申请成为团长...", s)); break; } }
// 发送开始游戏请求 private void SendStartRequest() { var eventCenter = Facade.EventCenter; if (ScoreTipObj != null) { ScoreTipObj.SetActive(false); } if (_mIsStarting) { eventCenter.DispatchEvent <Mx97EventType, object>(Mx97EventType.StopScrollAni); _mBtnStart.GetComponent <UIButton>().isEnabled = false; if (_mIsAutoStart) { _mIsAutoStart = false; } } else { var gdata = App.GetGameData <Mx97GlobalData>(); var curScore = gdata.CurScore; var betScore = gdata.CurBet; if (curScore < betScore) { if (!GameObject.FindWithTag("Tips")) { YxMessageTip.Show("当前分数不能低于押注分数,请上分!"); } if (_mIsAutoStart) { _mIsAutoStart = false; } return; } if (curScore > gdata.GetPlayer().Coin) { if (!GameObject.FindWithTag("Tips")) { YxMessageTip.Show("当前分数已超出上限!"); } if (_mIsAutoStart) { _mIsAutoStart = false; } return; } gdata.AddCurScore(-betScore); eventCenter.DispatchEvent <Mx97EventType, object>(Mx97EventType.RefreshCurScore); // 发送请求数据 SFSObject data = SFSObject.NewInstance(); data.PutInt(RequestKey.KeyType, 1); data.PutInt("ante", gdata.CurAnte); App.GetRServer <Mx97RemoteController>().SendGameRequest(data); eventCenter.DispatchEvent <Mx97EventType, object>(Mx97EventType.InitGameResult); _mBtnStart.GetComponent <UIButton>().isEnabled = false; } _mIsStarting = !_mIsStarting; }
public override void GameResponseStatus(int type, ISFSObject response) { var gdata = App.GetGameData <BrttzGameData>(); switch (type) { case RequestType.BankerList: YxDebug.Log("----------------获取上庄列表:----" + type); BankerListCtrl.RefreshBankerList(response); ProgressCtrl.SetNum(response); BetCtrl.ShowChip(); break; case RequestType.StartBet: YxDebug.Log("----------------开始下注:----" + type); Wait.Hide(); gdata.BeginBet = true; gdata.SetGameStatus(YxEGameStatus.Play); if (!HaveCardShow) { ResetData(); BrttzCardsCtrl.GetIsXiPai(response); } ApplyCtrl.RefreshBanker(); if (gdata.BankerPlayer.Info.Seat != -1) { gdata.BankerPlayer.AddBankerTime(); } var startCd = response.ContainsKey(Parameter.Cd) ? response.GetInt(Parameter.Cd) : 18; ProgressCtrl.ReSetCountdown(startCd + 1, type); ProgressCtrl.BeginCountdown(true); CanQuitGame = true; if (PlayerManager != null) { PlayerManager.InitTablePlayerInfo(response); } YxMessageTip.Show("开始下注"); break; case RequestType.StopBet: YxDebug.Log("----------------停止下注:----" + type); gdata.SetGameStatus(YxEGameStatus.Play); gdata.BeginBet = false; BetCtrl.HideChip(); var endCd = response.ContainsKey(Parameter.Cd) ? response.GetInt(Parameter.Cd) : 14; ProgressCtrl.ReSetCountdown(endCd, type); ProgressCtrl.BeginCountdown(); if (!HaveCardShow) { BrttzCardsCtrl.GetDicesPoints(response); } break; case RequestType.Bet: YxDebug.Log("----------------下注:----" + type); gdata.SetGameStatus(YxEGameStatus.Play); BetCtrl.Bet(response); ProgressCtrl.RefreshNum(response); ShowNumCtrl.RefreshNum(response); if (response.GetInt("seat") == gdata.SelfSeat && gdata.GetPlayerInfo().CoinA < gdata.MiniApplyBanker) { ApplyCtrl.Instance.SetStutus(2); } break; case RequestType.SendCard: YxDebug.Log("----------------发牌:----" + type); gdata.SetGameStatus(YxEGameStatus.Play); BrttzCardsCtrl.BeginGiveCards(response); break; case RequestType.Result: YxDebug.Log("----------------结算:----" + type); Wait.Hide(); gdata.SetGameStatus(YxEGameStatus.Normal); BrttzCardsCtrl.ReceiveResult(response); ResultBet(BrttzCardsCtrl.Bpg, ShowNumCtrl.ZBet); StartCoroutine("ResultMoveChip"); TableResultInfo.ShowTableResultInfo(response); RefreshSelf(response); ResultListCtrl.AddResult(response.GetIntArray("wins")); ApplyCtrl.HideApplyBanker(); ProgressCtrl.SetNumOnResult(response); CanQuitGame = true; break; case RequestType.GroupBet: YxDebug.Log("----------------流式下注:----" + type); BetCtrl.GroupBet(response); ProgressCtrl.GroupRefreshNum(response); ShowNumCtrl.GroupRefreshNum(response); break; default: YxDebug.Log("Wrong RequestType : " + type); break; } OnGetPlayers(response); }
public override void GameResponseStatus(int type, ISFSObject response) { if (response.ContainsKey("playerlist") && !response.IsNull("playerlist")) { var playerStr = response.GetUtfStringArray("playerlist"); UserListCtrl.RefreshPlayer(playerStr); } var gdata = App.GetGameData <BtwGameData>(); switch ((BtwRequestType)type) { case BtwRequestType.Bet: YxDebug.Log("-----------------下注--------------"); WaitWin.Hide(); BetCtrl.Bet(response); ShowNumCtrl.RefreshNum(response); break; case BtwRequestType.BankerList: YxDebug.Log("-----------------上庄列表--------------"); WaitWin.Hide(); UserListCtrl.RefreshBanker(response); ProgressCtrl.SetNum(response); BetCtrl.ShowChip(); break; case BtwRequestType.BeginBet: YxDebug.Log("-----------------开始下注--------------"); WaitWin.Hide(); gdata.BeginBet = true; CardsCtrl.ReSetPonits(); CardsCtrl.gameObject.SetActive(false); ShowNumCtrl.Reset(); ReSetGame(); BetCtrl.ShowChip(); ProgressCtrl.ReSetCountdown(15); ProgressCtrl.BeginCountdown(); ApplyCtrl.RefreshBanker(); TimeBet.gameObject.SetActive(true); YxMessageTip.Show("开始下注"); break; case BtwRequestType.EndBet: YxDebug.Log("-----------------停止下注--------------"); gdata.BeginBet = false; BetCtrl.HideChip(); ProgressCtrl.EndCountdown(); TimeBet.gameObject.SetActive(false); WaitWin.Hide(); break; case BtwRequestType.GiveCards: YxDebug.Log("-----------------发牌--------------"); CardsCtrl.BeginGiveCards(response); CardsCtrl.gameObject.SetActive(true); WaitWin.Hide(); break; case BtwRequestType.Result: YxDebug.Log("-----------------结算--------------"); gdata.GStatus = YxEGameStatus.Normal; if (ResultWin != null) { ResultWin.ShowWithData(response); } UserListCtrl.RefreshBanker(response); ProgressCtrl.SetNum(response); ApplyCtrl.HideApplyBanker(); WaitWin.Hide(); break; } }