Merge remote-tracking branch 'origin/develop' into dev_slots

This commit is contained in:
tomas 2024-09-21 10:43:54 +08:00
commit 348b5fcb90
54 changed files with 1535 additions and 1315 deletions

View File

@ -5,23 +5,23 @@ import (
)
const (
TransType_Login transact.TransType = 1000
TransType_Logout = 1001
TransType_WebTrascate = 1002
TransType_AddCoin = 1003
TransType_ViewData = 1004
TransType_DayTimeChange = 1005
TransType_CoinSceneChange = 1006
TransType_WebApi = 1007
TransType_WebApi_ForRank = 1101
TransType_GameSrvWebApi = 1008
TransType_QueryCoinPool = 1009
TransType_StopServer = 1010
TransType_QueryAllCoinPool = 1011
TransType_ActThrSrvWebApi = 1012
TransType_MatchSceneChange = 1013
TransType_MiniGameAddCoin = 1014
TransType_ServerCtrl = 1015
TransTypeLogin transact.TransType = 1000
TransTypeLogout = 1001
TransTypeWebTransact = 1002
TransTypeAddCoin = 1003
TransTypeViewData = 1004
TransTypeDayTimeChange = 1005
TransTypeCoinSceneChange = 1006
TransTypeWebApi = 1007
TransTypeWebApiForRank = 1101
TransTypeGameSrvWebApi = 1008
TransTypeQueryCoinPool = 1009
TransTypeStopServer = 1010
TransTypeQueryAllCoinPool = 1011
TransTypeActThrSrvWebApi = 1012
TransTypeMatchSceneChange = 1013
TransTypeMiniGameAddCoin = 1014
TransTypeServerCtrl = 1015
)
type M2GWebTrascate struct {

Binary file not shown.

View File

@ -6272,6 +6272,7 @@
"SaleType": 1,
"SaleGold": 5000,
"CompositionMax": 1,
"Time": 360,
"Location": "0",
"Describe": "可联系客服兑换实物奖励",
"Gain": {
@ -6309,6 +6310,7 @@
"SaleType": 1,
"SaleGold": 5000,
"CompositionMax": 1,
"Time": 360,
"Location": "0",
"Describe": "可联系客服兑换实物奖励",
"Gain": {

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -113,14 +113,16 @@ func (svc *ItemLogSvc) UpdateState(req *model.UpdateParam, res *model.UpdateRes)
return err
}
func (svc *ItemLogSvc) GetClawdollItemLog(args *model.ClawdollItemLogReq, ret *[]model.CoinWAL) (err error) {
cond := bson.M{"snid": args.Snid, "typeid": common.GainWayClawdollCostItem}
func (svc *ItemLogSvc) GetClawdollItemLog(args *model.ClawdollItemLogReq, ret *model.GetClawdollItemLogRet) (err error) {
itemTypeIds := []int32{common.GainWayClawdollCostItem, common.GainWayItemShopChangeDoll, common.GainWayItemBagChangeDoll, common.GainWayClawdollCatch}
cond := bson.M{"snid": args.Snid, "typeid": bson.M{"$in": itemTypeIds}}
c := ItemLogsCollection(args.Platform)
if c == nil {
return
}
err = c.Find(cond).All(&ret)
err = c.Find(cond).All(&ret.Logs)
return
}

View File

@ -73,9 +73,3 @@ const (
Zego_ForbidRTCStream = iota + 1
Zego_ResumeRTCStream = iota + 1
)
const (
ClawDollItemID = 40003
ClawDollGiveItemID = 74004
ClawDollCostItemCount = 2
)

View File

@ -84,7 +84,7 @@ func MSDollMachineoCoinResultHandler(session *netlib.Session, packetId int, data
if msg.Result == 1 {
logger.Logger.Tracef("上分成功snid = %v", msg.Snid)
playerEx.CostPlayCoin(2)
playerEx.CostPlayCoin()
sceneEx.playingSnid = p.SnId
@ -107,11 +107,12 @@ func MSDollMachineoCoinResultHandler(session *netlib.Session, packetId int, data
if msg.Result == 1 {
// 获得娃娃卡
playerEx.CatchCardClawdoll(1)
playerEx.CatchCardClawdoll()
playerEx.IsWin = true
logger.Logger.Tracef("下抓成功snid = %v", msg.Snid)
} else {
logger.Logger.Tracef("下抓失败snid = %v", msg.Snid)
playerEx.IsWin = false
}
logger.Logger.Tracef("ClawDoll StatePlayGame OnPlayerOp Grab response, SnId= %v", msg.Snid)
@ -188,53 +189,6 @@ func (h *CSGetTokenHandler) Process(s *netlib.Session, packetid int, data interf
}
return nil
}
type CSDollConfigPacketFactory struct {
}
type CSDollConfigHandler struct {
}
func (f *CSDollConfigPacketFactory) CreatePacket() interface{} {
pack := &clawdoll.CSCLAWDOLLConfig{}
return pack
}
func (h *CSDollConfigHandler) Process(s *netlib.Session, packetid int, data interface{}, sid int64) error {
logger.Logger.Tracef("CSDollConfigHandler")
if _, ok := data.(*clawdoll.CSCLAWDOLLConfig); ok {
p := base.PlayerMgrSington.GetPlayer(sid)
if p == nil {
logger.Logger.Warn("CSDollConfigHandler p == nil")
return nil
}
scene := p.GetScene()
if scene == nil {
return nil
}
sceneEx, ok := scene.ExtraData.(*SceneEx)
if !ok {
return nil
}
machineId := scene.GetDBGameFree().GetId() % 6080000
machineInfo := sceneEx.GetMachineServerInfo(machineId, p.Platform)
if machineInfo == nil {
logger.Logger.Warn("CSDollConfigHandler machineId = %v not found", machineId)
return nil
}
pack := &clawdoll.SCCLAWDOLLConfig{
IconAddr: machineInfo.IconAddr,
CostItemNum: machineInfo.CostItemNum,
ItemId: machineInfo.ItemId,
ItemNum: machineInfo.ItemNum,
GameId: scene.GetDBGameFree().GetId(),
}
p.SendToClient(int(clawdoll.CLAWDOLLPacketID_PACKET_SC_DollConfig), pack)
}
return nil
}
func init() {
common.RegisterHandler(int(clawdoll.CLAWDOLLPacketID_PACKET_CS_PLAYEROP), &CSPlayerOpHandler{})
netlib.RegisterFactory(int(clawdoll.CLAWDOLLPacketID_PACKET_CS_PLAYEROP), &CSPlayerOpPacketFactory{})
@ -242,7 +196,4 @@ func init() {
//客户端请求token
common.RegisterHandler(int(clawdoll.CLAWDOLLPacketID_PACKET_CS_GETTOKEN), &CSGetTokenHandler{})
netlib.RegisterFactory(int(clawdoll.CLAWDOLLPacketID_PACKET_CS_GETTOKEN), &CSGetTokenPacketFactory{})
//客户端请求配置信息
common.RegisterHandler(int(clawdoll.CLAWDOLLPacketID_PACKET_CS_DollConfig), &CSDollConfigHandler{})
netlib.RegisterFactory(int(clawdoll.CLAWDOLLPacketID_PACKET_CS_DollConfig), &CSDollConfigPacketFactory{})
}

View File

@ -2,7 +2,6 @@ package clawdoll
import (
"mongo.games.com/game/common"
rule "mongo.games.com/game/gamerule/clawdoll"
"mongo.games.com/game/gamesrv/base"
"mongo.games.com/game/model"
"mongo.games.com/game/srvdata"
@ -15,6 +14,8 @@ type PlayerEx struct {
clawDollState int32 // 抓娃娃状态
dollCardsCnt int32 // 娃娃卡数量
IsWin bool // 是否抓到娃娃
winDollCardType int32 // 本局赢取娃娃的类型
gainCoin int64 // 本局赢的金币
taxCoin int64 // 本局税收
@ -29,6 +30,7 @@ func (this *PlayerEx) Clear(baseScore int32) {
this.gainCoin = 0
this.taxCoin = 0
this.odds = 0
this.IsWin = false
}
func (this *PlayerEx) CanOp(sceneEx *SceneEx) bool {
@ -42,19 +44,31 @@ func (this *PlayerEx) CanOp(sceneEx *SceneEx) bool {
// 能否投币
func (this *PlayerEx) CanPayCoin() bool {
itemID := int32(rule.ClawDollItemID)
itemCount := this.GetItemCount(itemID)
if itemCount < rule.ClawDollCostItemCount {
return false
}
itemID := int32(common.ItemIDClawdoll)
itemData := srvdata.GameItemMgr.Get(this.Platform, itemID)
if itemData == nil {
return false
}
s := this.GetScene()
if s == nil {
logger.Logger.Warn("CostPlayCoin p.scene == nil")
return false
}
machineId := s.GetDBGameFree().GetId() % 6080000
machineInfo := s.GetMachineServerInfo(machineId, this.Platform)
if machineInfo == nil {
return false
}
itemCount := this.GetItemCount(itemID)
if itemCount < int64(machineInfo.CostItemNum) {
return false
}
num, ok := this.Items[itemID]
if !ok || num < 1 {
if !ok || num < int64(machineInfo.CostItemNum) {
return false
}
@ -62,22 +76,12 @@ func (this *PlayerEx) CanPayCoin() bool {
}
// 投币消耗
func (this *PlayerEx) CostPlayCoin(count int32) bool {
func (this *PlayerEx) CostPlayCoin() bool {
if !this.CanPayCoin() {
return false
}
var items []*model.Item
itemData := srvdata.GameItemMgr.Get(this.Platform, rule.ClawDollItemID)
if itemData != nil {
items = append(items, &model.Item{
ItemId: rule.ClawDollItemID,
ItemNum: int64(count),
})
}
s := this.GetScene()
if s == nil {
logger.Logger.Warn("CostPlayCoin p.scene == nil")
@ -89,6 +93,21 @@ func (this *PlayerEx) CostPlayCoin(count int32) bool {
return false
}
machineId := s.GetDBGameFree().GetId() % 6080000
machineInfo := s.GetMachineServerInfo(machineId, this.Platform)
if machineInfo == nil {
return false
}
var items []*model.Item
itemData := srvdata.GameItemMgr.Get(this.Platform, common.ItemIDClawdoll)
if itemData != nil {
items = append(items, &model.Item{
ItemId: common.ItemIDClawdoll,
ItemNum: int64(-machineInfo.CostItemNum),
})
}
this.AddItems(&model.AddItemParam{
P: this.PlayerData,
Change: items,
@ -103,16 +122,7 @@ func (this *PlayerEx) CostPlayCoin(count int32) bool {
}
// 抓取到娃娃获得娃娃
func (this *PlayerEx) CatchCardClawdoll(count int32) bool {
var items []*model.Item
itemData := srvdata.GameItemMgr.Get(this.Platform, rule.ClawDollGiveItemID)
if itemData != nil {
items = append(items, &model.Item{
ItemId: rule.ClawDollGiveItemID,
ItemNum: int64(count),
})
}
func (this *PlayerEx) CatchCardClawdoll() bool {
s := this.GetScene()
if s == nil {
@ -120,11 +130,26 @@ func (this *PlayerEx) CatchCardClawdoll(count int32) bool {
return false
}
machineId := s.GetDBGameFree().GetId() % 6080000
machineInfo := s.GetMachineServerInfo(machineId, this.Platform)
if machineInfo == nil {
return false
}
sceneEx, ok := s.ExtraData.(*SceneEx)
if !ok {
return false
}
var items []*model.Item
itemData := srvdata.GameItemMgr.Get(this.Platform, machineInfo.ItemId)
if itemData != nil {
items = append(items, &model.Item{
ItemId: machineInfo.ItemId,
ItemNum: int64(machineInfo.ItemNum),
})
}
this.AddItems(&model.AddItemParam{
P: this.PlayerData,
Change: items,
@ -175,6 +200,7 @@ func (this *PlayerEx) ReStartGame() {
this.gainCoin = 0
this.taxCoin = 0
this.odds = 0
this.IsWin = false
}
// 初始化

View File

@ -3,6 +3,7 @@ package clawdoll
import (
"github.com/zegoim/zego_server_assistant/token/go/src/token04"
"mongo.games.com/game/gamesrv/action"
"mongo.games.com/game/model"
"mongo.games.com/game/protocol/clawdoll"
"strconv"
"time"
@ -739,6 +740,70 @@ func (this *StateBilled) OnPlayerOp(s *base.Scene, p *base.Player, opcode int, p
func (this *StateBilled) OnEnter(s *base.Scene) {
logger.Logger.Trace("(this *StateBilled) OnEnter, sceneid=", s.GetSceneId())
this.BaseState.OnEnter(s)
sceneEx, ok := s.ExtraData.(*SceneEx)
if !ok {
return
}
playerEx := sceneEx.GetPlayingEx()
if playerEx != nil {
logger.Logger.Trace("ClawdollSaveLog Save Snid : ", playerEx.SnId)
machineId := s.GetDBGameFree().GetId() % 6080000
machineInfo := s.GetMachineServerInfo(machineId, playerEx.Platform)
if machineInfo == nil {
return
}
curClawdollItemNum, ok := playerEx.Items[int32(common.ItemIDClawdoll)]
if !ok {
return
}
LogBaseResult := model.ClawdollResultType{}
LogBaseResult.RoomId = int32(sceneEx.GetSceneId())
LogBaseResult.PlayerSnid = playerEx.SnId
LogBaseResult.BeforeClawdollItemNum = curClawdollItemNum + int64(machineInfo.CostItemNum)
LogBaseResult.AfterClawdollItemNum = curClawdollItemNum
LogBaseResult.IsWin = playerEx.IsWin
if !playerEx.IsRob {
sceneEx.logid, _ = model.AutoIncGameLogId()
info, err := model.MarshalGameNoteByHUNDRED(LogBaseResult)
if err == nil {
sceneEx.SaveGameDetailedLog(sceneEx.logid, info, &base.GameDetailedParam{})
}
TotalBetValue := 0
totalin := int64(TotalBetValue)
totalout := playerEx.gainCoin
validFlow := totalin + totalout
validBet := common.AbsI64(totalin - totalout)
logParam := &base.SaveGamePlayerListLogParam{
Platform: playerEx.Platform,
Channel: playerEx.Channel,
Promoter: playerEx.BeUnderAgentCode,
PackageTag: playerEx.PackageID,
InviterId: playerEx.InviterId,
LogId: sceneEx.logid,
TotalIn: totalin,
TotalOut: totalout,
TaxCoin: playerEx.taxCoin,
BetAmount: int64(TotalBetValue),
WinAmountNoAnyTax: playerEx.gainCoin,
ValidBet: validBet,
ValidFlow: validFlow,
IsFirstGame: sceneEx.IsPlayerFirst(playerEx.Player),
IsFree: false,
WinSmallGame: 0,
WinTotal: 0,
}
sceneEx.SaveGamePlayerListLog(playerEx.SnId, logParam)
}
playerEx.ReStartGame()
}
}
func (this *StateBilled) OnLeave(s *base.Scene) {

View File

@ -970,6 +970,10 @@ func (this *SceneHandCardStateTienLen) OnEnter(s *base.Scene) {
playerEx.robotGameTimes--
sceneEx.robotGamingNum++
}
if _, ok := sceneEx.BilledList[playerEx.SnId]; !ok {
arr := make([]*BilledInfo, 0)
sceneEx.BilledList[playerEx.SnId] = &arr
}
}
}
}

View File

@ -76,5 +76,5 @@ func (this *AddCoinTransactHandler) OnChildTransRep(tNode *transact.TransNode, h
}
func init() {
transact.RegisteHandler(common.TransType_AddCoin, &AddCoinTransactHandler{})
transact.RegisteHandler(common.TransTypeAddCoin, &AddCoinTransactHandler{})
}

View File

@ -62,5 +62,5 @@ func (this *CoinSceneChangeTransactHandler) OnChildTransRep(tNode *transact.Tran
}
func init() {
transact.RegisteHandler(common.TransType_CoinSceneChange, &CoinSceneChangeTransactHandler{})
transact.RegisteHandler(common.TransTypeCoinSceneChange, &CoinSceneChangeTransactHandler{})
}

View File

@ -104,7 +104,7 @@ func (this *DayTimeChangeTransactHandler) OnChildTransRep(tNode *transact.TransN
}
func init() {
transact.RegisteHandler(common.TransType_DayTimeChange, &DayTimeChangeTransactHandler{})
transact.RegisteHandler(common.TransTypeDayTimeChange, &DayTimeChangeTransactHandler{})
RegisteDayTimeChangeListener(base.CoinPoolMgr)
RegisteDayTimeChangeListener(base.SceneMgrSington)
}

View File

@ -62,5 +62,5 @@ func (this *MatchSceneChangeTransactHandler) OnChildTransRep(tNode *transact.Tra
}
func init() {
transact.RegisteHandler(common.TransType_MatchSceneChange, &MatchSceneChangeTransactHandler{})
transact.RegisteHandler(common.TransTypeMatchSceneChange, &MatchSceneChangeTransactHandler{})
}

View File

@ -54,5 +54,5 @@ func (this *QueryAllCoinPoolTransactHandler) OnChildTransRep(tNode *transact.Tra
}
func init() {
transact.RegisteHandler(common.TransType_QueryAllCoinPool, &QueryAllCoinPoolTransactHandler{})
transact.RegisteHandler(common.TransTypeQueryAllCoinPool, &QueryAllCoinPoolTransactHandler{})
}

View File

@ -47,5 +47,5 @@ func (this *QueryCoinPoolTransactHandler) OnChildTransRep(tNode *transact.TransN
}
func init() {
transact.RegisteHandler(common.TransType_QueryCoinPool, &QueryCoinPoolTransactHandler{})
transact.RegisteHandler(common.TransTypeQueryCoinPool, &QueryCoinPoolTransactHandler{})
}

View File

@ -23,7 +23,7 @@ var (
)
func init() {
transact.RegisteHandler(common.TransType_GameSrvWebApi, &WebAPITranscateHandler{})
transact.RegisteHandler(common.TransTypeGameSrvWebApi, &WebAPITranscateHandler{})
}
var WebAPIHandlerMgrSingleton = &WebAPIHandlerMgr{wshMap: make(map[string]WebAPIHandler)}

View File

@ -10,35 +10,35 @@ import (
)
func init() {
transact.RegisteHandler(common.TransType_StopServer, &transact.TransHanderWrapper{
transact.RegisteHandler(common.TransTypeStopServer, &transact.TransHanderWrapper{
OnExecuteWrapper: transact.OnExecuteWrapper(func(tNode *transact.TransNode, ud interface{}) transact.TransExeResult {
logger.Logger.Infof("StopApi start TransType_StopServer OnExecuteWrapper %x", tNode.MyTnp.TId)
logger.Logger.Infof("StopApi start TransTypeStopServer OnExecuteWrapper %x", tNode.MyTnp.TId)
base.SceneMgrSington.DestoryAllScene()
//通知机器人关闭
npcSess := srvlib.ServerSessionMgrSington.GetSession(common.GetSelfAreaId(), common.RobotServerType, common.RobotServerId)
if npcSess != nil {
tnp := &transact.TransNodeParam{
Tt: common.TransType_StopServer,
Tt: common.TransTypeStopServer,
Ot: transact.TransOwnerType(common.RobotServerType),
Oid: common.RobotServerId,
AreaID: common.GetSelfAreaId(),
Tct: transact.TransactCommitPolicy_TwoPhase,
}
tNode.StartChildTrans(tnp, nil, time.Second*5)
logger.Logger.Infof("StopApi start TransType_StopServer StartChildTrans srvid:%v srvtype:%v", common.RobotServerId, common.RobotServerType)
logger.Logger.Infof("StopApi start TransTypeStopServer StartChildTrans srvid:%v srvtype:%v", common.RobotServerId, common.RobotServerType)
}
return transact.TransExeResult_Success
}),
OnCommitWrapper: transact.OnCommitWrapper(func(tNode *transact.TransNode) transact.TransExeResult {
logger.Logger.Info("StopApi start TransType_StopServer OnCommitWrapper")
logger.Logger.Info("StopApi start TransTypeStopServer OnCommitWrapper")
return transact.TransExeResult_Success
}),
OnRollBackWrapper: transact.OnRollBackWrapper(func(tNode *transact.TransNode) transact.TransExeResult {
logger.Logger.Info("StopApi start TransType_StopServer OnRollBackWrapper")
logger.Logger.Info("StopApi start TransTypeStopServer OnRollBackWrapper")
return transact.TransExeResult_Success
}),
OnChildRespWrapper: transact.OnChildRespWrapper(func(tNode *transact.TransNode, hChild transact.TransNodeID, retCode int, ud interface{}) transact.TransExeResult {
logger.Logger.Infof("StopApi start TransType_StopServer OnChildRespWrapper ret:%v childid:%x", retCode, hChild)
logger.Logger.Infof("StopApi start TransTypeStopServer OnChildRespWrapper ret:%v childid:%x", retCode, hChild)
return transact.TransExeResult(retCode)
}),
})

View File

@ -7,21 +7,21 @@ import (
)
func init() {
transact.RegisteHandler(common.TransType_StopServer, &transact.TransHanderWrapper{
transact.RegisteHandler(common.TransTypeStopServer, &transact.TransHanderWrapper{
OnExecuteWrapper: transact.OnExecuteWrapper(func(tNode *transact.TransNode, ud interface{}) transact.TransExeResult {
logger.Logger.Infof("StopApi start TransType_StopServer OnExecuteWrapper %x", tNode.MyTnp.TId)
logger.Logger.Infof("StopApi start TransTypeStopServer OnExecuteWrapper %x", tNode.MyTnp.TId)
return transact.TransExeResult_Success
}),
OnCommitWrapper: transact.OnCommitWrapper(func(tNode *transact.TransNode) transact.TransExeResult {
logger.Logger.Info("StopApi start TransType_StopServer OnCommitWrapper")
logger.Logger.Info("StopApi start TransTypeStopServer OnCommitWrapper")
return transact.TransExeResult_Success
}),
OnRollBackWrapper: transact.OnRollBackWrapper(func(tNode *transact.TransNode) transact.TransExeResult {
logger.Logger.Info("StopApi start TransType_StopServer OnRollBackWrapper")
logger.Logger.Info("StopApi start TransTypeStopServer OnRollBackWrapper")
return transact.TransExeResult_Success
}),
OnChildRespWrapper: transact.OnChildRespWrapper(func(tNode *transact.TransNode, hChild transact.TransNodeID, retCode int, ud interface{}) transact.TransExeResult {
logger.Logger.Infof("StopApi start TransType_StopServer OnChildRespWrapper ret:%v childid:%x", retCode, hChild)
logger.Logger.Infof("StopApi start TransTypeStopServer OnChildRespWrapper ret:%v childid:%x", retCode, hChild)
return transact.TransExeResult(retCode)
}),
})

View File

@ -5,9 +5,7 @@ import (
"fmt"
"net"
"os"
"os/signal"
"path/filepath"
"syscall"
"time"
"mongo.games.com/goserver/core/logger"
@ -165,7 +163,7 @@ func init() {
module.RegisteModule(MachineMgr, time.Second, 0)
}
func listenKeyboardEvents(conn net.Conn) {
/*func listenKeyboardEvents(conn net.Conn) {
for {
// 读取键盘事件
key := readKeyboardEvent()
@ -242,9 +240,9 @@ func listenKeyboardEvents(conn net.Conn) {
queryBaseParam(conn)
}
}
}
}*/
func readKeyboardEvent() string {
/*func readKeyboardEvent() string {
var b [1]byte
var done uint32
err := syscall.ReadFile(syscall.Stdin, b[:], &done, nil)
@ -253,9 +251,9 @@ func readKeyboardEvent() string {
}
return string(b[:])
}
}*/
func waitForUserExit() {
/*func waitForUserExit() {
// 创建一个信号通道
signalChan := make(chan os.Signal, 1)
@ -265,4 +263,4 @@ func waitForUserExit() {
// 等待用户按下 Ctrl+C 退出
<-signalChan
fmt.Println("退出程序...")
}
}*/

View File

@ -80,7 +80,7 @@ func GameSrvWebAPI(rw http.ResponseWriter, req *http.Request) {
suc := core.CoreObject().SendCommand(&WebApiEvent{req: req, path: req.URL.Path, h: HandlerWrapper(func(event *WebApiEvent, data []byte) bool {
logger.Logger.Trace("GameSrvApi start transcate")
tnp := &transact.TransNodeParam{
Tt: common.TransType_GameSrvWebApi,
Tt: common.TransTypeGameSrvWebApi,
Ot: transact.TransOwnerType(common.GetSelfSrvType()),
Oid: common.GetSelfSrvId(),
AreaID: common.GetSelfAreaId(),
@ -128,14 +128,14 @@ func GameSrvWebAPI(rw http.ResponseWriter, req *http.Request) {
// //--------------------------------------------------------------------------------------
func init() {
transact.RegisteHandler(common.TransType_GameSrvWebApi, &transact.TransHanderWrapper{
transact.RegisteHandler(common.TransTypeGameSrvWebApi, &transact.TransHanderWrapper{
OnExecuteWrapper: transact.OnExecuteWrapper(func(tNode *transact.TransNode, ud interface{}) transact.TransExeResult {
logger.Logger.Trace("GameSrvApi start TransType_GameSrvWebApi OnExecuteWrapper")
logger.Logger.Trace("GameSrvApi start TransTypeGameSrvWebApi OnExecuteWrapper")
gameSrvIds := common.GetGameSrvIds()
logger.Logger.Trace("Current game id:", gameSrvIds)
for _, value := range gameSrvIds {
tnp := &transact.TransNodeParam{
Tt: common.TransType_GameSrvWebApi,
Tt: common.TransTypeGameSrvWebApi,
Ot: transact.TransOwnerType(srvlib.GameServerType),
Oid: value,
AreaID: common.GetSelfAreaId(),
@ -154,7 +154,7 @@ func init() {
return transact.TransExeResult_Success
}),
OnCommitWrapper: transact.OnCommitWrapper(func(tNode *transact.TransNode) transact.TransExeResult {
logger.Logger.Trace("GameSrvApi start TransType_GameSrvWebApi OnCommitWrapper")
logger.Logger.Trace("GameSrvApi start TransTypeGameSrvWebApi OnCommitWrapper")
event := tNode.TransEnv.GetField(GAMESRVAPI_TRANSACTE_EVENT).(*WebApiEvent)
resp := tNode.TransEnv.GetField(GAMESRVAPI_TRANSACTE_RESPONSE)
if ud, ok := resp.([]byte); ok {
@ -165,7 +165,7 @@ func init() {
return transact.TransExeResult_Success
}),
OnRollBackWrapper: transact.OnRollBackWrapper(func(tNode *transact.TransNode) transact.TransExeResult {
logger.Logger.Trace("GameSrvApi start TransType_GameSrvWebApi OnRollBackWrapper")
logger.Logger.Trace("GameSrvApi start TransTypeGameSrvWebApi OnRollBackWrapper")
event := tNode.TransEnv.GetField(GAMESRVAPI_TRANSACTE_EVENT).(*WebApiEvent)
resp := tNode.TransEnv.GetField(GAMESRVAPI_TRANSACTE_RESPONSE)
if ud, ok := resp.([]byte); ok {

View File

@ -89,7 +89,7 @@ func WorldSrvApi(rw http.ResponseWriter, req *http.Request) {
suc := core.CoreObject().SendCommand(&WebApiEvent{req: req, path: req.URL.Path, h: HandlerWrapper(func(event *WebApiEvent, data []byte) bool {
logger.Logger.Trace("WorldSrvApi start transcate")
tnp := &transact.TransNodeParam{
Tt: common.TransType_WebApi,
Tt: common.TransTypeWebApi,
Ot: transact.TransOwnerType(common.GetSelfSrvType()),
Oid: common.GetSelfSrvId(),
AreaID: common.GetSelfAreaId(),
@ -140,11 +140,11 @@ func WorldSrvApi(rw http.ResponseWriter, req *http.Request) {
// --------------------------------------------------------------------------------------
func init() {
transact.RegisteHandler(common.TransType_WebApi, &transact.TransHanderWrapper{
transact.RegisteHandler(common.TransTypeWebApi, &transact.TransHanderWrapper{
OnExecuteWrapper: transact.OnExecuteWrapper(func(tNode *transact.TransNode, ud interface{}) transact.TransExeResult {
logger.Logger.Trace("WorldSrvApi start TransType_WebApi OnExecuteWrapper ")
logger.Logger.Trace("WorldSrvApi start TransTypeWebApi OnExecuteWrapper ")
tnp := &transact.TransNodeParam{
Tt: common.TransType_WebApi,
Tt: common.TransTypeWebApi,
Ot: transact.TransOwnerType(srvlib.WorldServerType),
Oid: common.GetWorldSrvId(),
AreaID: common.GetSelfAreaId(),
@ -156,13 +156,13 @@ func init() {
pid := tNode.MyTnp.TId
cid := tnp.TId
logger.Logger.Tracef("WorldSrvApi start TransType_WebApi OnExecuteWrapper tid:%x childid:%x", pid, cid)
logger.Logger.Tracef("WorldSrvApi start TransTypeWebApi OnExecuteWrapper tid:%x childid:%x", pid, cid)
return transact.TransExeResult_Success
}
return transact.TransExeResult_Failed
}),
OnCommitWrapper: transact.OnCommitWrapper(func(tNode *transact.TransNode) transact.TransExeResult {
logger.Logger.Trace("WorldSrvApi start TransType_WebApi OnCommitWrapper")
logger.Logger.Trace("WorldSrvApi start TransTypeWebApi OnCommitWrapper")
event := tNode.TransEnv.GetField(WEBAPI_TRANSACTE_EVENT).(*WebApiEvent)
resp := tNode.TransEnv.GetField(WEBAPI_TRANSACTE_RESPONSE)
if ud, ok := resp.([]byte); ok {
@ -173,7 +173,7 @@ func init() {
return transact.TransExeResult_Success
}),
OnRollBackWrapper: transact.OnRollBackWrapper(func(tNode *transact.TransNode) transact.TransExeResult {
logger.Logger.Trace("WorldSrvApi start TransType_WebApi OnRollBackWrapper")
logger.Logger.Trace("WorldSrvApi start TransTypeWebApi OnRollBackWrapper")
event := tNode.TransEnv.GetField(WEBAPI_TRANSACTE_EVENT).(*WebApiEvent)
resp := tNode.TransEnv.GetField(WEBAPI_TRANSACTE_RESPONSE)
if ud, ok := resp.([]byte); ok {
@ -184,7 +184,7 @@ func init() {
return transact.TransExeResult_Success
}),
OnChildRespWrapper: transact.OnChildRespWrapper(func(tNode *transact.TransNode, hChild transact.TransNodeID, retCode int, ud interface{}) transact.TransExeResult {
logger.Logger.Tracef("WorldSrvApi start TransType_WebApi OnChildRespWrapper ret:%v childid:%x", retCode, hChild)
logger.Logger.Tracef("WorldSrvApi start TransTypeWebApi OnChildRespWrapper ret:%v childid:%x", retCode, hChild)
tNode.TransEnv.SetField(WEBAPI_TRANSACTE_RESPONSE, ud)
return transact.TransExeResult(retCode)
}),

View File

@ -53,7 +53,7 @@ func StopServer(wait chan struct{}, srvtype int, timeout time.Duration) {
core.CoreObject().SendCommand(basic.CommandWrapper(func(o *basic.Object) error {
logger.Logger.Infof("StopApi start transcate srvtype(%v) timeout(%v)", srvtype, timeout)
tnp := &transact.TransNodeParam{
Tt: common.TransType_StopServer,
Tt: common.TransTypeStopServer,
Ot: transact.TransOwnerType(common.GetSelfSrvType()),
Oid: common.GetSelfSrvId(),
AreaID: common.GetSelfAreaId(),
@ -121,15 +121,15 @@ func init() {
return nil
})
transact.RegisteHandler(common.TransType_StopServer, &transact.TransHanderWrapper{
transact.RegisteHandler(common.TransTypeStopServer, &transact.TransHanderWrapper{
OnExecuteWrapper: transact.OnExecuteWrapper(func(tNode *transact.TransNode, ud interface{}) transact.TransExeResult {
logger.Logger.Info("StopApi start TransType_StopServer OnExecuteWrapper ")
logger.Logger.Info("StopApi start TransTypeStopServer OnExecuteWrapper ")
if stopUD, ok := ud.(*StopAPIUserData); ok {
tNode.TransEnv.SetField(STOPAPI_TRANSACTE_UD, ud)
ids := srvlib.ServerSessionMgrSington.GetServerIds(common.GetSelfAreaId(), stopUD.srvtype)
for _, id := range ids {
tnp := &transact.TransNodeParam{
Tt: common.TransType_StopServer,
Tt: common.TransTypeStopServer,
Ot: transact.TransOwnerType(stopUD.srvtype),
Oid: id,
AreaID: common.GetSelfAreaId(),
@ -142,7 +142,7 @@ func init() {
return transact.TransExeResult_Failed
}),
OnCommitWrapper: transact.OnCommitWrapper(func(tNode *transact.TransNode) transact.TransExeResult {
logger.Logger.Info("StopApi start TransType_StopServer OnCommitWrapper")
logger.Logger.Info("StopApi start TransTypeStopServer OnCommitWrapper")
field := tNode.TransEnv.GetField(STOPAPI_TRANSACTE_UD)
if field != nil {
if ud, ok := field.(*StopAPIUserData); ok {
@ -152,7 +152,7 @@ func init() {
return transact.TransExeResult_Success
}),
OnRollBackWrapper: transact.OnRollBackWrapper(func(tNode *transact.TransNode) transact.TransExeResult {
logger.Logger.Info("StopApi start TransType_StopServer OnRollBackWrapper")
logger.Logger.Info("StopApi start TransTypeStopServer OnRollBackWrapper")
field := tNode.TransEnv.GetField(STOPAPI_TRANSACTE_UD)
if field != nil {
if ud, ok := field.(*StopAPIUserData); ok {
@ -162,7 +162,7 @@ func init() {
return transact.TransExeResult_Success
}),
OnChildRespWrapper: transact.OnChildRespWrapper(func(tNode *transact.TransNode, hChild transact.TransNodeID, retCode int, ud interface{}) transact.TransExeResult {
logger.Logger.Infof("StopApi start TransType_StopServer OnChildRespWrapper ret:%v childid:%x", retCode, hChild)
logger.Logger.Infof("StopApi start TransTypeStopServer OnChildRespWrapper ret:%v childid:%x", retCode, hChild)
return transact.TransExeResult(retCode)
}),
})

View File

@ -1679,3 +1679,13 @@ type SamLocPerson struct {
CardInfoEnd []int32 //结算时的牌型
IsTianHu bool //是否天胡
}
// 娃娃机 每局记录
type ClawdollResultType struct {
//all
RoomId int32 //房间Id
PlayerSnid int32 //玩家id
BeforeClawdollItemNum int64 //变化前娃娃币
AfterClawdollItemNum int64 //变化后娃娃币
IsWin bool //是否成功
}

View File

@ -126,6 +126,10 @@ type ClawdollItemLogReq struct {
ItemIds []int32 // 道具id
}
type GetClawdollItemLogRet struct {
Logs []ItemLog
}
func GetClawdollItemLog(plt string, snid int32) (logs []ItemLog, err error) {
if rpcCli == nil {
@ -140,7 +144,7 @@ func GetClawdollItemLog(plt string, snid int32) (logs []ItemLog, err error) {
args.ItemIds = append(args.ItemIds, ClawDollItemIds...)
var ret []ItemLog
var ret GetClawdollItemLogRet
//var ret ClawdollItemLogRet
err = rpcCli.CallWithTimeout("ItemLogSvc.GetClawdollItemLog", args, &ret, time.Second*30)
@ -149,7 +153,7 @@ func GetClawdollItemLog(plt string, snid int32) (logs []ItemLog, err error) {
return
}
logs = ret
logs = ret.Logs
return
}

View File

@ -38,8 +38,6 @@ const (
CLAWDOLLPacketID_PACKET_CS_WAITPLAYERS CLAWDOLLPacketID = 5611 // 获取等待玩家信息 (客户->服务)
CLAWDOLLPacketID_PACKET_SC_WAITPLAYERS CLAWDOLLPacketID = 5612 // 获取等待玩家信息 (服务->客户)
CLAWDOLLPacketID_PACKET_SC_PLAYINGINFO CLAWDOLLPacketID = 5613 // 正在控制娃娃机的玩家信息 (服务->客户)
CLAWDOLLPacketID_PACKET_CS_DollConfig CLAWDOLLPacketID = 5614 //获取娃娃机配置信息
CLAWDOLLPacketID_PACKET_SC_DollConfig CLAWDOLLPacketID = 5615 //返回娃娃机配置信息
)
// Enum value maps for CLAWDOLLPacketID.
@ -59,8 +57,6 @@ var (
5611: "PACKET_CS_WAITPLAYERS",
5612: "PACKET_SC_WAITPLAYERS",
5613: "PACKET_SC_PLAYINGINFO",
5614: "PACKET_CS_DollConfig",
5615: "PACKET_SC_DollConfig",
}
CLAWDOLLPacketID_value = map[string]int32{
"PACKET_ZERO": 0,
@ -77,8 +73,6 @@ var (
"PACKET_CS_WAITPLAYERS": 5611,
"PACKET_SC_WAITPLAYERS": 5612,
"PACKET_SC_PLAYINGINFO": 5613,
"PACKET_CS_DollConfig": 5614,
"PACKET_SC_DollConfig": 5615,
}
)
@ -1080,123 +1074,6 @@ func (x *CLAWDOLLPlayerDigestInfo) GetStat() int32 {
return 0
}
type CSCLAWDOLLConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *CSCLAWDOLLConfig) Reset() {
*x = CSCLAWDOLLConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_clawdoll_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CSCLAWDOLLConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CSCLAWDOLLConfig) ProtoMessage() {}
func (x *CSCLAWDOLLConfig) ProtoReflect() protoreflect.Message {
mi := &file_clawdoll_proto_msgTypes[13]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CSCLAWDOLLConfig.ProtoReflect.Descriptor instead.
func (*CSCLAWDOLLConfig) Descriptor() ([]byte, []int) {
return file_clawdoll_proto_rawDescGZIP(), []int{13}
}
type SCCLAWDOLLConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
IconAddr string `protobuf:"bytes,1,opt,name=IconAddr,proto3" json:"IconAddr,omitempty"` //图片地址
CostItemNum int32 `protobuf:"varint,2,opt,name=CostItemNum,proto3" json:"CostItemNum,omitempty"` //消耗道具数量
ItemId int32 `protobuf:"varint,3,opt,name=ItemId,proto3" json:"ItemId,omitempty"` //获得道具ID
ItemNum int32 `protobuf:"varint,4,opt,name=ItemNum,proto3" json:"ItemNum,omitempty"` //获得道具数量
GameId int32 `protobuf:"varint,5,opt,name=GameId,proto3" json:"GameId,omitempty"`
}
func (x *SCCLAWDOLLConfig) Reset() {
*x = SCCLAWDOLLConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_clawdoll_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SCCLAWDOLLConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SCCLAWDOLLConfig) ProtoMessage() {}
func (x *SCCLAWDOLLConfig) ProtoReflect() protoreflect.Message {
mi := &file_clawdoll_proto_msgTypes[14]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SCCLAWDOLLConfig.ProtoReflect.Descriptor instead.
func (*SCCLAWDOLLConfig) Descriptor() ([]byte, []int) {
return file_clawdoll_proto_rawDescGZIP(), []int{14}
}
func (x *SCCLAWDOLLConfig) GetIconAddr() string {
if x != nil {
return x.IconAddr
}
return ""
}
func (x *SCCLAWDOLLConfig) GetCostItemNum() int32 {
if x != nil {
return x.CostItemNum
}
return 0
}
func (x *SCCLAWDOLLConfig) GetItemId() int32 {
if x != nil {
return x.ItemId
}
return 0
}
func (x *SCCLAWDOLLConfig) GetItemNum() int32 {
if x != nil {
return x.ItemNum
}
return 0
}
func (x *SCCLAWDOLLConfig) GetGameId() int32 {
if x != nil {
return x.GameId
}
return 0
}
var File_clawdoll_proto protoreflect.FileDescriptor
var file_clawdoll_proto_rawDesc = []byte{
@ -1306,55 +1183,40 @@ var file_clawdoll_proto_rawDesc = []byte{
0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x48, 0x65, 0x61, 0x64, 0x55, 0x72, 0x6c,
0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x74, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01,
0x28, 0x05, 0x52, 0x04, 0x53, 0x74, 0x61, 0x74, 0x22, 0x12, 0x0a, 0x10, 0x43, 0x53, 0x43, 0x4c,
0x41, 0x57, 0x44, 0x4f, 0x4c, 0x4c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x9a, 0x01, 0x0a,
0x10, 0x53, 0x43, 0x43, 0x4c, 0x41, 0x57, 0x44, 0x4f, 0x4c, 0x4c, 0x43, 0x6f, 0x6e, 0x66, 0x69,
0x67, 0x12, 0x1a, 0x0a, 0x08, 0x49, 0x63, 0x6f, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x52, 0x08, 0x49, 0x63, 0x6f, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x12, 0x20, 0x0a,
0x0b, 0x43, 0x6f, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01,
0x28, 0x05, 0x52, 0x0b, 0x43, 0x6f, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x4e, 0x75, 0x6d, 0x12,
0x16, 0x0a, 0x06, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52,
0x06, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x49, 0x74, 0x65, 0x6d, 0x4e,
0x75, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x49, 0x74, 0x65, 0x6d, 0x4e, 0x75,
0x6d, 0x12, 0x16, 0x0a, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28,
0x05, 0x52, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x2a, 0xb3, 0x03, 0x0a, 0x10, 0x43, 0x4c,
0x41, 0x57, 0x44, 0x4f, 0x4c, 0x4c, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x44, 0x12, 0x0f,
0x0a, 0x0b, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x5a, 0x45, 0x52, 0x4f, 0x10, 0x00, 0x12,
0x17, 0x0a, 0x12, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x52, 0x4f, 0x4f,
0x4d, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0xe1, 0x2b, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x41, 0x43, 0x4b,
0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x4f, 0x50, 0x10, 0xe2,
0x2b, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x50,
0x4c, 0x41, 0x59, 0x45, 0x52, 0x4f, 0x50, 0x10, 0xe3, 0x2b, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41,
0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x52, 0x4f, 0x4f, 0x4d, 0x53, 0x54, 0x41, 0x54,
0x45, 0x10, 0xe4, 0x2b, 0x12, 0x19, 0x0a, 0x14, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53,
0x43, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x42, 0x49, 0x4c, 0x4c, 0x45, 0x44, 0x10, 0xe5, 0x2b, 0x12,
0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x50, 0x6c, 0x61,
0x79, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x10, 0xe6, 0x2b, 0x12, 0x1a, 0x0a, 0x15, 0x50,
0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c,
0x65, 0x61, 0x76, 0x65, 0x10, 0xe7, 0x2b, 0x12, 0x19, 0x0a, 0x14, 0x50, 0x41, 0x43, 0x4b, 0x45,
0x54, 0x5f, 0x53, 0x43, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x49, 0x4e, 0x46, 0x4f, 0x10,
0xe8, 0x2b, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f,
0x47, 0x45, 0x54, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x10, 0xe9, 0x2b, 0x12, 0x18, 0x0a, 0x13, 0x50,
0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x53, 0x45, 0x4e, 0x44, 0x54, 0x4f, 0x4b,
0x45, 0x4e, 0x10, 0xea, 0x2b, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f,
0x43, 0x53, 0x5f, 0x57, 0x41, 0x49, 0x54, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x53, 0x10, 0xeb,
0x2b, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x57,
0x41, 0x49, 0x54, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x53, 0x10, 0xec, 0x2b, 0x12, 0x1a, 0x0a,
0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x49,
0x4e, 0x47, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0xed, 0x2b, 0x12, 0x19, 0x0a, 0x14, 0x50, 0x41, 0x43,
0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x44, 0x6f, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69,
0x67, 0x10, 0xee, 0x2b, 0x12, 0x19, 0x0a, 0x14, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53,
0x43, 0x5f, 0x44, 0x6f, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x10, 0xef, 0x2b, 0x2a,
0x64, 0x0a, 0x0c, 0x4f, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12,
0x10, 0x0a, 0x0c, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10,
0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10,
0x01, 0x12, 0x16, 0x0a, 0x12, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x43, 0x6f, 0x69, 0x6e, 0x4e, 0x6f,
0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x4f, 0x50, 0x52,
0x43, 0x5f, 0x50, 0x6f, 0x73, 0x41, 0x6c, 0x52, 0x65, 0x61, 0x64, 0x79, 0x50, 0x6c, 0x61, 0x79,
0x69, 0x6e, 0x67, 0x10, 0x03, 0x42, 0x28, 0x5a, 0x26, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x2e, 0x67,
0x61, 0x6d, 0x65, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x61, 0x6d, 0x65, 0x2f, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2f, 0x63, 0x6c, 0x61, 0x77, 0x64, 0x6f, 0x6c, 0x6c, 0x62,
0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x28, 0x05, 0x52, 0x04, 0x53, 0x74, 0x61, 0x74, 0x2a, 0xfd, 0x02, 0x0a, 0x10, 0x43, 0x4c, 0x41,
0x57, 0x44, 0x4f, 0x4c, 0x4c, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x44, 0x12, 0x0f, 0x0a,
0x0b, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x5a, 0x45, 0x52, 0x4f, 0x10, 0x00, 0x12, 0x17,
0x0a, 0x12, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x52, 0x4f, 0x4f, 0x4d,
0x49, 0x4e, 0x46, 0x4f, 0x10, 0xe1, 0x2b, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x41, 0x43, 0x4b, 0x45,
0x54, 0x5f, 0x43, 0x53, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x4f, 0x50, 0x10, 0xe2, 0x2b,
0x12, 0x17, 0x0a, 0x12, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x50, 0x4c,
0x41, 0x59, 0x45, 0x52, 0x4f, 0x50, 0x10, 0xe3, 0x2b, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43,
0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x52, 0x4f, 0x4f, 0x4d, 0x53, 0x54, 0x41, 0x54, 0x45,
0x10, 0xe4, 0x2b, 0x12, 0x19, 0x0a, 0x14, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43,
0x5f, 0x47, 0x41, 0x4d, 0x45, 0x42, 0x49, 0x4c, 0x4c, 0x45, 0x44, 0x10, 0xe5, 0x2b, 0x12, 0x1a,
0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x50, 0x6c, 0x61, 0x79,
0x65, 0x72, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x10, 0xe6, 0x2b, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41,
0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, 0x65,
0x61, 0x76, 0x65, 0x10, 0xe7, 0x2b, 0x12, 0x19, 0x0a, 0x14, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54,
0x5f, 0x53, 0x43, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0xe8,
0x2b, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x47,
0x45, 0x54, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x10, 0xe9, 0x2b, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41,
0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x53, 0x45, 0x4e, 0x44, 0x54, 0x4f, 0x4b, 0x45,
0x4e, 0x10, 0xea, 0x2b, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43,
0x53, 0x5f, 0x57, 0x41, 0x49, 0x54, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x53, 0x10, 0xeb, 0x2b,
0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x57, 0x41,
0x49, 0x54, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x53, 0x10, 0xec, 0x2b, 0x12, 0x1a, 0x0a, 0x15,
0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x49, 0x4e,
0x47, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0xed, 0x2b, 0x2a, 0x64, 0x0a, 0x0c, 0x4f, 0x70, 0x52, 0x65,
0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x4f, 0x50, 0x52, 0x43,
0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x4f, 0x50,
0x52, 0x43, 0x5f, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x4f, 0x50,
0x52, 0x43, 0x5f, 0x43, 0x6f, 0x69, 0x6e, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68,
0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x50, 0x6f, 0x73, 0x41, 0x6c,
0x52, 0x65, 0x61, 0x64, 0x79, 0x50, 0x6c, 0x61, 0x79, 0x69, 0x6e, 0x67, 0x10, 0x03, 0x42, 0x28,
0x5a, 0x26, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x2e, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x2e, 0x63, 0x6f,
0x6d, 0x2f, 0x67, 0x61, 0x6d, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2f,
0x63, 0x6c, 0x61, 0x77, 0x64, 0x6f, 0x6c, 0x6c, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@ -1370,7 +1232,7 @@ func file_clawdoll_proto_rawDescGZIP() []byte {
}
var file_clawdoll_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
var file_clawdoll_proto_msgTypes = make([]protoimpl.MessageInfo, 15)
var file_clawdoll_proto_msgTypes = make([]protoimpl.MessageInfo, 13)
var file_clawdoll_proto_goTypes = []interface{}{
(CLAWDOLLPacketID)(0), // 0: clawdoll.CLAWDOLLPacketID
(OpResultCode)(0), // 1: clawdoll.OpResultCode
@ -1387,8 +1249,6 @@ var file_clawdoll_proto_goTypes = []interface{}{
(*SCCLAWDOLLSendToken)(nil), // 12: clawdoll.SCCLAWDOLLSendToken
(*CLAWDOLLWaitPlayers)(nil), // 13: clawdoll.CLAWDOLLWaitPlayers
(*CLAWDOLLPlayerDigestInfo)(nil), // 14: clawdoll.CLAWDOLLPlayerDigestInfo
(*CSCLAWDOLLConfig)(nil), // 15: clawdoll.CSCLAWDOLLConfig
(*SCCLAWDOLLConfig)(nil), // 16: clawdoll.SCCLAWDOLLConfig
}
var file_clawdoll_proto_depIdxs = []int32{
2, // 0: clawdoll.SCCLAWDOLLRoomInfo.Players:type_name -> clawdoll.CLAWDOLLPlayerData
@ -1564,30 +1424,6 @@ func file_clawdoll_proto_init() {
return nil
}
}
file_clawdoll_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CSCLAWDOLLConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_clawdoll_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SCCLAWDOLLConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
@ -1595,7 +1431,7 @@ func file_clawdoll_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_clawdoll_proto_rawDesc,
NumEnums: 2,
NumMessages: 15,
NumMessages: 13,
NumExtensions: 0,
NumServices: 0,
},

View File

@ -18,8 +18,6 @@ enum CLAWDOLLPacketID {
PACKET_CS_WAITPLAYERS = 5611; // ->
PACKET_SC_WAITPLAYERS = 5612; // ->
PACKET_SC_PLAYINGINFO = 5613; // ->
PACKET_CS_DollConfig = 5614; //
PACKET_SC_DollConfig = 5615; //
}
//
@ -133,13 +131,4 @@ message CLAWDOLLPlayerDigestInfo {
string HeadUrl = 3; //
string Name = 4; //
int32 Stat = 5; // 0 5:
}
message CSCLAWDOLLConfig{
}
message SCCLAWDOLLConfig{
string IconAddr =1; //
int32 CostItemNum = 2; //
int32 ItemId = 3; //ID
int32 ItemNum = 4;//
int32 GameId = 5;
}
}

View File

@ -415,6 +415,8 @@ const (
PlayerPacketID_PACKET_SCDataConfig PlayerPacketID = 2843 //通知配置更新
PlayerPacketID_PACKET_CSClawdollItemLog PlayerPacketID = 2844 //请求娃娃卡道具记录
PlayerPacketID_PACKET_SCClawdollItemLog PlayerPacketID = 2845 //返回娃娃卡道具记录
PlayerPacketID_PACKET_CSDollConfig PlayerPacketID = 2846 //获取娃娃机配置信息
PlayerPacketID_PACKET_SCDollConfig PlayerPacketID = 2847 //返回娃娃机配置信息
)
// Enum value maps for PlayerPacketID.
@ -564,6 +566,8 @@ var (
2843: "PACKET_SCDataConfig",
2844: "PACKET_CSClawdollItemLog",
2845: "PACKET_SCClawdollItemLog",
2846: "PACKET_CSDollConfig",
2847: "PACKET_SCDollConfig",
}
PlayerPacketID_value = map[string]int32{
"PACKET_PLAYERPACKET_ZERO": 0,
@ -710,6 +714,8 @@ var (
"PACKET_SCDataConfig": 2843,
"PACKET_CSClawdollItemLog": 2844,
"PACKET_SCClawdollItemLog": 2845,
"PACKET_CSDollConfig": 2846,
"PACKET_SCDollConfig": 2847,
}
)
@ -11183,10 +11189,11 @@ type ClawdollItemLogData struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
ItemLogType int32 `protobuf:"varint,1,opt,name=ItemLogType,proto3" json:"ItemLogType,omitempty"` //道具记录类型
ItemId int32 `protobuf:"varint,2,opt,name=ItemId,proto3" json:"ItemId,omitempty"` //道具ID
Num int64 `protobuf:"varint,3,opt,name=Num,proto3" json:"Num,omitempty"` //数量
Time int64 `protobuf:"varint,4,opt,name=Time,proto3" json:"Time,omitempty"` //时间
TypeId int32 `protobuf:"varint,1,opt,name=TypeId,proto3" json:"TypeId,omitempty"` //道具记录类型
ItemId int32 `protobuf:"varint,2,opt,name=ItemId,proto3" json:"ItemId,omitempty"` //道具ID
Num int64 `protobuf:"varint,3,opt,name=Num,proto3" json:"Num,omitempty"` //数量
Time int64 `protobuf:"varint,4,opt,name=Time,proto3" json:"Time,omitempty"` //时间
LogType int32 `protobuf:"varint,5,opt,name=LogType,proto3" json:"LogType,omitempty"` //记录类型 0.获取 1.消耗
}
func (x *ClawdollItemLogData) Reset() {
@ -11221,9 +11228,9 @@ func (*ClawdollItemLogData) Descriptor() ([]byte, []int) {
return file_player_proto_rawDescGZIP(), []int{160}
}
func (x *ClawdollItemLogData) GetItemLogType() int32 {
func (x *ClawdollItemLogData) GetTypeId() int32 {
if x != nil {
return x.ItemLogType
return x.TypeId
}
return 0
}
@ -11249,6 +11256,177 @@ func (x *ClawdollItemLogData) GetTime() int64 {
return 0
}
func (x *ClawdollItemLogData) GetLogType() int32 {
if x != nil {
return x.LogType
}
return 0
}
type CSCLAWDOLLConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *CSCLAWDOLLConfig) Reset() {
*x = CSCLAWDOLLConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_player_proto_msgTypes[161]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CSCLAWDOLLConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CSCLAWDOLLConfig) ProtoMessage() {}
func (x *CSCLAWDOLLConfig) ProtoReflect() protoreflect.Message {
mi := &file_player_proto_msgTypes[161]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CSCLAWDOLLConfig.ProtoReflect.Descriptor instead.
func (*CSCLAWDOLLConfig) Descriptor() ([]byte, []int) {
return file_player_proto_rawDescGZIP(), []int{161}
}
type SCCLAWDOLLConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Info []*MachineInfo `protobuf:"bytes,1,rep,name=Info,proto3" json:"Info,omitempty"`
}
func (x *SCCLAWDOLLConfig) Reset() {
*x = SCCLAWDOLLConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_player_proto_msgTypes[162]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SCCLAWDOLLConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SCCLAWDOLLConfig) ProtoMessage() {}
func (x *SCCLAWDOLLConfig) ProtoReflect() protoreflect.Message {
mi := &file_player_proto_msgTypes[162]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SCCLAWDOLLConfig.ProtoReflect.Descriptor instead.
func (*SCCLAWDOLLConfig) Descriptor() ([]byte, []int) {
return file_player_proto_rawDescGZIP(), []int{162}
}
func (x *SCCLAWDOLLConfig) GetInfo() []*MachineInfo {
if x != nil {
return x.Info
}
return nil
}
type MachineInfo struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
IconAddr string `protobuf:"bytes,1,opt,name=IconAddr,proto3" json:"IconAddr,omitempty"` //图片地址
CostItemNum int32 `protobuf:"varint,2,opt,name=CostItemNum,proto3" json:"CostItemNum,omitempty"` //消耗道具数量
ItemId int32 `protobuf:"varint,3,opt,name=ItemId,proto3" json:"ItemId,omitempty"` //获得道具ID
ItemNum int32 `protobuf:"varint,4,opt,name=ItemNum,proto3" json:"ItemNum,omitempty"` //获得道具数量
MachineId int32 `protobuf:"varint,5,opt,name=MachineId,proto3" json:"MachineId,omitempty"`
}
func (x *MachineInfo) Reset() {
*x = MachineInfo{}
if protoimpl.UnsafeEnabled {
mi := &file_player_proto_msgTypes[163]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *MachineInfo) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*MachineInfo) ProtoMessage() {}
func (x *MachineInfo) ProtoReflect() protoreflect.Message {
mi := &file_player_proto_msgTypes[163]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use MachineInfo.ProtoReflect.Descriptor instead.
func (*MachineInfo) Descriptor() ([]byte, []int) {
return file_player_proto_rawDescGZIP(), []int{163}
}
func (x *MachineInfo) GetIconAddr() string {
if x != nil {
return x.IconAddr
}
return ""
}
func (x *MachineInfo) GetCostItemNum() int32 {
if x != nil {
return x.CostItemNum
}
return 0
}
func (x *MachineInfo) GetItemId() int32 {
if x != nil {
return x.ItemId
}
return 0
}
func (x *MachineInfo) GetItemNum() int32 {
if x != nil {
return x.ItemNum
}
return 0
}
func (x *MachineInfo) GetMachineId() int32 {
if x != nil {
return x.MachineId
}
return 0
}
var File_player_proto protoreflect.FileDescriptor
var file_player_proto_rawDesc = []byte{
@ -12400,14 +12578,30 @@ var file_player_proto_rawDesc = []byte{
0x6d, 0x4c, 0x6f, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x6c,
0x61, 0x79, 0x65, 0x72, 0x2e, 0x43, 0x6c, 0x61, 0x77, 0x64, 0x6f, 0x6c, 0x6c, 0x49, 0x74, 0x65,
0x6d, 0x4c, 0x6f, 0x67, 0x44, 0x61, 0x74, 0x61, 0x52, 0x08, 0x49, 0x74, 0x65, 0x6d, 0x4c, 0x6f,
0x67, 0x73, 0x22, 0x75, 0x0a, 0x13, 0x43, 0x6c, 0x61, 0x77, 0x64, 0x6f, 0x6c, 0x6c, 0x49, 0x74,
0x65, 0x6d, 0x4c, 0x6f, 0x67, 0x44, 0x61, 0x74, 0x61, 0x12, 0x20, 0x0a, 0x0b, 0x49, 0x74, 0x65,
0x6d, 0x4c, 0x6f, 0x67, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b,
0x49, 0x74, 0x65, 0x6d, 0x4c, 0x6f, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x49,
0x74, 0x65, 0x6d, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x49, 0x74, 0x65,
0x6d, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03,
0x52, 0x03, 0x4e, 0x75, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20,
0x01, 0x28, 0x03, 0x52, 0x04, 0x54, 0x69, 0x6d, 0x65, 0x2a, 0x87, 0x0f, 0x0a, 0x0c, 0x4f, 0x70,
0x67, 0x73, 0x22, 0x85, 0x01, 0x0a, 0x13, 0x43, 0x6c, 0x61, 0x77, 0x64, 0x6f, 0x6c, 0x6c, 0x49,
0x74, 0x65, 0x6d, 0x4c, 0x6f, 0x67, 0x44, 0x61, 0x74, 0x61, 0x12, 0x16, 0x0a, 0x06, 0x54, 0x79,
0x70, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x54, 0x79, 0x70, 0x65,
0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01,
0x28, 0x05, 0x52, 0x06, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x4e, 0x75,
0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x4e, 0x75, 0x6d, 0x12, 0x12, 0x0a, 0x04,
0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x54, 0x69, 0x6d, 0x65,
0x12, 0x18, 0x0a, 0x07, 0x4c, 0x6f, 0x67, 0x54, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28,
0x05, 0x52, 0x07, 0x4c, 0x6f, 0x67, 0x54, 0x79, 0x70, 0x65, 0x22, 0x12, 0x0a, 0x10, 0x43, 0x53,
0x43, 0x4c, 0x41, 0x57, 0x44, 0x4f, 0x4c, 0x4c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x3b,
0x0a, 0x10, 0x53, 0x43, 0x43, 0x4c, 0x41, 0x57, 0x44, 0x4f, 0x4c, 0x4c, 0x43, 0x6f, 0x6e, 0x66,
0x69, 0x67, 0x12, 0x27, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
0x32, 0x13, 0x2e, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e,
0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x9b, 0x01, 0x0a, 0x0b,
0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x49,
0x63, 0x6f, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x49,
0x63, 0x6f, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x43, 0x6f, 0x73, 0x74, 0x49,
0x74, 0x65, 0x6d, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x43, 0x6f,
0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x4e, 0x75, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x49, 0x74, 0x65,
0x6d, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x49, 0x74, 0x65, 0x6d, 0x49,
0x64, 0x12, 0x18, 0x0a, 0x07, 0x49, 0x74, 0x65, 0x6d, 0x4e, 0x75, 0x6d, 0x18, 0x04, 0x20, 0x01,
0x28, 0x05, 0x52, 0x07, 0x49, 0x74, 0x65, 0x6d, 0x4e, 0x75, 0x6d, 0x12, 0x1c, 0x0a, 0x09, 0x4d,
0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09,
0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x49, 0x64, 0x2a, 0x87, 0x0f, 0x0a, 0x0c, 0x4f, 0x70,
0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x4f, 0x50,
0x52, 0x43, 0x5f, 0x53, 0x75, 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x4f,
0x50, 0x52, 0x43, 0x5f, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x10, 0x4f,
@ -12528,7 +12722,7 @@ var file_player_proto_rawDesc = []byte{
0xc4, 0x3e, 0x12, 0x14, 0x0a, 0x0f, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x47, 0x75, 0x69, 0x64, 0x65,
0x5f, 0x53, 0x6b, 0x69, 0x70, 0x10, 0xc5, 0x3e, 0x12, 0x19, 0x0a, 0x14, 0x4f, 0x50, 0x52, 0x43,
0x5f, 0x47, 0x75, 0x69, 0x64, 0x65, 0x5f, 0x53, 0x6b, 0x69, 0x70, 0x43, 0x6c, 0x6f, 0x73, 0x65,
0x10, 0xc6, 0x3e, 0x2a, 0x85, 0x21, 0x0a, 0x0e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x61,
0x10, 0xc6, 0x3e, 0x2a, 0xb9, 0x21, 0x0a, 0x0e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x61,
0x63, 0x6b, 0x65, 0x74, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54,
0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x5a, 0x45,
0x52, 0x4f, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x14, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43,
@ -12792,10 +12986,13 @@ var file_player_proto_rawDesc = []byte{
0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x43, 0x6c, 0x61, 0x77, 0x64, 0x6f,
0x6c, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x4c, 0x6f, 0x67, 0x10, 0x9c, 0x16, 0x12, 0x1d, 0x0a, 0x18,
0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x43, 0x6c, 0x61, 0x77, 0x64, 0x6f, 0x6c,
0x6c, 0x49, 0x74, 0x65, 0x6d, 0x4c, 0x6f, 0x67, 0x10, 0x9d, 0x16, 0x42, 0x26, 0x5a, 0x24, 0x6d,
0x6f, 0x6e, 0x67, 0x6f, 0x2e, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67,
0x61, 0x6d, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2f, 0x70, 0x6c, 0x61,
0x79, 0x65, 0x72, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x6c, 0x49, 0x74, 0x65, 0x6d, 0x4c, 0x6f, 0x67, 0x10, 0x9d, 0x16, 0x12, 0x18, 0x0a, 0x13, 0x50,
0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x44, 0x6f, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x66,
0x69, 0x67, 0x10, 0x9e, 0x16, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f,
0x53, 0x43, 0x44, 0x6f, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x10, 0x9f, 0x16, 0x42,
0x26, 0x5a, 0x24, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x2e, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x2e, 0x63,
0x6f, 0x6d, 0x2f, 0x67, 0x61, 0x6d, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
0x2f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@ -12811,7 +13008,7 @@ func file_player_proto_rawDescGZIP() []byte {
}
var file_player_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
var file_player_proto_msgTypes = make([]protoimpl.MessageInfo, 170)
var file_player_proto_msgTypes = make([]protoimpl.MessageInfo, 173)
var file_player_proto_goTypes = []interface{}{
(OpResultCode)(0), // 0: player.OpResultCode
(PlayerPacketID)(0), // 1: player.PlayerPacketID
@ -12976,26 +13173,29 @@ var file_player_proto_goTypes = []interface{}{
(*CSClawdollItemLog)(nil), // 160: player.CSClawdollItemLog
(*SCClawdollItemLog)(nil), // 161: player.SCClawdollItemLog
(*ClawdollItemLogData)(nil), // 162: player.ClawdollItemLogData
nil, // 163: player.PlayerData.RankScoreEntry
nil, // 164: player.SCPlayerDataUpdate.RankScoreEntry
nil, // 165: player.SCGameExDropItems.ItemsEntry
nil, // 166: player.SCVIPDraw.AwardEntry
nil, // 167: player.VIPcfg.Privilege1Entry
nil, // 168: player.VIPcfg.Privilege9Entry
nil, // 169: player.SCBindTelInfo.BindTelRewardEntry
nil, // 170: player.Config.MapEntry
nil, // 171: player.Config.MapStrEntry
(*server.DB_GameItem)(nil), // 172: server.DB_GameItem
(*CSCLAWDOLLConfig)(nil), // 163: player.CSCLAWDOLLConfig
(*SCCLAWDOLLConfig)(nil), // 164: player.SCCLAWDOLLConfig
(*MachineInfo)(nil), // 165: player.MachineInfo
nil, // 166: player.PlayerData.RankScoreEntry
nil, // 167: player.SCPlayerDataUpdate.RankScoreEntry
nil, // 168: player.SCGameExDropItems.ItemsEntry
nil, // 169: player.SCVIPDraw.AwardEntry
nil, // 170: player.VIPcfg.Privilege1Entry
nil, // 171: player.VIPcfg.Privilege9Entry
nil, // 172: player.SCBindTelInfo.BindTelRewardEntry
nil, // 173: player.Config.MapEntry
nil, // 174: player.Config.MapStrEntry
(*server.DB_GameItem)(nil), // 175: server.DB_GameItem
}
var file_player_proto_depIdxs = []int32{
4, // 0: player.SCBillList.Items:type_name -> player.BillItem
0, // 1: player.SCSavePlayerInfo.OpRetCode:type_name -> player.OpResultCode
163, // 2: player.PlayerData.RankScore:type_name -> player.PlayerData.RankScoreEntry
166, // 2: player.PlayerData.RankScore:type_name -> player.PlayerData.RankScoreEntry
9, // 3: player.PlayerData.WeekCard:type_name -> player.WeekInfo
0, // 4: player.SCPlayerData.OpRetCode:type_name -> player.OpResultCode
8, // 5: player.SCPlayerData.Data:type_name -> player.PlayerData
10, // 6: player.SCPlayerData.MiniGameArr:type_name -> player.MiniGameInfo
164, // 7: player.SCPlayerDataUpdate.RankScore:type_name -> player.SCPlayerDataUpdate.RankScoreEntry
167, // 7: player.SCPlayerDataUpdate.RankScore:type_name -> player.SCPlayerDataUpdate.RankScoreEntry
8, // 8: player.SCThirdPlayerData.Data:type_name -> player.PlayerData
0, // 9: player.SCChangeNick.OpRetCode:type_name -> player.OpResultCode
0, // 10: player.SCChangePassword.OpRetCode:type_name -> player.OpResultCode
@ -13032,19 +13232,19 @@ var file_player_proto_depIdxs = []int32{
93, // 41: player.JybInfoAward.ItemId:type_name -> player.ItemInfo
0, // 42: player.SCPlayerSetting.OpRetCode:type_name -> player.OpResultCode
94, // 43: player.SCPlayerSetting.GainItem:type_name -> player.JybInfoAward
165, // 44: player.SCGameExDropItems.Items:type_name -> player.SCGameExDropItems.ItemsEntry
168, // 44: player.SCGameExDropItems.Items:type_name -> player.SCGameExDropItems.ItemsEntry
0, // 45: player.SCVIPBuy.OpRetCode:type_name -> player.OpResultCode
0, // 46: player.SCVIPDraw.OpRetCode:type_name -> player.OpResultCode
166, // 47: player.SCVIPDraw.Award:type_name -> player.SCVIPDraw.AwardEntry
169, // 47: player.SCVIPDraw.Award:type_name -> player.SCVIPDraw.AwardEntry
93, // 48: player.VIPcfg.Item:type_name -> player.ItemInfo
167, // 49: player.VIPcfg.Privilege1:type_name -> player.VIPcfg.Privilege1Entry
170, // 49: player.VIPcfg.Privilege1:type_name -> player.VIPcfg.Privilege1Entry
93, // 50: player.VIPcfg.Privilege7:type_name -> player.ItemInfo
168, // 51: player.VIPcfg.Privilege9:type_name -> player.VIPcfg.Privilege9Entry
171, // 51: player.VIPcfg.Privilege9:type_name -> player.VIPcfg.Privilege9Entry
0, // 52: player.SCVIPInfo.OpRetCode:type_name -> player.OpResultCode
103, // 53: player.SCVIPInfo.List:type_name -> player.VIPcfg
108, // 54: player.SCPayGoodsInfo.Item:type_name -> player.PayItem
0, // 55: player.SCClientLog.OpRetCode:type_name -> player.OpResultCode
169, // 56: player.SCBindTelInfo.BindTelReward:type_name -> player.SCBindTelInfo.BindTelRewardEntry
172, // 56: player.SCBindTelInfo.BindTelReward:type_name -> player.SCBindTelInfo.BindTelRewardEntry
0, // 57: player.SCPlayerSMSCode.Code:type_name -> player.OpResultCode
0, // 58: player.SCBindTel.Code:type_name -> player.OpResultCode
0, // 59: player.SCHttpPass.OpRetCode:type_name -> player.OpResultCode
@ -13057,21 +13257,22 @@ var file_player_proto_depIdxs = []int32{
128, // 66: player.SCDiamondLotteryInfo.Item:type_name -> player.LotteryItem
128, // 67: player.SCDiamondLottery.Item:type_name -> player.LotteryItem
128, // 68: player.SCDiamondLotteryLuckyAward.Item:type_name -> player.LotteryItem
172, // 69: player.SCItem.Items:type_name -> server.DB_GameItem
175, // 69: player.SCItem.Items:type_name -> server.DB_GameItem
149, // 70: player.SCAwardLog.AwardLog:type_name -> player.AwardLogData
151, // 71: player.SCAwardLog.AnnouncerLog:type_name -> player.AnnouncerLogInfo
150, // 72: player.AwardLogData.AwardLog:type_name -> player.AwardLogInfo
154, // 73: player.SCPopUpWindowsConfig.Info:type_name -> player.WindowsInfo
0, // 74: player.SCUpdateAttribute.OpRetCode:type_name -> player.OpResultCode
170, // 75: player.Config.Map:type_name -> player.Config.MapEntry
171, // 76: player.Config.MapStr:type_name -> player.Config.MapStrEntry
173, // 75: player.Config.Map:type_name -> player.Config.MapEntry
174, // 76: player.Config.MapStr:type_name -> player.Config.MapStrEntry
158, // 77: player.SCDataConfig.Cfg:type_name -> player.Config
162, // 78: player.SCClawdollItemLog.ItemLogs:type_name -> player.ClawdollItemLogData
79, // [79:79] is the sub-list for method output_type
79, // [79:79] is the sub-list for method input_type
79, // [79:79] is the sub-list for extension type_name
79, // [79:79] is the sub-list for extension extendee
0, // [0:79] is the sub-list for field type_name
165, // 79: player.SCCLAWDOLLConfig.Info:type_name -> player.MachineInfo
80, // [80:80] is the sub-list for method output_type
80, // [80:80] is the sub-list for method input_type
80, // [80:80] is the sub-list for extension type_name
80, // [80:80] is the sub-list for extension extendee
0, // [0:80] is the sub-list for field type_name
}
func init() { file_player_proto_init() }
@ -15012,6 +15213,42 @@ func file_player_proto_init() {
return nil
}
}
file_player_proto_msgTypes[161].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CSCLAWDOLLConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_player_proto_msgTypes[162].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SCCLAWDOLLConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_player_proto_msgTypes[163].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*MachineInfo); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
@ -15019,7 +15256,7 @@ func file_player_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_player_proto_rawDesc,
NumEnums: 2,
NumMessages: 170,
NumMessages: 173,
NumExtensions: 0,
NumServices: 0,
},

View File

@ -234,6 +234,8 @@ enum PlayerPacketID {
PACKET_SCDataConfig = 2843;//
PACKET_CSClawdollItemLog = 2844;//
PACKET_SCClawdollItemLog = 2845;//
PACKET_CSDollConfig = 2846; //
PACKET_SCDollConfig = 2847; //
}
//
@ -1384,9 +1386,21 @@ message SCClawdollItemLog{
}
message ClawdollItemLogData{
int32 ItemLogType = 1; //
int32 TypeId = 1; //
int32 ItemId = 2; //ID
int64 Num = 3; //
int64 Time = 4; //
int32 LogType = 5; // 0. 1.
}
message CSCLAWDOLLConfig{
}
message SCCLAWDOLLConfig{
repeated MachineInfo Info =1;
}
message MachineInfo{
string IconAddr =1; //
int32 CostItemNum = 2; //
int32 ItemId = 3; //ID
int32 ItemNum = 4;//
int32 MachineId = 5;
}

View File

@ -1683,10 +1683,11 @@ type ShopWeight struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
ShopType int32 `protobuf:"varint,1,opt,name=ShopType,proto3" json:"ShopType,omitempty"`
Weight int32 `protobuf:"varint,2,opt,name=Weight,proto3" json:"Weight,omitempty"`
Name string `protobuf:"bytes,3,opt,name=Name,proto3" json:"Name,omitempty"`
IsShow int32 `protobuf:"varint,4,opt,name=IsShow,proto3" json:"IsShow,omitempty"`
ShopType int32 `protobuf:"varint,1,opt,name=ShopType,proto3" json:"ShopType,omitempty"`
Weight int32 `protobuf:"varint,2,opt,name=Weight,proto3" json:"Weight,omitempty"`
Name string `protobuf:"bytes,3,opt,name=Name,proto3" json:"Name,omitempty"`
IsShow int32 `protobuf:"varint,4,opt,name=IsShow,proto3" json:"IsShow,omitempty"`
Location []int32 `protobuf:"varint,5,rep,packed,name=Location,proto3" json:"Location,omitempty"` // 显示位置
}
func (x *ShopWeight) Reset() {
@ -1749,6 +1750,13 @@ func (x *ShopWeight) GetIsShow() int32 {
return 0
}
func (x *ShopWeight) GetLocation() []int32 {
if x != nil {
return x.Location
}
return nil
}
type SCShopExchangeList struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@ -2669,146 +2677,148 @@ var file_shop_proto_rawDesc = []byte{
0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04,
0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65,
0x12, 0x10, 0x0a, 0x03, 0x55, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x55,
0x72, 0x6c, 0x22, 0x6c, 0x0a, 0x0a, 0x53, 0x68, 0x6f, 0x70, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74,
0x12, 0x1a, 0x0a, 0x08, 0x53, 0x68, 0x6f, 0x70, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01,
0x28, 0x05, 0x52, 0x08, 0x53, 0x68, 0x6f, 0x70, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06,
0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x57, 0x65,
0x69, 0x67, 0x68, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01,
0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x49, 0x73, 0x53, 0x68,
0x6f, 0x77, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x49, 0x73, 0x53, 0x68, 0x6f, 0x77,
0x22, 0x9a, 0x01, 0x0a, 0x12, 0x53, 0x43, 0x53, 0x68, 0x6f, 0x70, 0x45, 0x78, 0x63, 0x68, 0x61,
0x6e, 0x67, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x07, 0x52, 0x65, 0x74, 0x43, 0x6f,
0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x73, 0x68, 0x6f, 0x70, 0x2e,
0x4f, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x52, 0x65,
0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x2c, 0x0a, 0x05, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x18, 0x02,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x73, 0x68, 0x6f, 0x70, 0x2e, 0x53, 0x68, 0x6f, 0x70,
0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x49, 0x6e,
0x66, 0x6f, 0x73, 0x12, 0x28, 0x0a, 0x06, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x03, 0x20,
0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x73, 0x68, 0x6f, 0x70, 0x2e, 0x53, 0x68, 0x6f, 0x70, 0x57,
0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x06, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0xc9, 0x01,
0x0a, 0x09, 0x43, 0x53, 0x50, 0x61, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x47,
0x6f, 0x6f, 0x64, 0x73, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x47, 0x6f,
0x6f, 0x64, 0x73, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x50,
0x61, 0x79, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x43, 0x6f, 0x6e, 0x66,
0x69, 0x67, 0x50, 0x61, 0x79, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x42, 0x75, 0x79, 0x49, 0x64,
0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x42, 0x75, 0x79, 0x49, 0x64, 0x12, 0x1e, 0x0a,
0x0a, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28,
0x05, 0x52, 0x0a, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x49, 0x64, 0x12, 0x28, 0x0a,
0x0f, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x49, 0x64,
0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65,
0x4f, 0x72, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x45, 0x78, 0x63, 0x68, 0x61,
0x6e, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x45, 0x78,
0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x22, 0x4b, 0x0a, 0x09, 0x53, 0x43, 0x50,
0x61, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2c, 0x0a, 0x07, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64,
0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x73, 0x68, 0x6f, 0x70, 0x2e, 0x4f,
0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x52, 0x65, 0x74,
0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x55, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x52, 0x03, 0x55, 0x72, 0x6c, 0x22, 0x2a, 0x0a, 0x10, 0x43, 0x53, 0x47, 0x65, 0x74, 0x50,
0x61, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x4f, 0x70,
0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x4f, 0x70, 0x54, 0x79,
0x70, 0x65, 0x22, 0x3c, 0x0a, 0x08, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x16,
0x0a, 0x06, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06,
0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x49, 0x74, 0x65, 0x6d, 0x4e, 0x75,
0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x49, 0x74, 0x65, 0x6d, 0x4e, 0x75, 0x6d,
0x22, 0xd3, 0x01, 0x0a, 0x0b, 0x50, 0x61, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74,
0x12, 0x18, 0x0a, 0x07, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
0x09, 0x52, 0x07, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x43, 0x6f,
0x6e, 0x73, 0x75, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52,
0x0b, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a,
0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05,
0x52, 0x0a, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x16, 0x0a, 0x06,
0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x05, 0x52, 0x06, 0x41, 0x6d,
0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x08, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f,
0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x73, 0x68, 0x6f, 0x70, 0x2e, 0x49, 0x74,
0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f,
0x12, 0x14, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52,
0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x54, 0x73, 0x18, 0x07, 0x20, 0x01,
0x28, 0x03, 0x52, 0x02, 0x54, 0x73, 0x22, 0x39, 0x0a, 0x10, 0x53, 0x43, 0x47, 0x65, 0x74, 0x50,
0x61, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x25, 0x0a, 0x04, 0x49, 0x6e,
0x66, 0x6f, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x73, 0x68, 0x6f, 0x70, 0x2e,
0x50, 0x61, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x04, 0x49, 0x6e, 0x66,
0x6f, 0x22, 0x4a, 0x0a, 0x0c, 0x43, 0x53, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, 0x64, 0x64,
0x72, 0x12, 0x16, 0x0a, 0x06, 0x4f, 0x70, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
0x05, 0x52, 0x06, 0x4f, 0x70, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x41, 0x64, 0x64,
0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x41, 0x64, 0x64, 0x72, 0x12, 0x0e, 0x0a,
0x02, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x22, 0x38, 0x0a,
0x10, 0x53, 0x43, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72,
0x73, 0x12, 0x24, 0x0a, 0x05, 0x41, 0x64, 0x64, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
0x32, 0x0e, 0x2e, 0x73, 0x68, 0x6f, 0x70, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x44, 0x61, 0x74, 0x61,
0x52, 0x05, 0x41, 0x64, 0x64, 0x72, 0x73, 0x22, 0x2e, 0x0a, 0x08, 0x41, 0x64, 0x64, 0x72, 0x44,
0x61, 0x74, 0x61, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52,
0x02, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x41, 0x64, 0x64, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x52, 0x04, 0x41, 0x64, 0x64, 0x72, 0x22, 0x11, 0x0a, 0x0f, 0x43, 0x53, 0x55, 0x70, 0x64,
0x61, 0x74, 0x65, 0x56, 0x69, 0x70, 0x53, 0x68, 0x6f, 0x70, 0x22, 0x59, 0x0a, 0x0f, 0x53, 0x43,
0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, 0x70, 0x53, 0x68, 0x6f, 0x70, 0x12, 0x22, 0x0a,
0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x73, 0x68,
0x6f, 0x70, 0x2e, 0x53, 0x68, 0x6f, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66,
0x6f, 0x12, 0x22, 0x0a, 0x0c, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x43, 0x6f, 0x75, 0x6e,
0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68,
0x43, 0x6f, 0x75, 0x6e, 0x74, 0x2a, 0xae, 0x02, 0x0a, 0x0c, 0x4f, 0x70, 0x52, 0x65, 0x73, 0x75,
0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x53,
0x75, 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x4f, 0x50, 0x52, 0x43, 0x5f,
0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x4f, 0x50, 0x52, 0x43, 0x5f,
0x56, 0x43, 0x6f, 0x69, 0x6e, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0x02,
0x12, 0x16, 0x0a, 0x12, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67,
0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x10, 0x03, 0x12, 0x1a, 0x0a, 0x16, 0x4f, 0x50, 0x52, 0x43,
0x5f, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75,
0x67, 0x68, 0x10, 0x04, 0x12, 0x18, 0x0a, 0x14, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x45, 0x78, 0x63,
0x68, 0x61, 0x6e, 0x67, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x74, 0x74, 0x10, 0x05, 0x12, 0x18,
0x0a, 0x14, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x53,
0x6f, 0x6c, 0x64, 0x4f, 0x75, 0x74, 0x10, 0x06, 0x12, 0x19, 0x0a, 0x15, 0x4f, 0x50, 0x52, 0x43,
0x5f, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x41, 0x63,
0x63, 0x10, 0x07, 0x12, 0x17, 0x0a, 0x13, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x4a, 0x43, 0x6f, 0x69,
0x6e, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0x08, 0x12, 0x1a, 0x0a, 0x16,
0x4f, 0x50, 0x52, 0x43, 0x5f, 0x56, 0x69, 0x70, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x4e, 0x6f, 0x74,
0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0x09, 0x12, 0x13, 0x0a, 0x0f, 0x4f, 0x50, 0x52, 0x43,
0x5f, 0x4e, 0x6f, 0x74, 0x53, 0x49, 0x4d, 0x43, 0x6f, 0x64, 0x65, 0x10, 0x0a, 0x12, 0x17, 0x0a,
0x13, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x44, 0x43, 0x6f, 0x69, 0x6e, 0x4e, 0x6f, 0x74, 0x45, 0x6e,
0x6f, 0x75, 0x67, 0x68, 0x10, 0x0b, 0x2a, 0x91, 0x05, 0x0a, 0x09, 0x53, 0x50, 0x61, 0x63, 0x6b,
0x65, 0x74, 0x49, 0x44, 0x12, 0x14, 0x0a, 0x10, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53,
0x48, 0x4f, 0x50, 0x5f, 0x5a, 0x45, 0x52, 0x4f, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41,
0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x5f, 0x49, 0x4e, 0x46,
0x4f, 0x10, 0xc4, 0x13, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53,
0x43, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x5f, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0xc5, 0x13, 0x12, 0x1c,
0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x53, 0x48, 0x4f, 0x50,
0x5f, 0x41, 0x44, 0x4c, 0x4f, 0x4f, 0x4b, 0x45, 0x44, 0x10, 0xc6, 0x13, 0x12, 0x1c, 0x0a, 0x17,
0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x5f, 0x41,
0x44, 0x4c, 0x4f, 0x4f, 0x4b, 0x45, 0x44, 0x10, 0xc7, 0x13, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41,
0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x5f, 0x56, 0x43, 0x50,
0x41, 0x59, 0x53, 0x48, 0x4f, 0x50, 0x10, 0xc8, 0x13, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43,
0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x5f, 0x56, 0x43, 0x50, 0x41,
0x59, 0x53, 0x48, 0x4f, 0x50, 0x10, 0xc9, 0x13, 0x12, 0x22, 0x0a, 0x1d, 0x50, 0x41, 0x43, 0x4b,
0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x5f, 0x45, 0x58, 0x43, 0x48, 0x41,
0x4e, 0x47, 0x45, 0x52, 0x45, 0x43, 0x4f, 0x52, 0x44, 0x10, 0xca, 0x13, 0x12, 0x22, 0x0a, 0x1d,
0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x5f, 0x45,
0x58, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x52, 0x45, 0x43, 0x4f, 0x52, 0x44, 0x10, 0xcb, 0x13,
0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x53, 0x48,
0x4f, 0x50, 0x5f, 0x45, 0x58, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x10, 0xcc, 0x13, 0x12, 0x1c,
0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x53, 0x48, 0x4f, 0x50,
0x5f, 0x45, 0x58, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x10, 0xcd, 0x13, 0x12, 0x20, 0x0a, 0x1b,
0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x5f, 0x45,
0x58, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x4c, 0x49, 0x53, 0x54, 0x10, 0xce, 0x13, 0x12, 0x20,
0x0a, 0x1b, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x53, 0x48, 0x4f, 0x50,
0x5f, 0x45, 0x58, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x4c, 0x49, 0x53, 0x54, 0x10, 0xcf, 0x13,
0x12, 0x1a, 0x0a, 0x15, 0x53, 0x48, 0x4f, 0x50, 0x5f, 0x53, 0x43, 0x5f, 0x47, 0x49, 0x56, 0x45,
0x43, 0x4f, 0x49, 0x4e, 0x5f, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0xd2, 0x13, 0x12, 0x15, 0x0a, 0x10,
0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x50, 0x41, 0x59, 0x49, 0x4e, 0x46, 0x4f,
0x10, 0xd3, 0x13, 0x12, 0x15, 0x0a, 0x10, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43,
0x50, 0x41, 0x59, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0xd4, 0x13, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41,
0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x47, 0x45, 0x54, 0x50, 0x41, 0x59, 0x49, 0x4e, 0x46,
0x4f, 0x4c, 0x49, 0x53, 0x54, 0x10, 0xd5, 0x13, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b,
0x45, 0x54, 0x5f, 0x53, 0x43, 0x47, 0x45, 0x54, 0x50, 0x41, 0x59, 0x49, 0x4e, 0x46, 0x4f, 0x4c,
0x49, 0x53, 0x54, 0x10, 0xd6, 0x13, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54,
0x5f, 0x43, 0x53, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x41, 0x44, 0x44, 0x52, 0x10, 0xd7, 0x13,
0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x50, 0x4c, 0x41,
0x59, 0x45, 0x52, 0x41, 0x44, 0x44, 0x52, 0x10, 0xd8, 0x13, 0x12, 0x1e, 0x0a, 0x19, 0x50, 0x41,
0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x5f, 0x56,
0x49, 0x50, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x10, 0xd9, 0x13, 0x12, 0x1e, 0x0a, 0x19, 0x50, 0x41,
0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x5f, 0x56,
0x49, 0x50, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x10, 0xda, 0x13, 0x42, 0x24, 0x5a, 0x22, 0x6d, 0x6f,
0x6e, 0x67, 0x6f, 0x2e, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x61,
0x6d, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2f, 0x73, 0x68, 0x6f, 0x70,
0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x72, 0x6c, 0x22, 0x88, 0x01, 0x0a, 0x0a, 0x53, 0x68, 0x6f, 0x70, 0x57, 0x65, 0x69, 0x67, 0x68,
0x74, 0x12, 0x1a, 0x0a, 0x08, 0x53, 0x68, 0x6f, 0x70, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20,
0x01, 0x28, 0x05, 0x52, 0x08, 0x53, 0x68, 0x6f, 0x70, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a,
0x06, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x57,
0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20,
0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x49, 0x73, 0x53,
0x68, 0x6f, 0x77, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x49, 0x73, 0x53, 0x68, 0x6f,
0x77, 0x12, 0x1a, 0x0a, 0x08, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20,
0x03, 0x28, 0x05, 0x52, 0x08, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x9a, 0x01,
0x0a, 0x12, 0x53, 0x43, 0x53, 0x68, 0x6f, 0x70, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65,
0x4c, 0x69, 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x07, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x18,
0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x73, 0x68, 0x6f, 0x70, 0x2e, 0x4f, 0x70, 0x52,
0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x52, 0x65, 0x74, 0x43, 0x6f,
0x64, 0x65, 0x12, 0x2c, 0x0a, 0x05, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x16, 0x2e, 0x73, 0x68, 0x6f, 0x70, 0x2e, 0x53, 0x68, 0x6f, 0x70, 0x45, 0x78, 0x63,
0x68, 0x61, 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x49, 0x6e, 0x66, 0x6f, 0x73,
0x12, 0x28, 0x0a, 0x06, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b,
0x32, 0x10, 0x2e, 0x73, 0x68, 0x6f, 0x70, 0x2e, 0x53, 0x68, 0x6f, 0x70, 0x57, 0x65, 0x69, 0x67,
0x68, 0x74, 0x52, 0x06, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0xc9, 0x01, 0x0a, 0x09, 0x43,
0x53, 0x50, 0x61, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x47, 0x6f, 0x6f, 0x64,
0x73, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x47, 0x6f, 0x6f, 0x64, 0x73,
0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x50, 0x61, 0x79, 0x49,
0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x50,
0x61, 0x79, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x42, 0x75, 0x79, 0x49, 0x64, 0x18, 0x03, 0x20,
0x01, 0x28, 0x05, 0x52, 0x05, 0x42, 0x75, 0x79, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x45, 0x78,
0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a,
0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x45, 0x78,
0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x49, 0x64, 0x18, 0x05, 0x20,
0x01, 0x28, 0x09, 0x52, 0x0f, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4f, 0x72, 0x64,
0x65, 0x72, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65,
0x4e, 0x75, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x45, 0x78, 0x63, 0x68, 0x61,
0x6e, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x22, 0x4b, 0x0a, 0x09, 0x53, 0x43, 0x50, 0x61, 0x79, 0x49,
0x6e, 0x66, 0x6f, 0x12, 0x2c, 0x0a, 0x07, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01,
0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x73, 0x68, 0x6f, 0x70, 0x2e, 0x4f, 0x70, 0x52, 0x65,
0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64,
0x65, 0x12, 0x10, 0x0a, 0x03, 0x55, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
0x55, 0x72, 0x6c, 0x22, 0x2a, 0x0a, 0x10, 0x43, 0x53, 0x47, 0x65, 0x74, 0x50, 0x61, 0x79, 0x49,
0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x4f, 0x70, 0x54, 0x79, 0x70,
0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x4f, 0x70, 0x54, 0x79, 0x70, 0x65, 0x22,
0x3c, 0x0a, 0x08, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x49,
0x74, 0x65, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x49, 0x74, 0x65,
0x6d, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x49, 0x74, 0x65, 0x6d, 0x4e, 0x75, 0x6d, 0x18, 0x02,
0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x49, 0x74, 0x65, 0x6d, 0x4e, 0x75, 0x6d, 0x22, 0xd3, 0x01,
0x0a, 0x0b, 0x50, 0x61, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x18, 0x0a,
0x07, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
0x4f, 0x72, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x43, 0x6f, 0x6e, 0x73, 0x75,
0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x43, 0x6f,
0x6e, 0x73, 0x75, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x43, 0x6f, 0x6e,
0x73, 0x75, 0x6d, 0x65, 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x43,
0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x41, 0x6d, 0x6f,
0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x05, 0x52, 0x06, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
0x74, 0x12, 0x2a, 0x0a, 0x08, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x05, 0x20,
0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x73, 0x68, 0x6f, 0x70, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x49,
0x6e, 0x66, 0x6f, 0x52, 0x08, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x14, 0x0a,
0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x53, 0x74,
0x61, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x54, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52,
0x02, 0x54, 0x73, 0x22, 0x39, 0x0a, 0x10, 0x53, 0x43, 0x47, 0x65, 0x74, 0x50, 0x61, 0x79, 0x49,
0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x25, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x18,
0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x73, 0x68, 0x6f, 0x70, 0x2e, 0x50, 0x61, 0x79,
0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x4a,
0x0a, 0x0c, 0x43, 0x53, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x12, 0x16,
0x0a, 0x06, 0x4f, 0x70, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06,
0x4f, 0x70, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x41, 0x64, 0x64, 0x72, 0x18, 0x02,
0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x41, 0x64, 0x64, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64,
0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x22, 0x38, 0x0a, 0x10, 0x53, 0x43,
0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x73, 0x12, 0x24,
0x0a, 0x05, 0x41, 0x64, 0x64, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e,
0x73, 0x68, 0x6f, 0x70, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, 0x41,
0x64, 0x64, 0x72, 0x73, 0x22, 0x2e, 0x0a, 0x08, 0x41, 0x64, 0x64, 0x72, 0x44, 0x61, 0x74, 0x61,
0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64,
0x12, 0x12, 0x0a, 0x04, 0x41, 0x64, 0x64, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
0x41, 0x64, 0x64, 0x72, 0x22, 0x11, 0x0a, 0x0f, 0x43, 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
0x56, 0x69, 0x70, 0x53, 0x68, 0x6f, 0x70, 0x22, 0x59, 0x0a, 0x0f, 0x53, 0x43, 0x55, 0x70, 0x64,
0x61, 0x74, 0x65, 0x56, 0x69, 0x70, 0x53, 0x68, 0x6f, 0x70, 0x12, 0x22, 0x0a, 0x04, 0x69, 0x6e,
0x66, 0x6f, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x73, 0x68, 0x6f, 0x70, 0x2e,
0x53, 0x68, 0x6f, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x22,
0x0a, 0x0c, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02,
0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x43, 0x6f, 0x75,
0x6e, 0x74, 0x2a, 0xae, 0x02, 0x0a, 0x0c, 0x4f, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43,
0x6f, 0x64, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x53, 0x75, 0x63, 0x65,
0x73, 0x73, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x45, 0x72, 0x72,
0x6f, 0x72, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x56, 0x43, 0x6f,
0x69, 0x6e, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0x02, 0x12, 0x16, 0x0a,
0x12, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4c, 0x69,
0x6d, 0x69, 0x74, 0x10, 0x03, 0x12, 0x1a, 0x0a, 0x16, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x45, 0x78,
0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10,
0x04, 0x12, 0x18, 0x0a, 0x14, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e,
0x67, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x74, 0x74, 0x10, 0x05, 0x12, 0x18, 0x0a, 0x14, 0x4f,
0x50, 0x52, 0x43, 0x5f, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x6f, 0x6c, 0x64,
0x4f, 0x75, 0x74, 0x10, 0x06, 0x12, 0x19, 0x0a, 0x15, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x45, 0x78,
0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x41, 0x63, 0x63, 0x10, 0x07,
0x12, 0x17, 0x0a, 0x13, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x4a, 0x43, 0x6f, 0x69, 0x6e, 0x4e, 0x6f,
0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0x08, 0x12, 0x1a, 0x0a, 0x16, 0x4f, 0x50, 0x52,
0x43, 0x5f, 0x56, 0x69, 0x70, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f,
0x75, 0x67, 0x68, 0x10, 0x09, 0x12, 0x13, 0x0a, 0x0f, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x4e, 0x6f,
0x74, 0x53, 0x49, 0x4d, 0x43, 0x6f, 0x64, 0x65, 0x10, 0x0a, 0x12, 0x17, 0x0a, 0x13, 0x4f, 0x50,
0x52, 0x43, 0x5f, 0x44, 0x43, 0x6f, 0x69, 0x6e, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67,
0x68, 0x10, 0x0b, 0x2a, 0x91, 0x05, 0x0a, 0x09, 0x53, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x49,
0x44, 0x12, 0x14, 0x0a, 0x10, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x48, 0x4f, 0x50,
0x5f, 0x5a, 0x45, 0x52, 0x4f, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45,
0x54, 0x5f, 0x43, 0x53, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x5f, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0xc4,
0x13, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x53,
0x48, 0x4f, 0x50, 0x5f, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0xc5, 0x13, 0x12, 0x1c, 0x0a, 0x17, 0x50,
0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x5f, 0x41, 0x44,
0x4c, 0x4f, 0x4f, 0x4b, 0x45, 0x44, 0x10, 0xc6, 0x13, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43,
0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x5f, 0x41, 0x44, 0x4c, 0x4f,
0x4f, 0x4b, 0x45, 0x44, 0x10, 0xc7, 0x13, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45,
0x54, 0x5f, 0x43, 0x53, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x5f, 0x56, 0x43, 0x50, 0x41, 0x59, 0x53,
0x48, 0x4f, 0x50, 0x10, 0xc8, 0x13, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54,
0x5f, 0x53, 0x43, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x5f, 0x56, 0x43, 0x50, 0x41, 0x59, 0x53, 0x48,
0x4f, 0x50, 0x10, 0xc9, 0x13, 0x12, 0x22, 0x0a, 0x1d, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f,
0x43, 0x53, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x5f, 0x45, 0x58, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45,
0x52, 0x45, 0x43, 0x4f, 0x52, 0x44, 0x10, 0xca, 0x13, 0x12, 0x22, 0x0a, 0x1d, 0x50, 0x41, 0x43,
0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x5f, 0x45, 0x58, 0x43, 0x48,
0x41, 0x4e, 0x47, 0x45, 0x52, 0x45, 0x43, 0x4f, 0x52, 0x44, 0x10, 0xcb, 0x13, 0x12, 0x1c, 0x0a,
0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x5f,
0x45, 0x58, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x10, 0xcc, 0x13, 0x12, 0x1c, 0x0a, 0x17, 0x50,
0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x5f, 0x45, 0x58,
0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x10, 0xcd, 0x13, 0x12, 0x20, 0x0a, 0x1b, 0x50, 0x41, 0x43,
0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x5f, 0x45, 0x58, 0x43, 0x48,
0x41, 0x4e, 0x47, 0x45, 0x4c, 0x49, 0x53, 0x54, 0x10, 0xce, 0x13, 0x12, 0x20, 0x0a, 0x1b, 0x50,
0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x5f, 0x45, 0x58,
0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x4c, 0x49, 0x53, 0x54, 0x10, 0xcf, 0x13, 0x12, 0x1a, 0x0a,
0x15, 0x53, 0x48, 0x4f, 0x50, 0x5f, 0x53, 0x43, 0x5f, 0x47, 0x49, 0x56, 0x45, 0x43, 0x4f, 0x49,
0x4e, 0x5f, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0xd2, 0x13, 0x12, 0x15, 0x0a, 0x10, 0x50, 0x41, 0x43,
0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x50, 0x41, 0x59, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0xd3, 0x13,
0x12, 0x15, 0x0a, 0x10, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x50, 0x41, 0x59,
0x49, 0x4e, 0x46, 0x4f, 0x10, 0xd4, 0x13, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45,
0x54, 0x5f, 0x43, 0x53, 0x47, 0x45, 0x54, 0x50, 0x41, 0x59, 0x49, 0x4e, 0x46, 0x4f, 0x4c, 0x49,
0x53, 0x54, 0x10, 0xd5, 0x13, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f,
0x53, 0x43, 0x47, 0x45, 0x54, 0x50, 0x41, 0x59, 0x49, 0x4e, 0x46, 0x4f, 0x4c, 0x49, 0x53, 0x54,
0x10, 0xd6, 0x13, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53,
0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x41, 0x44, 0x44, 0x52, 0x10, 0xd7, 0x13, 0x12, 0x18, 0x0a,
0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52,
0x41, 0x44, 0x44, 0x52, 0x10, 0xd8, 0x13, 0x12, 0x1e, 0x0a, 0x19, 0x50, 0x41, 0x43, 0x4b, 0x45,
0x54, 0x5f, 0x43, 0x53, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x5f, 0x56, 0x49, 0x50, 0x5f,
0x53, 0x48, 0x4f, 0x50, 0x10, 0xd9, 0x13, 0x12, 0x1e, 0x0a, 0x19, 0x50, 0x41, 0x43, 0x4b, 0x45,
0x54, 0x5f, 0x53, 0x43, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x5f, 0x56, 0x49, 0x50, 0x5f,
0x53, 0x48, 0x4f, 0x50, 0x10, 0xda, 0x13, 0x42, 0x24, 0x5a, 0x22, 0x6d, 0x6f, 0x6e, 0x67, 0x6f,
0x2e, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x61, 0x6d, 0x65, 0x2f,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2f, 0x73, 0x68, 0x6f, 0x70, 0x62, 0x06, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (

View File

@ -208,6 +208,7 @@ message ShopWeight{
int32 Weight = 2;
string Name = 3;
int32 IsShow = 4;
repeated int32 Location = 5; //
}
message SCShopExchangeList{

File diff suppressed because it is too large Load Diff

View File

@ -422,6 +422,7 @@ message ShopWeight{
int32 Weight = 2;
string Name = 3;
int32 IsShow = 4;
repeated int32 Location = 5; //
}

View File

@ -10,9 +10,9 @@ import (
)
func init() {
transact.RegisteHandler(common.TransType_StopServer, &transact.TransHanderWrapper{
transact.RegisteHandler(common.TransTypeStopServer, &transact.TransHanderWrapper{
OnExecuteWrapper: transact.OnExecuteWrapper(func(tNode *transact.TransNode, ud interface{}) transact.TransExeResult {
logger.Logger.Infof("StopApi start TransType_StopServer OnExecuteWrapper %x", tNode.MyTnp.TId)
logger.Logger.Infof("StopApi start TransTypeStopServer OnExecuteWrapper %x", tNode.MyTnp.TId)
ClientMgrSingleton.Running = false
timer.StartTimer(timer.TimerActionWrapper(func(h timer.TimerHandle, ud interface{}) bool {
module.Stop()
@ -21,15 +21,15 @@ func init() {
return transact.TransExeResult_Success
}),
OnCommitWrapper: transact.OnCommitWrapper(func(tNode *transact.TransNode) transact.TransExeResult {
logger.Logger.Info("StopApi start TransType_StopServer OnCommitWrapper")
logger.Logger.Info("StopApi start TransTypeStopServer OnCommitWrapper")
return transact.TransExeResult_Success
}),
OnRollBackWrapper: transact.OnRollBackWrapper(func(tNode *transact.TransNode) transact.TransExeResult {
logger.Logger.Info("StopApi start TransType_StopServer OnRollBackWrapper")
logger.Logger.Info("StopApi start TransTypeStopServer OnRollBackWrapper")
return transact.TransExeResult_Success
}),
OnChildRespWrapper: transact.OnChildRespWrapper(func(tNode *transact.TransNode, hChild transact.TransNodeID, retCode int, ud interface{}) transact.TransExeResult {
logger.Logger.Infof("StopApi start TransType_StopServer OnChildRespWrapper ret:%v childid:%x", retCode, hChild)
logger.Logger.Infof("StopApi start TransTypeStopServer OnChildRespWrapper ret:%v childid:%x", retCode, hChild)
return transact.TransExeResult(retCode)
}),
})

View File

@ -588,8 +588,7 @@ func CSDollChangeLog(s *netlib.Session, packetid int, data interface{}, sid int6
}
p.SendToClient(int(bag.SPacketID_PACKET_SC_DollChangeLog), pack)
}), "CSDollChange").Start()
}), "CSDollChangeLog").Start()
return nil
}

View File

@ -2662,8 +2662,8 @@ func CSBindTel(s *netlib.Session, packetId int, data interface{}, sid int64) err
SaveInviteScore(&model.InviteScore{
Platform: p.Platform,
SnId: p.SnId,
InviteSnId: p.InviterId,
Tp: common.InviteScoreTypeBind,
InviteSnId: p.PSnId,
Tp: common.InviteScoreTypeBindTel,
Score: cfg.GetBindTelScore(),
Ts: time.Now().Unix(),
Money: 0,
@ -3169,6 +3169,25 @@ func CSClawdollItemLog(s *netlib.Session, packetId int, data interface{}, sid in
if p == nil {
return nil
}
var change []*model.Item
change = append(change, &model.Item{
ItemId: common.ItemIDClawdoll,
ItemNum: 3,
})
BagMgrSingleton.AddItemsV2(&model.AddItemParam{
P: p.PlayerData,
Change: change,
Add: 0,
GainWay: common.GainWayItemShopChangeDoll,
Operator: "system",
Remark: "商城兑换娃娃",
GameId: 0,
GameFreeId: 0,
NoLog: false,
})
msg, ok := data.(*player_proto.CSClawdollItemLog)
if !ok {
return nil
@ -3191,7 +3210,8 @@ func CSClawdollItemLog(s *netlib.Session, packetId int, data interface{}, sid in
infoData.ItemId = logInfo.ItemId
infoData.Time = logInfo.CreateTs
infoData.Num = logInfo.Count
infoData.ItemLogType = logInfo.LogType
infoData.TypeId = logInfo.TypeId
infoData.LogType = logInfo.LogType
ret.ItemLogs = append(ret.ItemLogs, infoData)
}
@ -3203,6 +3223,34 @@ func CSClawdollItemLog(s *netlib.Session, packetId int, data interface{}, sid in
return nil
}
func CSCLAWDOLLConfig(s *netlib.Session, packetId int, data interface{}, sid int64) error {
logger.Logger.Tracef("CSDollConfigHandler")
if _, ok := data.(*player_proto.CSCLAWDOLLConfig); ok {
p := PlayerMgrSington.GetPlayer(sid)
if p == nil {
logger.Logger.Warn("CSDollConfigHandler p == nil")
return nil
}
machineInfo := PlatformMgrSingleton.GetConfig(p.Platform).MachineConfig
if machineInfo == nil {
return nil
}
pack := &player_proto.SCCLAWDOLLConfig{}
for _, value := range machineInfo.Info {
info := &player_proto.MachineInfo{
IconAddr: value.IconAddr,
CostItemNum: value.CostItemNum,
ItemId: value.ItemId,
ItemNum: value.ItemNum,
MachineId: value.MachineId,
}
pack.Info = append(pack.Info, info)
}
p.SendToClient(int(player_proto.PlayerPacketID_PACKET_SCDollConfig), pack)
}
return nil
}
func init() {
// 用户信息
common.Register(int(player_proto.PlayerPacketID_PACKET_CS_PLAYERDATA), player_proto.CSPlayerData{}, CSPlayerData)
@ -3238,4 +3286,6 @@ func init() {
common.Register(int(player_proto.PlayerPacketID_PACKET_CSUpdateAttribute), player_proto.CSUpdateAttribute{}, CSUpdateAttribute)
//娃娃卡道具记录
common.Register(int(player_proto.PlayerPacketID_PACKET_CSClawdollItemLog), player_proto.CSClawdollItemLog{}, CSClawdollItemLog)
//客户端请求配置信息
common.Register(int(player_proto.PlayerPacketID_PACKET_CSDollConfig), player_proto.CSCLAWDOLLConfig{}, CSCLAWDOLLConfig)
}

View File

@ -192,7 +192,7 @@ func init() {
netlib.RegisterHandler(int(serverproto.SSPacketID_PACKET_GW_AUDIENCELEAVE), netlib.HandlerWrapper(func(s *netlib.Session, packetid int, pack interface{}) error {
logger.Logger.Trace("receive PACKET_GW_AUDIENCELEAVE GWPlayerLeave:", pack)
if msg, ok := pack.(*serverproto.GWPlayerLeave); ok {
scene := SceneMgrSingleton.GetScene(int(msg.GetRoomId()))
scene := SceneMgrSingleton.GetScene(int(msg.GetRoomId()), true)
if scene != nil {
p := PlayerMgrSington.GetPlayerBySnId(msg.GetPlayerId())
if p != nil {

View File

@ -459,6 +459,17 @@ func CSBindInvite(s *netlib.Session, packetid int, data interface{}, sid int64)
Ts: now.Unix(),
Money: 0,
})
if len(p.Tel) > 0 {
SaveInviteScore(&model.InviteScore{
Platform: p.Platform,
SnId: p.SnId,
InviteSnId: inviteSnId,
Tp: common.InviteScoreTypeBindTel,
Score: cfg.GetBindTelScore(),
Ts: time.Now().Unix(),
Money: 0,
})
}
}
return nil
}), task.CompleteNotifyWrapper(func(i interface{}, t task.Task) {

View File

@ -271,7 +271,7 @@ func (m *CoinSceneMgr) StartChangeCoinSceneTransact(p *Player, id int32, exclude
}
tnp := &transact.TransNodeParam{
Tt: common.TransType_CoinSceneChange,
Tt: common.TransTypeCoinSceneChange,
Ot: transact.TransOwnerType(common.GetSelfSrvType()),
Oid: common.GetSelfSrvId(),
AreaID: common.GetSelfAreaId(),

View File

@ -97,6 +97,8 @@ func init() {
etcd.Register(etcd.ETCDKEY_RoomConfig, webapi.RoomConfig{}, handlerEvent)
// 竞技馆房间类型配置
etcd.Register(etcd.ETCDKEY_RoomType, webapi.RoomType{}, handlerEvent)
//娃娃机配置
etcd.Register(etcd.ETCDKEY_MACHINE, webapi.MachineConfig{}, platformConfigEvent)
}
func platformConfigEvent(ctx context.Context, completeKey string, isInit bool, event *clientv3.Event, data interface{}) {
@ -324,6 +326,8 @@ func platformConfigEvent(ctx context.Context, completeKey string, isInit bool, e
PlatformMgrSingleton.GetConfig(config.Platform).AwardLogConfig = config
case *webapi.GuideConfig:
PlatformMgrSingleton.GetConfig(config.Platform).GuideConfig = config
case *webapi.MachineConfig:
PlatformMgrSingleton.GetConfig(config.Platform).MachineConfig = config
case *webapi.SpiritConfig:
PlatformMgrSingleton.GetConfig(config.Platform).SpiritConfig = config
if !isInit {

View File

@ -215,7 +215,7 @@ func (this *HundredSceneMgr) CreateNewScene(id, groupId int32, limitPlatform *Pl
scene.hp = this
return scene
} else {
logger.Logger.Errorf("Create hundred scene %v-%v failed.", gameId, sceneId)
logger.Logger.Warnf("Create hundred scene %v-%v failed.", gameId, sceneId)
}
} else {
logger.Logger.Errorf("Game rule data %v no found.", dbGameFree.GetGameRule())

View File

@ -84,7 +84,7 @@ func (p *PlayerNotify) SendToClient(tp common.NotifyType, packetId int, pack int
if len(d.GetDatas()) == 0 {
return
}
scene := SceneMgrSingleton.GetScene(int(d.GetDatas()[0].GetRoomId()))
scene := SceneMgrSingleton.GetScene(int(d.GetDatas()[0].GetRoomId()), true)
if scene == nil {
return
}

View File

@ -1052,6 +1052,7 @@ func (this *ShopMgr) ExchangeList(p *Player) (ret bool) {
Weight: info.Weight,
Name: info.Name,
IsShow: info.IsShow,
Location: info.Location,
})
}
for _, v := range as.List {

View File

@ -3,17 +3,18 @@ package main
import (
"time"
"mongo.games.com/game/common"
"mongo.games.com/goserver/core"
"mongo.games.com/goserver/core/logger"
"mongo.games.com/goserver/core/transact"
"mongo.games.com/goserver/srvlib"
"mongo.games.com/game/common"
)
var TransAddCoinTimeOut = time.Second * 30
const (
TRANSACT_ADDCOIN_CTX = iota
TransactAddCoinCTX = iota
)
type AsyncAddCoinTransactContext struct {
@ -43,14 +44,14 @@ func (this *AddCoinTransactHandler) OnExcute(tNode *transact.TransNode, ud inter
WriteLog: ctx.writeLog,
}
tnp := &transact.TransNodeParam{
Tt: common.TransType_AddCoin,
Tt: common.TransTypeAddCoin,
Ot: transact.TransOwnerType(srvlib.GameServerType),
Oid: int(ctx.p.scene.gameSess.GetSrvId()),
AreaID: common.GetSelfAreaId(),
Tct: transact.TransactCommitPolicy_TwoPhase,
}
tNode.TransEnv.SetField(TRANSACT_ADDCOIN_CTX, ud)
tNode.TransEnv.SetField(TransactAddCoinCTX, ud)
tNode.StartChildTrans(tnp, pack, TransAddCoinTimeOut)
}
}
@ -60,7 +61,7 @@ func (this *AddCoinTransactHandler) OnExcute(tNode *transact.TransNode, ud inter
func (this *AddCoinTransactHandler) OnCommit(tNode *transact.TransNode) transact.TransExeResult {
logger.Logger.Trace("AddCoinTransactHandler.OnCommit ")
ud := tNode.TransEnv.GetField(TRANSACT_ADDCOIN_CTX)
ud := tNode.TransEnv.GetField(TransactAddCoinCTX)
if ctx, ok := ud.(*AsyncAddCoinTransactContext); ok {
p := PlayerMgrSington.GetPlayerBySnId(ctx.p.SnId) //重新获得p
if p != nil {
@ -73,7 +74,7 @@ func (this *AddCoinTransactHandler) OnCommit(tNode *transact.TransNode) transact
func (this *AddCoinTransactHandler) OnRollBack(tNode *transact.TransNode) transact.TransExeResult {
logger.Logger.Trace("AddCoinTransactHandler.OnRollBack ")
ud := tNode.TransEnv.GetField(TRANSACT_ADDCOIN_CTX)
ud := tNode.TransEnv.GetField(TransactAddCoinCTX)
if ctx, ok := ud.(*AsyncAddCoinTransactContext); ok {
p := PlayerMgrSington.GetPlayerBySnId(ctx.p.SnId) //重新获得p
if p != nil {
@ -93,7 +94,7 @@ func (this *AddCoinTransactHandler) OnChildTransRep(tNode *transact.TransNode, h
func StartAsyncAddCoinTransact(p *Player, num int64, gainWay int32, oper, remark string, broadcast bool, retryCnt int, writeLog bool) bool {
tnp := &transact.TransNodeParam{
Tt: common.TransType_AddCoin,
Tt: common.TransTypeAddCoin,
Ot: transact.TransOwnerType(common.GetSelfSrvType()),
Oid: common.GetSelfSrvId(),
AreaID: common.GetSelfAreaId(),
@ -118,5 +119,5 @@ func StartAsyncAddCoinTransact(p *Player, num int64, gainWay int32, oper, remark
}
func init() {
transact.RegisteHandler(common.TransType_AddCoin, &AddCoinTransactHandler{})
transact.RegisteHandler(common.TransTypeAddCoin, &AddCoinTransactHandler{})
}

View File

@ -34,7 +34,7 @@ func (this *CoinSceneChangeTransactHandler) OnExcute(tNode *transact.TransNode,
player := PlayerMgrSington.GetPlayerBySnId(ctx.snid)
if player != nil && player.scene != nil {
tnp := &transact.TransNodeParam{
Tt: common.TransType_CoinSceneChange,
Tt: common.TransTypeCoinSceneChange,
Ot: transact.TransOwnerType(srvlib.GameServerType),
Oid: int(player.scene.gameSess.GetSrvId()),
AreaID: common.GetSelfAreaId(),
@ -164,5 +164,5 @@ func (this *CoinSceneChangeTransactHandler) OnChildTransRep(tNode *transact.Tran
}
func init() {
transact.RegisteHandler(common.TransType_CoinSceneChange, &CoinSceneChangeTransactHandler{})
transact.RegisteHandler(common.TransTypeCoinSceneChange, &CoinSceneChangeTransactHandler{})
}

View File

@ -20,7 +20,7 @@ func (this *DayTimeChangeTransactHandler) OnExcute(tNode *transact.TransNode, ud
common.ClockMgrSingleton.Notifying = true
for sid, _ := range GameSessMgrSington.servers {
tnp := &transact.TransNodeParam{
Tt: common.TransType_DayTimeChange,
Tt: common.TransTypeDayTimeChange,
Ot: transact.TransOwnerType(srvlib.GameServerType),
Oid: sid,
AreaID: common.GetSelfAreaId(),
@ -58,7 +58,7 @@ type DayTimeChangeTransactSinker struct {
func (this *DayTimeChangeTransactSinker) OnMiniTimer() {
tnp := &transact.TransNodeParam{
Tt: common.TransType_DayTimeChange,
Tt: common.TransTypeDayTimeChange,
Ot: transact.TransOwnerType(common.GetSelfSrvType()),
Oid: common.GetSelfSrvId(),
AreaID: common.GetSelfAreaId(),
@ -71,5 +71,5 @@ func (this *DayTimeChangeTransactSinker) OnMiniTimer() {
func init() {
common.ClockMgrSingleton.RegisterSinker(&DayTimeChangeTransactSinker{})
transact.RegisteHandler(common.TransType_DayTimeChange, &DayTimeChangeTransactHandler{})
transact.RegisteHandler(common.TransTypeDayTimeChange, &DayTimeChangeTransactHandler{})
}

View File

@ -28,7 +28,7 @@ func (this *MatchSceneChangeTransactHandler) OnExcute(tNode *transact.TransNode,
player := PlayerMgrSington.GetPlayerBySnId(ctx.snid)
if player != nil && player.scene != nil {
tnp := &transact.TransNodeParam{
Tt: common.TransType_MatchSceneChange,
Tt: common.TransTypeMatchSceneChange,
Ot: transact.TransOwnerType(srvlib.GameServerType),
Oid: int(player.scene.gameSess.GetSrvId()),
AreaID: common.GetSelfAreaId(),
@ -87,5 +87,5 @@ func (this *MatchSceneChangeTransactHandler) OnChildTransRep(tNode *transact.Tra
}
func init() {
transact.RegisteHandler(common.TransType_MatchSceneChange, &MatchSceneChangeTransactHandler{})
transact.RegisteHandler(common.TransTypeMatchSceneChange, &MatchSceneChangeTransactHandler{})
}

View File

@ -28,7 +28,7 @@ func (this *QueryAllCoinPoolTransactHandler) OnExcute(tNode *transact.TransNode,
for sid, gs := range GameSessMgrSington.servers {
if gs.srvType == srvlib.GameServerType {
tnp := &transact.TransNodeParam{
Tt: common.TransType_QueryAllCoinPool,
Tt: common.TransTypeQueryAllCoinPool,
Ot: transact.TransOwnerType(srvlib.GameServerType),
Oid: sid,
AreaID: common.GetSelfAreaId(),
@ -124,7 +124,7 @@ func (this *QueryAllCoinPoolTransactHandler) OnChildTransRep(tNode *transact.Tra
func StartQueryCoinPoolStatesTransact(tParent *transact.TransNode, pageNo, pageSize int32) {
tnp := &transact.TransNodeParam{
Tt: common.TransType_QueryAllCoinPool,
Tt: common.TransTypeQueryAllCoinPool,
Ot: transact.TransOwnerType(common.GetSelfSrvType()),
Oid: common.GetSelfSrvId(),
AreaID: common.GetSelfAreaId(),
@ -188,5 +188,5 @@ func StartQueryCoinPoolStatesTransact(tParent *transact.TransNode, pageNo, pageS
}
func init() {
transact.RegisteHandler(common.TransType_QueryAllCoinPool, &QueryAllCoinPoolTransactHandler{})
transact.RegisteHandler(common.TransTypeQueryAllCoinPool, &QueryAllCoinPoolTransactHandler{})
}

View File

@ -44,7 +44,7 @@ func (this *QueryCoinPoolTransactHandler) OnExcute(tNode *transact.TransNode, ud
gs.DetectCoinPoolSetting(data.Platform, id, data.GroupId)
}
tnp := &transact.TransNodeParam{
Tt: common.TransType_QueryCoinPool,
Tt: common.TransTypeQueryCoinPool,
Ot: transact.TransOwnerType(srvlib.GameServerType),
Oid: sid,
AreaID: common.GetSelfAreaId(),
@ -103,7 +103,7 @@ func (this *QueryCoinPoolTransactHandler) OnChildTransRep(tNode *transact.TransN
func StartQueryCoinPoolTransact(tParent *transact.TransNode, gameid, gamemode int32, platform string, groupId int32) {
tnp := &transact.TransNodeParam{
Tt: common.TransType_QueryCoinPool,
Tt: common.TransTypeQueryCoinPool,
Ot: transact.TransOwnerType(common.GetSelfSrvType()),
Oid: common.GetSelfSrvId(),
AreaID: common.GetSelfAreaId(),
@ -122,5 +122,5 @@ func StartQueryCoinPoolTransact(tParent *transact.TransNode, gameid, gamemode in
}
func init() {
transact.RegisteHandler(common.TransType_QueryCoinPool, &QueryCoinPoolTransactHandler{})
transact.RegisteHandler(common.TransTypeQueryCoinPool, &QueryCoinPoolTransactHandler{})
}

View File

@ -9,43 +9,43 @@ import (
)
func init() {
transact.RegisteHandler(common.TransType_StopServer, &transact.TransHanderWrapper{
transact.RegisteHandler(common.TransTypeStopServer, &transact.TransHanderWrapper{
OnExecuteWrapper: transact.OnExecuteWrapper(func(tNode *transact.TransNode, ud interface{}) transact.TransExeResult {
logger.Logger.Infof("StopApi start TransType_StopServer OnExecuteWrapper %x", tNode.MyTnp.TId)
logger.Logger.Infof("StopApi start TransTypeStopServer OnExecuteWrapper %x", tNode.MyTnp.TId)
for _, s := range GameSessMgrSington.gates {
tnp := &transact.TransNodeParam{
Tt: common.TransType_StopServer,
Tt: common.TransTypeStopServer,
Ot: transact.TransOwnerType(s.srvType),
Oid: s.srvId,
AreaID: common.GetSelfAreaId(),
Tct: transact.TransactCommitPolicy_TwoPhase,
}
tNode.StartChildTrans(tnp, nil, time.Minute*5)
logger.Logger.Infof("StopApi start TransType_StopServer StartChildTrans srvid:%v srvtype:%v", s.srvId, s.srvType)
logger.Logger.Infof("StopApi start TransTypeStopServer StartChildTrans srvid:%v srvtype:%v", s.srvId, s.srvType)
}
for _, s := range GameSessMgrSington.servers {
tnp := &transact.TransNodeParam{
Tt: common.TransType_StopServer,
Tt: common.TransTypeStopServer,
Ot: transact.TransOwnerType(s.srvType),
Oid: s.srvId,
AreaID: common.GetSelfAreaId(),
Tct: transact.TransactCommitPolicy_TwoPhase,
}
tNode.StartChildTrans(tnp, nil, time.Minute*5)
logger.Logger.Infof("StopApi start TransType_StopServer StartChildTrans srvid:%v srvtype:%v", s.srvId, s.srvType)
logger.Logger.Infof("StopApi start TransTypeStopServer StartChildTrans srvid:%v srvtype:%v", s.srvId, s.srvType)
}
return transact.TransExeResult_Success
}),
OnCommitWrapper: transact.OnCommitWrapper(func(tNode *transact.TransNode) transact.TransExeResult {
logger.Logger.Infof("StopApi start TransType_StopServer OnCommitWrapper ")
logger.Logger.Infof("StopApi start TransTypeStopServer OnCommitWrapper ")
return transact.TransExeResult_Success
}),
OnRollBackWrapper: transact.OnRollBackWrapper(func(tNode *transact.TransNode) transact.TransExeResult {
logger.Logger.Info("StopApi start TransType_StopServer OnRollBackWrapper")
logger.Logger.Info("StopApi start TransTypeStopServer OnRollBackWrapper")
return transact.TransExeResult_Success
}),
OnChildRespWrapper: transact.OnChildRespWrapper(func(tNode *transact.TransNode, hChild transact.TransNodeID, retCode int, ud interface{}) transact.TransExeResult {
logger.Logger.Infof("StopApi start TransType_StopServer OnChildRespWrapper ret:%v childid:%x", retCode, hChild)
logger.Logger.Infof("StopApi start TransTypeStopServer OnChildRespWrapper ret:%v childid:%x", retCode, hChild)
return transact.TransExeResult(retCode)
}),
})

View File

@ -42,7 +42,7 @@ const (
)
func init() {
transact.RegisteHandler(common.TransType_WebApi, &WebAPITranscateHandler{})
transact.RegisteHandler(common.TransTypeWebApi, &WebAPITranscateHandler{})
}
var WebAPIHandlerMgrSingleton = &WebAPIHandlerMgr{wshMap: make(map[string]WebAPIHandler)}

Binary file not shown.