2025-06-08 22:51:10 +08:00

227 lines
6.7 KiB
Go

package room
import (
"game/common/proto/pb"
"github.com/fox/fox/ipb"
)
func (rm *ColorRoom) checkEnterRoom(user *ColorPlayer, iMsg *ipb.InternalMsg, req *pb.ReqMatchRoom) {
return
}
func (rm *ColorRoom) OnEnterRoom(user *ColorPlayer, iMsg *ipb.InternalMsg, req *pb.ReqMatchRoom) {
return
}
//---------------------------------------------------------------------------------------------------------------------
//
//func (rm *ColorRoom) ApplyLeave(buffer []byte, user inter.UserInetr) {
// _ = buffer
// resp := new(pb.ColorPinoyLiveLeaveResp)
// u := rm.GetPlayer(user.GetId())
// if u == nil {
// rm.Table.KickOut(user)
// return
// }
// // 有下注时不让玩家离开
// if u.TotalBet != 0 {
// resp.Code = 1
// _ = user.SendMsg(int32(pb.ColorPinoyLiveReceiveFromClientMessageType_ColorPinoyLiveApplyLeave), resp)
// return
// }
// rm.KickOutUser(u)
// _ = user.SendMsg(int32(pb.ColorPinoyLiveReceiveFromClientMessageType_ColorPinoyLiveApplyLeave), resp)
// return
//}
//
//func (rm *ColorRoom) checkNoBet() bool {
// return rm.GetGameStatus() != pb.ColorPinoyLiveGameStatus_ColorPinoyLiveBetStatus ||
// rm.LiveMgr.MaintenanceStatus == 1 ||
// rm.LiveMgr.DiscardRestting
//}
//
//func (rm *ColorRoom) Bet(buffer []byte, user inter.UserInetr) {
// u := rm.getUser(user)
// u.MutexBet.Lock()
// defer u.MutexBet.Unlock()
// if rm.checkNoBet() {
// log.Error(rm.Log("game bet status err:%v", rm.GetGameStatus()))
// model.SendBetFailMessageInetr(model.StatusError, user)
// return
// }
// // 用户下注
// BetPb := &pb.ColorPinoyLiveBetReqs{}
// err := proto.Unmarshal(buffer, BetPb)
// if err != nil {
// log.Error(rm.Log("proto.Unmarshal err:%v", err))
// model.SendBetFailMessageInetr(model.DataErr, user)
// return
// }
// log.Debug(rm.Log("Bet pb = ", BetPb))
// var bets []*pb.ColorPinoyLiveBetReq
//
// for _, bet := range BetPb.Info {
// req := &pb.ColorPinoyLiveBetReq{
// BetType: bet.BetType,
// BetLevel: bet.BetLevel,
// BetIndex: bet.BetIndex,
// BetAmount: bet.BetAmount,
// }
// bets = append(bets, req)
// }
//
// // log.Debug("Bet bets =", bets)
// rm.CheckAndBet(u, bets)
//}
//
//func (rm *ColorRoom) UserSitDown(buffer []byte, user inter.UserInetr) {
// us := &pb.ColorPinoyLiveUserSitDown{}
// _ = proto.Unmarshal(buffer, us)
// // u, ok := rm.AllUserList[user.GetId()]
// u := rm.GetPlayer(user.GetId())
// if u != nil {
// if rm.SceneInfo.SitScene(u, int(us.ChairNo)) {
// u.SceneChairId = int(us.ChairNo)
// rm.Traverse(func(v *model.User) bool {
// // rm.SendSceneMsg(v)
// return true
// })
// }
// }
//}
//
//func (rm *ColorRoom) SendUserListInfo(user inter.UserInetr) {
// msg := new(pb.ColorPinoyLiveUserList)
// for _, u := range rm.OnlineUserList {
// userinfo := new(pb.ColorPinoyLiveUserInfo)
// userinfo.NikeName = u.UserInetr.GetNike()
// userinfo.UserGlod = u.Balance
// userinfo.Head = u.UserInetr.GetHead()
// userinfo.UserID = u.UserID
// msg.UserList = append(msg.UserList, userinfo)
// }
// // log.Debug("SendUserListInfo", msg)
// _ = user.SendMsg(int32(pb.ColorPinoyLiveReceiveFromClientMessageType_ColorPinoyLiveApplyGetUserListInfo), msg)
//}
//
//func (rm *ColorRoom) SendTrend(u inter.UserInetr) {
// // log.Debug("发送走势图")
// msg := new(pb.ColorPinoyLiveTrend)
// msg.ListTrendGroup = rm.GameTrend.ListTrendGroup
// msg.LuckStarRate = rm.GetGameTrend()
// _ = u.SendMsg(int32(pb.ColorPinoyLiveSendToClientMessageType_ColorPinoyLiveNoticeGameTrendInfo), msg)
//}
//
//func (rm *ColorRoom) OnUserStanUp(user *model.User) {
// rm.SceneInfo.UserStandUp(user.UserInetr)
// user.Mn.Lock()
// user.SceneChairId = 0
// user.Mn.Unlock()
// if rm.GetGameStatus() < pb.ColorPinoyLiveGameStatus_ColorPinoyLiveOpenThreeDice {
// rm.SelectUserListBalanceTopSitDownChair()
// } else {
// // rm.Traverse(func(v *model.User) bool {
// // rm.SendSceneMsg(v)
// // return true
// // })
// }
//}
//
//func (rm *ColorRoom) AgainBet(user inter.UserInetr) {
// u := rm.getUser(user)
// u.MutexBet.Lock()
// defer u.MutexBet.Unlock()
// if rm.checkNoBet() {
// log.Error(rm.Log("game bet status err ", rm.GetGameStatus()))
// model.SendBetFailMessageInetr(model.StatusError, user)
// return
// }
// // u := rm.getUser(user)
// var bets []*pb.ColorPinoyLiveBetReq
// if u.TempLastTimeBet != nil {
// for _, bet := range u.TempLastTimeBet {
// bets = append(bets, bet...)
// }
// }
// rm.CheckAndBet(u, bets)
//}
//
//func (rm *ColorRoom) BetDouble(user inter.UserInetr) {
// u := rm.getUser(user)
// u.MutexBet.Lock()
// defer u.MutexBet.Unlock()
// if rm.checkNoBet() {
// log.Error(rm.Log("game bet status err ", rm.GetGameStatus()))
// model.SendBetFailMessageInetr(model.StatusError, user)
// return
// }
// // u := rm.getUser(user)
// var bets []*pb.ColorPinoyLiveBetReq
// if u.LastTimeBet != nil {
// for _, bet := range u.LastTimeBet {
// bets = append(bets, bet...)
// }
// // log.Debug("BetDouble 上次下注:", u.LastTimeBet, "bets:", bets)
// }
// if len(bets) > 1000 {
// log.Error(rm.Log("game bet status err ", rm.GetGameStatus()))
// model.SendBetFailMessageInetr(12, user)
// return
// }
//
// rm.CheckAndBet(u, bets)
//}
//
//func (rm *ColorRoom) OnUndoBet(buffer []byte, user inter.UserInetr) {
// u := rm.getUser(user)
// u.MutexBet.Lock()
// defer u.MutexBet.Unlock()
// if rm.checkNoBet() {
// log.Error(rm.Log("game bet status err:%v", rm.GetGameStatus()))
// model.SendBetFailMessageInetr(model.StatusError, user)
// return
// }
// reqInfo := &pb.ColorPinoyLiveC2SUndoBet{}
// err := proto.Unmarshal(buffer, reqInfo)
// if err != nil {
// log.Error(rm.Log("proto.Unmarshal err:%v", err))
// model.SendBetFailMessageInetr(model.DataErr, user)
// return
// }
// rm.UndoBet(u, reqInfo.UndoType)
//}
//
//// ApplyUseProps todo
//func (rm *ColorRoom) ApplyUseProps(buffer []byte, userInter inter.UserInetr) {
// applyInfo := new(pb.ColorPinoyLiveApplyPropsReq)
// err := proto.Unmarshal(buffer, applyInfo)
// user := rm.getUser(userInter)
// if err != nil {
// log.Error(rm.Log("proto.Unmarshal err:%v", err))
// model.SendBetFailMessage(model.DataErr, user)
// return
// }
// AcceptUser := rm.GetPlayer(applyInfo.AcceptUserId)
// if AcceptUser == nil {
// log.Error(rm.Log("AcceptUser is null"))
// model.SendBetFailMessage(model.UserNull, user)
// return
// }
// _, err = user.GetPropsReal(rm.RoomCfg.Prop, rm.Table, rm.RoomCfg)
// if err != nil {
// log.Error(rm.Log("GetPropsReal err", err))
// model.SendBetFailMessage(model.ScoreLess, user)
// return
// }
// leftCoins := user.Balance
// propsResp := &pb.ColorPinoyLivePlayerPropsResp{
// ApplyUserId: user.UserID,
// AcceptUserId: AcceptUser.UserID,
// PropsId: applyInfo.PropsId,
// Chips: leftCoins,
// }
// rm.Table.Broadcast(int32(pb.ColorPinoyLiveSendToClientMessageType_ColorPinoyLiveNoticePlayerUseProps), propsResp)
//}