diff --git a/src/pb/proto.js b/src/pb/proto.js index 88f4bef..ce74a2b 100644 --- a/src/pb/proto.js +++ b/src/pb/proto.js @@ -282,6 +282,35 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr } } }, + BattleLPVEReq: { + fields: { + ptype: { + type: "PlayType", + id: 1 + }, + title: { + type: "string", + id: 2 + }, + scene: { + type: "string", + id: 3 + }, + format: { + type: "BattleFormation", + id: 4 + }, + monsterleadpos: { + type: "int32", + id: 5 + }, + monsters: { + rule: "repeated", + type: "BattleRole", + id: 6 + } + } + }, BattlePVBReq: { fields: { ptype: { @@ -314,8 +343,8 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr type: "string", id: 2 }, - scene: { - type: "string", + rulesid: { + type: "int32", id: 3 }, btype: { @@ -377,32 +406,41 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr type: "int32", id: 2 }, - incmd: { - rule: "repeated", - type: "BattleCmd", + winSide: { + type: "int32", id: 3 }, - outcmd: { + incmd: { rule: "repeated", type: "BattleCmd", id: 4 }, + outcmd: { + rule: "repeated", + type: "BattleCmd", + id: 5 + }, completetask: { rule: "repeated", type: "int32", - id: 5 + id: 6 }, death: { type: "int32", - id: 6 + id: 7 }, round: { type: "int32", - id: 7 + id: 8 }, harm: { type: "int32", - id: 8 + id: 9 + }, + alive: { + rule: "repeated", + type: "BattleRole", + id: 10 } } }, @@ -516,6 +554,10 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr battleid: { type: "string", id: 1 + }, + winSide: { + type: "int32", + id: 2 } } }, @@ -564,7 +606,8 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr pvp: 2, pvb: 3, eve: 4, - rtpvp: 5 + rtpvp: 5, + lpev: 6 } }, PlayType: { @@ -582,7 +625,8 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr combat: 10, enchant: 11, sociaty: 12, - friendsmeet: 13 + friendsmeet: 13, + practicenpc: 14 } }, BBattleState: { @@ -646,22 +690,30 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr type: "SkillData", id: 11 }, - property: { - keyType: "string", + PandaBuff: { type: "int32", id: 12 }, + property: { + keyType: "string", + type: "int32", + id: 13 + }, ishelp: { type: "bool", - id: 13 + id: 14 }, isboos: { type: "int32", - id: 14 + id: 15 }, monsterid: { type: "int32", - id: 15 + id: 16 + }, + currhp: { + type: "int32", + id: 17 } } }, @@ -748,6 +800,22 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr } } }, + ErrorData: { + fields: { + title: { + type: "string", + id: 1 + }, + dataint: { + type: "int32", + id: 2 + }, + datastring: { + type: "string", + id: 3 + } + } + }, UserMessage: { fields: { MainType: { @@ -819,7 +887,7 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr id: 2 }, ErrorData: { - type: "google.protobuf.Any", + type: "ErrorData", id: 3 }, Reply: { @@ -935,6 +1003,30 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr } } }, + NoticeUserCreateReq: { + fields: { + Ip: { + type: "string", + id: 1 + }, + UserSessionId: { + type: "string", + id: 2 + }, + UserId: { + type: "string", + id: 3 + }, + ServiceTag: { + type: "string", + id: 4 + }, + GatewayServiceId: { + type: "string", + id: 5 + } + } + }, NoticeUserCloseReq: { fields: { Ip: { @@ -1199,6 +1291,7 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr ErrorCode: { values: { Success: 0, + GatewayException: 1, NoFindService: 10, NoFindServiceHandleFunc: 11, RpcFuncExecutionError: 12, @@ -1223,6 +1316,7 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr ConfigNoFound: 104, UserLogined: 105, NoOpened: 106, + DataNotFound: 107, SecKeyInvalid: 1000, SecKey: 1001, BindUser: 1002, @@ -1245,6 +1339,13 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr UserMoongoldNoEnough: 1019, UserOffline: 1020, UserNofound: 1021, + UserSign: 1022, + OpenCondErr: 1023, + OpenCondActivate: 1024, + UserTalent1NoEnough: 1025, + UserTalent2NoEnough: 1026, + UserTalent3NoEnough: 1027, + UserTalent4NoEnough: 1028, FriendNotSelf: 1100, FriendSelfMax: 1101, FriendTargetMax: 1102, @@ -1267,6 +1368,7 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr FriendQiecuoNoRequest: 1119, FriendQiecuoing: 1120, FriendQiecuoTargetPk: 1121, + FriendTicketNoEnough: 1122, ItemsNoEnough: 1200, ItemsNoFoundGird: 1201, ItemsGridNumUpper: 1202, @@ -1300,10 +1402,12 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr HeroMaxSkillLv: 1323, HeroAlreadyKongFuStatus: 1324, HeroLvNoEnough: 1325, + HeroIsRegister: 1326, EquipmentOnFoundEquipment: 1400, EquipmentLvlimitReached: 1401, EquipmentIsWorn: 1402, EquipmentNoCanSell: 1403, + EquipmentSuiteNotFound: 1404, MainlineNotFindChapter: 1500, MainlineIDFailed: 1501, MainlineNotFound: 1502, @@ -1330,10 +1434,13 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr PagodaLevlErr: 1901, PagodaGetRewardErr: 1902, PagodaConditionErr: 1903, + PagodaUnlock: 1904, MartialhallNotUnlocked: 2000, MartialhallInUse: 2001, MartialhallUnlocked: 2002, MartialhallNoUnlocked: 2003, + MartialhallAtlasError: 2004, + MartialhallAtlasNoReward: 2005, GourmetMoreOrderTime: 2101, GourmetSkillMaxLv: 2102, RtaskFinished: 2201, @@ -1383,6 +1490,8 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr BattleCreateFailed: 2903, BattleInCmdFailed: 2904, BattleUserOff: 2905, + BattleCapskillCheckFailed: 2906, + BattleNoKeep: 2907, SociatyNoFound: 3000, SociatyAdded: 3001, SociatyDiamondNoEnough: 3002, @@ -1393,38 +1502,38 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr SociatyQuit: 3007, SociatyAgree: 3008, SociatyRefuse: 3009, - SociatyLogParams: 30010, - SociatyMasterNoDiss: 30011, - SociatySettingJob: 30012, - SociatySetting: 30013, - SociatyNoAccuse: 30014, - SociatySign: 30015, - SociatySigned: 30016, - SociatyCDLimit: 30017, - SociatyApplyMax: 30018, - SociatySelfSetting: 30019, - SociatyMemberCountLimit: 30020, - SociatyRewardReceived: 30021, - SociatyRewardReceive: 30022, - SociatyResource: 30023, - SociatyBelongTo: 30025, - SociatyApplied: 30026, - SociatyAppyLvNoEnough: 30027, - SociatyTaskValidation: 30028, - SociatyActivityNoEnough: 30029, - SociatyAcitvityReceive: 30030, - SociatyDismissed: 30031, - SociatyNameExist: 30032, - SociatyQuitNoAllowed: 30033, - SociatyNoMaster: 30034, - SociatyNoFormation: 30035, - SociatyTicketsNoEnough: 30036, - SociatySportsNoinit: 30037, - SociatySportsEnd: 30038, - SociatyTeamUnlock: 30039, - SociatyTaskNoFound: 30040, - SociatyTaskNoFinished: 30041, - SociatyTaskReceived: 30042, + SociatyLogParams: 3010, + SociatyMasterNoDiss: 3011, + SociatySettingJob: 3012, + SociatySetting: 3013, + SociatyNoAccuse: 3014, + SociatySign: 3015, + SociatySigned: 3016, + SociatyCDLimit: 3017, + SociatyApplyMax: 3018, + SociatySelfSetting: 3019, + SociatyMemberCountLimit: 3020, + SociatyRewardReceived: 3021, + SociatyRewardReceive: 3022, + SociatyResource: 3023, + SociatyBelongTo: 3025, + SociatyApplied: 3026, + SociatyAppyLvNoEnough: 3027, + SociatyTaskValidation: 3028, + SociatyActivityNoEnough: 3029, + SociatyAcitvityReceive: 3030, + SociatyDismissed: 3031, + SociatyNameExist: 3032, + SociatyQuitNoAllowed: 3033, + SociatyNoMaster: 3034, + SociatyNoFormation: 3035, + SociatyTicketsNoEnough: 3036, + SociatySportsNoinit: 3037, + SociatySportsEnd: 3038, + SociatyTeamUnlock: 3039, + SociatyTaskNoFound: 3040, + SociatyTaskNoFinished: 3041, + SociatyTaskReceived: 3042, ArenaTicketBuyUp: 3101, ArenaTicketNotEnough: 3102, ArenaTicketNpcInCd: 3103, @@ -1456,9 +1565,44 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr WorldtaskFinihed: 3805, WorldtaskLastUnFinished: 3806, WorldtaskGroupIdNosame: 3807, + WorldtaskChapterUnFinished: 3808, + WorldtaskChapterReceived: 3809, + WorldtaskNoProcess: 3810, AcademyTaskNoCompleteTask: 3901, AutoBattleNoData: 4001, - AutoBattleStatesErr: 4002 + AutoBattleStatesErr: 4002, + SmithyNoReel: 4101, + SmithyNoTemperature: 4102, + SmithyStoveMaxLv: 4103, + SmithyCustomerLimit: 4104, + SmithyCustomerEquipNoEnough: 4105, + SmithyMaxTemperature: 4106, + SmithyLackLava: 4107, + SmithyAtlasMaxLv: 4108, + SmithyAtlasLackLv: 4109, + SmithyTaskNoFinished: 4110, + SmithyTaskReceived: 4111, + SmithyNoFoundAtlas: 4112, + SmithyNoActivateAtlas: 4113, + SmithyLvToolsFailed: 4114, + SmithyLvToolsPre: 4115, + SmithyAtlasTypeErr: 4116, + DispatchHeroNoReached: 4201, + DispatchNoFree: 4202, + DispatchTicketNoEnough: 4203, + DispatchHeroAssigned: 4204, + DispatchTaskExpired: 4205, + DispatchRefreshMax: 4206, + DispatchNoFinished: 4207, + DispatchHeroNoEnough: 4208, + PracticeQiecuoing: 4301, + PracticeSent: 4302, + PracticeInviteTimeOut: 4303, + PracticePillarMaxLv: 4304, + PracticeYouQiecuoing: 4305, + PracticeTargetQiecuoing: 4306, + ParkourMemberFull: 4401, + ParkourInviteOverdue: 4402 } }, google: { @@ -1560,55 +1704,63 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr }, sameCount: { type: "int32", - id: 20 + id: 17 }, suiteId: { type: "int32", - id: 21 + id: 18 }, suiteExtId: { type: "int32", - id: 22 + id: 19 }, juexProperty: { keyType: "string", type: "int32", - id: 25 + id: 20 }, status: { type: "HeroType", - id: 26 + id: 21 }, suite1Star: { type: "int32", - id: 27 + id: 22 }, suite2Star: { type: "int32", - id: 28 + id: 23 }, suite1Lv: { type: "int32", - id: 29 + id: 24 }, suite2Lv: { type: "int32", - id: 30 + id: 25 }, talentProperty: { keyType: "string", type: "int32", - id: 31 + id: 26 }, equipSkill: { rule: "repeated", type: "SkillData", - id: 32 + id: 27 }, horoscopeProperty: { keyType: "string", type: "int32", - id: 33 + id: 28 + }, + fulllvenr: { + type: "int32", + id: 29 + }, + kongfuUid: { + type: "string", + id: 30 } } }, @@ -1671,6 +1823,11 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr inevitable1: { type: "int32", id: 14 + }, + race: { + keyType: "int32", + type: "int32", + id: 15 } } }, @@ -2218,6 +2375,90 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr } } }, + DBPandaAtlas: { + fields: { + id: { + type: "string", + id: 1 + }, + uid: { + type: "string", + id: 2 + }, + collect: { + keyType: "string", + type: "CollectInfo", + id: 3 + }, + score: { + type: "int32", + id: 4 + }, + award: { + type: "int32", + id: 5 + } + } + }, + CollectInfo: { + fields: { + score: { + type: "int32", + id: 1 + }, + time: { + type: "int64", + id: 2 + }, + activate: { + type: "bool", + id: 3 + } + } + }, + AtlasGetListReq: { + fields: {} + }, + AtlasGetListResp: { + fields: { + data: { + type: "DBPandaAtlas", + id: 1 + } + } + }, + AtlasActivateReq: { + fields: { + id: { + type: "string", + id: 1 + } + } + }, + AtlasActivateResp: { + fields: { + data: { + type: "DBPandaAtlas", + id: 1 + } + } + }, + AtlasAwardReq: { + fields: {} + }, + AtlasAwardResp: { + fields: { + data: { + type: "DBPandaAtlas", + id: 1 + }, + res: { + rule: "repeated", + type: "UserAssets", + id: 2 + } + } + }, DBAutoBattle: { fields: { id: { @@ -2726,6 +2967,29 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr } } }, + ComEffectTips: { + fields: { + type: { + type: "EffectTipsType", + id: 1 + }, + to: { + type: "int32", + id: 2 + } + } + }, + EffectTipsType: { + values: { + Eff_Success: 0, + Not_Success: 1, + Immunity: 2, + Resist: 3, + Not_Gain: 4, + Not_Control: 5, + Not_Action: 6 + } + }, ChatChannel: { values: { World: 0, @@ -3132,6 +3396,192 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr } } }, + DBDispatch: { + fields: { + uid: { + type: "string", + id: 1 + }, + nb: { + type: "Noticeboard", + id: 2 + } + } + }, + Noticeboard: { + fields: { + lv: { + type: "int32", + id: 1 + }, + noticeType: { + type: "int32", + id: 2 + }, + tasks: { + rule: "repeated", + type: "DispatchTask", + id: 3 + }, + freeCount: { + type: "int32", + id: 4 + }, + refreshCount: { + type: "int32", + id: 5 + }, + weekCount: { + type: "int32", + id: 6 + }, + taskCount: { + type: "int32", + id: 7 + }, + weekReceived: { + rule: "repeated", + type: "int32", + id: 8 + }, + updateTime: { + type: "int64", + id: 9 + } + } + }, + DispatchTask: { + fields: { + taskId: { + type: "int32", + id: 1 + }, + status: { + type: "int32", + id: 2 + }, + duration: { + type: "int64", + id: 3 + }, + leftTime: { + type: "int64", + id: 4 + }, + heroIds: { + rule: "repeated", + type: "string", + id: 5 + }, + exaward: { + type: "bool", + id: 6 + } + } + }, + DispatchNoticeReq: { + fields: {} + }, + DispatchNoticeResp: { + fields: { + dispatch: { + type: "Noticeboard", + id: 1 + } + } + }, + DispatchRefreshReq: { + fields: {} + }, + DispatchRefreshResp: { + fields: { + freeCount: { + type: "int32", + id: 1 + }, + refreshCount: { + type: "int32", + id: 2 + } + } + }, + DispatchTaskRsp: { + fields: { + taskId: { + type: "int32", + id: 1 + }, + exaward: { + type: "bool", + id: 2 + } + } + }, + DispatchReceiveReq: { + fields: { + taskId: { + type: "int32", + id: 1 + } + } + }, + DispatchReceiveResp: { + fields: { + rsp: { + type: "DispatchTaskRsp", + id: 1 + } + } + }, + DispatchAutoReceiveReq: { + fields: {} + }, + DispatchAutoReceiveResp: { + fields: { + task: { + rule: "repeated", + type: "DispatchTaskRsp", + id: 1 + } + } + }, + DispatchDoReq: { + fields: { + taskId: { + type: "int32", + id: 1 + }, + heroIds: { + rule: "repeated", + type: "string", + id: 2 + } + } + }, + DispatchDoResp: { + fields: { + isSucc: { + type: "bool", + id: 1 + } + } + }, + DispatchWeekReciveReq: { + fields: { + idx: { + type: "int32", + id: 1 + } + } + }, + DispatchWeekReciveResp: { + fields: { + idx: { + type: "int32", + id: 1 + } + } + }, DBEnchant: { fields: { id: { @@ -3888,6 +4338,10 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr timestamp: { type: "int64", id: 5 + }, + endTime: { + type: "int64", + id: 6 } } }, @@ -4375,6 +4829,23 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr } } }, + DBGourmetAtlas: { + fields: { + id: { + type: "string", + id: 1 + }, + uid: { + type: "string", + id: 2 + }, + atlas: { + keyType: "string", + type: "int32", + id: 3 + } + } + }, Cooking: { fields: { foodType: { @@ -4455,6 +4926,60 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr } } }, + GourmetCreateFoodReq: { + fields: { + cid: { + type: "string", + id: 1 + }, + material: { + keyType: "string", + type: "int32", + id: 2 + } + } + }, + GourmetCreateFoodResp: { + fields: { + cid: { + type: "string", + id: 1 + }, + firstGet: { + type: "bool", + id: 2 + } + } + }, + GourmetActivateAtlasReq: { + fields: { + cid: { + type: "string", + id: 1 + } + } + }, + GourmetActivateAtlasResp: { + fields: { + atlas: { + keyType: "string", + type: "int32", + id: 1 + } + } + }, + GourmetAtlasReq: { + fields: {} + }, + GourmetAtlasResp: { + fields: { + atlas: { + keyType: "string", + type: "int32", + id: 1 + } + } + }, GourmetGetListReq: { fields: {} }, @@ -4660,6 +5185,22 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr moongold: { type: "int32", id: 27 + }, + talent1: { + type: "int32", + id: 28 + }, + talent2: { + type: "int32", + id: 29 + }, + talent3: { + type: "int32", + id: 30 + }, + talent4: { + type: "int32", + id: 31 } } }, @@ -4741,13 +5282,18 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr type: "int32", id: 5 }, - cid: { + day: { type: "int32", id: 6 }, - rTime: { - type: "int64", + puzzle: { + rule: "repeated", + type: "int32", id: 7 + }, + tips: { + type: "int32", + id: 8 } } }, @@ -5729,6 +6275,38 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr ItemsRefreshUnifiedTicketResp: { fields: {} }, + ItemsPotionSynthesisReq: { + fields: { + id: { + type: "int32", + id: 1 + }, + succnum: { + type: "int32", + id: 2 + }, + num: { + type: "int32", + id: 3 + } + } + }, + ItemsPotionSynthesisResp: { + fields: { + succ: { + type: "bool", + id: 1 + }, + id: { + type: "int32", + id: 2 + }, + num: { + type: "int32", + id: 3 + } + } + }, DBLibrary: { fields: { id: { @@ -6985,17 +7563,13 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr type: "ErrorCode", id: 3 }, - Message: { - type: "string", - id: 4 - }, arg: { type: "google.protobuf.Any", - id: 5 + id: 4 }, - Data: { - type: "google.protobuf.Any", - id: 6 + err: { + type: "ErrorData", + id: 5 } } }, @@ -7049,6 +7623,11 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr vipPassCheckID: { type: "int32", id: 8 + }, + data: { + keyType: "int32", + type: "int32", + id: 9 } } }, @@ -7126,14 +7705,10 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr }, PagodaChallengeReq: { fields: { - levelID: { + cid: { type: "int32", id: 1 }, - PagodaType: { - type: "int32", - id: 2 - }, battle: { type: "BattleFormation", id: 3 @@ -7146,26 +7721,18 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr type: "BattleInfo", id: 1 }, - levelID: { + cid: { type: "int32", id: 2 - }, - PagodaType: { - type: "int32", - id: 3 } } }, PagodaChallengeOverReq: { fields: { - levelID: { + cid: { type: "int32", id: 1 }, - PagodaType: { - type: "int32", - id: 2 - }, report: { type: "BattleReport", id: 3 @@ -7182,7 +7749,7 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr }, PagodaRankListReq: { fields: { - floorId: { + cid: { type: "int32", id: 1 }, @@ -7239,6 +7806,509 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr } } }, + PandataPillarState: { + values: { + NoUse: 0, + Useing: 1, + Receive: 2 + } + }, + DBPandataPillar: { + fields: { + index: { + type: "int32", + id: 1 + }, + isunlock: { + type: "bool", + id: 2 + }, + state: { + type: "PandataPillarState", + id: 3 + }, + hero: { + type: "string", + id: 4 + }, + start: { + type: "int64", + id: 5 + }, + end: { + type: "int64", + id: 6 + }, + lastbill: { + type: "int64", + id: 7 + }, + reward: { + type: "int32", + id: 8 + } + } + }, + DBPandataTeacher: { + fields: { + id: { + type: "string", + id: 1 + }, + cid: { + type: "string", + id: 2 + }, + student: { + type: "string", + id: 3 + } + } + }, + DBPandataKekan: { + fields: { + id: { + type: "string", + id: 1 + }, + uid: { + type: "string", + id: 2 + }, + pillar1: { + type: "DBPandataPillar", + id: 4 + }, + pillar2: { + type: "DBPandataPillar", + id: 5 + }, + pillar3: { + type: "DBPandataPillar", + id: 6 + }, + pillarf: { + type: "DBPandataPillar", + id: 7 + } + } + }, + PandataKekanInfoReq: { + fields: {} + }, + PandataKekanInfoResp: { + fields: { + info: { + type: "DBPandataKekan", + id: 1 + } + } + }, + PandataKekanUnLockReq: { + fields: {} + }, + PandataKekanUnLockResp: { + fields: {} + }, + PandataKekanPracticeReq: { + fields: {} + }, + PandataKekanPracticeResp: { + fields: {} + }, + PandataKekanLootReq: { + fields: {} + }, + PandataKekanLootResp: { + fields: {} + }, + PandataKekanExpulsionReq: { + fields: {} + }, + PandataKekanExpulsionResp: { + fields: {} + }, + PandataKekanReceiveReq: { + fields: {} + }, + PandataKekanReceiveResp: { + fields: {} + }, + RaceType: { + values: { + ordinary: 0, + prop: 1 + } + }, + RaceTeamState: { + values: { + teaming: 0, + matching: 1, + raceing: 2 + } + }, + DBRaceMember: { + fields: { + uid: { + type: "string", + id: 1 + }, + name: { + type: "string", + id: 2 + }, + avatar: { + type: "string", + id: 3 + }, + mount: { + type: "string", + id: 4 + }, + hp: { + type: "int32", + id: 5 + }, + innermost: { + type: "int32", + id: 6 + }, + ready: { + type: "bool", + id: 7 + }, + isai: { + type: "bool", + id: 8 + }, + isoff: { + type: "bool", + id: 9 + } + } + }, + DBRaceInvite: { + fields: { + uid: { + type: "string", + id: 1 + }, + name: { + type: "string", + id: 2 + }, + avatar: { + type: "string", + id: 3 + }, + expired: { + type: "int64", + id: 4 + } + } + }, + DBParkour: { + fields: { + id: { + type: "string", + id: 1 + }, + uid: { + type: "string", + id: 2 + }, + mounts: { + keyType: "string", + type: "int32", + id: 3 + }, + dfmount: { + type: "string", + id: 4 + }, + state: { + type: "RaceTeamState", + id: 5 + }, + integral: { + type: "int32", + id: 6 + }, + captainid: { + type: "string", + id: 7 + }, + invite: { + rule: "repeated", + type: "DBRaceInvite", + id: 8 + }, + member: { + rule: "repeated", + type: "DBRaceMember", + id: 9 + } + } + }, + DBRace: { + fields: { + id: { + type: "string", + id: 1 + }, + servicePath: { + type: "string", + id: 2 + }, + rtype: { + type: "RaceType", + id: 3 + }, + trackid: { + type: "int32", + id: 4 + }, + innermost: { + type: "int32", + id: 5 + }, + redmember: { + rule: "repeated", + type: "DBRaceMember", + id: 6 + }, + bulemember: { + rule: "repeated", + type: "DBRaceMember", + id: 7 + } + } + }, + ParkourInfoReq: { + fields: {} + }, + ParkourInfoResp: { + fields: { + info: { + type: "DBParkour", + id: 1 + }, + recommend: { + rule: "repeated", + type: "DBParkour", + id: 2 + } + } + }, + ParkourInfoChangePush: { + fields: { + info: { + type: "DBParkour", + id: 1 + } + } + }, + ParkourInviteReq: { + fields: { + uid: { + type: "string", + id: 1 + } + } + }, + ParkourInviteResp: { + fields: { + issucc: { + type: "bool", + id: 1 + }, + team: { + type: "DBParkour", + id: 2 + } + } + }, + ParkourInviteNoticePush: { + fields: { + team: { + type: "DBParkour", + id: 1 + }, + state: { + type: "int32", + id: 2 + } + } + }, + ParkourTeamChanagePush: { + fields: { + team: { + type: "DBParkour", + id: 1 + } + } + }, + ParkourInviteHandleReq: { + fields: { + captainid: { + type: "string", + id: 1 + }, + state: { + type: "int32", + id: 2 + } + } + }, + ParkourInviteHandleResp: { + fields: { + isSucc: { + type: "bool", + id: 1 + } + } + }, + ParkourQuitTeamReq: { + fields: { + captainid: { + type: "string", + id: 1 + } + } + }, + ParkourQuitTeamResp: { + fields: {} + }, + ParkourTeamJoinNoticePush: { + fields: { + member: { + type: "DBRaceMember", + id: 1 + } + } + }, + ParkourTeamQuitNoticePush: { + fields: { + member: { + type: "DBRaceMember", + id: 1 + } + } + }, + ParkourTeamDisbandNoticePush: { + fields: {} + }, + ParkourRaceMatchReq: { + fields: {} + }, + ParkourRaceMatchResp: { + fields: {} + }, + ParkourRaceMatchSuccPush: { + fields: { + race: { + type: "DBRace", + id: 1 + } + } + }, + ParkourReadyReq: { + fields: { + id: { + type: "string", + id: 1 + } + } + }, + ParkourReadyResp: { + fields: {} + }, + ParkourRaceStartPush: { + fields: { + countdown: { + type: "int32", + id: 1 + } + } + }, + ParkourShotReq: { + fields: { + id: { + type: "string", + id: 1 + } + } + }, + ParkourShotResp: { + fields: {} + }, + ParkourAvoidReq: { + fields: { + id: { + type: "string", + id: 1 + }, + distance: { + type: "int32", + id: 2 + } + } + }, + ParkourAvoidResp: { + fields: {} + }, + ParkourAllSprintsPush: { + fields: {} + }, + ParkourRaceChanagePush: { + fields: { + race: { + type: "DBRace", + id: 1 + } + } + }, + ParkourRaceOverPush: { + fields: { + race: { + type: "DBRace", + id: 1 + } + } + }, + RPCParkourJoinMatchReq: { + fields: { + captainid: { + type: "string", + id: 1 + }, + member: { + rule: "repeated", + type: "DBRaceMember", + id: 2 + } + } + }, + RPCParkourJoinMatchResp: { + fields: {} + }, + RPCParkourMatchSuccReq: { + fields: { + red: { + rule: "repeated", + type: "DBRaceMember", + id: 2 + }, + bule: { + rule: "repeated", + type: "DBRaceMember", + id: 3 + } + } + }, + RPCParkourMatchSuccResp: { + fields: {} + }, DBPayOrder: { fields: { orderid: { @@ -7405,6 +8475,681 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr } } }, + DBPracticePillar: { + fields: { + index: { + type: "int32", + id: 1 + }, + lv: { + type: "int32", + id: 2 + }, + isunlock: { + type: "int32", + id: 3 + }, + uid: { + type: "string", + id: 4 + }, + hero: { + type: "string", + id: 5 + }, + teacher: { + type: "string", + id: 6 + }, + prop: { + type: "string", + id: 7 + }, + start: { + type: "int64", + id: 8 + }, + end: { + type: "int64", + id: 9 + }, + expend: { + type: "int64", + id: 10 + } + } + }, + DBPracticeTeacher: { + fields: { + id: { + type: "string", + id: 1 + }, + cid: { + type: "string", + id: 2 + }, + student: { + type: "string", + id: 3 + } + } + }, + DBPracticeStatuer: { + fields: { + uid: { + type: "string", + id: 1 + }, + figure: { + type: "int32", + id: 2 + }, + name: { + type: "string", + id: 3 + }, + unionname: { + type: "string", + id: 4 + }, + end: { + type: "int64", + id: 5 + } + } + }, + DBPracticeRoom: { + fields: { + id: { + type: "string", + id: 1 + }, + uid: { + type: "string", + id: 2 + }, + gymaction: { + type: "int32", + id: 3 + }, + gymrefresh: { + type: "int32", + id: 4 + }, + lastrefresh: { + type: "int64", + id: 5 + }, + full: { + keyType: "int32", + type: "int32", + id: 6 + }, + knapsack: { + keyType: "string", + type: "int32", + id: 7 + }, + pillar1: { + type: "DBPracticePillar", + id: 8 + }, + pillar2: { + type: "DBPracticePillar", + id: 9 + }, + pillar3: { + type: "DBPracticePillar", + id: 10 + }, + pillarf: { + type: "DBPracticePillar", + id: 11 + }, + statuers: { + rule: "repeated", + type: "DBPracticeStatuer", + id: 12 + }, + currnpc: { + type: "int32", + id: 13 + }, + npcstate: { + type: "int32", + id: 14 + }, + refresh: { + type: "int64", + id: 15 + }, + battlenum: { + type: "int32", + id: 16 + }, + captain: { + type: "int32", + id: 17 + }, + formation: { + rule: "repeated", + type: "BattleRole", + id: 18 + } + } + }, + DBPracticeQiecuoInvite: { + fields: { + uid: { + type: "string", + id: 1 + }, + timestamp: { + type: "int64", + id: 2 + } + } + }, + DBPracticeQiecuoRecord: { + fields: { + id: { + type: "string", + id: 1 + }, + uid: { + type: "string", + id: 2 + }, + targets: { + rule: "repeated", + type: "DBPracticeQiecuoInvite", + id: 3 + }, + status: { + type: "int32", + id: 4 + }, + battid: { + type: "string", + id: 5 + }, + member: { + rule: "repeated", + type: "string", + id: 6 + } + } + }, + PracticeInfoReq: { + fields: {} + }, + PracticeInfoResp: { + fields: { + info: { + type: "DBPracticeRoom", + id: 1 + } + } + }, + PracticeRommChangePush: { + fields: { + info: { + type: "DBPracticeRoom", + id: 1 + } + } + }, + PracticeFriendRommReq: { + fields: { + fuid: { + rule: "repeated", + type: "string", + id: 1 + } + } + }, + PracticeFriendRommResp: { + fields: { + infos: { + keyType: "string", + type: "DBPracticeRoom", + id: 1 + } + } + }, + PracticeUnLockReq: { + fields: { + index: { + type: "int32", + id: 1 + } + } + }, + PracticeUnLockResp: { + fields: { + info: { + type: "DBPracticeRoom", + id: 1 + } + } + }, + PracticeUpgradeReq: { + fields: { + index: { + type: "int32", + id: 1 + } + } + }, + PracticeUpgradeResp: { + fields: { + index: { + type: "int32", + id: 1 + }, + lv: { + type: "int32", + id: 2 + } + } + }, + PracticePracticeReq: { + fields: { + index: { + type: "int32", + id: 1 + }, + hero: { + type: "string", + id: 2 + }, + teacher: { + type: "string", + id: 3 + }, + prop: { + type: "string", + id: 4 + } + } + }, + PracticePracticeResp: { + fields: { + pillar: { + type: "DBPracticePillar", + id: 1 + } + } + }, + PracticeLootReq: { + fields: { + friend: { + type: "string", + id: 1 + }, + hero: { + type: "string", + id: 2 + }, + teacher: { + type: "string", + id: 3 + }, + prop: { + type: "string", + id: 4 + } + } + }, + PracticeLootResp: { + fields: { + friend: { + type: "string", + id: 1 + }, + pillar: { + type: "DBPracticePillar", + id: 2 + } + } + }, + PracticeExpulsionReq: { + fields: {} + }, + PracticeExpulsionResp: { + fields: { + pillar: { + type: "DBPracticePillar", + id: 1 + }, + knapsack: { + keyType: "string", + type: "int32", + id: 2 + } + } + }, + PracticeBeExpulsionPush: { + fields: { + fuid: { + type: "string", + id: 1 + }, + pillar: { + type: "DBPracticePillar", + id: 2 + }, + knapsack: { + keyType: "string", + type: "int32", + id: 3 + } + } + }, + PracticeReceiveReq: { + fields: { + index: { + type: "int32", + id: 1 + }, + friend: { + type: "string", + id: 2 + } + } + }, + PracticeReceiveResp: { + fields: { + pillar: { + type: "DBPracticePillar", + id: 1 + }, + knapsack: { + keyType: "string", + type: "int32", + id: 2 + } + } + }, + PracticeEnrolledReq: { + fields: { + group: { + type: "int32", + id: 1 + }, + hero: { + rule: "repeated", + type: "string", + id: 2 + } + } + }, + PracticeEnrolledResp: { + fields: { + group: { + type: "int32", + id: 1 + }, + hero: { + rule: "repeated", + type: "string", + id: 2 + } + } + }, + PracticeJXItemPush: { + fields: { + id: { + rule: "repeated", + type: "string", + id: 1 + } + } + }, + PracticeGymInfoReq: { + fields: {} + }, + PracticeGymInfoResp: { + fields: { + lastaction: { + type: "int32", + id: 1 + }, + refreshnum: { + type: "int32", + id: 2 + } + } + }, + PracticeGymRefreshReq: { + fields: {} + }, + PracticeGymRefreshResp: { + fields: { + lastaction: { + type: "int32", + id: 1 + }, + refreshnum: { + type: "int32", + id: 2 + } + } + }, + PracticeGetGymBuffReq: { + fields: { + posture: { + type: "int32", + id: 1 + } + } + }, + PracticeGetGymBuffResp: { + fields: { + buffid: { + type: "int32", + id: 1 + } + } + }, + PracticeGymConfirmReq: { + fields: { + buffid: { + type: "int32", + id: 1 + } + } + }, + PracticeGymConfirmResp: { + fields: { + buffid: { + type: "int32", + id: 1 + } + } + }, + PracticeQiecuoReq: { + fields: { + fid: { + type: "string", + id: 1 + } + } + }, + PracticeQiecuoResp: { + fields: { + fid: { + type: "string", + id: 1 + }, + isbattle: { + type: "bool", + id: 2 + }, + battle: { + type: "DBPvpBattle", + id: 3 + } + } + }, + PracticeAcceptReq: { + fields: { + uid: { + type: "string", + id: 1 + } + } + }, + PracticeAcceptResp: { + fields: { + isSucc: { + type: "bool", + id: 1 + } + } + }, + PracticeRefuseReq: { + fields: { + uid: { + type: "string", + id: 1 + } + } + }, + PracticeRefuseResp: { + fields: { + isSucc: { + type: "bool", + id: 1 + } + } + }, + PracticeQiecuonotifyPush: { + fields: { + uid: { + type: "string", + id: 1 + }, + name: { + type: "string", + id: 2 + }, + notifyType: { + type: "int32", + id: 3 + } + } + }, + PracticeNPCBattkleReq: { + fields: { + formation: { + type: "BattleFormation", + id: 1 + } + } + }, + PracticeNPCBattkleResp: { + fields: { + code: { + type: "ErrorCode", + id: 1 + }, + info: { + type: "BattleInfo", + id: 2 + } + } + }, + PracticeNPCBattkleFinishReq: { + fields: { + report: { + type: "BattleReport", + id: 1 + } + } + }, + PracticeNPCBattkleFinishResp: { + fields: { + issucc: { + type: "bool", + id: 1 + } + } + }, + PracticeNPCDialogReq: { + fields: {} + }, + PracticeNPCDialogResp: { + fields: { + issucc: { + type: "bool", + id: 1 + } + } + }, + PvpType: { + values: { + friends: 0 + } + }, + PvpState: { + values: { + "void": 0, + ready: 1, + battle: 2, + cancel: 3, + finish: 4 + } + }, + PvpUserInfo: { + fields: { + uid: { + type: "string", + id: 1 + }, + name: { + type: "string", + id: 2 + }, + avatar: { + type: "string", + id: 3 + }, + lv: { + type: "int32", + id: 4 + } + } + }, + DBPvpBattle: { + fields: { + id: { + type: "string", + id: 1 + }, + servicePath: { + type: "string", + id: 2 + }, + ptype: { + type: "PvpType", + id: 3 + }, + state: { + type: "PvpState", + id: 4 + }, + red: { + type: "PvpUserInfo", + id: 5 + }, + blue: { + type: "PvpUserInfo", + id: 6 + } + } + }, DBPrivilege: { fields: { id: { @@ -7528,68 +9273,6 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr } } }, - PvpType: { - values: { - friends: 0 - } - }, - PvpState: { - values: { - "void": 0, - ready: 1, - battle: 2, - cancel: 3, - finish: 4 - } - }, - PvpUserInfo: { - fields: { - uid: { - type: "string", - id: 1 - }, - name: { - type: "string", - id: 2 - }, - avatar: { - type: "string", - id: 3 - }, - lv: { - type: "int32", - id: 4 - } - } - }, - DBPvpBattle: { - fields: { - id: { - type: "string", - id: 1 - }, - servicePath: { - type: "string", - id: 2 - }, - ptype: { - type: "PvpType", - id: 3 - }, - state: { - type: "PvpState", - id: 4 - }, - red: { - type: "PvpUserInfo", - id: 5 - }, - blue: { - type: "PvpUserInfo", - id: 6 - } - } - }, PvpListReq: { fields: {} }, @@ -7650,6 +9333,38 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr } } }, + PvpLoadCompleteReq: { + fields: { + battleid: { + type: "string", + id: 1 + } + } + }, + PvpLoadCompleteResp: { + fields: { + battleid: { + type: "string", + id: 1 + }, + issucc: { + type: "bool", + id: 2 + } + } + }, + PvpLoadCompleteNoticePush: { + fields: { + battleid: { + type: "string", + id: 1 + }, + side: { + type: "int32", + id: 2 + } + } + }, PvpCancelPush: { fields: { servicePath: { @@ -7662,6 +9377,22 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr } } }, + PvpActiveCancelReq: { + fields: { + battleid: { + type: "string", + id: 1 + } + } + }, + PvpActiveCancelResp: { + fields: { + issucc: { + type: "bool", + id: 1 + } + } + }, PvpFormationReq: { fields: { battleid: { @@ -7735,6 +9466,14 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr } } }, + PvpFinishPush: { + fields: { + battleid: { + type: "string", + id: 1 + } + } + }, ReddotGetAllReq: { fields: {} }, @@ -7765,6 +9504,87 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr } } }, + DBReputation: { + fields: { + uid: { + type: "string", + id: 1 + }, + camps: { + keyType: "int32", + type: "Camp", + id: 2 + }, + attrGlobal: { + type: "CampAttr", + id: 3 + } + } + }, + Camp: { + fields: { + reputationLv: { + type: "int32", + id: 1 + }, + campAttr: { + type: "CampAttr", + id: 2 + }, + nodes: { + rule: "repeated", + type: "TalentNode", + id: 3 + } + } + }, + CampAttr: { + fields: { + hp: { + type: "int32", + id: 1 + }, + attack: { + type: "int32", + id: 2 + }, + defense: { + type: "int32", + id: 3 + }, + hpPer: { + type: "int32", + id: 4 + } + } + }, + TalentNode: { + fields: { + nid: { + type: "int32", + id: 1 + }, + lv: { + type: "int32", + id: 2 + }, + status: { + type: "int32", + id: 3 + } + } + }, + reputationUpgradeReq: { + fields: { + zyId: { + type: "int32", + id: 1 + } + } + }, + reputationUpgradeResp: { + fields: {} + }, RtaskTestReq: { fields: { rtaskType: { @@ -7838,7 +9658,9 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr DiamondShop: 2, PVPShop: 3, PVEShop: 4, - AllianceShop: 5 + AllianceShop: 5, + HeroShop: 6, + SmithyShop: 7 } }, UserShopData: { @@ -7905,6 +9727,14 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr allianceShop: { type: "UserShopData", id: 9 + }, + heroShop: { + type: "UserShopData", + id: 10 + }, + smithyShop: { + type: "UserShopData", + id: 11 } } }, @@ -7995,6 +9825,18 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr } } }, + Mastery: { + fields: { + lv: { + type: "int32", + id: 1 + }, + value: { + type: "int32", + id: 2 + } + } + }, DBStove: { fields: { id: { @@ -8011,7 +9853,7 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr }, data: { keyType: "int32", - type: "int32", + type: "Mastery", id: 4 }, skill: { @@ -8032,22 +9874,30 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr type: "int64", id: 8 }, - business: { + hit: { + keyType: "int32", type: "int32", id: 9 } } }, - DBBusiness: { + CustomerInfo: { fields: { - shop: { - keyType: "int32", + customerId: { type: "int32", id: 1 + }, + suitId: { + type: "int32", + id: 2 + }, + equipCount: { + type: "int32", + id: 3 } } }, - DBBusinessData: { + DBCustomer: { fields: { id: { type: "string", @@ -8057,22 +9907,22 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr type: "string", id: 2 }, - data: { + customers: { rule: "repeated", - type: "DBBusiness", + type: "CustomerInfo", id: 3 }, - count: { + total: { type: "int32", id: 4 }, - refreshTime: { + lastRefreshTime: { type: "int64", id: 5 } } }, - DBTujian: { + DBAtlas: { fields: { id: { type: "string", @@ -8082,14 +9932,59 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr type: "string", id: 2 }, - tujian: { - keyType: "int32", - type: "ForgeData", + atlas: { + keyType: "string", + type: "ForgeList", id: 3 }, - slider: { - type: "int32", + collect: { + keyType: "string", + type: "CollectData", id: 4 + }, + score: { + type: "int32", + id: 5 + }, + award: { + type: "int32", + id: 6 + } + } + }, + CollectData: { + fields: { + id: { + type: "string", + id: 1 + }, + score: { + type: "int32", + id: 2 + }, + time: { + type: "int64", + id: 3 + }, + activate: { + type: "bool", + id: 4 + } + } + }, + ForgeList: { + fields: { + data1: { + type: "ForgeData", + id: 1 + }, + data2: { + type: "ForgeData", + id: 2 + }, + activate: { + type: "bool", + id: 3 } } }, @@ -8106,94 +10001,39 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr quality: { type: "int32", id: 3 - } - } - }, - Clang: { - fields: { - deskType: { + }, + score: { type: "int32", - id: 1 - }, - eTime: { - type: "int64", - id: 2 - }, - sTime: { - type: "int64", - id: 3 - } - } - }, - OrderClang: { - fields: { - deskType: { - type: "int32", - id: 1 - }, - count: { - type: "int32", - id: 2 - }, - needTime: { - type: "int32", - id: 3 - } - } - }, - DBSmithy: { - fields: { - id: { - type: "string", - id: 1 - }, - uid: { - type: "string", - id: 2 - }, - clang: { - type: "Clang", - id: 3 - }, - orders: { - rule: "repeated", - type: "OrderClang", id: 4 }, - items: { - rule: "repeated", - type: "UserAssets", - id: 5 - }, - skill: { - keyType: "int32", - type: "int32", - id: 6 - }, - stoveLv: { - type: "int32", - id: 7 - }, - orderCostTime: { - type: "int32", - id: 8 - }, - ctime: { + time: { type: "int64", - id: 9 + id: 5 + } + } + }, + DBTujianTask: { + fields: { + uid: { + type: "string", + id: 1 }, - deskFloor: { - keyType: "int32", + tasks: { + rule: "repeated", + type: "TujianTask", + id: 2 + } + } + }, + TujianTask: { + fields: { + taskId: { type: "int32", - id: 10 + id: 1 }, - stoveFloor: { + received: { type: "int32", - id: 11 - }, - totalTime: { - type: "int32", - id: 12 + id: 2 } } }, @@ -8210,7 +10050,7 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr }, SmithyForgeEquipReq: { fields: { - equipType: { + reelId: { type: "int32", id: 1 }, @@ -8221,45 +10061,27 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr quality: { type: "int32", id: 3 + }, + suiteId: { + type: "int32", + id: 4 + }, + position: { + type: "int32", + id: 5 + }, + hit: { + keyType: "int32", + type: "int32", + id: 6 } } }, SmithyForgeEquipResp: { fields: { equip: { - type: "int32", - id: 1 - }, - data: { - type: "DBStove", - id: 2 - } - } - }, - SmithyOrderEquipReq: { - fields: { - suiteId: { - type: "int32", - id: 1 - }, - position: { - type: "int32", - id: 2 - }, - lava: { - type: "int32", - id: 3 - }, - quality: { - type: "int32", - id: 4 - } - } - }, - SmithyOrderEquipResp: { - fields: { - equip: { - type: "int32", + rule: "repeated", + type: "DB_Equipment", id: 1 }, data: { @@ -8315,116 +10137,133 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr } } }, - SmithyRefreshShopReq: { + SmithyCustomerReq: { fields: {} }, - SmithyRefreshShopResp: { + SmithyCustomerResp: { fields: { - data: { - type: "DBBusiness", + customers: { + rule: "repeated", + type: "CustomerInfo", id: 1 } } }, - SmithySellItemReq: { + SmithySellReq: { fields: { - id: { - type: "int32", + equipIds: { + rule: "repeated", + type: "string", id: 1 }, - count: { + customerId: { type: "int32", id: 2 } } }, - SmithySellItemResp: { + SmithySellResp: { fields: { - data: { - type: "DBBusiness", + customerId: { + type: "int32", id: 1 - } - } - }, - SmithyCreateOrderReq: { - fields: { - order: { + }, + equipIds: { rule: "repeated", - type: "OrderClang", - id: 1 + type: "string", + id: 2 + }, + customers: { + rule: "repeated", + type: "CustomerInfo", + id: 3 } } }, - SmithyCreateOrderResp: { + SmithyRefuseReq: { fields: { - data: { - type: "DBSmithy", - id: 1 - } - } - }, - SmithyGetRewardReq: { - fields: {} - }, - SmithyGetRewardResp: { - fields: { - data: { - type: "DBSmithy", - id: 1 - } - } - }, - SmithyDeskSkillLvReq: { - fields: { - deskType: { + customerId: { type: "int32", id: 1 } } }, - SmithyDeskSkillLvResp: { + SmithyRefuseResp: { fields: { - data: { - type: "DBSmithy", + customers: { + rule: "repeated", + type: "CustomerInfo", id: 1 } } }, - SmithyStoveSkillLvReq: { + SmithyAtlasListReq: { fields: {} }, - SmithyStoveSkillLvResp: { + SmithyAtlasListResp: { fields: { data: { - type: "DBSmithy", + type: "DBAtlas", id: 1 } } }, - SmithyGetRandUserReq: { + SmithyAtlasActivateReq: { fields: { - people: { + id: { + type: "string", + id: 1 + } + } + }, + SmithyAtlasActivateResp: { + fields: { + data: { + type: "DBAtlas", + id: 1 + } + } + }, + SmithyAtlasAwardReq: { + fields: {} + }, + SmithyAtlasAwardResp: { + fields: { + data: { + type: "DBAtlas", + id: 1 + }, + res: { + rule: "repeated", + type: "UserAssets", + id: 2 + } + } + }, + SmithyTaskAwardReq: { + fields: { + taskId: { type: "int32", id: 1 } } }, - SmithyGetRandUserResp: { + SmithyTaskAwardResp: { fields: { - user: { - rule: "repeated", - type: "DBUser", + taskId: { + type: "int32", id: 1 } } }, - SmithyGetListReq: { + SmithyTasklistReq: { fields: {} }, - SmithyGetListResp: { + SmithyTasklistResp: { fields: { - data: { - type: "DBSmithy", + tasks: { + rule: "repeated", + type: "TujianTask", id: 1 } } @@ -9471,6 +11310,23 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr } } }, + DBOpenCond: { + fields: { + id: { + type: "string", + id: 1 + }, + uid: { + type: "string", + id: 2 + }, + cond: { + keyType: "string", + type: "int32", + id: 3 + } + } + }, SysFuncListReq: { fields: { keys: { @@ -9489,6 +11345,40 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr } } }, + SysFuncGetListReq: { + fields: { + keys: { + rule: "repeated", + type: "string", + id: 1 + } + } + }, + SysFuncGetListResp: { + fields: { + cond: { + keyType: "string", + type: "int32", + id: 1 + } + } + }, + SysFuncActivateReq: { + fields: { + cid: { + type: "string", + id: 1 + } + } + }, + SysFuncActivateResp: { + fields: { + cid: { + type: "string", + id: 1 + } + } + }, DBTask: { fields: { id: { @@ -9646,6 +11536,10 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr keyType: "int32", type: "rtaskData", id: 3 + }, + ctime: { + type: "int64", + id: 4 } } }, @@ -9892,6 +11786,64 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr } } }, + DBGoods: { + fields: { + id: { + type: "string", + id: 1 + }, + period: { + type: "int32", + id: 2 + }, + curPeriod: { + type: "int32", + id: 3 + }, + weight: { + type: "int32", + id: 4 + }, + price: { + type: "int32", + id: 5 + }, + time: { + type: "int32", + id: 6 + } + } + }, + DBTroll: { + fields: { + id: { + type: "string", + id: 1 + }, + uid: { + type: "string", + id: 2 + }, + useCount: { + type: "int32", + id: 3 + }, + items: { + keyType: "int32", + type: "int32", + id: 4 + }, + goods: { + keyType: "int32", + type: "DBGoods", + id: 5 + }, + lv: { + type: "int32", + id: 6 + } + } + }, TrollGetListReq: { fields: {} }, @@ -10487,13 +12439,41 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr data: { type: "DBSign", id: 1 - }, - reward: { - type: "bool", + } + } + }, + UserPuzzleAwardReq: { + fields: { + index: { + type: "int32", + id: 1 + } + } + }, + UserPuzzleAwardResp: { + fields: { + index: { + type: "int32", id: 2 } } }, + UserChangeTipsReq: { + fields: { + tips: { + type: "int32", + id: 1 + } + } + }, + UserChangeTipsResp: { + fields: { + data: { + type: "DBSign", + id: 1 + } + } + }, DBUserExpand: { fields: { id: { @@ -10618,6 +12598,20 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr keyType: "int32", type: "int32", id: 34 + }, + suiteId: { + rule: "repeated", + type: "int32", + id: 35 + }, + globalbuff: { + type: "int32", + id: 36 + }, + race: { + keyType: "int32", + type: "int32", + id: 37 } } }, @@ -10834,15 +12828,28 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr type: "string", id: 1 }, - lastTaskIds: { - keyType: "int32", - type: "Worldtask", - id: 2 - }, taskList: { rule: "repeated", - type: "Worldtask", + type: "int32", id: 3 + }, + currentTask: { + keyType: "int32", + type: "Worldtask", + id: 4 + }, + chapters: { + keyType: "int32", + type: "int32", + id: 5 + }, + daliyRefreshTime: { + type: "int64", + id: 6 + }, + weekRefreshTime: { + type: "int64", + id: 7 } } }, @@ -10855,6 +12862,19 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr taskType: { type: "int32", id: 3 + }, + npcStatus: { + type: "int32", + id: 5 + }, + condiIds: { + rule: "repeated", + type: "int32", + id: 6 + }, + deliverNpc: { + type: "int32", + id: 7 } } }, @@ -10869,6 +12889,75 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr } } }, + WorldtaskAcceptReq: { + fields: { + groupId: { + type: "int32", + id: 1 + }, + taskId: { + type: "int32", + id: 2 + } + } + }, + WorldtaskAcceptResp: { + fields: { + Code: { + type: "ErrorCode", + id: 1 + } + } + }, + WorldtaskCompletecondisPush: { + fields: { + groupId: { + type: "int32", + id: 1 + }, + taskId: { + type: "int32", + id: 2 + }, + condiIds: { + rule: "repeated", + type: "int32", + id: 3 + } + } + }, + WorldtaskCompleteCondiReq: { + fields: { + groupId: { + type: "int32", + id: 1 + }, + taskId: { + type: "int32", + id: 2 + }, + condiId: { + type: "int32", + id: 3 + } + } + }, + WorldtaskCompleteCondiResp: { + fields: { + code: { + type: "ErrorCode", + id: 1 + }, + taskId: { + type: "int32", + id: 2 + }, + condiId: { + type: "int32", + id: 3 + } + } + }, WorldtaskFinishReq: { fields: { groupId: { @@ -10883,30 +12972,31 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr }, WorldtaskFinishResp: { fields: { - groupId: { - type: "int32", + code: { + type: "ErrorCode", id: 1 }, taskId: { type: "int32", id: 2 }, - newheros: { - rule: "repeated", - type: "string", - id: 3 - }, - olv: { + condiId: { type: "int32", - id: 4 + id: 3 } } }, WorldtaskNexttaskPush: { fields: { - nextTaskId: { - type: "int32", + nextTask: { + keyType: "int32", + type: "Worldtask", id: 1 + }, + finishedTaskIds: { + rule: "repeated", + type: "int32", + id: 2 } } }, @@ -10932,17 +13022,25 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr }, WorldtaskBattleFinishReq: { fields: { - taskId: { + groupId: { type: "int32", id: 1 }, - battleConfId: { + taskId: { type: "int32", id: 2 }, + condiId: { + type: "int32", + id: 3 + }, + battleConfId: { + type: "int32", + id: 4 + }, report: { type: "BattleReport", - id: 3 + id: 5 } } }, @@ -10951,15 +13049,6 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr taskId: { type: "int32", id: 1 - }, - newheros: { - rule: "repeated", - type: "string", - id: 2 - }, - olv: { - type: "int32", - id: 3 } } }, @@ -10971,6 +13060,22 @@ var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $pr id: 1 } } + }, + WorldtaskChapterrewardReq: { + fields: { + groupId: { + type: "int32", + id: 1 + } + } + }, + WorldtaskChapterrewardResp: { + fields: { + code: { + type: "ErrorCode", + id: 1 + } + } } }); diff --git a/src/pb/proto/atlas/atlas_db.proto b/src/pb/proto/atlas/atlas_db.proto new file mode 100644 index 0000000..e8b58d6 --- /dev/null +++ b/src/pb/proto/atlas/atlas_db.proto @@ -0,0 +1,16 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +message DBPandaAtlas{ + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + map collect = 3; // 收藏品图鉴信息 + int32 score = 4; // 总积分 + int32 award = 5; // 奖励进度 + +} +message CollectInfo{ + int32 score = 1; + int64 time = 2; // 获得时间 + bool activate = 3; // 是否激活 +} \ No newline at end of file diff --git a/src/pb/proto/atlas/atlas_msg.proto b/src/pb/proto/atlas/atlas_msg.proto new file mode 100644 index 0000000..385532b --- /dev/null +++ b/src/pb/proto/atlas/atlas_msg.proto @@ -0,0 +1,31 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "atlas/atlas_db.proto"; +import "comm.proto"; + +// 查看图鉴信息 +message AtlasGetListReq{ + +} + +message AtlasGetListResp{ + DBPandaAtlas data = 1; +} + +// 图鉴激活更新 +message AtlasActivateReq{ + string id = 1; // 图鉴ID +} + +message AtlasActivateResp{ + DBPandaAtlas data = 1; +} + +// 图鉴信息奖励任务领取 +message AtlasAwardReq{ + +} +message AtlasAwardResp{ + DBPandaAtlas data = 1; // 奖励信息 + repeated UserAssets res = 2; // 获得的奖励 +} diff --git a/src/pb/proto/battle/battle_db.proto b/src/pb/proto/battle/battle_db.proto index e883cde..6c9c093 100644 --- a/src/pb/proto/battle/battle_db.proto +++ b/src/pb/proto/battle/battle_db.proto @@ -4,11 +4,12 @@ import "comm.proto"; enum BattleType { nil = 0; - pve = 1; - pvp = 2; - pvb = 3; - eve = 4; - rtpvp = 5; + pve = 1; //pve + pvp = 2; //异步pvp + pvb = 3; //boos战斗 + eve = 4; //eve对战 + rtpvp = 5; //实时pvp + lpev = 6; //连续战斗 } //玩法类型 @@ -24,9 +25,10 @@ enum PlayType { academy = 8; //联盟学院 heroteaching =9; //英雄教学 combat = 10; //新关卡 - enchant = 11; // 附魔副本 + enchant = 11; //附魔副本 sociaty = 12; //工会战 friendsmeet = 13; //好友切磋 + practicenpc = 14; //武馆NPC } //战斗状态 @@ -53,11 +55,13 @@ message BattleRole { int32 mainSuitSkill = 8; ///@go_tags(`bson:"mainSuitSkill"`) 主套装技能 int32 subSuitSkill = 9; ///@go_tags(`bson:"subSuitSkill"`) 副套装技能 repeated SkillData normalSkill = 10; //@go_tags(`bson:"normalSkill"`) 普通技能 - repeated SkillData equipSkill = 11; //@go_tags(`bson:"normalSkill"`) 普通技能 - map property = 12; // 属性相关 - bool ishelp = 13; //是否是助战英雄 - int32 isboos = 14; //是否是boos - int32 monsterid = 15; //怪物id + repeated SkillData equipSkill = 11; //@go_tags(`bson:"equipSkill"`) 普通技能 + int32 PandaBuff = 12; //熊猫buff技能id + map property = 13; // 属性相关 + bool ishelp = 14; //是否是助战英雄 + int32 isboos = 15; //是否是boos + int32 monsterid = 16; //怪物id + int32 currhp = 17; //当前血量 } //战斗阵型信息 diff --git a/src/pb/proto/battle/battle_msg.proto b/src/pb/proto/battle/battle_msg.proto index 76b3fb0..47e4de3 100644 --- a/src/pb/proto/battle/battle_msg.proto +++ b/src/pb/proto/battle/battle_msg.proto @@ -57,6 +57,18 @@ message BattleRTPVPReq { repeated BattleFormation bulefformat = 9; //红方阵型列表 } + +// 连续pve战斗 +message BattleLPVEReq { + PlayType ptype = 1; //玩法类型 + string title = 2; //战斗标题 + string scene = 3; //战斗场景 + BattleFormation format = 4; //布阵信息 + int32 monsterleadpos = 5; //队长位置 + repeated BattleRole monsters = 6; //怪物列表 +} + + // pvb 战斗创建请求 (工会boos战专用) message BattlePVBReq { PlayType ptype = 1; //玩法类型 @@ -69,7 +81,7 @@ message BattlePVBReq { message BattleInfo { string id = 1; //战斗id string title = 2; //战斗标题 - string scene = 3; //战斗场景 + int32 rulesid = 3; //规则id BattleType btype = 4; //战斗类型 PlayType ptype = 5; //玩法类型 string redCompId = 6; //红方阵营id @@ -89,12 +101,14 @@ message BattleCmd { message BattleReport { BattleInfo info = 1; int32 Costtime = 2; //战斗时长 单位ms - repeated BattleCmd incmd = 3; //输入指令 - repeated BattleCmd outcmd = 4; //输出指令 - repeated int32 completetask = 5; //完成任务 - int32 death = 6; // 死亡人数 - int32 round = 7; // 回合数 - int32 harm = 8; //伤害积分 + int32 winSide = 3; //胜利方 1 - red 2 = blue + repeated BattleCmd incmd = 4; //输入指令 + repeated BattleCmd outcmd = 5; //输出指令 + repeated int32 completetask = 6; //完成任务 + int32 death = 7; // 死亡人数 + int32 round = 8; // 回合数 + int32 harm = 9; //伤害积分 + repeated BattleRole alive = 10; //存活列表 } //公用消息结构代码 @@ -154,6 +168,7 @@ message BattleOutCmdPush { //战斗服务 结束推送 message BattleFinishPush { string battleid = 1; + int32 winSide = 2; } diff --git a/src/pb/proto/battle/battle_struct.proto b/src/pb/proto/battle/battle_struct.proto index 0a08642..bed0365 100644 --- a/src/pb/proto/battle/battle_struct.proto +++ b/src/pb/proto/battle/battle_struct.proto @@ -138,4 +138,20 @@ message ComPlayEffect{ message ComEmitCountdown { int32 reserve =1; +} + +//特殊效果飘字 +message ComEffectTips +{ + EffectTipsType type = 1; + int32 to = 2; +} +enum EffectTipsType { + Eff_Success = 0; + Not_Success = 1; //没有成功 + Immunity = 2; //免疫 + Resist = 3; //抵抗 + Not_Gain = 4; //无法获得增益 + Not_Control = 5; //免疫控制 + Not_Action = 6; //无法行动 } \ No newline at end of file diff --git a/src/pb/proto/comm.proto b/src/pb/proto/comm.proto index 3dbb672..d697139 100644 --- a/src/pb/proto/comm.proto +++ b/src/pb/proto/comm.proto @@ -3,6 +3,12 @@ option go_package = ".;pb"; import "errorcode.proto"; import "google/protobuf/any.proto"; +message ErrorData { + string title = 1; + int32 dataint = 2; + string datastring = 3; +} + //用户消息流结构1 message UserMessage { string MainType = 1; //用户消息处理 模块名 例如:user 对应项目中 user的模块 @@ -29,7 +35,7 @@ message AgentMessage { message RPCMessageReply { ErrorCode Code = 1; string ErrorMessage = 2; - google.protobuf.Any ErrorData = 3; + ErrorData ErrorData = 3; repeated UserMessage Reply = 4; } @@ -75,6 +81,15 @@ message NoticeUserLoginReq { string GatewayServiceId = 5; } +//通知用户登录 +message NoticeUserCreateReq { + string Ip = 1; + string UserSessionId = 2; + string UserId = 3; + string ServiceTag = 4; + string GatewayServiceId = 5; +} + //通知用户离线 message NoticeUserCloseReq { string Ip = 1; diff --git a/src/pb/proto/dispatch/dispatch_db.proto b/src/pb/proto/dispatch/dispatch_db.proto new file mode 100644 index 0000000..b699ed0 --- /dev/null +++ b/src/pb/proto/dispatch/dispatch_db.proto @@ -0,0 +1,31 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +// 玩家派遣信息 +message DBDispatch { + string uid = 1; //@go_tags(`bson:"uid"`) + Noticeboard nb = 2; //@go_tags(`bson:"nb"`) 公告栏 +} + +// 公告栏 +message Noticeboard { + int32 lv = 1; //@go_tags(`bson:"lv"`) 公告栏等级 + int32 noticeType =2; //@go_tags(`bson:"noticeType"`) 公告栏类型 + repeated DispatchTask tasks = 3; //@go_tags(`bson:"tasks"`) 当前公告任务 + int32 freeCount = 4; //@go_tags(`bson:"freeCount"`) 已使用的免费次数 + int32 refreshCount = 5; //@go_tags(`bson:"refreshCount"`) 已刷新次数 + int32 weekCount = 6; //@go_tags(`bson:"weekCount"`) 周任务数 + int32 taskCount = 7; //@go_tags(`bson:"taskCount"`) 任务数 + repeated int32 weekReceived = 8; //@go_tags(`bson:"weekReceived"`) //已领取的周任务索引ID + int64 updateTime = 9; //@go_tags(`bson:"updateTime"`) 更新时间 +} + +// 派遣任务 +message DispatchTask{ + int32 taskId = 1; //@go_tags(`bson:"taskId"`) 任务ID + int32 status = 2; //@go_tags(`bson:"status"`) 任务状态 默认0 1任务中 2任务完成 + int64 duration = 3; //@go_tags(`bson:"duration"`) 持续截至时间 + int64 leftTime = 4; //@go_tags(`bson:"leftTime"`) 任务截至时间 + repeated string heroIds = 5; //go_tags(`bson:"heroIds"`) 派遣的英雄 + bool exaward = 6; //@go_tags(`bson:"exaward"`) 是否获取额外奖励 +} \ No newline at end of file diff --git a/src/pb/proto/dispatch/dispatch_msg.proto b/src/pb/proto/dispatch/dispatch_msg.proto new file mode 100644 index 0000000..b49bf68 --- /dev/null +++ b/src/pb/proto/dispatch/dispatch_msg.proto @@ -0,0 +1,58 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "dispatch/dispatch_db.proto"; + +// 玩家公告 +message DispatchNoticeReq{} + +message DispatchNoticeResp{ + Noticeboard dispatch = 1; +} + +//刷新公告 +message DispatchRefreshReq{} + +message DispatchRefreshResp{ + int32 freeCount = 1; //已使用的免费次数 + int32 refreshCount = 2; //已刷新次数 +} + +message DispatchTaskRsp{ + int32 taskId =1; + bool exaward = 2; +} + +// 领取任务奖励 +message DispatchReceiveReq{ + int32 taskId = 1; //任务ID +} +message DispatchReceiveResp{ + DispatchTaskRsp rsp = 1; +} + +//一键领取任务奖励 +message DispatchAutoReceiveReq{} + +message DispatchAutoReceiveResp{ + repeated DispatchTaskRsp task = 1; //领取奖励的任务ID +} + +// 派遣 +message DispatchDoReq{ + int32 taskId = 1; + repeated string heroIds = 2; +} + +message DispatchDoResp{ + bool isSucc = 1; //派遣是否成功 +} + +// 周奖励领取 +message DispatchWeekReciveReq{ + int32 idx = 1; // 奖励节点索引号从0开始 +} + +message DispatchWeekReciveResp{ + int32 idx= 1; +} + diff --git a/src/pb/proto/errorcode.proto b/src/pb/proto/errorcode.proto index 51f5584..d6eb7c8 100644 --- a/src/pb/proto/errorcode.proto +++ b/src/pb/proto/errorcode.proto @@ -3,9 +3,10 @@ option go_package = ".;pb"; // go:generate stringer -type ErrorCode -linecomment enum ErrorCode { Success = 0; //成功 + GatewayException = 1; //网关执行异常 NoFindService = 10; //没有找到远程服务器 NoFindServiceHandleFunc = 11; //远程服务器未找到执行方法 - RpcFuncExecutionError = 12; // Rpc方法执行错误 + RpcFuncExecutionError = 12; //Rpc方法执行错误 CacheReadError = 13; //缓存读取失败 SqlExecutionError = 14; //数据库执行错误 ReqParameterError = 15; //请求参数错误 @@ -27,6 +28,7 @@ enum ErrorCode { ConfigNoFound = 104; //配置未找到 UserLogined = 105; //已在其它终端登录 NoOpened = 106; //模块未开放 + DataNotFound = 107; //数据为找到 // user SecKeyInvalid = 1000; //秘钥无效 @@ -51,6 +53,13 @@ enum ErrorCode { UserMoongoldNoEnough=1019; //纯净月髓不足 UserOffline = 1020; //玩家不在线 UserNofound = 1021; //未查询到玩家 + UserSign = 1022; //签到状态不对 + OpenCondErr = 1023; //功能开启条件未达到 + OpenCondActivate = 1024; //功能开启条件已激活 + UserTalent1NoEnough = 1025; //阵营1天赋点 + UserTalent2NoEnough = 1026; //阵营2天赋点 + UserTalent3NoEnough = 1027; //阵营3天赋点 + UserTalent4NoEnough = 1028; //阵营4天赋点 // friend FriendNotSelf = 1100; //不能是自己 @@ -75,7 +84,7 @@ enum ErrorCode { FriendQiecuoNoRequest = 1119; //无切磋请求 FriendQiecuoing = 1120; //好友切磋中 FriendQiecuoTargetPk = 1121; //目标已经在战斗 - + FriendTicketNoEnough = 1122; //挑战券 // item ItemsNoEnough = 1200; //背包物品不足 ItemsNoFoundGird = 1201; //背包未找到物品格子 @@ -112,12 +121,14 @@ enum ErrorCode { HeroMaxSkillLv = 1323; // 达到最大技能等级 HeroAlreadyKongFuStatus = 1324; // 已经是练功状态 HeroLvNoEnough = 1325; // 英雄等级不足 + HeroIsRegister = 1326; // 英雄已经登记过 // equipment EquipmentOnFoundEquipment = 1400; // 未找到武器 EquipmentLvlimitReached = 1401; // 武器等级已达上限 EquipmentIsWorn = 1402; // 武器已经穿戴 EquipmentNoCanSell = 1403; // 装备不能出售 + EquipmentSuiteNotFound = 1404; // 套装未找到 // mainMainline MainlineNotFindChapter = 1500; // 没有找到主线关卡信息 @@ -152,12 +163,14 @@ enum ErrorCode { PagodaLevlErr = 1901; // 挑战关卡数据不匹配 PagodaGetRewardErr = 1902; // 重复领取 PagodaConditionErr = 1903; // 条件不足 + PagodaUnlock = 1904; // 未解锁 前置条件不足 // martialhall MartialhallNotUnlocked = 2000; //没有解锁 MartialhallInUse = 2001; //已经在使用 MartialhallUnlocked = 2002; //已解锁 MartialhallNoUnlocked = 2003; //有未解锁柱子 - + MartialhallAtlasError = 2004; // 武馆图鉴领取错误 + MartialhallAtlasNoReward = 2005; // 武馆图鉴不满足领取条件 // 美食馆 GourmetMoreOrderTime = 2101; // 超过订单时长 GourmetSkillMaxLv = 2102; // 技能已经达到满级 @@ -223,6 +236,8 @@ enum ErrorCode { BattleCreateFailed = 2903; //创建战斗失败 BattleInCmdFailed = 2904; //战斗指令输入失败 BattleUserOff = 2905; //由用户离线 + BattleCapskillCheckFailed = 2906; //战斗队长技校验失败 + BattleNoKeep = 2907; //战斗不存在 // sociaty SociatyNoFound = 3000; //公会不存在 @@ -235,38 +250,38 @@ enum ErrorCode { SociatyQuit = 3007; //退会失败 SociatyAgree = 3008; //申请-同意失败 SociatyRefuse = 3009; //申请-拒绝失败 - SociatyLogParams = 30010; //公会日志参数错误 - SociatyMasterNoDiss = 30011; //会长不能被踢出 - SociatySettingJob = 30012; //设置职位失败 - SociatySetting = 30013; //公会修改失败 - SociatyNoAccuse = 30014; //无需弹劾 - SociatySign = 30015; //签到失败 - SociatySigned = 30016; //已签到 - SociatyCDLimit = 30017; // CD时间限制 - SociatyApplyMax = 30018; //最大申请该公会人数 - SociatySelfSetting = 30019; // 不能设置自己 - SociatyMemberCountLimit = 30020; //超出人数限制 - SociatyRewardReceived = 30021; //奖励已领取 - SociatyRewardReceive = 30022; //奖励领取失败 - SociatyResource = 30023; //更新公会资源失败 - SociatyBelongTo = 30025; //已是公会成员 - SociatyApplied = 30026; //已申请 - SociatyAppyLvNoEnough = 30027; //申请等级不满足 - SociatyTaskValidation = 30028; //任务未完成 - SociatyActivityNoEnough = 30029; //活跃度不足 - SociatyAcitvityReceive = 30030; //活跃度领取失败 - SociatyDismissed = 30031; //公会已解散 - SociatyNameExist = 30032; //公会名存在 - SociatyQuitNoAllowed = 30033; //会长不允许退公会 - SociatyNoMaster = 30034; //无会长 - SociatyNoFormation = 30035; //无阵容 - SociatyTicketsNoEnough = 30036; //挑战券不足 - SociatySportsNoinit = 30037; //赛季未初始 - SociatySportsEnd = 30038; //赛季已结束 - SociatyTeamUnlock = 30039; //队伍解锁条件不满足 - SociatyTaskNoFound = 30040; //未找到boss任务 - SociatyTaskNoFinished = 30041; //任务未完成 - SociatyTaskReceived = 30042; //任务奖励已领取 + SociatyLogParams = 3010; //公会日志参数错误 + SociatyMasterNoDiss = 3011; //会长不能被踢出 + SociatySettingJob = 3012; //设置职位失败 + SociatySetting = 3013; //公会修改失败 + SociatyNoAccuse = 3014; //无需弹劾 + SociatySign = 3015; //签到失败 + SociatySigned = 3016; //已签到 + SociatyCDLimit = 3017; // CD时间限制 + SociatyApplyMax = 3018; //最大申请该公会人数 + SociatySelfSetting = 3019; // 不能设置自己 + SociatyMemberCountLimit = 3020; //超出人数限制 + SociatyRewardReceived = 3021; //奖励已领取 + SociatyRewardReceive = 3022; //奖励领取失败 + SociatyResource = 3023; //更新公会资源失败 + SociatyBelongTo = 3025; //已是公会成员 + SociatyApplied = 3026; //已申请 + SociatyAppyLvNoEnough = 3027; //申请等级不满足 + SociatyTaskValidation = 3028; //任务未完成 + SociatyActivityNoEnough = 3029; //活跃度不足 + SociatyAcitvityReceive = 3030; //活跃度领取失败 + SociatyDismissed = 3031; //公会已解散 + SociatyNameExist = 3032; //公会名存在 + SociatyQuitNoAllowed = 3033; //会长不允许退公会 + SociatyNoMaster = 3034; //无会长 + SociatyNoFormation = 3035; //无阵容 + SociatyTicketsNoEnough = 3036; //挑战券不足 + SociatySportsNoinit = 3037; //赛季未初始 + SociatySportsEnd = 3038; //赛季已结束 + SociatyTeamUnlock = 3039; //队伍解锁条件不满足 + SociatyTaskNoFound = 3040; //未找到boss任务 + SociatyTaskNoFinished = 3041; //任务未完成 + SociatyTaskReceived = 3042; //任务奖励已领取 // arena ArenaTicketBuyUp = 3101; //票据上限 @@ -309,10 +324,53 @@ enum ErrorCode { WorldtaskFinihed = 3805; //任务已完成 WorldtaskLastUnFinished = 3806; //上个任务未完成 WorldtaskGroupIdNosame = 3807; //组ID不一致 + WorldtaskChapterUnFinished =3808; //章节任务未完成 + WorldtaskChapterReceived =3809; //章节奖励已领取 + WorldtaskNoProcess = 3810; //无需处理 // academy AcademyTaskNoCompleteTask = 3901; //未完成任务 // AutoBattle AutoBattleNoData = 4001; //没有正在自动战斗的数据 AutoBattleStatesErr = 4002; // 自动战斗状态错误 -} \ No newline at end of file + + // smithy + SmithyNoReel = 4101;// 没有激活图纸信息 + SmithyNoTemperature = 4102;// 炉温不够不能打造 + SmithyStoveMaxLv = 4103;// 炉子达到最大等级 + SmithyCustomerLimit = 4104; //顾客上限 + SmithyCustomerEquipNoEnough = 4105; //装备回收数量不足 + SmithyMaxTemperature = 4106; // 炉温达上限 + SmithyLackLava = 4107; // 缺少熔岩 + SmithyAtlasMaxLv = 4108; // 图鉴奖励满级 + SmithyAtlasLackLv = 4109; // 图鉴奖励等级不足 + SmithyTaskNoFinished = 4110; //图鉴任务未完成 + SmithyTaskReceived = 4111; //图鉴任务奖励已领 + SmithyNoFoundAtlas = 4112; // 没有找到图鉴数据 + SmithyNoActivateAtlas = 4113; // 没有图鉴更新数据 + SmithyLvToolsFailed = 4114; // + SmithyLvToolsPre = 4115; // 前置条件不足 + SmithyAtlasTypeErr = 4116; //图鉴类型错误 + + // dispatch + DispatchHeroNoReached = 4201; //英雄条件未达标 + DispatchNoFree = 4202; //免费次数用尽 + DispatchTicketNoEnough = 4203; //门票不足 + DispatchHeroAssigned = 4204; //英雄已派遣 + DispatchTaskExpired = 4205; //任务已过期 + DispatchRefreshMax = 4206; //达到最大刷新次数 + DispatchNoFinished = 4207; //任务未完成 + DispatchHeroNoEnough = 4208; //派遣英雄数量不足 + + //practice + PracticeQiecuoing = 4301; //武馆切磋中 + PracticeSent = 4302; //邀请已发送 10秒内请勿重复邀请 + PracticeInviteTimeOut = 4303; //邀请超时 + PracticePillarMaxLv = 4304; //木桩已到满级 + PracticeYouQiecuoing = 4305; //你有切磋未完成 + PracticeTargetQiecuoing = 4306; //目标正在切磋中 + + //parkour + ParkourMemberFull = 4401; //队伍成员已满 + ParkourInviteOverdue = 4402; //邀请已过期 +} diff --git a/src/pb/proto/friend/friend_db.proto b/src/pb/proto/friend/friend_db.proto index 8845bbf..11a6042 100644 --- a/src/pb/proto/friend/friend_db.proto +++ b/src/pb/proto/friend/friend_db.proto @@ -30,5 +30,6 @@ message QiecuoRecord{ string targetId = 2; //@go_tags(`bson:"targetId"`) 切磋接受人 int32 status = 3; //@go_tags(`bson:"status"`) 0默认 1已发送 2已接收 string matchId = 4; //@go_tags(`bson:"matchId"`) 战斗ID - int64 timestamp = 5; //@go_tags(`bson:"timestamp"`) 切磋发起时间戳 + int64 timestamp = 5; //@go_tags(`bson:"timestamp"`) 切磋时间戳 + int64 endTime = 6; //@go_tags(`bson:"endTime"`) 战斗结束时间戳 } \ No newline at end of file diff --git a/src/pb/proto/gourmet/gourmet_db.proto b/src/pb/proto/gourmet/gourmet_db.proto index 6ed93ac..527b55c 100644 --- a/src/pb/proto/gourmet/gourmet_db.proto +++ b/src/pb/proto/gourmet/gourmet_db.proto @@ -2,6 +2,11 @@ syntax = "proto3"; option go_package = ".;pb"; import "comm.proto"; +message DBGourmetAtlas { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + map atlas = 3;//@go_tags(`bson:"atlas"`) +} // 正在烹饪的食物 message Cooking{ int32 foodType = 1; // 料理类型 diff --git a/src/pb/proto/gourmet/gourmet_msg.proto b/src/pb/proto/gourmet/gourmet_msg.proto index bc46cca..7cb1127 100644 --- a/src/pb/proto/gourmet/gourmet_msg.proto +++ b/src/pb/proto/gourmet/gourmet_msg.proto @@ -2,8 +2,35 @@ syntax = "proto3"; option go_package = ".;pb"; import "gourmet/gourmet_db.proto"; import "user/user_db.proto"; -// 查询塔进度 -message GourmetGetListReq { + +message GourmetCreateFoodReq { + string cid = 1; // 食谱ID + map material = 2; +} + +message GourmetCreateFoodResp { + string cid = 1; // 获得的食谱 + bool firstGet = 2; // 是否首次获得 +} +message GourmetActivateAtlasReq { + string cid = 1; // 图鉴ID +} + +message GourmetActivateAtlasResp { + map atlas = 1; +} + +// 图鉴 +message GourmetAtlasReq { + +} + +message GourmetAtlasResp { + map atlas = 1; +} + + +message GourmetGetListReq { } // 返回进度信息 diff --git a/src/pb/proto/hero/hero_db.proto b/src/pb/proto/hero/hero_db.proto index b9921dd..81a0f1e 100644 --- a/src/pb/proto/hero/hero_db.proto +++ b/src/pb/proto/hero/hero_db.proto @@ -24,19 +24,20 @@ message DBHero { repeated int32 skins = 14; // 所有皮肤ID bool block = 15; // 锁定 repeated string equipID = 16; //@go_tags(`bson:"equipID"`) 装备 objID - int32 sameCount = 20; // @go_tags(`bson:"sameCount"`) 卡片叠加数量 - int32 suiteId = 21; //@go_tags(`bson:"suiteId"`) 套装Id - int32 suiteExtId = 22; // go_tags(`bson:"suiteExtId"`) 扩展套装Id - - map juexProperty = 25; //@go_tags(`bson:"juexProperty"`) //hp - HeroType status = 26; //@go_tags(`bson:"status"`) 状态 (1 练功) - int32 suite1Star = 27; //@go_tags(`bson:"suite1Star"`) - int32 suite2Star = 28; //@go_tags(`bson:"suite2Star"`) - int32 suite1Lv = 29; //@go_tags(`bson:"suite1Lv"`) - int32 suite2Lv = 30; //@go_tags(`bson:"suite2Lv"`) - map talentProperty = 31; //@go_tags(`bson:"talentProperty"`) // 天赋属性 - repeated SkillData equipSkill = 32; //@go_tags(`bson:"equipSkill"`) 装备技能 - map horoscopeProperty = 33; //@go_tags(`bson:"horoscopeProperty"`) //星座属性加成 + int32 sameCount = 17; // @go_tags(`bson:"sameCount"`) 卡片叠加数量 + int32 suiteId = 18; //@go_tags(`bson:"suiteId"`) 套装Id + int32 suiteExtId = 19; // go_tags(`bson:"suiteExtId"`) 扩展套装Id + map juexProperty = 20; //@go_tags(`bson:"juexProperty"`) //hp + HeroType status = 21; //@go_tags(`bson:"status"`) 状态 (1 练功) + int32 suite1Star = 22; //@go_tags(`bson:"suite1Star"`) + int32 suite2Star = 23; //@go_tags(`bson:"suite2Star"`) + int32 suite1Lv = 24; //@go_tags(`bson:"suite1Lv"`) + int32 suite2Lv = 25; //@go_tags(`bson:"suite2Lv"`) + map talentProperty = 26; //@go_tags(`bson:"talentProperty"`) // 天赋属性 + repeated SkillData equipSkill = 27; //@go_tags(`bson:"equipSkill"`) 装备技能 + map horoscopeProperty = 28; //@go_tags(`bson:"horoscopeProperty"`) //星座属性加成 + int32 fulllvenr = 29; //@go_tags(`bson:"fulllvenr"`) //满级登记分组 武馆使用 + string kongfuUid = 30; //@go_tags(`bson:"kongfuUid"`)// 英雄在谁家练功 } @@ -56,6 +57,7 @@ message DBHeroRecord { int32 tenbuy = 12; // 十连购买次数 int32 inevitable = 13;//第2-30次抽奖必出一个5星英雄 int32 inevitable1 = 14;//第30-50次抽奖必出一个5星英雄 + map race = 15; // key 阵营类型 value count } // 英雄天赋系统 diff --git a/src/pb/proto/items/items_msg.proto b/src/pb/proto/items/items_msg.proto index bab5f6b..c74848b 100644 --- a/src/pb/proto/items/items_msg.proto +++ b/src/pb/proto/items/items_msg.proto @@ -104,3 +104,17 @@ message ItemsRefreshUnifiedTicketReq { message ItemsRefreshUnifiedTicketResp { } + + +//魔药合成请求 +message ItemsPotionSynthesisReq { + int32 id = 1; //配方id + int32 succnum = 2; //成功数量 + int32 num = 3; //炼制数量 +} +//魔药合成请求 回应 +message ItemsPotionSynthesisResp { + bool succ = 1; + int32 id = 2; //配方id + int32 num = 3; //炼制数量 +} \ No newline at end of file diff --git a/src/pb/proto/library/library_db.proto b/src/pb/proto/library/library_db.proto index 84bc093..75a940b 100644 --- a/src/pb/proto/library/library_db.proto +++ b/src/pb/proto/library/library_db.proto @@ -5,11 +5,12 @@ message DBLibrary { string id = 1; //@go_tags(`bson:"_id"`) ID string uid = 2; //@go_tags(`bson:"uid"`) 用户ID int32 fid = 3; // 配置表id 羁绊id - map hero = 4; // key: hid value: favorlv + map hero = 4; // key: hid value: id map prize = 5; //是否领奖 key 好感度等级 int32 fetterlv = 6; // 当前羁绊等级 int32 storyid = 7; // 故事id 用来判断是否领奖 bool activation = 8; // 是否激活 + } // 羁绊英雄数据 diff --git a/src/pb/proto/notify/notify_msg.proto b/src/pb/proto/notify/notify_msg.proto index 48a5572..e51236b 100644 --- a/src/pb/proto/notify/notify_msg.proto +++ b/src/pb/proto/notify/notify_msg.proto @@ -1,5 +1,6 @@ syntax = "proto3"; option go_package = ".;pb"; +import "comm.proto"; import "errorcode.proto"; import "notify/notify_db.proto"; import "google/protobuf/any.proto"; @@ -10,9 +11,8 @@ message NotifyErrorNotifyPush { string ReqSubType = 2; // 请求协议函数 例如:login 对应项目中 user的模块中 // api_login 的处理函数 ErrorCode Code = 3; // 执行返回错误码 对应 errorcode.proto 枚举 - string Message = 4; // 错误消息 - google.protobuf.Any arg = 5; //参数信息 - google.protobuf.Any Data = 6; // 错误数据 + google.protobuf.Any arg = 4; //参数信息 + ErrorData err = 5; //错误数据 } //获取系统公告 请求 diff --git a/src/pb/proto/pagoda/pagoda_db.proto b/src/pb/proto/pagoda/pagoda_db.proto index 53ea7e6..601020d 100644 --- a/src/pb/proto/pagoda/pagoda_db.proto +++ b/src/pb/proto/pagoda/pagoda_db.proto @@ -11,6 +11,7 @@ message DBPagoda { bool complete = 6; // 是否通关 int32 passCheckID = 7; // 战令领奖ID int32 vipPassCheckID = 8; // vip战令领奖ID + map data = 9; // key 页签 value 层数 } diff --git a/src/pb/proto/pagoda/pagoda_msg.proto b/src/pb/proto/pagoda/pagoda_msg.proto index 301ec0a..57a60a2 100644 --- a/src/pb/proto/pagoda/pagoda_msg.proto +++ b/src/pb/proto/pagoda/pagoda_msg.proto @@ -22,21 +22,18 @@ message PagodaGetRewardResp { } message PagodaChallengeReq { - int32 levelID = 1; // 挑战层数 - int32 PagodaType = 2; // 塔类型 + int32 cid = 1; // 塔的配置id BattleFormation battle = 3; } message PagodaChallengeResp { BattleInfo info = 1; - int32 levelID = 2; // 挑战层数 - int32 PagodaType = 3; // 塔类型 + int32 cid = 2; // 塔的配置id } // 客户端通知服务器打赢了 message PagodaChallengeOverReq { - int32 levelID = 1; // 挑战层数 - int32 PagodaType = 2; // 塔类型 + int32 cid = 1; // 塔的配置id BattleReport report = 3; //战报 } @@ -46,7 +43,7 @@ message PagodaChallengeOverResp { // 排行榜 message PagodaRankListReq{ - int32 floorId = 1; // 层数 0 标识总榜 + int32 cid = 1; // bool friend = 2; // true 好友榜 } diff --git a/src/pb/proto/pandatakekan/pandatakekan_db.proto b/src/pb/proto/pandatakekan/pandatakekan_db.proto new file mode 100644 index 0000000..5f8c072 --- /dev/null +++ b/src/pb/proto/pandatakekan/pandatakekan_db.proto @@ -0,0 +1,36 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +enum PandataPillarState { + NoUse = 0; //未使用 + Useing = 1; //使用中 + Receive = 2; //待领取 +} +///熊猫柱子 +message DBPandataPillar { + int32 index = 1; //柱子下标 + bool isunlock = 2; //是否解锁 + PandataPillarState state = 3; //状态 + string hero = 4; //当前练功英雄 + int64 start = 5; //开始时间 + int64 end = 6; //结束时间 + int64 lastbill = 7; //上次结账时间 + int32 reward = 8; //奖励 +} + +//熊猫武馆教习 +message DBPandataTeacher { + string id = 1; //id + string cid = 2; //配置id + string student =3; //学员id 有表示正在教学,没有表示没有教学 +} + +//练功房 +message DBPandataKekan { + string id = 1; //id + string uid = 2; //用户id + DBPandataPillar pillar1 = 4; //柱子1 + DBPandataPillar pillar2 = 5; //柱子2 + DBPandataPillar pillar3 = 6; //柱子3 + DBPandataPillar pillarf = 7; //好友柱子 +} \ No newline at end of file diff --git a/src/pb/proto/pandatakekan/pandatakekan_msg.proto b/src/pb/proto/pandatakekan/pandatakekan_msg.proto new file mode 100644 index 0000000..c4177fd --- /dev/null +++ b/src/pb/proto/pandatakekan/pandatakekan_msg.proto @@ -0,0 +1,28 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "pandatakekan/pandatakekan_db.proto"; + +///信息请求 +message PandataKekanInfoReq {} +///信息请求 回应 +message PandataKekanInfoResp { DBPandataKekan info = 1; } + +///解锁请求 +message PandataKekanUnLockReq {} +message PandataKekanUnLockResp {} + +///练功请求 +message PandataKekanPracticeReq {} +message PandataKekanPracticeResp {} + +///蹭馆请求 +message PandataKekanLootReq {} +message PandataKekanLootResp {} + +///驱逐 +message PandataKekanExpulsionReq {} +message PandataKekanExpulsionResp {} + +///领取收益 +message PandataKekanReceiveReq {} +message PandataKekanReceiveResp {} \ No newline at end of file diff --git a/src/pb/proto/parkour/parkour_db.proto b/src/pb/proto/parkour/parkour_db.proto new file mode 100644 index 0000000..14e988f --- /dev/null +++ b/src/pb/proto/parkour/parkour_db.proto @@ -0,0 +1,58 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +enum RaceType { + ordinary = 0; + prop = 1; +} + +//队伍状态 +enum RaceTeamState { + teaming = 0; //组队中 + matching = 1; //匹配中 + raceing = 2; //比赛中 +} + +//队员信息 +message DBRaceMember { + string uid = 1; //用户id + string name = 2; //用户名称 + string avatar = 3; //用户头像 + string mount = 4; //上阵坐骑 + int32 hp = 5; //初始血量 + int32 innermost = 6; //里程数 + bool ready = 7; //是否准备 + bool isai = 8; //是否是ai + bool isoff = 9; //是否离线 +} + +message DBRaceInvite { + string uid = 1; //用户id + string name = 2; //用户名称 + string avatar = 3; //用户头像 + int64 expired = 4; //过期时间 +} + +//个人竞赛信息 +message DBParkour { + string id = 1; //@go_tags(`bson:"_id"`) 队伍id + string uid = 2; //用户id + map mounts = 3; //坐骑列表 + string dfmount = 4; //默认坐骑 + RaceTeamState state = 5; //队伍状态 + int32 integral = 6; //积分 + string captainid = 7; //队长id 当前所在队伍 + repeated DBRaceInvite invite = 8; //邀请列表 + repeated DBRaceMember member = 9; //成员列表 +} + +//比赛数据 +message DBRace { + string id = 1; //@go_tags(`bson:"_id"`) 比赛唯一id + string servicePath = 2; //比赛所在服务 + RaceType rtype = 3; //比赛类型 + int32 trackid = 4; //赛道id + int32 innermost =5; //里程数 + repeated DBRaceMember redmember = 6; //红方队伍 + repeated DBRaceMember bulemember = 7; //蓝方队伍 +} diff --git a/src/pb/proto/parkour/parkour_msg.proto b/src/pb/proto/parkour/parkour_msg.proto new file mode 100644 index 0000000..ea69900 --- /dev/null +++ b/src/pb/proto/parkour/parkour_msg.proto @@ -0,0 +1,157 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "parkour/parkour_db.proto"; + +//请求比赛信息 +message ParkourInfoReq { + +} + +//请求比赛信息请求 +message ParkourInfoResp { + DBParkour info = 1; + repeated DBParkour recommend = 2; +} + +//推送捕羊大赛用户信息改变 +message ParkourInfoChangePush { + DBParkour info = 1; +} + +//组队邀请请求 +message ParkourInviteReq { + string uid = 1; //邀请队友 +} +//组队邀请回应 +message ParkourInviteResp { + bool issucc = 1; + DBParkour team = 2; +} +//组队邀请通知推送 +message ParkourInviteNoticePush { + DBParkour team = 1; + int32 state = 2; //1 发起请求 2拒绝请求 3接收请求 +} +//推送队伍对变化通知 +message ParkourTeamChanagePush { + DBParkour team = 1; +} + +//邀请处理请求 +message ParkourInviteHandleReq{ + string captainid = 1; //队长id + int32 state = 2; //2拒绝请求 3接收请求 +} + +message ParkourInviteHandleResp{ + bool isSucc = 1; +} + +//退出 请求 +message ParkourQuitTeamReq { + string captainid = 1; //队长id +} +//退出 回应 +message ParkourQuitTeamResp { + +} +//队伍成员加入推送 +message ParkourTeamJoinNoticePush { + DBRaceMember member = 1; +} +//队伍成员退出推送 +message ParkourTeamQuitNoticePush { + DBRaceMember member = 1; +} +//队伍解散通知推送 +message ParkourTeamDisbandNoticePush { + +} + +//匹配请求 +message ParkourRaceMatchReq { + +} + +//匹配请求 +message ParkourRaceMatchResp { + +} + +//匹配成功 +message ParkourRaceMatchSuccPush { + DBRace race = 1; +} + +//准备完毕 +message ParkourReadyReq { + string id = 1; +} +//准备完毕 +message ParkourReadyResp { + +} + +//竞速开始推送 +message ParkourRaceStartPush { + int32 countdown = 1; //倒计时 +} + +//射门请求 +message ParkourShotReq { + string id = 1; +} + +//射门请求 +message ParkourShotResp { + +} + +//躲避障碍请求 +message ParkourAvoidReq { + string id = 1; + int32 distance = 2; +} + +//躲避障碍请求 回应 +message ParkourAvoidResp { + +} + +//全员冲刺 +message ParkourAllSprintsPush { + +} + +//比赛数值变化推送 +message ParkourRaceChanagePush { + DBRace race = 1; +} + +//比赛 +message ParkourRaceOverPush { + DBRace race = 1; +} + + + + +///匹配请求 RPC消息定义 服务器自用 客户端不用理会 +message RPCParkourJoinMatchReq { + string captainid = 1; //队长id + repeated DBRaceMember member = 2; //成员数 +} + +///RPC消息定义 服务器自用 客户端不用理会 +message RPCParkourJoinMatchResp { +} + +///匹配成功通知请求 +message RPCParkourMatchSuccReq { + repeated DBRaceMember red = 2; //临时红队 + repeated DBRaceMember bule = 3; //临时蓝队 +} +///匹配成功通知请求 +message RPCParkourMatchSuccResp { + +} \ No newline at end of file diff --git a/src/pb/proto/practice/practice_db.proto b/src/pb/proto/practice/practice_db.proto new file mode 100644 index 0000000..1a9fb2a --- /dev/null +++ b/src/pb/proto/practice/practice_db.proto @@ -0,0 +1,71 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "battle/battle_db.proto"; + +///熊猫柱子 +message DBPracticePillar { + int32 index = 1; //柱子下标 + int32 lv = 2; //柱子等级 + int32 isunlock = 3; //是否解锁 0不能解锁 1可解锁 2已解锁 + string uid = 4; //英雄uid + string hero = 5; //当前练功英雄 + string teacher = 6; //教习 + string prop = 7; //道具 + int64 start = 8; //开始时间 + int64 end = 9; //结束时间 + int64 expend = 10; //经验上限时间 +} + +//熊猫武馆教习 +message DBPracticeTeacher { + string id = 1; //id + string cid = 2; //配置id + string student =3; //学员id 有表示正在教学,没有表示没有教学 +} + +//雕像 +message DBPracticeStatuer { + string uid = 1; + int32 figure = 2; + string name = 3; + string unionname = 4; + int64 end = 5; +} + +//练功房 +message DBPracticeRoom { + string id = 1; //@go_tags(`bson:"_id"`) id + string uid = 2; //用户id + int32 gymaction = 3; //健身房动作 + int32 gymrefresh = 4; //健身房刷新次数 + int64 lastrefresh = 5; //最后刷新时间 + map full = 6; //满级登记 + map knapsack = 7; //资源 + DBPracticePillar pillar1 = 8; //柱子1 + DBPracticePillar pillar2 = 9; //柱子2 + DBPracticePillar pillar3 = 10; //柱子3 + DBPracticePillar pillarf = 11; //好友柱子 + repeated DBPracticeStatuer statuers= 12; //武馆雕像 + int32 currnpc = 13; //当前npc + int32 npcstate = 14; //npc状态 0 未挑战 1 挑战失败 2挑战成功 3 CD中 + int64 refresh = 15; //刷新时间 + int32 battlenum = 16; //战斗次数 + int32 captain = 17; //战斗征信队长位 + repeated BattleRole formation = 18; //战斗阵型 +} + +message DBPracticeQiecuoInvite { + string uid = 1; + int64 timestamp = 2; +} + + +//切磋请求记录 +message DBPracticeQiecuoRecord{ + string id = 1; //@go_tags(`bson:"_id"`) id + string uid = 2; //发起人id + repeated DBPracticeQiecuoInvite targets = 3; + int32 status = 4; //0邀请中 1战斗中 + string battid = 5; + repeated string member = 6; //接受方id +} \ No newline at end of file diff --git a/src/pb/proto/practice/practice_msg.proto b/src/pb/proto/practice/practice_msg.proto new file mode 100644 index 0000000..0bca6ff --- /dev/null +++ b/src/pb/proto/practice/practice_msg.proto @@ -0,0 +1,220 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "errorcode.proto"; +import "practice/practice_db.proto"; +import "battle/battle_msg.proto"; +import "pvp/pvp_db.proto"; + + + +///信息请求 +message PracticeInfoReq {} +///信息请求 回应 +message PracticeInfoResp { DBPracticeRoom info = 1; } + +///推送自己的房价数据变化 +message PracticeRommChangePush{ + DBPracticeRoom info = 1; +} + +///请求好友武馆房间信息 +message PracticeFriendRommReq { + repeated string fuid = 1; +} +///请求好友武馆房间信息 回应 +message PracticeFriendRommResp { + map infos = 1; +} +///升级请求 +message PracticeUnLockReq { + int32 index = 1; //柱子id +} +message PracticeUnLockResp { + DBPracticeRoom info = 1; +} + + +///升级请求 +message PracticeUpgradeReq { + int32 index = 1; //柱子id +} +message PracticeUpgradeResp { + int32 index = 1; //柱子id + int32 lv = 2; +} + +///练功请求 +message PracticePracticeReq { + int32 index = 1; //柱子id + string hero = 2; //训练英雄id + string teacher = 3; //教习id + string prop = 4; //道具id +} +message PracticePracticeResp { + DBPracticePillar pillar = 1; +} + +///蹭馆请求 +message PracticeLootReq { + string friend = 1; //好友id + string hero = 2; //训练英雄id + string teacher = 3; //教习id + string prop = 4; //道具id +} +message PracticeLootResp { + string friend = 1; //好友id + DBPracticePillar pillar = 2; +} + +///驱逐 +message PracticeExpulsionReq { + +} +message PracticeExpulsionResp { + DBPracticePillar pillar = 1; + map knapsack = 2; //资源 +} + +///自己的英雄被驱逐推送 +message PracticeBeExpulsionPush{ + string fuid = 1; + DBPracticePillar pillar = 2; + map knapsack = 3; //资源 +} + + +///领取收益 +message PracticeReceiveReq { + int32 index = 1; //柱子id + string friend = 2; //好友id +} +message PracticeReceiveResp { + DBPracticePillar pillar = 1; + map knapsack = 2; //资源 +} + +///登记满级英雄 +message PracticeEnrolledReq { + int32 group = 1; + repeated string hero = 2; +} +///登记满级英雄 回应 +message PracticeEnrolledResp{ + int32 group = 1; + repeated string hero = 2; +} + +///练功道具和教习推送 +message PracticeJXItemPush{ + repeated string id = 1; +} + + +///健身获得buff请求 +message PracticeGymInfoReq { + +} +///健身获得buff请求 +message PracticeGymInfoResp { + int32 lastaction = 1; + int32 refreshnum = 2; +} + +message PracticeGymRefreshReq { + +} + +message PracticeGymRefreshResp { + int32 lastaction = 1; + int32 refreshnum = 2; +} + +///健身获得buff请求 +message PracticeGetGymBuffReq { + int32 posture = 1; +} + +///健身获得buff请求 回应 +message PracticeGetGymBuffResp { + int32 buffid = 1; +} + + +///健身 确认buff 请求 +message PracticeGymConfirmReq { + int32 buffid = 1; +} + +///健身 确认buff 请求回应 +message PracticeGymConfirmResp { + int32 buffid = 1; +} + + +///武馆切磋请求 +message PracticeQiecuoReq { + string fid = 1; +} +message PracticeQiecuoResp { + string fid = 1; + bool isbattle = 2; + DBPvpBattle battle = 3; +} + + +//接受切磋 +message PracticeAcceptReq{ + string uid = 1; //切磋发起者 +} + +message PracticeAcceptResp{ + bool isSucc = 1; +} + + + +//拒绝切磋 +message PracticeRefuseReq{ + string uid = 1; //切磋发起者 +} + +message PracticeRefuseResp{ + bool isSucc = 1; + +} + + +//切磋通知 +message PracticeQiecuonotifyPush{ + string uid = 1; //发起者(切磋) + string name = 2; //发起者用户名 + int32 notifyType = 3; //1发起通知 2接受通知 3拒绝通知 +} + +//NPC战斗请求 +message PracticeNPCBattkleReq { + BattleFormation formation = 1; //战斗类型 +} +//NPC战斗请求 回应 +message PracticeNPCBattkleResp { + ErrorCode code = 1; //是否成功 + BattleInfo info = 2; +} + +//NPC战斗结束请求 +message PracticeNPCBattkleFinishReq { + BattleReport report = 1; //战报 +} +//NPC战斗结束请求 回应 +message PracticeNPCBattkleFinishResp { + bool issucc = 1; //是否成功 +} + +//NPC对话 请求 +message PracticeNPCDialogReq{ + +} +//NPC对话 请求 +message PracticeNPCDialogResp{ + bool issucc = 1; //是否成功 +} \ No newline at end of file diff --git a/src/pb/proto/pvp/pvp_msg.proto b/src/pb/proto/pvp/pvp_msg.proto index 6f44737..f47607e 100644 --- a/src/pb/proto/pvp/pvp_msg.proto +++ b/src/pb/proto/pvp/pvp_msg.proto @@ -27,7 +27,6 @@ message PvpIntoResp { BattleStateInfo info=3; //战斗状态数据 } - //Pvp 战斗准备推送 message PvpReadyPush { string servicePath = 1; //战斗区服地址 @@ -37,12 +36,34 @@ message PvpReadyPush { int32 countdown = 5; //布阵倒计时 } +//加载完毕请求 +message PvpLoadCompleteReq { + string battleid = 1; //战斗id +} +//加载完毕请求 +message PvpLoadCompleteResp { + string battleid = 1; //战斗id + bool issucc = 2; +} +//加载完毕 通知 +message PvpLoadCompleteNoticePush { + string battleid = 1; //战斗id + int32 side = 2; +} + + //Pvp 战斗准备推送 message PvpCancelPush { string servicePath = 1; //战斗区服地址 string battleid = 2; //战斗id } +message PvpActiveCancelReq { + string battleid = 1; //战斗id +} +message PvpActiveCancelResp { + bool issucc = 1; +} //布阵 请求 message PvpFormationReq { @@ -78,4 +99,9 @@ message PvpInCmdResp { ErrorCode code = 1; //是否成功 string battleid = 2; BattleCmd cmd = 3; -} \ No newline at end of file +} + +//实时Pvp 战斗结束推送 +message PvpFinishPush { + string battleid = 1; +} diff --git a/src/pb/proto/reputation/reputation_db.proto b/src/pb/proto/reputation/reputation_db.proto new file mode 100644 index 0000000..d727589 --- /dev/null +++ b/src/pb/proto/reputation/reputation_db.proto @@ -0,0 +1,30 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +message DBReputation { + string uid = 1; //@go_tags(`bson:"uid"`) 玩家ID + map camps = 2; //@go_tags(`bson:"camps"`) key 阵营id + CampAttr attrGlobal = 3; //@go_tags(`bson:"attrGlobal"`) 全局阵营属性 +} + +// 阵营 +message Camp { + int32 reputationLv=1; //@go_tags(`bson:"reputationLv"`) 声望等级 + CampAttr campAttr = 2; //@go_tags(`bson:"campAttr"`) + repeated TalentNode nodes = 3; //@go_tags(`bson:"nodes"`) 天赋节点 +} + +// 阵营声望属性 +message CampAttr{ + int32 hp = 1; + int32 attack = 2; + int32 defense = 3; + int32 hpPer = 4; +} + +// 天赋节点 +message TalentNode{ + int32 nid = 1; //@go_tags(`bson:"nid"`) 节点ID + int32 lv = 2; //@go_tags(`bson:"lv"`) 天赋节点等级 + int32 status= 3; //@go_tags(`bson:"status"`) 状态 0未升级 1未满级 2满级 +} \ No newline at end of file diff --git a/src/pb/proto/reputation/reputation_msg.proto b/src/pb/proto/reputation/reputation_msg.proto new file mode 100644 index 0000000..afb7b86 --- /dev/null +++ b/src/pb/proto/reputation/reputation_msg.proto @@ -0,0 +1,8 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +message reputationUpgradeReq{ + int32 zyId = 1; //阵营ID 1-4 +} + +message reputationUpgradeResp{} \ No newline at end of file diff --git a/src/pb/proto/shop/shop_db.proto b/src/pb/proto/shop/shop_db.proto index 82ed0ac..23a296c 100644 --- a/src/pb/proto/shop/shop_db.proto +++ b/src/pb/proto/shop/shop_db.proto @@ -9,6 +9,8 @@ enum ShopType { PVPShop = 3; PVEShop = 4; AllianceShop = 5; + HeroShop =6; + SmithyShop =7; } message UserShopData { @@ -29,6 +31,8 @@ message DBShop { UserShopData pvpShop = 7; //@go_tags(`bson:"pvpShop"`) 金币商店数据 UserShopData pveShop = 8; //@go_tags(`bson:"pveShop"`) 金币商店数据 UserShopData allianceShop = 9; //@go_tags(`bson:"allianceShop"`) 金币商店数据 + UserShopData heroShop = 10; //@go_tags(`bson:"heroShop"`) 金币商店数据 + UserShopData smithyShop = 11; //@go_tags(`bson:"smithyShop"`) 金币商店数据 } // message DBShopItem { diff --git a/src/pb/proto/smithy/smithy_db.proto b/src/pb/proto/smithy/smithy_db.proto index c3b8aae..c38f3d6 100644 --- a/src/pb/proto/smithy/smithy_db.proto +++ b/src/pb/proto/smithy/smithy_db.proto @@ -1,69 +1,75 @@ syntax = "proto3"; option go_package = ".;pb"; -import "comm.proto"; + + +message Mastery{ + int32 lv =1; + int32 value = 2; +} // 炉子信息 message DBStove{ string id = 1; //@go_tags(`bson:"_id"`) ID string uid = 2; //@go_tags(`bson:"uid"`) 用户ID int32 lv = 3; // 炉子等级 - map data = 4; // key 套装类型 value 熟练度 + map data = 4; // key 图纸ID value 熟练度 map skill = 5; // 台子技能 map forge = 6; // key 套装类型 value 打造次数 int32 temperature = 7;// 炉子温度 - int64 recoveTime = 8; // 恢复满时间 - int32 business = 9; // + int64 recoveTime = 8; //@go_tags(`bson:"recoveTime"`) 恢复满时间 + map hit = 9; } -// 商人信息 -message DBBusiness{ - map shop = 1; +message CustomerInfo{ + int32 customerId = 1; //顾客ID + int32 suitId = 2; //套装ID 随机套装 + int32 equipCount = 3;//装备数量 } -message DBBusinessData{ - string id = 1; //@go_tags(`bson:"_id"`) ID - string uid = 2; //@go_tags(`bson:"uid"`) 用户ID - repeated DBBusiness data = 3; - int32 count = 4; // 刷新次数 - int64 refreshTime = 5;//@go_tags(`bson:"refreshTime"`) 刷新开始时间 +message DBCustomer{ + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) + repeated CustomerInfo customers = 3; // @go_tags(`bson:"customers"`) 顾客信息 + int32 total = 4; //@go_tags(`bson:"total"`) 顾客累计数 + int64 lastRefreshTime = 5; // @go_tags(`bson:"lastRefreshTime"`) 上次更新时间 } // 装备图鉴 -message DBTujian{ +message DBAtlas{ string id = 1; //@go_tags(`bson:"_id"`) ID string uid = 2; //@go_tags(`bson:"uid"`) 用户ID - map tujian = 3; // 图鉴信息 - int32 slider = 4; // 进度 + map atlas = 3; // 图鉴信息 + map collect = 4; // 收藏品图鉴信息 + int32 score = 5; // 总积分 + int32 award = 6; // 奖励进度 + +} +message CollectData{ + string id = 1; // 收集图鉴id + int32 score = 2; + int64 time = 3; // 获得时间 + bool activate = 4; // 是否激活 +} +message ForgeList{ + ForgeData data1 = 1; + ForgeData data2 = 2; + bool activate = 3; // 是否激活 } message ForgeData{ int32 forgeCount = 1; // 打造次数 int32 lv = 2; int32 quality = 3; + int32 score = 4; + int64 time = 5; // 获得时间 } -//////// -message Clang{ - int32 deskType = 1; // 台子类型 - int64 eTime = 2; - int64 sTime = 3; // 订单开始时间 -} +//玩家图鉴任务 +message DBTujianTask { + string uid = 1; //@go_tags(`bson:"uid"`) + repeated TujianTask tasks = 2; // @go_tags(`bson:"tasks"`) 任务列表 + } -message OrderClang{ - int32 deskType = 1; // 台子类型 - int32 count = 2; // 料理数量 - int32 needTime = 3; // 需要的时间 +message TujianTask{ + int32 taskId = 1; //@go_tags(`bson:"taskId"`) 任务ID + int32 received = 2; //@go_tags(`bson:"received"`) 领取状态 0未领取 1待领取 2已领取 } -message DBSmithy { - string id = 1; //@go_tags(`bson:"_id"`) ID - string uid = 2; //@go_tags(`bson:"uid"`) 用户ID - Clang clang = 3;// 正在制作中的数据 - repeated OrderClang orders = 4; //@go_tags(`bson:"orders"`) 订单数据 - repeated UserAssets items = 5; //@go_tags(`bson:"items"`) 已经做好装备 - map skill = 6;//@go_tags(`bson:"skill"`) 锻造台等级 - int32 stoveLv = 7; //@go_tags(`bson:"stoveLv"`) 炉子等级 - int32 orderCostTime = 8; //@go_tags(`bson:"orderCostTime"`) 订单消耗的时常 - int64 ctime = 9; // 订单创建时间 - map deskFloor = 10;//@go_tags(`bson:"deskFloor"`)台子保底 - int32 stoveFloor = 11;//@go_tags(`bson:"stoveFloor"`) 炉子保底 - int32 totalTime = 12;//@go_tags(`bson:"totalTime"`) -} \ No newline at end of file diff --git a/src/pb/proto/smithy/smithy_msg.proto b/src/pb/proto/smithy/smithy_msg.proto index 7b54f66..5b412ca 100644 --- a/src/pb/proto/smithy/smithy_msg.proto +++ b/src/pb/proto/smithy/smithy_msg.proto @@ -1,9 +1,8 @@ syntax = "proto3"; option go_package = ".;pb"; import "smithy/smithy_db.proto"; -import "user/user_db.proto"; - - +import "equipment/equipment_db.proto"; +import "comm.proto"; // 铁匠铺 获取炉子信息 message SmithyGetStoveInfoReq { @@ -16,25 +15,16 @@ message SmithyGetStoveInfoResp { // 打造装备 message SmithyForgeEquipReq{ - int32 equipType = 1; // 装备类型 + int32 reelId = 1; // 卷轴ID int32 lava = 2;// 添加熔岩 int32 quality = 3;// 精益制造 + int32 suiteId = 4;// 套装ID (非定制传0 ) + int32 position = 5; // 装备位置(没有指定位置传 -1) + map hit = 6;// 敲击数据 key 敲打 cid value 敲打次数 } message SmithyForgeEquipResp{ - int32 equip = 1; // 装备ID - DBStove data = 2; -} -// 定制装备 -message SmithyOrderEquipReq{ - int32 suiteId = 1;// 套装ID - int32 position = 2; // 装备位置 - int32 lava = 3;// 添加熔岩 - int32 quality = 4;// 精益制造 -} - -message SmithyOrderEquipResp{ - int32 equip = 1; // 装备ID + repeated DB_Equipment equip = 1; // 装备ID DBStove data = 2; } @@ -43,6 +33,7 @@ message SmithyOrderEquipResp{ message SmithyStoveUpReq{ } + message SmithyStoveUpResp{ DBStove data = 1; } @@ -65,72 +56,72 @@ message SmithyToolsUpReq{ message SmithyToolsUpResp{ DBStove data = 1; } -// 刷新商人 -message SmithyRefreshShopReq{ +// 顾客 +message SmithyCustomerReq{ } -message SmithyRefreshShopResp{ - DBBusiness data = 1; +message SmithyCustomerResp{ + repeated CustomerInfo customers = 1; //顾客及装备信息 } // 出售装备 -message SmithySellItemReq{ - int32 id = 1; // 装备ID - int32 count = 2; // 数量 +message SmithySellReq{ + repeated string equipIds = 1; // 装备ID + int32 customerId = 2; //顾客ID } -message SmithySellItemResp{ - DBBusiness data = 1; +message SmithySellResp{ + int32 customerId = 1; //顾客ID + repeated string equipIds =2; //出售的装备 + repeated CustomerInfo customers = 3; } -////////////////////////////////////////// -// 创建订单 -message SmithyCreateOrderReq { - repeated OrderClang order = 1;// 烹饪时间不用传 后端会重新计算 +// 拒绝交易 +message SmithyRefuseReq{ + int32 customerId = 1; //顾客ID +} +message SmithyRefuseResp{ + repeated CustomerInfo customers = 1; } -message SmithyCreateOrderResp { - DBSmithy data = 1; -} - -// 领取奖励 -message SmithyGetRewardReq{ -} - -message SmithyGetRewardResp{ - DBSmithy data = 1; -} - -// 技能升级 -message SmithyDeskSkillLvReq{ - int32 deskType = 1; // 台子类型 -} - -message SmithyDeskSkillLvResp{ - DBSmithy data = 1; -} - -// 炉子技能升级 -message SmithyStoveSkillLvReq{ +// 查看图鉴信息 +message SmithyAtlasListReq{ } - -message SmithyStoveSkillLvResp{ - DBSmithy data = 1; +message SmithyAtlasListResp{ + DBAtlas data = 1; } -message SmithyGetRandUserReq{ - int32 people = 1;//人数 +// 图鉴激活更新 +message SmithyAtlasActivateReq{ + string id = 1; // 图鉴ID } -message SmithyGetRandUserResp{ - repeated DBUser user = 1; +message SmithyAtlasActivateResp{ + DBAtlas data = 1; } -message SmithyGetListReq { +// 图鉴信息奖励任务领取 +message SmithyAtlasAwardReq{ } -// 返回进度信息 -message SmithyGetListResp { - DBSmithy data = 1; +message SmithyAtlasAwardResp{ + DBAtlas data = 1; // 奖励信息 + repeated UserAssets res = 2; // 获得的奖励 +} + +//图鉴任务奖励领取 +message SmithyTaskAwardReq{ + int32 taskId = 1; +} +message SmithyTaskAwardResp{ + int32 taskId = 1; +} + +//图鉴任务查询 +message SmithyTasklistReq{ + +} +message SmithyTasklistResp{ + repeated TujianTask tasks= 1; //任务列表 } diff --git a/src/pb/proto/sys/sys_db.proto b/src/pb/proto/sys/sys_db.proto new file mode 100644 index 0000000..110be7d --- /dev/null +++ b/src/pb/proto/sys/sys_db.proto @@ -0,0 +1,9 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +message DBOpenCond { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + map cond = 3; // 功能开启条件 key opencond配置id value:0 自动激活 1 已经激活 +} + diff --git a/src/pb/proto/sys/sys_msg.proto b/src/pb/proto/sys/sys_msg.proto index 1f00dfa..31f6f8d 100644 --- a/src/pb/proto/sys/sys_msg.proto +++ b/src/pb/proto/sys/sys_msg.proto @@ -7,4 +7,20 @@ message SysFuncListReq { message SysFuncListResp { repeated string funcIds = 1; //功能ID -} \ No newline at end of file +} + +message SysFuncGetListReq { + repeated string keys = 1; //功能ID +} + +message SysFuncGetListResp { + map cond = 1; // 功能开启条件 key opencond配置id value:0 自动激活 1 已经激活 +} +// 手动激活 +message SysFuncActivateReq { + string cid = 1; // opencond表的key +} + +message SysFuncActivateResp { + string cid = 1; +} diff --git a/src/pb/proto/task/task_db.proto b/src/pb/proto/task/task_db.proto index d0616af..a874169 100644 --- a/src/pb/proto/task/task_db.proto +++ b/src/pb/proto/task/task_db.proto @@ -55,4 +55,5 @@ message DBRtaskRecord { string id = 1; //@go_tags(`bson:"_id"`) ID string uid = 2; //@go_tags(`bson:"uid"`) 用户ID map vals = 3; //@go_tags(`bson:"vals"`) 任务记录值 + int64 ctime = 4; //@go_tags(`bson:"ctime"`) 创建时间 } \ No newline at end of file diff --git a/src/pb/proto/troll/troll_db.proto b/src/pb/proto/troll/troll_db.proto index 7a8f9e0..2446d0b 100644 --- a/src/pb/proto/troll/troll_db.proto +++ b/src/pb/proto/troll/troll_db.proto @@ -33,4 +33,22 @@ message DBTrollRecord{ int32 gold = 3; // 收益 int32 pos = 4; // 商人位置 int64 time = 5; // 交易时间 -} \ No newline at end of file +} + +message DBGoods{ + string id = 1; //@go_tags(`bson:"_id"`) ID + int32 period = 2; // 变动周期 + int32 curPeriod = 3; // 当前变动周期 + int32 weight = 4; // 周期权重 + int32 price = 5; // 当前价格 + int32 time = 6; // 刷新时间 +} + +message DBTroll { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + int32 useCount = 3; // 当前背包使用的数量 + map items = 4; // 背包数据 + map goods = 5; // 货物 key 货物ID + int32 lv = 6;// 商队等级 +} diff --git a/src/pb/proto/user/user_db.proto b/src/pb/proto/user/user_db.proto index f4a2401..2ebc992 100644 --- a/src/pb/proto/user/user_db.proto +++ b/src/pb/proto/user/user_db.proto @@ -39,6 +39,10 @@ message DBUser { int64 lastRecoverPsSec = 26; //@go_tags(`bson:"lastRecoverPsSec"`) 上次体会恢复时间 int32 moongold = 27; //@go_tags(`bson:"moongold"`) 纯净月髓 + int32 talent1 = 28; //@go_tags(`bson:"talent1"`) 阵营1天赋点 + int32 talent2 = 29; //@go_tags(`bson:"talent2"`) 阵营2天赋点 + int32 talent3 = 30; //@go_tags(`bson:"talent3"`) 阵营3天赋点 + int32 talent4 = 31; //@go_tags(`bson:"talent4"`) 阵营4天赋点 } message DBUserSetting { @@ -62,9 +66,10 @@ message DBUserSetting { message DBSign { string id = 1; //@go_tags(`bson:"_id"`) ID string uid = 2; //@go_tags(`bson:"uid"`) 用户ID - int64 signTime = 3; //@go_tags(`bson:"signTime"`) 玩家登录时间 + int64 signTime = 3; //@go_tags(`bson:"signTime"`) 玩家签到时间 int32 signCount = 4; //@go_tags(`bson:"signCount"`) 玩家累计签到次数 - int32 group = 5; // 签到组id - int32 cid = 6; //记录循环签到值,客户端忽略这个字段 - int64 rTime = 7; //@go_tags(`bson:"rTime"`) 刷新时间 + int32 group = 5; //记录循环签到值 + int32 day = 6; // 今天是这个月第几天 + repeated int32 puzzle= 7; //@go_tags(`bson:"puzzle"`) 拼图游戏完成情况 // 0 未签到 1 已签到 2 玩了游戏 + int32 tips = 8; // 提示次数 } \ No newline at end of file diff --git a/src/pb/proto/user/user_msg.proto b/src/pb/proto/user/user_msg.proto index 8bcc8cb..ff02e9c 100644 --- a/src/pb/proto/user/user_msg.proto +++ b/src/pb/proto/user/user_msg.proto @@ -191,9 +191,27 @@ message UserGetServerDataReq {} message UserGetServerDataResp { DBServerData data = 1; } -message UserSignReq {} +message UserSignReq { +} // 推送签到信息 message UserSignResp { DBSign data = 1; - bool reward = 2; // 是否领奖 +} + +//拼图领奖 +message UserPuzzleAwardReq { + int32 index = 1; +} +//拼图领奖 回应 +message UserPuzzleAwardResp { + int32 index = 2; +} + +// 修改提示次数 +message UserChangeTipsReq { + int32 tips = 1; +} + +message UserChangeTipsResp { + DBSign data = 1; } \ No newline at end of file diff --git a/src/pb/proto/userexpand.proto b/src/pb/proto/userexpand.proto index 49ecaa4..663a741 100644 --- a/src/pb/proto/userexpand.proto +++ b/src/pb/proto/userexpand.proto @@ -34,4 +34,7 @@ message DBUserExpand { int32 sociatyTicketBuyNum = 32;//@go_tags(`bson:"sociatyTicketBuyNum"`) 公会boss挑战券购买次数 int32 sociatyTicket = 33;//@go_tags(`bson:"sociatyTicket"`) 公会boss挑战券数量 map mline = 34;//@go_tags(`bson:"mline"`) 主线关卡最大进度 key难度val是关卡ID + repeated int32 suiteId = 35;//@go_tags(`bson:"suiteId"`) 套装Id + int32 globalbuff = 36; //@go_tags(`bson:"globalbuff"`) 全局buff + map race = 37; // key 阵营ID 1~4 value 总好感度 } \ No newline at end of file diff --git a/src/pb/proto/worldtask/worldtask_db.proto b/src/pb/proto/worldtask/worldtask_db.proto index b5fcd24..a167b20 100644 --- a/src/pb/proto/worldtask/worldtask_db.proto +++ b/src/pb/proto/worldtask/worldtask_db.proto @@ -3,12 +3,17 @@ option go_package = ".;pb"; message DBWorldtask { string uid = 1; //@go_tags(`bson:"uid"`) 玩家ID - map lastTaskIds = - 2; //@go_tags(`bson:"lastTaskId"`) 上一次完成的任务 key:groupId val:任务ID - repeated Worldtask taskList = 3; //@go_tags(`bson:"taskList"`) 任务列表 + repeated int32 taskList = 3; //@go_tags(`bson:"taskList"`) 任务列表 + map currentTask = 4; //@go_tags(`bson:"currentTask"`) 正在进行的任务 + map chapters = 5; //@go_tags(`bson:"chapters"`) key章节ID v状态 1已解锁2已领取 + int64 daliyRefreshTime = 6; //@go_tags(`bson:"daliyRefreshTime"`) + int64 weekRefreshTime = 7; //@go_tags(`bson:"weekRefreshTime"`) } message Worldtask { int32 taskId = 1; //@go_tags(`bson:"taskIds"`) 任务ID int32 taskType= 3; //@go_tags(`bson:"taskType"`) 任务类型 1 日/周常 2随机任务 3支线剧情 + int32 npcStatus = 5; //@go_tags(`bson:"npcStatus"`) NPC任务完成状态0未完成 1完成 + repeated int32 condiIds = 6; //@go_tags(`bson:"condiIds"`) 任务完成条件 + int32 deliverNpc = 7; //@go_tags(`bson:"deliverNpc"`) 交付NPC完成状态0未完成 1完成 } \ No newline at end of file diff --git a/src/pb/proto/worldtask/worldtask_msg.proto b/src/pb/proto/worldtask/worldtask_msg.proto index 7b62adf..9941800 100644 --- a/src/pb/proto/worldtask/worldtask_msg.proto +++ b/src/pb/proto/worldtask/worldtask_msg.proto @@ -2,27 +2,57 @@ syntax = "proto3"; option go_package = ".;pb"; import "battle/battle_msg.proto"; import "worldtask/worldtask_db.proto"; +import "errorcode.proto"; // 我的世界任务 message WorldtaskMineReq {} message WorldtaskMineResp { DBWorldtask task = 1; } +//接受任务 +message WorldtaskAcceptReq{ + int32 groupId = 1; + int32 taskId = 2; +} +message WorldtaskAcceptResp{ + ErrorCode Code = 1; +} + +//任务完成条件推送 +message WorldtaskCompletecondisPush{ + int32 groupId = 1; + int32 taskId = 2; + repeated int32 condiIds = 3; +} + +//校验任务完成条件 +message WorldtaskCompleteCondiReq{ + int32 groupId = 1; + int32 taskId = 2; + int32 condiId = 3; +} + +message WorldtaskCompleteCondiResp{ + ErrorCode code = 1; + int32 taskId = 2; + int32 condiId = 3; +} + // 完成任务 message WorldtaskFinishReq { int32 groupId = 1; //分组ID int32 taskId = 2; //任务ID } message WorldtaskFinishResp { - int32 groupId = 1; + ErrorCode code = 1; int32 taskId = 2; - repeated string newheros = 3; //获得的新英雄 - int32 olv = 4; //以前的等级 + int32 condiId = 3; } //任务完成条件达成的推送 message WorldtaskNexttaskPush { - int32 nextTaskId = 1; //下一个任务ID + map nextTask = 1; + repeated int32 finishedTaskIds = 2;// 当前完成的任务 } // 开始战斗 @@ -37,18 +67,27 @@ message WorldtaskBattleStartResp { // 战斗完成 message WorldtaskBattleFinishReq { - int32 taskId = 1; //任务ID - int32 battleConfId = 2; //战斗配表ID - BattleReport report = 3; //战报 + int32 groupId = 1; + int32 taskId = 2; //任务ID + int32 condiId = 3; //完成条件ID + int32 battleConfId = 4; //战斗配表ID + BattleReport report = 5; //战报 } message WorldtaskBattleFinishResp { int32 taskId = 1; //任务ID - repeated string newheros = 2; //获得的新英雄 - int32 olv = 3; //以前的等级 } // 当前完成的任务列表推送 message WorldtaskFinishIdsPush { repeated Worldtask taskList = 1; //完成的任务 key:groupId val:任务ID +} + +// 章节奖励领取 +message WorldtaskChapterrewardReq{ + int32 groupId = 1; +} + +message WorldtaskChapterrewardResp{ + ErrorCode code = 1; } \ No newline at end of file diff --git a/src/pb/temop/academy_db.proto b/src/pb/temop/academy_db.proto new file mode 100644 index 0000000..3557bdd --- /dev/null +++ b/src/pb/temop/academy_db.proto @@ -0,0 +1,9 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +//训练营数据 +message DBAcademy { + string uid = 1; + map level = 2; + map hero = 3; +} \ No newline at end of file diff --git a/src/pb/temop/academy_msg.proto b/src/pb/temop/academy_msg.proto new file mode 100644 index 0000000..fca4c28 --- /dev/null +++ b/src/pb/temop/academy_msg.proto @@ -0,0 +1,44 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "academy_db.proto"; +import "battle_msg.proto"; +import "errorcode.proto"; + +///基础信息获取 +message AcademyInfoReq {} +message AcademyInfoResp { DBAcademy info = 1; } + +//挑战 +message AcademyChallengeReq { int32 level = 1; } +message AcademyChallengeResp { + ErrorCode code = 1; //是否成功 + int32 level = 2; + BattleInfo info = 3; +} + +//领取 +message AcademyReceiveReq { + int32 level = 1; + int32 group = 2; + BattleReport report = 3; //战报 +} +message AcademyReceiveResp { bool issucc = 1; } + + +//教学请求 +message AcademyTeachingReq { + string heroId = 1; +} +message AcademyTeachingResp { + ErrorCode code = 1; //是否成功 + string heroId = 2; + BattleInfo info = 3; +} + + +//领取教学奖励 +message AcademyTeachingReceiveReq { + string heroId = 1; + BattleReport report = 2; //战报 +} +message AcademyTeachingReceiveResp { bool issucc = 1; } \ No newline at end of file diff --git a/src/pb/temop/arena_db.proto b/src/pb/temop/arena_db.proto new file mode 100644 index 0000000..472de9b --- /dev/null +++ b/src/pb/temop/arena_db.proto @@ -0,0 +1,96 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "hero_db.proto"; +//玩家战斗阵型 +message DBPlayerBattleFormt { + int32 leadpos = 1; //队长位置 + repeated DBHero formt = 2; +} + +//玩家基本信息 +message ArenaPlayer { + string uid = 1; + string name = 2; + string avatar = 3; //@go_tags(`bson:"avatar"`) 头像 + int32 lv = 4; //@go_tags(`bson:"lv"`) 等级 + int32 dan = 5; //段位 + int32 integral = 6; + int32 rank = 7; //排名 + DBPlayerBattleFormt defend = 8; //防守 + bool isai = 9; //是否是ai + int32 mformatid = 10; // AIId + int32 changeintegral = 11; //变化积分 +} + +enum BattleRecordState { + AttackWin = 0; + AttackLost = 1; + DefendkWin = 2; + DefendLost = 3; + WaitingRevenge = 4; + RevengeFailed = 5; + RevengeSucceeded = 6; + RevengeEnd = 7; +} + +message DBHeroBase { + string oid = 1; //英雄的唯一id + string cid = 2; //英雄配置id + int32 star = 3; //英雄星级 + int32 lv = 4; //英雄等级 +} +//战斗记录 +message DBArenaBattleRecord { + string bid = 1; //战斗id + int64 time = 2; //战斗时间 + bool iswin = 3; //是否胜利 + bool isdefend = 4; //是否防守 + string rivalid = 5; //对手id + string rivalname = 6; //对手名称 + int32 leadpos = 7; //队长位置 + repeated DBHeroBase formt = 8; //阵营 + int32 addintegral = 9; //积分变化 + BattleRecordState State = 10; //记录状态 +} + +//竞技场用户数据 +message DBArenaUser { + string uid = 1; //用户id + string name = 2; //玩家名称 + string avatar = 3; //@go_tags(`bson:"avatar"`) 头像 + int32 lv = 4; //@go_tags(`bson:"lv"`) 等级 + int32 integral = 5; //积分 + // int32 ticket = 6; //挑战券 + int32 dan = 7; //段位 + DBPlayerBattleFormt attack = 8; //进攻阵型 + DBPlayerBattleFormt defend = 9; //防守阵型 + int32 streak = 10; //连胜 + int32 attackrate = 11; //进攻胜率 + int32 defendrate = 12; //防守胜率 + int32 rank = 13; //排名 + int32 buynum = 14; //购买次数 + repeated DBArenaBattleRecord record = 15; //战斗记录 + int64 lastrtickettime = 16; //最后领劵时间 + int32 attackwinuum = 17; //进攻胜利次数 + int32 attacktotaluum = 18; //进攻总次数 + int32 defendwinuum = 19; //防守胜利 + int32 defendtotaluum = 20; //防守总 + repeated double loc = 21; //地图索引 匹配系统使用 + bool isdef = 22; //是否设置防守 + map npc = 23; // npc Cd + int32 prededuction = 24; //预扣字段 +} + +// npc数据 +message DBNpc { + int32 id = 1; + int64 cd = 2; + int32 index = 3; +} + + +//修改用户积分 +message RPCModifyIntegralReq { + string uid = 1; + int32 integral = 2; +} \ No newline at end of file diff --git a/src/pb/temop/arena_msg.proto b/src/pb/temop/arena_msg.proto new file mode 100644 index 0000000..99d3176 --- /dev/null +++ b/src/pb/temop/arena_msg.proto @@ -0,0 +1,100 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "arena_db.proto"; +import "battle_msg.proto"; +import "errorcode.proto"; + +//竞技场信息 请求 +message ArenaInfoReq {} +//竞技场信息 回应 +message ArenaInfoResp { DBArenaUser info = 1; } +//竞技场信息 请求 别人的 +message ArenaOtherInfoReq { string otherId = 1; } +//竞技场信息 回应 +message ArenaOtherInfoResp { DBArenaUser info = 1; } + +//设置进攻阵型 +message ArenaSetAttFormtReq { + int32 leadpos = 1; //队长位置 + repeated string formt = 2; //进攻阵型 +} +//设置进攻阵型 +message ArenaSetAttFormtResp { bool issucc = 1; } +//设置防守阵型 +message ArenaSetDefFormtReq { + int32 leadpos = 1; //队长位置 + repeated string formt = 2; //防守阵型 +} +//设置防守阵型 +message ArenaSetDefFormtResp { bool issucc = 1; } + +//竞技场匹配 请求 +message ArenaMatcheReq {} +//竞技场匹配 回应 +message ArenaMatcheResp { repeated ArenaPlayer players = 1; } + +//竞技场挑战 请求 +message ArenaChallengeReq { + string playerid = 1; + bool isai = 2; //是否是ai + int32 mformatId = 3; // AIId + BattleFormation battle = 4; //战斗类型 +} +//竞技场挑战 回应 +message ArenaChallengeResp { + ErrorCode code = 1; //是否成功 + BattleInfo info = 2; +} +//领取战斗奖励 +message ArenaChallengeRewardReq { + bool iswin = 1; //是否胜利 + bool isai = 2; //对手是否是ai + int32 aiintegral = 3; // ai 积分 + string ainame = 4; // ai名称 + BattleReport report = 5; //战报 + string revengeid = 6; //复仇id +} +message ArenaChallengeRewardResp { bool issucc = 1; } + +//竞技场排行榜 请求 +message ArenaRankReq {} +//竞技场排行榜 回应 +message ArenaRankResp { repeated ArenaPlayer players = 1;DBArenaUser info = 2; } + +//购买票据 +message ArenaBuyReq { int32 buyNum = 1; } +message ArenaBuyResp { + bool issucc = 1; //是否成功 + int32 ticket = 2; //当前挑战次数 +} + +//删除战斗记录 +message ArenaDelRewardReq { + string bid = 1; //战斗id +} +message ArenaDelRewardResp { + bool issucc = 1; //是否成功 + string bid = 2; //战斗id +} + +//剧情战斗 请求 +message ArenaPlotReq { + int32 pid = 1; //剧情id + BattleFormation battle = 2; //战斗类型 +} + +message ArenaPlotResp { + ErrorCode code = 1; //是否成功 + int32 pid = 2; //剧情id + BattleInfo info = 3; +} +//剧情战斗奖励领取 请求 +message ArenaPlotRewardReq { + int32 pid = 1; //剧情id + BattleReport report = 2; //战报 +} + +message ArenaPlotRewardResp { + bool issucc = 1; + map npc = 2; // npc Cd +} diff --git a/src/pb/temop/atlas_db.proto b/src/pb/temop/atlas_db.proto new file mode 100644 index 0000000..e8b58d6 --- /dev/null +++ b/src/pb/temop/atlas_db.proto @@ -0,0 +1,16 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +message DBPandaAtlas{ + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + map collect = 3; // 收藏品图鉴信息 + int32 score = 4; // 总积分 + int32 award = 5; // 奖励进度 + +} +message CollectInfo{ + int32 score = 1; + int64 time = 2; // 获得时间 + bool activate = 3; // 是否激活 +} \ No newline at end of file diff --git a/src/pb/temop/atlas_msg.proto b/src/pb/temop/atlas_msg.proto new file mode 100644 index 0000000..8197e8d --- /dev/null +++ b/src/pb/temop/atlas_msg.proto @@ -0,0 +1,31 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "atlas_db.proto"; +import "comm.proto"; + +// 查看图鉴信息 +message AtlasGetListReq{ + +} + +message AtlasGetListResp{ + DBPandaAtlas data = 1; +} + +// 图鉴激活更新 +message AtlasActivateReq{ + string id = 1; // 图鉴ID +} + +message AtlasActivateResp{ + DBPandaAtlas data = 1; +} + +// 图鉴信息奖励任务领取 +message AtlasAwardReq{ + +} +message AtlasAwardResp{ + DBPandaAtlas data = 1; // 奖励信息 + repeated UserAssets res = 2; // 获得的奖励 +} diff --git a/src/pb/temop/auto_db.proto b/src/pb/temop/auto_db.proto new file mode 100644 index 0000000..dbf9526 --- /dev/null +++ b/src/pb/temop/auto_db.proto @@ -0,0 +1,18 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "battle_db.proto"; +import "battle_msg.proto"; +// 自动战斗 +message DBAutoBattle { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + bool autoWin = 3 ; //@go_tags(`bson:"autoWin"`) 失败自动停止 + bool maxExp = 4 ; //@go_tags(`bson:"maxExp"`)雄达到满级则停止连续战斗 + bool autoBuy = 5 ; //@go_tags(`bson:"autoBuy"`) 自动购买 + int32 autoSell = 6; //@go_tags(`bson:"autoSell"`) 自动出售星级装备 + PlayType ptype = 7; // 类型 + int32 bossId = 8; //@go_tags(`bson:"bossId"`) + int32 difficulty = 9; + BattleFormation battle = 10; // 阵容信息 +} + diff --git a/src/pb/temop/auto_msg.proto b/src/pb/temop/auto_msg.proto new file mode 100644 index 0000000..0ded739 --- /dev/null +++ b/src/pb/temop/auto_msg.proto @@ -0,0 +1,46 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "battle_db.proto"; +import "battle_msg.proto"; +import "comm.proto"; + +message AutoBattleChallengeReq { + int32 bossId = 1; // boos 类型 + int32 difficulty = 2; // 难度 + BattleFormation battle = 3; + bool autoWin = 4 ; // 失败自动停止 + bool maxExp = 5 ; //雄达到满级则停止连续战斗 + bool autoBuy = 6 ; // 自动购买 + int32 autoSell = 7; // 自动出售星级装备 + PlayType ptype = 8; // 类型 +} + +message AutoBattleChallengeResp { + BattleInfo info = 1; +} + +message AutoBattleOverReq { + PlayType ptype = 1; // 类型 + BattleReport report = 2; //战报 +} + +// 客户端通知服务器打赢了 +message AutoBattleOverResp { + repeated UserAtno asset = 1;// GameRe // 推送atn + BattleInfo info = 2; + bool over = 3; // 是否结束 +} +// 自动战斗结束 +// message AutoBattleOverEnvPush { +// bool success = 1; +// } + +// 主动结束战斗 +message AutoBattleStopReq { + PlayType ptype = 1; // 类型 +} + +// 客户端通知服务器打赢了 +message AutoBattleStopResp { + PlayType ptype = 1; // 类型 +} \ No newline at end of file diff --git a/src/pb/temop/battle_db.proto b/src/pb/temop/battle_db.proto new file mode 100644 index 0000000..6c9c093 --- /dev/null +++ b/src/pb/temop/battle_db.proto @@ -0,0 +1,90 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "comm.proto"; + +enum BattleType { + nil = 0; + pve = 1; //pve + pvp = 2; //异步pvp + pvb = 3; //boos战斗 + eve = 4; //eve对战 + rtpvp = 5; //实时pvp + lpev = 6; //连续战斗 +} + +//玩法类型 +enum PlayType { + null = 0; //无效类型 + mainline = 1; //主线玩法 + pagoda = 2; //爬塔 + rtask = 3; //随机任务战斗 + hunting = 4; //狩猎 + viking = 5; //维京远征 + moonfantasy = 6; //月之秘境 + arena = 7; //竞技场 + academy = 8; //联盟学院 + heroteaching =9; //英雄教学 + combat = 10; //新关卡 + enchant = 11; //附魔副本 + sociaty = 12; //工会战 + friendsmeet = 13; //好友切磋 + practicenpc = 14; //武馆NPC +} + +//战斗状态 +enum BBattleState { + in = 0; + end = 2; +} + +//战斗阵型信息 +enum DBBattleComp { + draw = 0; //平局 + red = 1; //红方 + bule = 2; //蓝方 +} + +message BattleRole { + int32 tid = 1; // 临时id + string oid = 2; // 玩家英雄数据库id + int32 pos = 3; // 站位坐标 + string heroID = 4; //@go_tags(`bson:"heroID"`) 英雄的配置表ID + int32 star = 5; // 英雄星级 + int32 lv = 6; // 英雄等级 + int32 captainSkill = 7; //@go_tags(`bson:"captainSkill"`) 队长技能 + int32 mainSuitSkill = 8; ///@go_tags(`bson:"mainSuitSkill"`) 主套装技能 + int32 subSuitSkill = 9; ///@go_tags(`bson:"subSuitSkill"`) 副套装技能 + repeated SkillData normalSkill = 10; //@go_tags(`bson:"normalSkill"`) 普通技能 + repeated SkillData equipSkill = 11; //@go_tags(`bson:"equipSkill"`) 普通技能 + int32 PandaBuff = 12; //熊猫buff技能id + map property = 13; // 属性相关 + bool ishelp = 14; //是否是助战英雄 + int32 isboos = 15; //是否是boos + int32 monsterid = 16; //怪物id + int32 currhp = 17; //当前血量 +} + +//战斗阵型信息 +message DBBattleFormt { + int32 leadpos = 1; //队长位置 + repeated BattleRole team = 2; //自己的战队 + repeated BattleRole systeam = 3; //系统辅助战队 + repeated BattleRole backupteam = 4; //后援战队 +} + +//战斗记录 +message DBBattleRecord { + string id = 1; //战斗记录id + string title = 2; //战斗标题 + BattleType btype = 3; //战斗类型 + PlayType ptype = 4; //玩法类型 + string plevel = 5; //玩法关卡 + BBattleState state = 6; //战斗状态 + string redCompId = 7; //红方阵营id + repeated DBBattleFormt redflist = 8; //红方阵型列表 + string blueCompId = 9; //蓝方阵营id + repeated DBBattleFormt buleflist = 10; //红方阵型列表 + repeated DBBattleComp roundresult = 11; //战斗场次结果 + DBBattleComp result = 12; //最终结果 + repeated int32 tasks = 13; //任务列表 +} \ No newline at end of file diff --git a/src/pb/temop/battle_msg.proto b/src/pb/temop/battle_msg.proto new file mode 100644 index 0000000..d10f41b --- /dev/null +++ b/src/pb/temop/battle_msg.proto @@ -0,0 +1,193 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "battle_db.proto"; +import "hero_db.proto"; +import "google/protobuf/any.proto"; + +message LineUp { + string cid = 1; // 配置表id + int32 star = 2; // 星级 + int32 lv = 3; // 等级 +} + +//战斗布阵请求 +message BattleFormation { + int32 leadpos = 1; //队长位置 + repeated string format = 2; //自己英雄阵容信息 0-5 + repeated string friendformat = 3; //助战好友 +} +// pve 战斗创建请求 (此请求 为服务端间使用 客户端可忽略) +message BattleEVEReq { + PlayType ptype = 1; //玩法类型 + string title = 2; //战斗标题 + BattleFormation format = 3; //布阵信息 + repeated int32 sysformat = 4; //系统辅助 + repeated int32 backupformat = 5; //后援辅助 + repeated int32 buleformat = 6; //蓝方 +} +// pve 战斗创建请求 (此请求 为服务端间使用 客户端可忽略) +message BattlePVEReq { + PlayType ptype = 1; //玩法类型 + string title = 2; //战斗标题 + BattleFormation format = 4; //布阵信息 + repeated int32 mformat = 5; //敌方增容信息 +} + +//战斗布阵请求 +message PVPFormation { + string uid = 1; //用户id + int32 leadpos = 2; //队长位置 + repeated DBHero format = 3; //自己英雄阵容信息 0-5 +} +// pvp 异步 战斗创建请求 (此请求 为服务端间使用 客户端可忽略) +message BattlePVPReq { + PlayType ptype = 1; //玩法类型 + string title = 2; //战斗标题 + PVPFormation redformat = 4; //布阵信息 + PVPFormation buleformat = 5; //布阵信息 +} + +// pvp 同步 战斗创建请求 (此请求 为服务端间使用 客户端可忽略) +message BattleRTPVPReq { + PlayType ptype = 1; //玩法类型 + string title = 2; //战斗标题 + string redCompId = 6; //红方阵营id + repeated BattleFormation redformat = 7; //红方阵型列表 + string blueCompId = 8; //蓝方阵营id + repeated BattleFormation bulefformat = 9; //红方阵型列表 +} + + +// 连续pve战斗 +message BattleLPVEReq { + PlayType ptype = 1; //玩法类型 + string title = 2; //战斗标题 + string scene = 3; //战斗场景 + BattleFormation format = 4; //布阵信息 + int32 monsterleadpos = 5; //队长位置 + repeated BattleRole monsters = 6; //怪物列表 +} + + +// pvb 战斗创建请求 (工会boos战专用) +message BattlePVBReq { + PlayType ptype = 1; //玩法类型 + string title = 2; //战斗标题 + repeated BattleFormation format = 4; //布阵信息 + repeated int32 mformat = 5; //敌方增容信息 +} + +//战斗开始推送 +message BattleInfo { + string id = 1; //战斗id + string title = 2; //战斗标题 + int32 rulesid = 3; //规则id + BattleType btype = 4; //战斗类型 + PlayType ptype = 5; //玩法类型 + string redCompId = 6; //红方阵营id + repeated DBBattleFormt redflist = 7; //红方阵型列表 + string blueCompId = 8; //蓝方阵营id + repeated DBBattleFormt buleflist = 9; //红方阵型列表 + repeated int32 tasks = 10; //任务列表 +} + +message BattleCmd { + string cmdtype = 1; + uint32 index = 2; + bytes value = 3; +} + +//战报数据 +message BattleReport { + BattleInfo info = 1; + int32 Costtime = 2; //战斗时长 单位ms + int32 winSide = 3; //胜利方 1 - red 2 = blue + repeated BattleCmd incmd = 4; //输入指令 + repeated BattleCmd outcmd = 5; //输出指令 + repeated int32 completetask = 6; //完成任务 + int32 death = 7; // 死亡人数 + int32 round = 8; // 回合数 + int32 harm = 9; //伤害积分 + repeated BattleRole alive = 10; //存活列表 +} + +//公用消息结构代码 +message BattleRpcMessage { + uint64 rid = 1; //服务回调id + string method = 2; //方法名 + google.protobuf.Any data = 3; //战斗消息对象 +} + +//战斗校验结果 +message BattleCheckResults { + bool ischeck = 1; //是否校验成功 +} + +//创建战斗服务 请求 +message BattleGetInfoReq { + string battleid = 1; +} + +//创建战斗服务 请求回应 +message BattleGetInfoResp { + string battleid = 1; + BattleStateInfo info = 2; +} + +//创建战斗服务 请求 +message BattleCreateServerReq { + BattleInfo info= 1; +} + +//创建战斗服务 请求回应 +message BattleCreateServerResp { + bool issucc= 1; +} + +//创建战斗服务 请求 +message BattleInCmdReq { + string battleid = 1; + int32 side = 2; + BattleCmd in = 3; +} + + +//创建战斗服务 请求 +message BattleInCmdResp { + string battleid = 1; + BattleCmd in = 2; + bool issucc = 3; +} + +//战斗服务 指令推送 +message BattleOutCmdPush { + string battleid = 1; + repeated BattleCmd cmd = 2; +} + +//战斗服务 结束推送 +message BattleFinishPush { + string battleid = 1; + int32 winSide = 2; +} + + +//战斗认输 请求 +message BattleConcedeReq { + string battleid = 1; + int32 side = 2; +} + + +// 战斗认输 回应 +message BattleConcedeResp { + bool issucc = 1; +} + +//战斗状态数据 +message BattleStateInfo +{ + BattleInfo info = 1; + repeated BattleCmd outCmds = 2; + repeated BattleCmd inputCmds = 3; +} \ No newline at end of file diff --git a/src/pb/temop/battle_struct.proto b/src/pb/temop/battle_struct.proto new file mode 100644 index 0000000..06ba639 --- /dev/null +++ b/src/pb/temop/battle_struct.proto @@ -0,0 +1,157 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "battle_db.proto"; +import "battle_msg.proto"; + +//修改行动值 +message ComModifyOperate{ + int32 to = 1; + float nv =2; //行动值 + bool reset = 3;//是否是清零 +} +//战斗开始 +message ComStartFight{ + int32 reserve =1; +} +//初始化战斗角色 +message ComInitFight{ + int32 curWave =1; //波次 + int32 redEntryRid =2; // side=1 + int32 buleEntryRid =3; // side = 2; + int32 playType = 4; //玩法类型 + repeated BattleRole roles = 5; //角色列表 +} +// 删除角色 +message ComDeleteRole{ + int32 to = 1; +} +//战斗结束指令 +message ComEndFight{ + string fightId = 1; + int32 winSide =2; + int32 totalRound =3; //经历回合 + int32 RedDeath = 4; //红方死亡统计 + int32 buleDeath = 5; //蓝方死亡统计 +} +//技能信息 +message ComSkillInfo{ + int32 skillId = 1; + int32 lv = 2; + int32 maxCd = 3; + int32 cd = 4; + bool showEffect = 5;//是否显示CD恢复特效 +} +//回合开始 +message ComStartAction{ + int32 from = 1; //当前出手角色 + int32 target = 2; //预选攻击目标 + int32 curRound = 3; + repeated ComSkillInfo skillInfo = 4; +} + +//角色技能CD +message ComSkillCDAction{ + int32 from = 1; + repeated ComSkillInfo skillInfo = 2; +} +//回合结束 +message ComStopAction{ + int32 from = 1; //当前结束回合角色 +} +//等待输入技能 +message ComWaitInputSkill{ + bool auto = 1; + int32 side = 2; + int32 skillId = 3; + int32 target = 4; + int32 curRound = 5; +} +//主技能命令 +message ComSkillAtk{ + int32 from = 1; + int32 skillid = 2; + int32 lv = 3; + int32 param = 4; + int32 target = 5; //释放目标 + repeated ComSkillAfterAtk comList = 6; + string aniName = 7; //预览使用 +} +//子技能 +message ComSkillAfterAtk{ + int32 skillid = 1; + int32 from = 2; + repeated int32 target= 4; //子技能目标(弹道类技能会用到) + repeated BattleCmd comList = 5; +} +//buff +message ComMondifyBuff{ + int32 to = 1; + int64 gid = 2; //唯一实体id + int32 buffId = 3; //配置id + int32 overlapNum = 4; //叠加层数 + float param = 5; //参数 - 护盾量 + int32 operate = 6; // 0 移除 1 添加 2 修改 +} +//复活 +message ComRebirth{ + int32 to = 1; +} +//血量变化 +message ComModifyHealth{ + int32 to = 1; + int32 from = 2; + bool baoji = 3; + bool hideDmg = 4; + int32 modifyType = 5; + float num = 6; + int32 nhp = 7; + int32 mhp = 8; +} +//教学任务更新 +message ComTeachTask{ + int32 id = 1; + int32 count = 2; +} +//剧情 +message ComStory{ + int32 id = 1; + int32 storyId = 2; +} +//剧情 +message ComGuide{ + int32 id = 1; + int32 guideId = 2; +} +//中途创建角色 +message ComCreateRoles{ + int32 side = 1; + int32 entryRid = 2; + int32 playType = 3; + repeated BattleRole roles = 4; +} +//播放特效 +message ComPlayEffect{ + string effectName = 1; + int32 side = 2; +} +//出手倒计时 +message ComEmitCountdown +{ + int32 reserve =1; +} + +//特殊效果飘字 +message ComEffectTips +{ + EffectTipsType type = 1; + int32 to = 2; +} +enum EffectTipsType { + Eff_Success = 0; + Not_Success = 1; //没有成功 + Immunity = 2; //免疫 + Resist = 3; //抵抗 + Not_Gain = 4; //无法获得增益 + Not_Control = 5; //免疫控制 + Not_Action = 6; //无法行动 +} \ No newline at end of file diff --git a/src/pb/temop/chat_db.proto b/src/pb/temop/chat_db.proto new file mode 100644 index 0000000..a499e70 --- /dev/null +++ b/src/pb/temop/chat_db.proto @@ -0,0 +1,42 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +enum ChatChannel { + World = 0; //世界频道 + Union = 1; //工会频道 + Private = 2; //私有频道 + CrossServer = 3; //跨服频道 + System = 4; //系统频道 +} + +//聊天消息类型 +enum ChatType { + Text = 0; //文泵聊天消息 + Moonfantasy = 1; //月子秘境消息 + Share = 2; //分享类型 + HeroShare = 3; //英雄分享 + EquipmentShare = 4; //装备分享 + ItemShare = 5; //道具分享 +} + +message DBChat { + string id = 1; //@go_tags(`bson:"_id"`) ID + ChatChannel channel = 2; //频道 + ChatType ctype = 3; //消息类型 + string suid = 4; //发送用户id + int32 slv = 5; //发送者等级 + string ruid = 6; //接收用户id channel == Private 有效 + int32 channelId = 7; //@go_tags(`bson:"channelId"`) ID跨服频道 频道Id + string unionId = 8; //@go_tags(`bson:"unionId"`)工会id + string stag = 9; //区服id + string avatar = 10; //用户头像 + string uname = 11; //用户名 + string content = 12; //内容 + int64 ctime = 13; //创建时间 + int64 appendInt = 14; //@go_tags(`bson:"appendInt"`) 聊天附加数据 + string appendStr = 15; //@go_tags(`bson:"appendStr"`) 聊天附加数据 + string appendBool = 16; //@go_tags(`bson:"appendBool"`) 聊天附加数据 + bytes appendBytes = 17; //@go_tags(`bson:"appendBytes"`) 聊天附加数据 + bool display = 18; //@go_tags(`bson:"display"`)是否显示到跑马灯 + repeated string appendStrs = 19; //@go_tags(`bson:"appendStrs"`) 聊天附加数据 +} \ No newline at end of file diff --git a/src/pb/temop/chat_msg.proto b/src/pb/temop/chat_msg.proto new file mode 100644 index 0000000..378df5a --- /dev/null +++ b/src/pb/temop/chat_msg.proto @@ -0,0 +1,78 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "chat_db.proto"; + +//聊天消息推送 +message ChatMessagePush { DBChat chat = 1; } + +//申请跨服频道号 +message ChatCrossChannelReq {} +//申请跨服频道号 回应 +message ChatCrossChannelResp { int32 channelId = 1; } + +//申请切换频道 +message ChatChanageChannelReq { int32 channelId = 1; } +//申请切换频道 回应 +message ChatChanageChannelResp { + int32 channelId = 1; + bool isSucc = 2; +} + +//请求聊天消息 +message ChatGetListReq { + ChatChannel channel = 1; //频道 + int32 channelId = 2; //跨服频道id + string unionId = 3; //工会id +} + +//请求聊天消息 回应 +message ChatGetListResp { repeated DBChat chats = 1; } + +// //跨服请求聊天消息 +// message ChatGetCrossListReq { +// ChatChannel channel = 1; //频道 +// int32 channelId = 2; //跨服频道id +// } + +// //跨服请求聊天消息 回应 +// message ChatGetCrossListResp { repeated DBChat chats = 1; } + +//消息发送请求 +message ChatSendReq { + string avatar = 1; //用户头像 + string uname = 2; //用户名 + int32 ulv = 3; //用户等级 + ChatChannel channel = 4; //频道 + string targetId = 5; //目标用户id + ChatType ctype = 6; //消息类型 + string content = 7; //内容 + int64 appendInt = 8; //@go_tags(`bson:"appendInt"`) 聊天附加数据 + string appendStr = 9; //@go_tags(`bson:"appendStr"`) 聊天附加数据 + string appendBool = 10; //@go_tags(`bson:"appendBool"`) 聊天附加数据 + bytes appendBytes = 11; //@go_tags(`bson:"appendInt"`) 聊天附加数据 +} + +//消息发送请求 回应 +message ChatSendResp { + bool issucc = 1; //是否成功 +} + +// //跨服消息发送请求 +// message ChatSendCrossReq { +// string avatar = 1; //用户头像 +// string uname = 2; //用户名 +// int32 ulv = 3; //用户等级 +// ChatChannel channel = 4; //频道 +// string targetId = 5; //目标用户id +// ChatType ctype = 6; //消息类型 +// string content = 7; //内容 +// int64 appendInt = 8; //@go_tags(`bson:"appendInt"`) 聊天附加数据 +// string appendStr = 9; //@go_tags(`bson:"appendStr"`) 聊天附加数据 +// string appendBool = 10; //@go_tags(`bson:"appendBool"`) 聊天附加数据 +// bytes appendBytes = 11; //@go_tags(`bson:"appendInt"`) 聊天附加数据 +// } + +// //跨服消息发送请求 回应 +// message ChatSendCrossResp { +// bool issucc = 1; //是否成功 +// } diff --git a/src/pb/temop/combat_db.proto b/src/pb/temop/combat_db.proto new file mode 100644 index 0000000..2e89a86 --- /dev/null +++ b/src/pb/temop/combat_db.proto @@ -0,0 +1,16 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +message DBCombatUser { + string uid = 1; //uid + map level = 2; //关卡信息 +} + +message DBCombatLevel { + int32 id = 1; + map data = 2; //管卡信息 + repeated int32 passmanster= 3; //通关怪物列表 + repeated int32 passdrop= 4; //通关宝箱列表 + bool pass = 5; //是否通关 + int32 progress = 6; //进度 +} \ No newline at end of file diff --git a/src/pb/temop/combat_msg.proto b/src/pb/temop/combat_msg.proto new file mode 100644 index 0000000..9b7a103 --- /dev/null +++ b/src/pb/temop/combat_msg.proto @@ -0,0 +1,69 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "errorcode.proto"; +import "comm.proto"; +import "combat_db.proto"; +import "battle_msg.proto"; + + +//关卡进入请求 +message CombatInReq { + int32 id = 1; //关卡id +} + +//关卡进入请求 +message CombatInResp { + DBCombatLevel level = 2; //管卡信息 +} + +message CombatUpdateLevelReq { + int32 level = 1; //管卡id + map data = 2; //坐标 +} + +message CombatUpdateLevelResp { + bool succ = 1; //是否成功 + int32 level = 2; //管卡id +} + +//战斗请求 +message CombatChallengeReq { + int32 level = 1; //管卡id + int32 manster = 2; //怪物id + BattleFormation battle = 3; //布阵信息 +} + +//战斗请求 回应 +message CombatChallengeResp { + ErrorCode code = 1; //是否成功 + int32 level = 2; //管卡id + int32 manster = 3; + BattleInfo info = 4; +} + +//战斗奖励领取 +message CombatChallengeReceiveReq { + int32 level = 1; //管卡id + int32 manster = 2; + BattleReport report = 3; //战报 + } +//战斗奖励领取 +message CombatChallengeReceiveResp { + bool issucc = 1; + int32 level = 2; //管卡id + bool pass = 3; //是否通关 +} + +//宝箱获取请求 +message CombatDropReq { + int32 level = 1; //管卡id + int32 drop = 2; //宝箱id +} + +//宝箱获取请求 +message CombatDropResp { + ErrorCode code = 1; //是否成功 + repeated UserAssets atns = 2; //获取物品 + int32 level = 3; //管卡id + bool pass = 4; //是否通关 +} \ No newline at end of file diff --git a/src/pb/temop/comm.proto b/src/pb/temop/comm.proto new file mode 100644 index 0000000..d697139 --- /dev/null +++ b/src/pb/temop/comm.proto @@ -0,0 +1,191 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "errorcode.proto"; +import "google/protobuf/any.proto"; + +message ErrorData { + string title = 1; + int32 dataint = 2; + string datastring = 3; +} + +//用户消息流结构1 +message UserMessage { + string MainType = 1; //用户消息处理 模块名 例如:user 对应项目中 user的模块 + string SubType = 2; //用户消息处理函数名 例如:login 对应项目中 user的模块中 + // api_login 的处理函数 + string servicePath = 3; // 消息路由地址 部分消息前端确定转发给谁 \worker\worker0 + google.protobuf.Any data = 4; + string sec = 5; //密文 +} + +//代理用户转发消息结构 +message AgentMessage { + string Ip = 1; + string UserSessionId = 2; + string UserId = 3; + string ServiceTag = 4; + string GatewayServiceId = 5; + string MainType = 6; + string SubType = 7; + google.protobuf.Any Message = 8; +} + +// RPC 服务固定回复结构 +message RPCMessageReply { + ErrorCode Code = 1; + string ErrorMessage = 2; + ErrorData ErrorData = 3; + repeated UserMessage Reply = 4; +} + +//用户代理绑定Uid请求 +message AgentBuildReq { + string UserSessionId = 1; + string UserId = 2; + string WorkerId = 3; +} +//用户代理解绑请求 +message AgentUnBuildReq { string UserSessionId = 1; } + +//向用户代理发送消息请求 +message AgentSendMessageReq { + string UserSessionId = 1; + repeated UserMessage Reply = 2; +} + +//发送批量消息 +message BatchMessageReq { + repeated string UserSessionIds = 1; + string MainType = 2; + string SubType = 3; + google.protobuf.Any Data = 4; +} + +//发送广播消息 +message BroadCastMessageReq { + string MainType = 1; //服务名 + string SubType = 2; + google.protobuf.Any Data = 3; +} + +//关闭用户代理 +message AgentCloseeReq { string UserSessionId = 1; } + +//通知用户登录 +message NoticeUserLoginReq { + string Ip = 1; + string UserSessionId = 2; + string UserId = 3; + string ServiceTag = 4; + string GatewayServiceId = 5; +} + +//通知用户登录 +message NoticeUserCreateReq { + string Ip = 1; + string UserSessionId = 2; + string UserId = 3; + string ServiceTag = 4; + string GatewayServiceId = 5; +} + +//通知用户离线 +message NoticeUserCloseReq { + string Ip = 1; + string UserSessionId = 2; + string UserId = 3; + string ServiceTag = 4; + string GatewayServiceId = 5; +} + +//英雄属性类型 +enum HeroAttributesType { + Hp = 0; //血量 + Atk = 1; //攻击 + Def = 2; //防御 + Speed = 3; //速度 + Crit = 4; //暴击 +} + +message SkillData { + int32 skillID = 1; + int32 skillLv = 2; +} + +//用户资产数据 对标*cfg.Game_atn 数据结构 +message UserAssets { + string A = 1; + string T = 2; + int32 N = 3; +} + +// ATNO 类型 +message UserAtno { + string A = 1; + string T = 2; + int32 N = 3; + string O = 4; +} + +message TaskParam { + int32 first = 1; //限定条件 + int32 second = 2; //次数 +} + +message RtaskParam { + int32 param1 = 1; + int32 param2 = 2; + int32 param3 = 3; +} + +message UIdReq { string uid = 1; } + +message NameReq { string name = 1; } + +message EmptyReq {} +message EmptyResp {} +// rpc 通用请求消息 1 +message RPCGeneralReqA1 { string param1 = 1; } +// rpc 通用请求消息 1 +message RPCGeneralReqA2 { + string param1 = 1; + string param2 = 2; +} +// rpc 通用请求消息 1 +message RPCGeneralReqA3 { + string param1 = 1; + string param2 = 2; + string param3 = 3; +} +// rpc 通用请求消息 1 +message RPCGeneralReqA4 { + string param1 = 1; + string param2 = 2; + string param3 = 3; + string param4 = 4; +} + +// rpc 通用请求消息 1 +message RPCRTaskReq { + string uid = 1; + int32 taskType = 2; + repeated int32 param = 3; +} + +//服务列表信息 +message ServiceDBInfo{ + string serverid = 1; //@go_tags(`bson:"serverid"`) + string serverName = 2; //@go_tags(`bson:"serverName"`) + string owner = 3; //@go_tags(`bson:"owner"`) + string cross = 4; //@go_tags(`bson:"cross"`) + string crossId = 5; //@go_tags(`bson:"crossId"`) + string singleserver = 6; //@go_tags(`bson:"singleserver"`) + int64 opentime = 7; //@go_tags(`bson:"opentime"`) + bool redisIsCluster = 8; //@go_tags(`bson:"redisIsCluster"`) + repeated string redisAddr = 9; //@go_tags(`bson:"redisAddr"`) + string redisPassword = 10; //@go_tags(`bson:"redisPassword"`) + int32 redisDb = 11; //@go_tags(`bson:"redisDb"`) + string MongodbUrl = 12; //@go_tags(`bson:"MongodbUrl"`) + string mongodbDatabase = 13; //@go_tags(`bson:"mongodbDatabase"`) +} \ No newline at end of file diff --git a/src/pb/temop/dispatch_db.proto b/src/pb/temop/dispatch_db.proto new file mode 100644 index 0000000..b699ed0 --- /dev/null +++ b/src/pb/temop/dispatch_db.proto @@ -0,0 +1,31 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +// 玩家派遣信息 +message DBDispatch { + string uid = 1; //@go_tags(`bson:"uid"`) + Noticeboard nb = 2; //@go_tags(`bson:"nb"`) 公告栏 +} + +// 公告栏 +message Noticeboard { + int32 lv = 1; //@go_tags(`bson:"lv"`) 公告栏等级 + int32 noticeType =2; //@go_tags(`bson:"noticeType"`) 公告栏类型 + repeated DispatchTask tasks = 3; //@go_tags(`bson:"tasks"`) 当前公告任务 + int32 freeCount = 4; //@go_tags(`bson:"freeCount"`) 已使用的免费次数 + int32 refreshCount = 5; //@go_tags(`bson:"refreshCount"`) 已刷新次数 + int32 weekCount = 6; //@go_tags(`bson:"weekCount"`) 周任务数 + int32 taskCount = 7; //@go_tags(`bson:"taskCount"`) 任务数 + repeated int32 weekReceived = 8; //@go_tags(`bson:"weekReceived"`) //已领取的周任务索引ID + int64 updateTime = 9; //@go_tags(`bson:"updateTime"`) 更新时间 +} + +// 派遣任务 +message DispatchTask{ + int32 taskId = 1; //@go_tags(`bson:"taskId"`) 任务ID + int32 status = 2; //@go_tags(`bson:"status"`) 任务状态 默认0 1任务中 2任务完成 + int64 duration = 3; //@go_tags(`bson:"duration"`) 持续截至时间 + int64 leftTime = 4; //@go_tags(`bson:"leftTime"`) 任务截至时间 + repeated string heroIds = 5; //go_tags(`bson:"heroIds"`) 派遣的英雄 + bool exaward = 6; //@go_tags(`bson:"exaward"`) 是否获取额外奖励 +} \ No newline at end of file diff --git a/src/pb/temop/dispatch_msg.proto b/src/pb/temop/dispatch_msg.proto new file mode 100644 index 0000000..a786bfd --- /dev/null +++ b/src/pb/temop/dispatch_msg.proto @@ -0,0 +1,58 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "dispatch_db.proto"; + +// 玩家公告 +message DispatchNoticeReq{} + +message DispatchNoticeResp{ + Noticeboard dispatch = 1; +} + +//刷新公告 +message DispatchRefreshReq{} + +message DispatchRefreshResp{ + int32 freeCount = 1; //已使用的免费次数 + int32 refreshCount = 2; //已刷新次数 +} + +message DispatchTaskRsp{ + int32 taskId =1; + bool exaward = 2; +} + +// 领取任务奖励 +message DispatchReceiveReq{ + int32 taskId = 1; //任务ID +} +message DispatchReceiveResp{ + DispatchTaskRsp rsp = 1; +} + +//一键领取任务奖励 +message DispatchAutoReceiveReq{} + +message DispatchAutoReceiveResp{ + repeated DispatchTaskRsp task = 1; //领取奖励的任务ID +} + +// 派遣 +message DispatchDoReq{ + int32 taskId = 1; + repeated string heroIds = 2; +} + +message DispatchDoResp{ + bool isSucc = 1; //派遣是否成功 +} + +// 周奖励领取 +message DispatchWeekReciveReq{ + int32 idx = 1; // 奖励节点索引号从0开始 +} + +message DispatchWeekReciveResp{ + int32 idx= 1; +} + diff --git a/src/pb/temop/enchant_db.proto b/src/pb/temop/enchant_db.proto new file mode 100644 index 0000000..aa89063 --- /dev/null +++ b/src/pb/temop/enchant_db.proto @@ -0,0 +1,26 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "battle_msg.proto"; + +message DBEnchant { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + map boss = 3; // key boss 类型 value 积分 + int32 buyCount = 4;//@go_tags(`bson:"buyCount"`) 购买次数 + int64 cTime = 5; //@go_tags(`bson:"cTime"`) 修改时间 + map bossTime = 6; //@go_tags(`bson:"bossTime"`) + int64 recoveryTime = 7; //@go_tags(`bson:"recoveryTime"`) // 开始恢复的时间 +} + +// 排行榜 +message DBEnchantRank { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + int32 bosstype = 3; // boss类型塔类型 + string nickname = 4;// 昵称 + int32 lv = 5; // 玩家等级 + int32 leadpos = 6; //队长位置 + repeated LineUp line = 7; // 阵容数据 + int32 costTime = 8; //@go_tags(`bson:"costTime"`) 闯关耗时 单位s + int64 score = 9; //@go_tags(`bson:"score"`) +} \ No newline at end of file diff --git a/src/pb/temop/enchant_msg.proto b/src/pb/temop/enchant_msg.proto new file mode 100644 index 0000000..4c82184 --- /dev/null +++ b/src/pb/temop/enchant_msg.proto @@ -0,0 +1,52 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "enchant_db.proto"; +import "battle_msg.proto"; +message EnchantGetListReq { + +} + +message EnchantGetListResp { + DBEnchant data = 1; +} + +// 挑战 +message EnchantChallengeReq { + int32 bossType = 1; // boos 类型 + BattleFormation battle = 2; +} + +message EnchantChallengeResp { + BattleInfo info = 1; + int32 bossType = 2; // boos 类型 +} + +message EnchantChallengeOverReq { + int32 bossType = 1; // boos 类型 + BattleReport report = 2; //战报 + int64 score = 3; //获得积分 或伤害 +} + +// 客户端通知服务器打赢了 +message EnchantChallengeOverResp { + DBEnchant data = 1; +} + +// 购买 +message EnchantBuyReq { + int32 count = 1;// 购买次数 +} + +message EnchantBuyResp { + DBEnchant data = 1; +} + +// 排行榜 +message EnchantRankListReq{ + int32 boosType = 1; // boss 类型 + bool friend = 2; // 是否是好友榜 +} + +message EnchantRankListResp{ + repeated DBEnchantRank ranks = 1; // 排行数据 有序的 注意boss类型 +} \ No newline at end of file diff --git a/src/pb/temop/equipment_db.proto b/src/pb/temop/equipment_db.proto new file mode 100644 index 0000000..f4a2317 --- /dev/null +++ b/src/pb/temop/equipment_db.proto @@ -0,0 +1,41 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +//装备属性词条 +message EquipmentAttributeEntry { + int32 Id = 1; //属性词条主键id 唯一 + int32 libraryid = 2; //属性词条id 非唯一 + string AttrName = 3; //属性名 + int32 Lv = 4; //属性等级 + int32 Value = 5; //属性值 + int32 BaseValue = 6; //基础属性 + int32 EnchValue =7; //附魔属性 +} + +//装备技能词条 特殊装备/武器or饰品 +message EquipmentSkillEntry { + int32 Id = 1; //属性词条主键id 唯一 + int32 libraryid = 2; //属性词条id 非唯一 + string AttrName = 3; //属性名 + int32 SkillId = 4; //技能id + int32 Lv = 5; //属性等级 +} + +//武器数据 +message DB_Equipment { + string Id = 1; //@go_tags(`bson:"_id"`) 装备id + string cId = 2; //@go_tags(`bson:"cId"`) 配置Id + string uId = 3; //@go_tags(`bson:"uid"`) 所属玩家Id + string heroId = 4; //@go_tags(`bson:"heroId"`) 挂在的英雄卡片id 未装备 填 '' + int32 lv = 5; //@go_tags(`bson:"lv"`) 装备强化等级 + int32 keepFailNum = 6; //@go_tags(`bson:"keepFailNum"`) 连续强化失败次数 + EquipmentAttributeEntry mainEntry = + 7; //@go_tags(`bson:"mainEntry"`) 装备主词条 + repeated EquipmentAttributeEntry adverbEntry = + 8; //@go_tags(`bson:"adverbEntry"`) 装备副词条 + uint32 overlayNum = 9; //@go_tags(`bson:"overlayNum"`) 叠加数量 + bool isInitialState = 10; //@go_tags(`bson:"isInitialState"`) 是否初始状态 + bool islock = 11; //@go_tags(`bson:"islock"`) 是否锁 + repeated EquipmentSkillEntry adverbskill = + 12; //@go_tags(`bson:"adverbskill"`) 装备副技能 +} \ No newline at end of file diff --git a/src/pb/temop/equipment_msg.proto b/src/pb/temop/equipment_msg.proto new file mode 100644 index 0000000..c89e506 --- /dev/null +++ b/src/pb/temop/equipment_msg.proto @@ -0,0 +1,96 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "equipment_db.proto"; +import "comm.proto"; + +//获取装备列表请求 +message EquipmentGetListReq {} +//获取装备列表请求 回应 +message EquipmentGetListResp { + repeated DB_Equipment Equipments = 1; //装备列表 +} + +//推送装备背包变化 +message EquipmentChangePush { + repeated DB_Equipment Equipments = 1; //装备列表 +} + +//装备挂在到英雄上 +message EquipmentEquipReq { + string HeroCardId = 1; //英雄卡Id + repeated string EquipmentId = 2; //装备Id 固定长度的数组 0-5 对应的装备栏 +} + +//装备挂在到英雄上 回应 +message EquipmentEquipResp { + repeated DB_Equipment Equipments = 1; //挂在装备列表 +} + +//装备升级 +message EquipmentUpgradeReq { + string EquipmentId = 1; //装备Id +} + +//装备升级 回应 由于装备可以叠加 升级后会创建一个新的装备出来 +//所以可能影响两个装备 +message EquipmentUpgradeResp { + bool IsSucc = 1; + repeated DB_Equipment Equipment = 2; +} + +//出售道具请求sailitem +message EquipmentLockReq { + string EquipmentId = 1; //装备的唯一id + bool IsLock = 2; //是否锁 +} + +//出售道具请求 回应 +message EquipmentLockResp { + bool IsSucc = 1; + string EquipmentId = 2; + bool IsLock = 3; +} + +//出售道具请求sailitem +message EquipmentSellReq { repeated string EquipIds = 1; } + +//出售道具请求 回应 +message EquipmentSellResp { bool IsSucc = 1; } + +//锻造请求 +message EquipmentForgReq { + int32 forgid = 1; + int32 num = 2; +} + +//锻造请求 回应 +message EquipmentForgResp { + bool issucc = 1; + repeated UserAssets reward = 2; +} + +//洗练 +message EquipmentWashReq { string eid = 1; } +message EquipmentWashResp { + string eid = 1; + repeated EquipmentAttributeEntry adverbEntry = 2; +} + +//洗练确认 +message EquipmentWashConfirmReq { + string eid = 1; + repeated int32 pids = 2; +} +message EquipmentWashConfirmResp { bool issucc = 1; } + +//装备附魔 请求 +message EquipmentEnchReq { + string eid = 1; + string itemid = 2; + int32 index = 3; +} +//装备附魔 回应 +message EquipmentEnchResp { + bool issucc = 1; + DB_Equipment Equipment = 2; +} \ No newline at end of file diff --git a/src/pb/temop/errorcode.proto b/src/pb/temop/errorcode.proto new file mode 100644 index 0000000..d6eb7c8 --- /dev/null +++ b/src/pb/temop/errorcode.proto @@ -0,0 +1,376 @@ +syntax = "proto3"; +option go_package = ".;pb"; +// go:generate stringer -type ErrorCode -linecomment +enum ErrorCode { + Success = 0; //成功 + GatewayException = 1; //网关执行异常 + NoFindService = 10; //没有找到远程服务器 + NoFindServiceHandleFunc = 11; //远程服务器未找到执行方法 + RpcFuncExecutionError = 12; //Rpc方法执行错误 + CacheReadError = 13; //缓存读取失败 + SqlExecutionError = 14; //数据库执行错误 + ReqParameterError = 15; //请求参数错误 + SignError = 16; //签名串错误 + InsufficientPermissions = 17; //权限不足 + NoLogin = 18; //未登录 + UserSessionNobeing = 19; //用户不存在 + StateInvalid = 20; //无效状态 + DBError = 21; //数据库操作失败 + SystemError = 22; //通用错误 + DecodeError = 23; //加密串解码错误 + TimestampTimeout = 24; //加密串时间戳超时 + PbError = 25; // pb错误 + AgentUidEmpty = 26; // AgentUid空 + Exception = 100; //程序执行异常 + Unknown = 101; //未知错误 + ResNoEnough = 102; //资源不足 + ConfigurationException = 103; //配置异常 + ConfigNoFound = 104; //配置未找到 + UserLogined = 105; //已在其它终端登录 + NoOpened = 106; //模块未开放 + DataNotFound = 107; //数据为找到 + + // user + SecKeyInvalid = 1000; //秘钥无效 + SecKey = 1001; //秘钥格式错误 + BindUser = 1002; //用户绑定错误 + GoldNoEnough = 1003; // 金币不足 + DiamondNoEnough = 1004; // 钻石不足 + RoleCreated = 1005; //已创角 + UserNickNameExist = 1006; //昵称已存在 + VeriCodeNoValid = 1007; //验证码无效 + VeriCodeExpired = 1008; //验证码过期 + UserResetData = 1009; //初始化用户失败 + UserModiNameCount = 1010; //名称修改次数不足 + UserNickNameEmpty = 1011; //昵称空 + UserExpandNull = 1012; //扩展数据空 + UserExpNoEnough = 1013; //经验不足 + UserFriendNoEnough = 1014; //友情点不足 + UserSociatyCoinNoEnough = 1015; //公会币不足 + UserArenaCoinNoEnough = 1016; //竞技场币不足 + UserVitNoEnough = 1017; //体力不足 + UserVitLimit = 1018; //体力达到最大上限 + UserMoongoldNoEnough=1019; //纯净月髓不足 + UserOffline = 1020; //玩家不在线 + UserNofound = 1021; //未查询到玩家 + UserSign = 1022; //签到状态不对 + OpenCondErr = 1023; //功能开启条件未达到 + OpenCondActivate = 1024; //功能开启条件已激活 + UserTalent1NoEnough = 1025; //阵营1天赋点 + UserTalent2NoEnough = 1026; //阵营2天赋点 + UserTalent3NoEnough = 1027; //阵营3天赋点 + UserTalent4NoEnough = 1028; //阵营4天赋点 + + // friend + FriendNotSelf = 1100; //不能是自己 + FriendSelfMax = 1101; //超出好友最大数量 + FriendTargetMax = 1102; //超出目标好友最大数量 + FriendSelfNoData = 1103; //无好友记录 + FriendTargetNoData = 1104; //无目标好友记录 + FriendYet = 1105; //已是好友 + FriendApplyYet = 1106; //已申请该好友 + FriendSelfBlackYet = 1107; //已在自己黑名单中 + FriendTargetBlackYet = 1108; //已在对方的黑名单中 + FriendApplyError = 1109; //申请失败 + FriendBlackMax = 1110; //黑名单最大数量 + FriendSearchNameEmpty = 1111; //查询昵称为空 + FriendZaned = 1112; //已点赞 + FriendZanreceived = 1113; //已领取点赞 + FriendZanSelf = 1114; //不能给自己点赞 + FriendPointLimit = 1115; //友情点上线 + FriendNoreceived = 1116; //未更换助战没有可领取的奖励 + FriendQiecuoTimeout = 1117; //切磋请求超时 + FriendQiecuoRequested = 1118; //已发送切磋请求 + FriendQiecuoNoRequest = 1119; //无切磋请求 + FriendQiecuoing = 1120; //好友切磋中 + FriendQiecuoTargetPk = 1121; //目标已经在战斗 + FriendTicketNoEnough = 1122; //挑战券 + // item + ItemsNoEnough = 1200; //背包物品不足 + ItemsNoFoundGird = 1201; //背包未找到物品格子 + ItemsGridNumUpper = 1202; //背包格子数量已达上限 + ItemsGirdAmountUpper = 1203; //背包格子容量已达上限 + ItemsUseNotSupported = 1204; //暂不支持使用 + ItemsUseNoCanSell = 1205; //道具不支持出售 + ItemsBuyPsUpperLimit = 1206; //体力购买达到上限 + + // hero + HeroNoExist = 1300; //英雄不存在 + HeroNoEnough = 1301; //英雄数量不足 + HeroMaxLv = 1302; //英雄达到最大等级 + HeroInitCreat = 1303; //初始化英雄 + HeroColorErr = 1304; // 品质不匹配 + HeroSkillUpErr = 1305; // 技能升级失败 + HeroMaxResonate = 1306; // 达到最大共鸣次数 + HeroNoResonate = 1307; // 没有共鸣 + HeroNotNeedResonate = 1308; // 不需要重置共鸣 + HeroNoEnergy = 1309; // 没有能量点数 + HeroCreate = 1310; // 创建卡失败 + HeroEquipUpdate = 1311; // 更新装备失败 + HeroMaxAwaken = 1312; // 达到最大觉醒等级 + HeroIsLock = 1313; // 英雄被锁定不能被消耗 + HeroMaxCount = 1314; // 英雄达到最大数量 + HeroCostTypeErr = 1315; // 消耗英雄参数不匹配 + HeroStarErr = 1316; // 不满足升星条件 + HeroTypeErr = 1317; // 升级英雄类型不对 + HeroExpTypeErr = 1318; // 技能升级卡类型不对 + HeroAddMaxExp = 1319; // 升级经验卡溢出 检查传入的数量 + HeroStarLvErr = 1320; // 升星等级不够 + HeroMaxStarLv = 1321; // 达到最大升星等级 + DrawCardTypeNotFound = 1322; // 抽卡类型不匹配 + HeroMaxSkillLv = 1323; // 达到最大技能等级 + HeroAlreadyKongFuStatus = 1324; // 已经是练功状态 + HeroLvNoEnough = 1325; // 英雄等级不足 + HeroIsRegister = 1326; // 英雄已经登记过 + + // equipment + EquipmentOnFoundEquipment = 1400; // 未找到武器 + EquipmentLvlimitReached = 1401; // 武器等级已达上限 + EquipmentIsWorn = 1402; // 武器已经穿戴 + EquipmentNoCanSell = 1403; // 装备不能出售 + EquipmentSuiteNotFound = 1404; // 套装未找到 + + // mainMainline + MainlineNotFindChapter = 1500; // 没有找到主线关卡信息 + MainlineIDFailed = 1501; // 关卡ID 错误 + MainlineNotFound = 1502; // 主线关卡不存在 + MainlinePreNotFound = 1503; // 前置关卡不匹配 + MainlineRepeatReward = 1504; // 重复领奖 + MainlineCompleteReward = 1505; // 通关才能领奖 + MainlineNoEnoughStar = 1506; // 扫荡通关星级不够 + + // task + TaskInit = 1600; //初始化失败 + TaskReset = 1601; //重置任务失败 + TaskHandle = 1602; //任务处理失败 + TaskReceived = 1603; //已领取 + TaskActiveInit = 1604; //初始化活跃度失败 + TaskActiveNofound = 1605; //未找到用户活跃度配置 + TaskActiveNoenough = 1606; //活跃值未达标 + TaskNoFinished = 1607; //任务未完成 + TaskFinished = 1608; //已完成 + TaskTagEmpty = 1609; //任务类型空 + TaskIdEmpty = 1610; //任务ID空 + TaskNotFound = 1611; //未找到用户任务 + + // shop + ShopGoodsIsSoldOut = 1700; //商品已售罄 + ShopNoSurplusRefreshNum = 1701; //剩余刷新次数已用完 + // mail + MailErr = 1800; // 邮件不存在 + // pagoda + PagodaNotFound = 1900; // 找不到塔数据 + PagodaLevlErr = 1901; // 挑战关卡数据不匹配 + PagodaGetRewardErr = 1902; // 重复领取 + PagodaConditionErr = 1903; // 条件不足 + PagodaUnlock = 1904; // 未解锁 前置条件不足 + // martialhall + MartialhallNotUnlocked = 2000; //没有解锁 + MartialhallInUse = 2001; //已经在使用 + MartialhallUnlocked = 2002; //已解锁 + MartialhallNoUnlocked = 2003; //有未解锁柱子 + MartialhallAtlasError = 2004; // 武馆图鉴领取错误 + MartialhallAtlasNoReward = 2005; // 武馆图鉴不满足领取条件 + // 美食馆 + GourmetMoreOrderTime = 2101; // 超过订单时长 + GourmetSkillMaxLv = 2102; // 技能已经达到满级 + + // rtask + RtaskFinished = 2201; //任务已完成 + RtaskUnFinished = 2202; //任务未完成 + RtaskNoRtask = 2203; //任务未开启 + RtaskRewarded = 2204; //已获取奖励 + RtaskPreNoFinish = 2205; //前置未完成 + RtaskCondiNoReach = 2206; //未达到限定条件 + RtaskNoLastOne = 2207; //不是最后一个任务 + RtaskCondiNoFound = 2208; //未找到符合的条件配置 + + // viking + VikingLvErr = 2301; // 关卡难度不匹配 + VikingBoosType = 2302; // BOSS 类型不对 + VikingBuyMaxCount = 2303; // 购买达到最大次数 + VikingMaxChallengeCount = 2304; // 挑战达到最大次数 + + // moonfantasy 月之秘境 + MoonfantasyHasExpired = 2401; // boos 连接已失效 + MoonfantasyJoinUp = 2402; // boos 参与人数已达上限 + MoonfantasyDareUp = 2403; // boos 挑战次数已达上限 + MoonfantasyBattleNoEnd = 2404; // boos 战斗未结束 + MoonfantasyBattleNoWin = 2405; // boos 战斗魏未胜利 + MoonfantasyNoJoin = 2406; // boos 未加入战斗序列 + MoonfantasyNotEnoughbattles = 2407; // boos 挑战次数不足 + + BattleNoFoundRecord = 2501; // 未找到记录 + + LinestoryTaskFinished = 2601; //任务已完成 + LinestoryNoReceive = 2602; //章节奖励不能领取 + LinestoryTaskDisabledEnter = 2603; //禁止进入 + LinestoryChapterNoOpen = 2604; //章节未开启 + LinestoryPreNoComplete = 2605; //前置任务未完成 + + // hunting + HuntingLvErr = 2701; // 关卡难度不匹配 + HuntingBoosType = 2702; // BOSS 类型不对 + HuntingBuyMaxCount = 2703; // 购买达到最大次数 + HuntingMaxChallengeCount = 2704; // 挑战达到最大次数 + HuntingNoChallengeCount = 2705; // 挑战次数不足 + + // Enchant + EnchantLvErr = 2711; // 关卡难度不匹配 + EnchantBoosType = 2712; // BOSS 类型不对 + EnchantBuyMaxCount = 2713; // 购买达到最大次数 + EnchantMaxChallengeCount = 2714; // 挑战达到最大次数 + EnchantNoChallengeCount = 2715; // 挑战达到最大次数 + // library + LibraryMaxLv = 2801; // 达到最大等级 + LibraryNoData = 2802; // 没找到羁绊数据 + LibraryActivation = 2803; // 已经是激活状态 + LibraryReward = 2804; // 已经领取奖励 + LibraryLvReward = 2805; // 领奖等级没达到 + LibraryFetterTaskNoFound = 2806; //未找到羁绊任务数据 + LibraryPreTaskNoFinished = 2807; //前置任务未完成 + + // Battle + BattleValidationFailed = 2901; //战斗校验失败 + BattleNoWin = 2902; //战斗失败 + BattleCreateFailed = 2903; //创建战斗失败 + BattleInCmdFailed = 2904; //战斗指令输入失败 + BattleUserOff = 2905; //由用户离线 + BattleCapskillCheckFailed = 2906; //战斗队长技校验失败 + BattleNoKeep = 2907; //战斗不存在 + + // sociaty + SociatyNoFound = 3000; //公会不存在 + SociatyAdded = 3001; //已在公会里 + SociatyDiamondNoEnough = 3002; //钻石不足 + SociatyNoMember = 3003; //不是公会成员 + SociatyNoRight = 3004; //无权限 + SociatyNoAdded = 3005; //未加入公会 + SociatyDismiss = 3006; //解散失败 + SociatyQuit = 3007; //退会失败 + SociatyAgree = 3008; //申请-同意失败 + SociatyRefuse = 3009; //申请-拒绝失败 + SociatyLogParams = 3010; //公会日志参数错误 + SociatyMasterNoDiss = 3011; //会长不能被踢出 + SociatySettingJob = 3012; //设置职位失败 + SociatySetting = 3013; //公会修改失败 + SociatyNoAccuse = 3014; //无需弹劾 + SociatySign = 3015; //签到失败 + SociatySigned = 3016; //已签到 + SociatyCDLimit = 3017; // CD时间限制 + SociatyApplyMax = 3018; //最大申请该公会人数 + SociatySelfSetting = 3019; // 不能设置自己 + SociatyMemberCountLimit = 3020; //超出人数限制 + SociatyRewardReceived = 3021; //奖励已领取 + SociatyRewardReceive = 3022; //奖励领取失败 + SociatyResource = 3023; //更新公会资源失败 + SociatyBelongTo = 3025; //已是公会成员 + SociatyApplied = 3026; //已申请 + SociatyAppyLvNoEnough = 3027; //申请等级不满足 + SociatyTaskValidation = 3028; //任务未完成 + SociatyActivityNoEnough = 3029; //活跃度不足 + SociatyAcitvityReceive = 3030; //活跃度领取失败 + SociatyDismissed = 3031; //公会已解散 + SociatyNameExist = 3032; //公会名存在 + SociatyQuitNoAllowed = 3033; //会长不允许退公会 + SociatyNoMaster = 3034; //无会长 + SociatyNoFormation = 3035; //无阵容 + SociatyTicketsNoEnough = 3036; //挑战券不足 + SociatySportsNoinit = 3037; //赛季未初始 + SociatySportsEnd = 3038; //赛季已结束 + SociatyTeamUnlock = 3039; //队伍解锁条件不满足 + SociatyTaskNoFound = 3040; //未找到boss任务 + SociatyTaskNoFinished = 3041; //任务未完成 + SociatyTaskReceived = 3042; //任务奖励已领取 + + // arena + ArenaTicketBuyUp = 3101; //票据上限 + ArenaTicketNotEnough = 3102; //票据不足 + ArenaTicketNpcInCd = 3103; // cd中 + // talent + TalentRepeatLearn = 3201; // 天赋已学习 + TalentErrData = 3202; /// 天赋不存在 + TalentUnLockerBefore = 3203; //先解锁前置天赋 + TalentResetState = 3204; //当前天赋已经是重置状态 + // trolltrain + TrollBuyMax = 3301; //买入上限 + TrollSellMax = 3302; // 卖出上限 + TrollMaxSellCount = 3303; // 单日最大交易次数 + TrollMaxItemCount = 3304; //背包格子达到上限 + TrollRepeatedReward = 3305; //奖励重复领取 + // horoscope + HoroscopeNotTurnedOn = 3401; //未开启 + HoroscopeRestCDNoEnd = 3402; //重置cd未结束 + // privileges + PrivilegeNotFound = 3501; // 特权没激活 + PrivilegeRenewTime = 3502; // 特权续费时间没到 + VipLvError = 3503; // Vip等级不足 + VipGiftError = 3504; // Vip礼包购买失败 + VipBuyRepeat = 3505; // Vip礼包重复购买 + + // growtask + GrowtaskReceive = 3601; //子任务奖励领取失败 + GrowtaskAdvReceive = 3602; //进阶奖励领取失败 + + // pay + PayBuyNumNotEnough = 3701; //支付次数不足 + PayRenewTimeErr = 3702; // 续费时间没达到要求 + PayOrderCompleted = 3703; // 订单已完成 + // worldtask + WorldtaskFinish = 3801; //任务完成失败 + WorldtaskLvNotEnough = 3802; //等级不满足 + WorldtaskNoAccept = 3803; //不能接取 + WorldtaskNoComplete = 3804; //任务条件未完成 + WorldtaskFinihed = 3805; //任务已完成 + WorldtaskLastUnFinished = 3806; //上个任务未完成 + WorldtaskGroupIdNosame = 3807; //组ID不一致 + WorldtaskChapterUnFinished =3808; //章节任务未完成 + WorldtaskChapterReceived =3809; //章节奖励已领取 + WorldtaskNoProcess = 3810; //无需处理 + + // academy + AcademyTaskNoCompleteTask = 3901; //未完成任务 + // AutoBattle + AutoBattleNoData = 4001; //没有正在自动战斗的数据 + AutoBattleStatesErr = 4002; // 自动战斗状态错误 + + // smithy + SmithyNoReel = 4101;// 没有激活图纸信息 + SmithyNoTemperature = 4102;// 炉温不够不能打造 + SmithyStoveMaxLv = 4103;// 炉子达到最大等级 + SmithyCustomerLimit = 4104; //顾客上限 + SmithyCustomerEquipNoEnough = 4105; //装备回收数量不足 + SmithyMaxTemperature = 4106; // 炉温达上限 + SmithyLackLava = 4107; // 缺少熔岩 + SmithyAtlasMaxLv = 4108; // 图鉴奖励满级 + SmithyAtlasLackLv = 4109; // 图鉴奖励等级不足 + SmithyTaskNoFinished = 4110; //图鉴任务未完成 + SmithyTaskReceived = 4111; //图鉴任务奖励已领 + SmithyNoFoundAtlas = 4112; // 没有找到图鉴数据 + SmithyNoActivateAtlas = 4113; // 没有图鉴更新数据 + SmithyLvToolsFailed = 4114; // + SmithyLvToolsPre = 4115; // 前置条件不足 + SmithyAtlasTypeErr = 4116; //图鉴类型错误 + + // dispatch + DispatchHeroNoReached = 4201; //英雄条件未达标 + DispatchNoFree = 4202; //免费次数用尽 + DispatchTicketNoEnough = 4203; //门票不足 + DispatchHeroAssigned = 4204; //英雄已派遣 + DispatchTaskExpired = 4205; //任务已过期 + DispatchRefreshMax = 4206; //达到最大刷新次数 + DispatchNoFinished = 4207; //任务未完成 + DispatchHeroNoEnough = 4208; //派遣英雄数量不足 + + //practice + PracticeQiecuoing = 4301; //武馆切磋中 + PracticeSent = 4302; //邀请已发送 10秒内请勿重复邀请 + PracticeInviteTimeOut = 4303; //邀请超时 + PracticePillarMaxLv = 4304; //木桩已到满级 + PracticeYouQiecuoing = 4305; //你有切磋未完成 + PracticeTargetQiecuoing = 4306; //目标正在切磋中 + + //parkour + ParkourMemberFull = 4401; //队伍成员已满 + ParkourInviteOverdue = 4402; //邀请已过期 +} diff --git a/src/pb/temop/forum_db.proto b/src/pb/temop/forum_db.proto new file mode 100644 index 0000000..fd0dbb0 --- /dev/null +++ b/src/pb/temop/forum_db.proto @@ -0,0 +1,23 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +enum CommentState { + Release = 0; //发布 + Offline = 1; //下架 +} + +//评论数据 +message DBComment { + string id = 1; //@go_tags(`bson:"_id"`) ID + string heroid = 2; //英雄id + string heroobjid = 3; //目标英雄的实例id + string uid = 4; //发送用户id + string stage = 5; //区服id + string avatar = 6; //用户头像 + string uname = 7; //用户名 + int32 ulv = 8; + CommentState state = 9; //状态 + int64 ctime = 10; //发布时间 + string content = 11; //内容 + int32 starlist = 12; //点赞数 +} diff --git a/src/pb/temop/forum_msg.proto b/src/pb/temop/forum_msg.proto new file mode 100644 index 0000000..b4a517f --- /dev/null +++ b/src/pb/temop/forum_msg.proto @@ -0,0 +1,53 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "forum_db.proto"; +import "hero_db.proto"; +import "equipment_db.proto"; + +//获取评论列表 +message ForumGetListReq { + string herocid = 1; //英雄配置id +} + +//获取评论回应 +message ForumGetListResp { repeated DBComment comment = 1; } + +//发布评论请求 +message ForumReleaseCommentReq { + string avatar = 1; //用户头像 + string uname = 2; //用户名 + int32 ulv = 3; //用户等级 + string herocid = 4; //英雄的配置id + string herooid = 5; //英雄的实例id + string content = 6; //评论内容 +} + +//发布评论回应 +message ForumReleaseCommentResp { DBComment comment = 1; } + +//查看英雄信息请求 +message ForumWatchHeroReq { + string uid = 1; //用户id + string stag = 2; //区服id + string herocId = 3; //用户cid + string herooId = 4; //英雄实例id +} +//查看英雄信息回应 +message ForumWatchHeroResp { + DBHero hero = 1; + repeated DB_Equipment equipID = 2; // 装备详细信息 +} + +//请求点赞 请求 +message ForumLikeReq { + string herocid = 1; //英雄配置id + string cid = 2; //评论id + bool islike = 3; //是否点赞 +} + +//请求点赞 回应 +message ForumLikeResp { + string cid = 1; //评论id + bool islike = 2; //是否点赞 + bool issucc = 3; //成功失败 +} \ No newline at end of file diff --git a/src/pb/temop/friend_db.proto b/src/pb/temop/friend_db.proto new file mode 100644 index 0000000..26239de --- /dev/null +++ b/src/pb/temop/friend_db.proto @@ -0,0 +1,35 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "hero_db.proto"; + +message DBFriend { + string uid = 1; //@go_tags(`bson:"uid"`) 用户ID + repeated string friendIds = 2; //@go_tags(`bson:"friendIds"`) 好友ID + repeated string applyIds = 3; //@go_tags(`bson:"applyIds"`) 申请用户ID + repeated string blackIds = 4; //@go_tags(`bson:"blackIds"`) 黑名单ID + repeated string zanIds = 5; //@go_tags(`bson:"zanIds"`) 点赞好友ID + repeated string getZandIds = 6; //@go_tags(`bson:"getZandIds"`) 已接收赞好友ID + string assistHeroId = 7; //@go_tags(`bson:"assistHeroId"`) 助战英雄ID + int32 received = 8; //@go_tags(`bson:"received"`) 领取奖励状态0未领1可领2已领 + int64 updateTime = 9; //@go_tags(`bson:"updateTime"`) 更新时间 + DBHero hero = 10; //@go_tags(`bson:"hero"`) 助战英雄副本 + int32 assistScore = 11; //@go_tags(`bson:"zhuzhanScore"`) 助战分数合计 + repeated AssistRecord record = 12; //@go_tags(`bson:"record"`) 助战记录 +} + +//助战记录 +message AssistRecord { + string uid = 1; //@go_tags(`bson:"uid"`) 好友Id + int64 assistTime = 2; //@go_tags(`bson:"zhuzhanTime"`) 上次助战时间 + string assistHeroId = 3; //@go_tags(`bson:"assistHeroId"`) 助战英雄 +} + +//切磋请求记录 +message QiecuoRecord{ + string uid = 1; //@go_tags(`bson:"uid"`) 切磋发起人 + string targetId = 2; //@go_tags(`bson:"targetId"`) 切磋接受人 + int32 status = 3; //@go_tags(`bson:"status"`) 0默认 1已发送 2已接收 + string matchId = 4; //@go_tags(`bson:"matchId"`) 战斗ID + int64 timestamp = 5; //@go_tags(`bson:"timestamp"`) 切磋时间戳 + int64 endTime = 6; //@go_tags(`bson:"endTime"`) 战斗结束时间戳 +} \ No newline at end of file diff --git a/src/pb/temop/friend_msg.proto b/src/pb/temop/friend_msg.proto new file mode 100644 index 0000000..ce2b183 --- /dev/null +++ b/src/pb/temop/friend_msg.proto @@ -0,0 +1,190 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +import "friend_db.proto"; + +message FriendBase { + string userId = 1; // ID + string NickName = 2; //昵称 + int32 level = 3; //等级 + string avatar = 4; //头像 + int64 strength = 5; //战力 + string serverId = 6; //服务编号 + int64 offlineTime = 7; //最近一次下线时间 -1在线 + bool isApplied = 8; //是否已申请加好友 + bool isZaned = 9; //是否已点赞 + bool isGetZaned = 10; //是否已获赞 + string heroObjId = 11; //助战英雄ID + int32 score = 12; //助战分数 + int64 updateTime = 13; //更新时间 +} + +//好友列表 +message FriendListReq {} + +message FriendListResp { repeated FriendBase list = 1; } + +// 随机的在线玩家 +message FriendRandlistReq {} +message FriendRandlistResp { repeated FriendBase list = 1; } + +//申请好友 +message FriendApplyReq { + string friendId = 1; //好友ID +} +message FriendApplyResp { + string userId = 1; //用户ID + string friendId = 2; //好友ID +} + +//删除好友 +message FriendDelReq { + string friendId = 1; //好友ID +} + +message FriendDelResp { + string friendId = 1; //好友ID + string userId = 2; //用户ID +} + +//同意 +message FriendAgreeReq { + repeated string friendIds = 1; //被同意的用户 +} +message FriendAgreeResp { + int32 Num = 1; //操作的数量 +} + +//拒绝 +message FriendRefuseReq { + repeated string friendIds = 1; //被拒绝的用户 +} +message FriendRefuseResp { + int32 Num = 1; //操作的数量 +} + +//好友申请列表 +message FriendApplyListReq {} +message FriendApplyListResp { repeated FriendBase list = 1; } + +//好友搜索 +message FriendSearchReq { + string nickName = 1; //好友昵称 +} + +message FriendSearchResp { repeated FriendBase friends = 1; } + +//黑名单 +message FriendBlackListReq {} + +message FriendBlackListResp { repeated FriendBase friends = 1; } + +//添加黑名单 +message FriendAddBlackReq { string friendId = 1; } + +message FriendAddBlackResp { + string friendId = 1; + string userId = 2; +} + +//删除黑名单 +message FriendDelBlackReq { string friendId = 1; } + +message FriendDelBlackResp { + string friendId = 1; + string userId = 2; +} + +//好友数量 +message FriendTotalReq { string friendId = 1; } + +message FriendTotalResp { + string friendId = 1; + int32 total = 2; //好友数量 +} + +// 点赞列表 +message FriendZanlistReq {} +message FriendZanlistResp { repeated FriendBase list = 1; } + +// 点赞 +message FriendZanReq { repeated string friendIds = 1; } + +message FriendZanResp { bool flag = 1; } + +//接收点赞 +message FriendZanreceiveReq { repeated string friendIds = 1; } + +message FriendZanreceiveResp { bool flag = 1; } + +// 设置助战英雄 +message FriendAssistheroReq { string heroObjId = 1; } +message FriendAssistheroResp { + string heroObjId = 1; + int32 received = 2; //领取奖励状态0未领1可领2已领 +} + +//助战列表 +message FriendAssistlistReq {} +message FriendAssistlistResp { + repeated FriendBase list = 1; //好友助战排行 + string heroObjId = 2; //助战英雄 + repeated AssistRecord record = 3; //我的助战记录 +} + +// 助战奖励 +message FriendGetrewardReq {} +message FriendGetrewardResp { int32 received = 1; } + +// 助战英雄更新推送 +message FriendAssistHeroUpdatePush { + FriendBase friend = 1; //好友 +} + +//好友助战英雄列表 +message FriendAssistHeroListReq {} +message FriendAssistHeroListResp { repeated FriendBase friends = 1; } + +// 查询是否已申请目标玩家为好友或目标玩家是否已是好友 +message FriendGetRelationReq{ + string targetUid = 1; //目标玩家ID +} + +message FriendGetRelationResp{ + string targetUid = 1; + bool status = 2; //已是好友或已申请返回true +} + +// 切磋请求 +message FriendQiecuoReq{ + string targetUid = 1; //切磋目标玩家UID +} + +message FriendQiecuoResp{ + string targetUid =1; //切磋目标 + string uid = 2; //发起者 +} + +//接受切磋 +message FriendAcceptReq{ + string uid = 1; //切磋发起者 +} + +message FriendAcceptResp{ + bool isSucc = 1; +} + +//拒绝切磋 +message FriendStopReq{ + string uid = 1; //切磋发起者 +} + +message FriendStopResp{ + bool isSucc = 1; + +} + +message FriendQiecuonotifyPush{ + string uid = 1; //发起者(切磋) + int32 notifyType = 2; //1发起通知 2接受通知 3拒绝通知 +} \ No newline at end of file diff --git a/src/pb/temop/gateway_msg.proto b/src/pb/temop/gateway_msg.proto new file mode 100644 index 0000000..c5d1b97 --- /dev/null +++ b/src/pb/temop/gateway_msg.proto @@ -0,0 +1,12 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +//网关心跳 请求 +message GatewayHeartbeatReq { + +} + +//网关心跳 请求回应 +message GatewayHeartbeatResp { + int64 timestamp = 1; +} \ No newline at end of file diff --git a/src/pb/temop/gm_msg.proto b/src/pb/temop/gm_msg.proto new file mode 100644 index 0000000..7eab388 --- /dev/null +++ b/src/pb/temop/gm_msg.proto @@ -0,0 +1,11 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +///gm 命令请求 +message GMCmdReq { + string Cmod = 1; +} +///gm 命令请求 回应 +message GMCmdResp { + bool IsSucc = 1; +} \ No newline at end of file diff --git a/src/pb/temop/gourmet_db.proto b/src/pb/temop/gourmet_db.proto new file mode 100644 index 0000000..527b55c --- /dev/null +++ b/src/pb/temop/gourmet_db.proto @@ -0,0 +1,34 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "comm.proto"; + +message DBGourmetAtlas { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + map atlas = 3;//@go_tags(`bson:"atlas"`) +} +// 正在烹饪的食物 +message Cooking{ + int32 foodType = 1; // 料理类型 + int64 eTime = 2; // 结束时间戳 + int64 sTime = 3; // 开始时间戳 +} + +// 队列里的烹饪食品 +message OrderCook{ + int32 foodType = 1; // 料理类型 + int32 foodCount = 2; // 料理数量 + int32 cookTime = 3; // 剩余烹饪时间 +} +message DBGourmet { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + Cooking cookingFood = 3; //@go_tags(`bson:"cookingFood"`) 正在烹饪的食品 + repeated OrderCook foods = 4; //@go_tags(`bson:"foods"`) 等待烹饪的食品 + repeated UserAssets items = 5; //@go_tags(`bson:"items"`) 已经做好的食品 + map skill = 6; //@go_tags(`bson:"skill"`) 技能ID + map specialSkill = 7; //@go_tags(`bson:"specialSkill"`) 通用技能 + int32 orderCostTime = 8; //@go_tags(`bson:"orderCostTime"`) 订单消耗的时常 + int64 ctime = 9; // 订单创建时间 + int32 totalTime = 10;//@go_tags(`bson:"totalTime"`) +} \ No newline at end of file diff --git a/src/pb/temop/gourmet_msg.proto b/src/pb/temop/gourmet_msg.proto new file mode 100644 index 0000000..21ac7de --- /dev/null +++ b/src/pb/temop/gourmet_msg.proto @@ -0,0 +1,73 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "gourmet_db.proto"; +import "user_db.proto"; + +message GourmetCreateFoodReq { + string cid = 1; // 食谱ID + map material = 2; +} + +message GourmetCreateFoodResp { + string cid = 1; // 获得的食谱 + bool firstGet = 2; // 是否首次获得 +} +message GourmetActivateAtlasReq { + string cid = 1; // 图鉴ID +} + +message GourmetActivateAtlasResp { + map atlas = 1; +} + +// 图鉴 +message GourmetAtlasReq { + +} + +message GourmetAtlasResp { + map atlas = 1; +} + + +message GourmetGetListReq { + +} +// 返回进度信息 +message GourmetGetListResp { + DBGourmet data = 1; +} + +// 创建订单 +message GourmetCreateOrderReq { + repeated OrderCook order = 1;// 烹饪时间不用传 后端会重新计算 +} + +message GourmetCreateOrderResp { + DBGourmet data = 1; +} + +// 领取奖励 +message GourmetGetRewardReq{ +} + +message GourmetGetRewardResp{ + DBGourmet data = 1; +} + +// 技能升级 +message GourmetSkillLvReq{ + int32 skillType = 1; // 技能id +} + +message GourmetSkillLvResp{ + DBGourmet data = 1; +} + +message GourmetGetRandUserReq{ + int32 people = 1;//人数 +} + +message GourmetGetRandUserResp{ + repeated DBUser user = 1; +} \ No newline at end of file diff --git a/src/pb/temop/growtask_db.proto b/src/pb/temop/growtask_db.proto new file mode 100644 index 0000000..ef07de0 --- /dev/null +++ b/src/pb/temop/growtask_db.proto @@ -0,0 +1,30 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +message DBGrowtask { + string uid = 1; //@go_tags(`bson:"uid"`) 用户ID + repeated Growtask initTaskList = + 2; //@go_tags(`bson:"initTaskList"`) 初级任务列表 + repeated Growtask midTaskList = + 3; //@go_tags(`bson:"midTaskList"`) 中级任务列表 + repeated Growtask highTaskList = + 4; //@go_tags(`bson:"highTaskList"`) 高级任务列表 + int32 curTaskType = 5; //@go_tags(`bson:"curTaskType"`) 进行中的任务类型 + int32 advReceive = 6; //@go_tags(`bson:"advReceive"`) 已领取的进阶奖励ID +} + +//任务状态 +enum GrowtaskStatus { + Lock = 0; //锁定 + Ongoing = 1; //进行中 + Wait = 2; //待领奖 + Finish = 3; //完成 +} + +message Growtask { + int32 id = 1; //@go_tags(`bson:"id"`) 配置ID + int32 taskType = 2; //@go_tags(`bson:"taskType"`) 任务类型 + GrowtaskStatus status = 3; //@go_tags(`bson:"status"`) 任务状态 + int32 fstask = 4; //@go_tags(`bson:"fstask"`) 任务条件 + int32 preTask = 5; //@go_tags(`bson:"preTask"`) 前置任务ID +} \ No newline at end of file diff --git a/src/pb/temop/growtask_msg.proto b/src/pb/temop/growtask_msg.proto new file mode 100644 index 0000000..c0bdc74 --- /dev/null +++ b/src/pb/temop/growtask_msg.proto @@ -0,0 +1,27 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "growtask_db.proto"; + +// 成长任务列表 +message GrowtaskListReq { + int32 taskType = 1; //任务类型1初级2中级3高级 +} +message GrowtaskListResp { + repeated Growtask taskList = 1; + int32 curTaskType = 2; // 进行中的任务类型 + int32 advReceive = 3; //已领取的进阶奖励ID + int32 curTaskId = 4; // 当前未完成的任务ID +} + +//子任务奖励领取 +message GrowtaskReceiveReq { + int32 taskId = 1; //子任务ID +} +message GrowtaskReceiveResp { int32 taskId = 1; } + +//进阶奖励领取 +message GrowtaskAdvReceiveReq { + int32 taskType = 1; //任务类型 +} + +message GrowtaskAdvReceiveResp { int32 taskType = 1; } \ No newline at end of file diff --git a/src/pb/temop/hero_db.proto b/src/pb/temop/hero_db.proto new file mode 100644 index 0000000..81a0f1e --- /dev/null +++ b/src/pb/temop/hero_db.proto @@ -0,0 +1,69 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "comm.proto"; + +enum HeroType { + HeroTypeNil = 0; + HeroTypeKongFu = 1; +} + +message DBHero { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; + string heroID = 3; //@go_tags(`bson:"heroID"`) 英雄的配置表ID + int32 star = 4; // 英雄星级 + int32 lv = 5; // 英雄等级 + int32 exp = 6; // 英雄经验 + int32 juexingLv = 7; //@go_tags(`bson:"juexingLv"`) 觉醒等级 + int32 captainSkill = 8; //@go_tags(`bson:"captainSkill"`) 队长技能 + repeated SkillData normalSkill = 9; //@go_tags(`bson:"normalSkill"`) 普通技能 + map property = 10; // 属性相关 + map addProperty = 11; //@go_tags(`bson:"addProperty"`) 附加属性相关 + int32 cardType = 12; //@go_tags(`bson:"cardType"`) 卡片类型(升星卡、经验卡、技能升级卡) + int32 curSkin = 13; //@go_tags(`bson:"curSkin"`) 当前装备的皮肤ID + repeated int32 skins = 14; // 所有皮肤ID + bool block = 15; // 锁定 + repeated string equipID = 16; //@go_tags(`bson:"equipID"`) 装备 objID + int32 sameCount = 17; // @go_tags(`bson:"sameCount"`) 卡片叠加数量 + int32 suiteId = 18; //@go_tags(`bson:"suiteId"`) 套装Id + int32 suiteExtId = 19; // go_tags(`bson:"suiteExtId"`) 扩展套装Id + map juexProperty = 20; //@go_tags(`bson:"juexProperty"`) //hp + HeroType status = 21; //@go_tags(`bson:"status"`) 状态 (1 练功) + int32 suite1Star = 22; //@go_tags(`bson:"suite1Star"`) + int32 suite2Star = 23; //@go_tags(`bson:"suite2Star"`) + int32 suite1Lv = 24; //@go_tags(`bson:"suite1Lv"`) + int32 suite2Lv = 25; //@go_tags(`bson:"suite2Lv"`) + map talentProperty = 26; //@go_tags(`bson:"talentProperty"`) // 天赋属性 + repeated SkillData equipSkill = 27; //@go_tags(`bson:"equipSkill"`) 装备技能 + map horoscopeProperty = 28; //@go_tags(`bson:"horoscopeProperty"`) //星座属性加成 + int32 fulllvenr = 29; //@go_tags(`bson:"fulllvenr"`) //满级登记分组 武馆使用 + string kongfuUid = 30; //@go_tags(`bson:"kongfuUid"`)// 英雄在谁家练功 +} + + +//英雄扩展数据 +message DBHeroRecord { + string id = 1; //@go_tags(`bson:"_id"`) ID 主键id + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + int32 star4 = 3; // 4星保底 + int32 star5 = 4; // 5星保底 + int64 mtime = 5; // 修改时间 + int32 drawcount = 6; // 普通卡牌累计抽取次数 + map condition = 7; // key recharge、login 等 value 累计抽卡次数 + map star5Hero = 8;// 第totalcount 次抽到的5星英雄 key 英雄id + int32 totalcount = 9;// 总的累计抽卡次数 + int32 daycount = 10; // 今天抽卡次数 + int32 onebuy = 11; // 单次购买次数 + int32 tenbuy = 12; // 十连购买次数 + int32 inevitable = 13;//第2-30次抽奖必出一个5星英雄 + int32 inevitable1 = 14;//第30-50次抽奖必出一个5星英雄 + map race = 15; // key 阵营类型 value count +} + +// 英雄天赋系统 +message DBHeroTalent { + string id = 1; //@go_tags(`bson:"_id"`) ID 主键id + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + string heroId = 3; // 英雄ID + map talent = 4; // 已经学习过的天赋 +} \ No newline at end of file diff --git a/src/pb/temop/hero_msg.proto b/src/pb/temop/hero_msg.proto new file mode 100644 index 0000000..12fd93f --- /dev/null +++ b/src/pb/temop/hero_msg.proto @@ -0,0 +1,182 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "hero_db.proto"; +import "comm.proto"; + +//英雄基础信息 +message HeroInfoReq { + string uid = 1; // uid 查自己不传也可以 + repeated string heroId = 2; //英雄唯一ID +} +message HeroInfoResp { + string uid = 1; + repeated DBHero base = 2; +} + +//英雄列表 +message HeroListReq {} + +message HeroListResp { repeated DBHero list = 1; } + +/// 卡牌养成: 强化(卡牌升级、卡牌升星、技能升级) +/// 卡牌养成: 共鸣(共鸣消耗、材料返回、能量点使用) +/// 卡牌养成: 觉醒(英雄觉醒、材料消耗) + +message MapStringInt32 { + string Key = 1; + int32 Value = 2; +} + +// 卡牌升级 +message HeroStrengthenUplvReq { + string heroObjID = 1; // 英雄对象ID + map item = 2;// key itemid value 数量 +} + +// 卡牌升级返回 +message HeroStrengthenUplvResp { + DBHero hero = 1; // 英雄对象 +} + +// 卡牌升星 +message HeroStrengthenUpStarReq { + string heroObjID = 1; // 英雄对象ID +} + +// 卡牌升星返回 +message HeroStrengthenUpStarResp { + DBHero hero = 1; // 英雄对象 +} + +// 卡牌技能升级 +message HeroStrengthenUpSkillReq { + string heroObjID = 1; // 英雄对象ID + repeated string item = 2;// +} + +// 卡牌技能升级返回 +message HeroStrengthenUpSkillResp { + DBHero hero = 1; // 英雄对象 +} + +// 觉醒 +message HeroAwakenReq { + string heroObjID = 1; // 英雄对象ID +} + +// 觉醒返回 +message HeroAwakenResp { + DBHero hero = 1; // 英雄对象 +} + + +//英雄属性推送 +message HeroPropertyPush { + string heroId = 1; //英雄唯一ID + map property = 2; //基础属性 + map addProperty = 3; //附加属性 +} + +// 英雄锁定 +message HeroLockReq { string heroid = 1; } + +// 英雄锁定返回 +message HeroLockResp { + DBHero hero = 1; // 英雄对象 +} + +// 测试用(获取指定星级等级的英雄) +message HeroGetSpecifiedReq { + string heroCoinfigID = 1; // 英雄配置ID + int32 Amount = 2; // 数量 + int32 star = 3; // 星级 + int32 lv = 4; // 等级 +} + +message HeroGetSpecifiedResp { + DBHero hero = 1; // 英雄对象 +} + +// 抽卡 +message HeroDrawCardReq { + int32 drawType = 1; // 抽卡类型 0 普通 + int32 drawCount = 2;// 抽卡次数 +} + +message AtnoData{ + repeated UserAtno atno = 1; +} +message HeroDrawCardResp { + repeated AtnoData data = 1; +} + +// 英雄变化推送 +message HeroChangePush{ + repeated DBHero list = 1; +} + +message HeroDrawCardFloorReq { +} +// 获取抽卡保底次数 +message HeroDrawCardFloorResp { + int32 star4 = 1; + int32 star5 = 2; + int32 onebuy = 3; // 单次购买次数 + int32 tenbuy = 4; // 十连购买次数 +} + +// 英雄融合 +message HeroFusionReq{ + string heroId = 1; // 英雄配置表id + map heros= 2; // key heroObjID value 数量 +} + +message HeroFusionResp{ + string heroid = 1; // 获得新英雄 +} + +// 天赋学习 +message HeroTalentListReq { + +} + +message HeroTalentListResp { + repeated DBHeroTalent telnet = 1; +} + +// 天赋学习 +message HeroTalentLearnReq { + int32 talentID = 1; // 天赋ID + string objId = 2; // 对象唯一id + string heroid = 3; //配置表的英雄id +} + +message HeroTalentLearnResp { + DBHeroTalent telnet = 1; + int32 talentID = 2; // 刚学习的天赋ID +} + +// 重置天赋 +message HeroTalentResetReq { + string objId = 1; // 对象唯一id +} + +message HeroTalentResetResp { + DBHeroTalent telnet = 1; +} + +message HeroBuyReq{ + int32 buyType = 1; //类型 + int32 buyCount =2;// 购买的数量 +} + +message HeroBuyResp{ + bool IsSucc = 1; + int32 onebuy = 3; // 单次购买次数 + int32 tenbuy = 4; // 十连购买次数 +} + +// 首次获得英雄 +message HeroFirstGetPush { + repeated string heroId = 1; //英雄id +} \ No newline at end of file diff --git a/src/pb/temop/horoscope_db.proto b/src/pb/temop/horoscope_db.proto new file mode 100644 index 0000000..f45d864 --- /dev/null +++ b/src/pb/temop/horoscope_db.proto @@ -0,0 +1,9 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +//星座图数据 +message DBHoroscope { + string uid = 1; //@go_tags(`bson:"_id"`) + map nodes = 2; //节点信息 key:是节点id value:等级 + int64 lastrest = 3; //上次重置时间 +} \ No newline at end of file diff --git a/src/pb/temop/horoscope_msg.proto b/src/pb/temop/horoscope_msg.proto new file mode 100644 index 0000000..162862e --- /dev/null +++ b/src/pb/temop/horoscope_msg.proto @@ -0,0 +1,27 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "horoscope_db.proto"; + +//获取用户星座图信息 +message HoroscopeInfoReq {} + +//获取用户星座图信息 回应 +message HoroscopeInfoResp { DBHoroscope info = 1; } + +//升级节点 +message HoroscopeUpgradeReq { + int32 nid = 1; //配置文件里的Id 升级的目标数据 +} +//升级节点 +message HoroscopeUpgradeResp { + int32 nid = 1; //成长线id 配置文件里面的 节点 字段 + int32 lv = 2; +} + +//重置请求 +message HoroscopeResetReq {} +//重置请求 回应 +message HoroscopeResetResp { + bool issucc = 1; + DBHoroscope info = 2; +} \ No newline at end of file diff --git a/src/pb/temop/hunting_db.proto b/src/pb/temop/hunting_db.proto new file mode 100644 index 0000000..8f61e1e --- /dev/null +++ b/src/pb/temop/hunting_db.proto @@ -0,0 +1,27 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "battle_msg.proto"; + +message DBHunting { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + map boss = 3; // key boss 类型 value 难度 + int32 buyCount = 4;//@go_tags(`bson:"buyCount"`) 购买次数 + int64 cTime = 5; //@go_tags(`bson:"cTime"`) 修改时间 + map bossTime = 6; //@go_tags(`bson:"bossTime"`) + int64 recoveryTime = 7; //@go_tags(`bson:"recoveryTime"`) // 开始恢复的时间 +} + +// 狩猎排行榜 +message DBHuntingRank { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + int32 difficulty = 3; // 难度 + int32 bosstype = 4; // boss类型塔类型 + string nickname = 5;// 昵称 + string icon = 6; // 玩家头像 + int32 lv = 7; // 玩家等级 + int32 leadpos = 8; //队长位置 + repeated LineUp line = 9; // 阵容数据 + int32 costTime = 10; //@go_tags(`bson:"costTime"`) 闯关耗时 单位s +} \ No newline at end of file diff --git a/src/pb/temop/hunting_msg.proto b/src/pb/temop/hunting_msg.proto new file mode 100644 index 0000000..13877bb --- /dev/null +++ b/src/pb/temop/hunting_msg.proto @@ -0,0 +1,54 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "hunting_db.proto"; +import "battle_msg.proto"; +message HuntingGetListReq { + +} + +message HuntingGetListResp { + DBHunting data = 1; +} + +// 挑战 +message HuntingChallengeReq { + int32 bossType = 1; // boos 类型 + int32 difficulty = 2; // 难度 + BattleFormation battle = 3; +} + +message HuntingChallengeResp { + BattleInfo info = 1; + int32 bossType = 2; // boos 类型 + int32 difficulty = 3; // 难度 +} + +message HuntingChallengeOverReq { + int32 bossType = 1; // boos 类型 + int32 difficulty = 2; // 难度 + BattleReport report = 3; //战报 +} + +// 客户端通知服务器打赢了 +message HuntingChallengeOverResp { + DBHunting data = 1; +} + +// 购买 +message HuntingBuyReq { + int32 count = 1;// 购买次数 +} + +message HuntingBuyResp { + DBHunting data = 1; +} + +// 排行榜 +message HuntingRankListReq{ + int32 boosType = 1; // boss 类型 + bool friend = 2; // 是否是好友榜 +} + +message HuntingRankListResp{ + repeated DBHuntingRank ranks = 1; // 排行数据 有序的 注意boss类型 +} \ No newline at end of file diff --git a/src/pb/temop/items_db.proto b/src/pb/temop/items_db.proto new file mode 100644 index 0000000..ee9a0d4 --- /dev/null +++ b/src/pb/temop/items_db.proto @@ -0,0 +1,15 @@ +syntax = "proto3"; +option go_package = ".;pb"; + + +//背包格子 +message DB_UserItemData { + string gridId = 1; //@go_tags(`bson:"_id"`) 背包格子Id + string uId = 2; //@go_tags(`bson:"uid"`) 用户id + string itemId = 3; //@go_tags(`bson:"itemId"`) 存放物品的Id + uint32 amount = 4; //@go_tags(`bson:"amount"`) 存放物品的数量 + int64 cTime = 5; //@go_tags(`bson:"cTime"`) 物品获取时间 + int64 eTime = 6; //@go_tags(`bson:"eTime"`) 物品过期时间 + bool isNewItem = 7; //@go_tags(`bson:"isNewItem"`) 是否是新的 + int64 lastopt = 8; //@go_tags(`bson:"lastopt"`) 最后操作时间 +} diff --git a/src/pb/temop/items_msg.proto b/src/pb/temop/items_msg.proto new file mode 100644 index 0000000..5fa4e2b --- /dev/null +++ b/src/pb/temop/items_msg.proto @@ -0,0 +1,120 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "items_db.proto"; +import "comm.proto"; + +//查询用户背包请求 +message ItemsGetlistReq { + int32 IType = 1; //道具类型 +} + +//查询用户背包请求 回应 +message ItemsGetlistResp { + repeated DB_UserItemData Grids = 1; //用户背包列表 +} + +//背包变化推送 +message ItemsChangePush { + repeated DB_UserItemData Grids = 1; //变化数据 +} + +//使用物品请求 +message ItemsUseItemReq { + string GridId = 1; //格子Id + uint32 Amount = 2; //使用数量 + int32 Select = 3; //选择下标 +} + +//使用物品请求 回应 +message ItemsUseItemResp { + string GridId = 1; //格子Id + uint32 Amount = 2; //使用数量 + bool issucc = 3; //是否成功 +} + +//出售道具请求sailitem +message ItemsSellItemReq { + string GridId = 1; //格子Id + string ItemId = 2; //物品Id + uint32 Amount = 3; //使用数量 +} + +//出售道具请求 回应 +message ItemsSellItemResp { + string GridId = 1; //格子Id + uint32 Amount = 2; //使用数量 + bool issucc = 3; //是否成功 +} + +//分解道具 请求 +message ItemsDecomposeReq { + string GridId = 1; //格子Id + string ItemId = 2; //物品Id + uint32 Amount = 3; //使用数量 +} + +//分解道具 请求回应 +message ItemsDecomposeResp { + string GridId = 1; //格子Id + uint32 Amount = 2; //使用数量 + bool issucc = 3; //是否成功 +} + +//购买体力 +message ItemsBuyPhysicalReq { + uint32 Amount = 2; //购买数量 +} + +//购买体力 +message ItemsBuyPhysicalResp { + bool issucc = 1; //是否成功 + int32 PhysicalBuyNum = 2; //体力购买次数 + repeated UserAssets asets = 3 ; //获取资源 +} + +//批量出售接口 +message ItemsSellinbulkReq { + repeated string grids = 1; //格子Id + repeated uint32 amount = 2; //出售数量 +} + +//批量出售接口 +message ItemsSellinbulkResp { + repeated string grids = 1; //格子Id + repeated uint32 amount = 2; //出售数量 + repeated bool issucc = 3; //是否成功 +} + +//购买统一入场门票请求 +message ItemsBuyUnifiedTicketReq { + int32 BuyNum = 1; +} +//购买统一入场门票请求回应 +message ItemsBuyUnifiedTicketResp { + bool issucc = 1; + int32 buyunifiedticket = 2; //购买统一入场门票次数 + int64 recovertimeunifiedticket = 3;//同意门票恢复时间 +} + +//刷新统一入场卷 +message ItemsRefreshUnifiedTicketReq { + +} + +message ItemsRefreshUnifiedTicketResp { + +} + + +//魔药合成请求 +message ItemsPotionSynthesisReq { + int32 id = 1; //配方id + int32 succnum = 2; //成功数量 + int32 num = 3; //炼制数量 +} +//魔药合成请求 回应 +message ItemsPotionSynthesisResp { + bool succ = 1; + int32 id = 2; //配方id + int32 num = 3; //炼制数量 +} \ No newline at end of file diff --git a/src/pb/temop/library_db.proto b/src/pb/temop/library_db.proto new file mode 100644 index 0000000..75a940b --- /dev/null +++ b/src/pb/temop/library_db.proto @@ -0,0 +1,42 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +message DBLibrary { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + int32 fid = 3; // 配置表id 羁绊id + map hero = 4; // key: hid value: id + map prize = 5; //是否领奖 key 好感度等级 + int32 fetterlv = 6; // 当前羁绊等级 + int32 storyid = 7; // 故事id 用来判断是否领奖 + bool activation = 8; // 是否激活 + +} + +// 羁绊英雄数据 +message DBHeroFetter { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + string heroid = 3; // 英雄配置表id + repeated int32 history = 4; // 传记往事ID + int32 favorlv = 5; // 好感度等级 + int32 favorexp = 6; // 好感度经验 + repeated int32 stroyprize = 7; // 剧情奖励 + repeated int32 lvprize = 8; // 等级奖励 +} + +//羁绊剧情 +message DBFetterstory { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + map feeterTask = + 3; //@go_tags(`bson:"feeterTask"`) 已开启的羁绊任务 key:羁绊ID +} + +message FetterTasks { repeated int32 tasks = 1; } + +// 羁绊任务 +message FetterTask { + int32 taskId = 1; //@go_tags(`bson:"taskId"`) 任务Id + int32 status = 2; //@go_tags(`bson:"status"`) 状态 0锁定 1已完成 +} \ No newline at end of file diff --git a/src/pb/temop/library_msg.proto b/src/pb/temop/library_msg.proto new file mode 100644 index 0000000..9456a56 --- /dev/null +++ b/src/pb/temop/library_msg.proto @@ -0,0 +1,63 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "library_db.proto"; + +// 获取羁绊信息 +message LibraryGetListReq {} + +message LibraryGetListResp { repeated DBLibrary data = 1; } +// 获取英雄详细羁绊数据 +message LibraryGetFetterListReq {} + +message LibraryGetFetterListResp { repeated DBHeroFetter data = 1; } + +// 领取奖励 +message LibraryGetRewardReq { + string objId = 1; + int32 fetterlv = 2; // 羁绊等级 +} + +message LibraryGetRewardResp { DBLibrary data = 1; } +// 领取剧情奖励 +message LibraryGetStoryRewardReq { + string hid = 1; // 英雄ID + int32 history = 2; // 传记往事id + int32 rightend = 3; // 对应配置表 rightend +} + +message LibraryGetStoryRewardResp { DBHeroFetter data = 1; } + +// 给英雄赠送礼物 +message LibraryUseGiftReq { + string heroid = 1; // 英雄id + map items = 2; // key 道具ID value 数量 +} + +message LibraryUseGiftResp { DBHeroFetter data = 1; } + +// 激活羁绊 +message LibraryActivationFetterReq { + string oid = 1; //对象id +} + +message LibraryActivationFetterResp { DBLibrary data = 1; } + +// 羁绊数据变化推送 +message LibraryChangePush { + repeated DBLibrary data = 1; + repeated DBHeroFetter fetter = 2; // 羁绊详细信息 +} + +// 领取等级奖励 +message LibraryLvRewardReq { + string oid = 1; // 对象唯一id + int32 lv = 2; // 好感度等级 +} + +message LibraryLvRewardResp { DBHeroFetter data = 1; } + +// 羁绊剧情-我的主线任务 +message LibraryFetterstoryTaskReq { + int32 fetterId = 1; //羁绊ID +} +message LibraryFetterstoryTaskResp { repeated FetterTask list = 1; } diff --git a/src/pb/temop/linestory_db.proto b/src/pb/temop/linestory_db.proto new file mode 100644 index 0000000..4605d64 --- /dev/null +++ b/src/pb/temop/linestory_db.proto @@ -0,0 +1,23 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +message DBLinestory { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + map taskChapter = + 3; //@go_tags(`bson:"taskChapter"`) 已开启的章节 key:章节ID +} + +// 章节 +message TaskChapter { + int32 receive = + 1; //@go_tags(`bson:"receive"`) 章节奖励领取状态 0未领 1待领取 2已领取 + int32 status = 2; //@go_tags(`bson:"status"`) 完成状态 0未完成 1已完成 + repeated int32 taskIds = 3; //@go_tags(`bson:"taskIds"`) 完成的任务 +} + +// 主线任务 +message TaskMain { + int32 taskId = 1; //@go_tags(`bson:"taskId"`) 任务Id + int32 status = 2; //@go_tags(`bson:"status"`) 状态 0锁定 1已完成 +} \ No newline at end of file diff --git a/src/pb/temop/linestory_msg.proto b/src/pb/temop/linestory_msg.proto new file mode 100644 index 0000000..7b5b5e4 --- /dev/null +++ b/src/pb/temop/linestory_msg.proto @@ -0,0 +1,22 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "linestory_db.proto"; +import "comm.proto"; + +// 支线剧情章节 +message LinestoryChapterReq {} + +message LinestoryChapterResp { map taskChapter = 1; } + +// 支线剧情-我的主线任务 +message LinestoryMaintaskReq { + int32 chapterId = 1; //章节ID +} +message LinestoryMaintaskResp { repeated TaskMain list = 1; } + +// 章节奖励领取 +message LinestoryReceiveReq { int32 chapterId = 1; } +message LinestoryReceiveResp { + int32 chapterId = 1; + repeated UserAssets userAssets = 2; +} \ No newline at end of file diff --git a/src/pb/temop/mail_db.proto b/src/pb/temop/mail_db.proto new file mode 100644 index 0000000..606aa7b --- /dev/null +++ b/src/pb/temop/mail_db.proto @@ -0,0 +1,17 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "comm.proto"; + +message DBMailData { + string ObjId = 1; // @go_tags(`bson:"_id"`) ID + string Uid = 2; + string Title = 3; // 邮件标题 + string Contex = 4; // 邮件内容 + uint64 CreateTime = 5; // 发送时间 + uint64 DueTime = 6; // 过期时间 + bool Check = 7; // 是否查看 + bool Reward = 8; // 附件领取状态 + repeated UserAssets Items = 9; // 附件 + string Cid = 10; // 邮件的配置表ID + repeated string Param = 11; +} diff --git a/src/pb/temop/mail_msg.proto b/src/pb/temop/mail_msg.proto new file mode 100644 index 0000000..d49c479 --- /dev/null +++ b/src/pb/temop/mail_msg.proto @@ -0,0 +1,61 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "mail_db.proto"; +import "comm.proto"; + +message MailGetListReq { + +} + +// 查询邮件信息 +message MailGetListResp { + repeated DBMailData Mails = 1; +} + +// 查看邮件 +message MailReadMailReq { + string ObjID = 1; +} + +message MailReadMailResp { + DBMailData Mail = 1; +} + +// 领取附件 +message MailGetUserMailAttachmentReq { + string ObjID = 1; +} + +message MailGetUserMailAttachmentResp { + DBMailData Mail = 1; +} + +// 删除某个邮件 +message MailDelMailReq { + string ObjID = 1; +} + +message MailDelMailResp { + string ObjID = 1; // 返回删除邮件id +} + +// 推送邮件 +message MailGetNewMailPush{ + DBMailData Mail = 1; // 推送新的邮件信息 +} +// 领取所有附件 +message MailGetAllMailAttachmentReq { + +} + +message MailGetAllMailAttachmentResp { + repeated UserAssets res = 1; //资源类型 + repeated string ids = 2; // 已经领取的邮件唯一id +} +message MailDelAllMailReq { + +} + +message MailDelAllMailResp { + repeated DBMailData Mails = 1; +} diff --git a/src/pb/temop/mainline_db.proto b/src/pb/temop/mainline_db.proto new file mode 100644 index 0000000..2011c01 --- /dev/null +++ b/src/pb/temop/mainline_db.proto @@ -0,0 +1,18 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +enum AwaredType { + TypeNil = 0; + TypeAvailable = 1; // 可领取 + TypeReceived = 2; // 已领取 +} +message DBMainline { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + int32 chapterId = 3; //@go_tags(`bson:"chapterId"`) 章节ID + int32 mainlineId = 4; //@go_tags(`bson:"mainlineId"`) 主线关卡ID + AwaredType awaredID = 5; //@go_tags(`bson:"awaredID"`) 是否领奖(设置int是考虑后续扩展有多个宝箱情况) + repeated int32 branchID = 6; // @go_tags(`bson:"branchID"`) 记录所有通关的关卡数据 + int32 intensity = 7; // 难度 + int32 ps = 8;// 预扣的体力 +} \ No newline at end of file diff --git a/src/pb/temop/mainline_msg.proto b/src/pb/temop/mainline_msg.proto new file mode 100644 index 0000000..570f2a3 --- /dev/null +++ b/src/pb/temop/mainline_msg.proto @@ -0,0 +1,53 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "mainline_db.proto"; +import "battle_msg.proto"; +// 查询关卡进度 +message MainlineGetListReq { + +} +// 返回进度信息 +message MainlineGetListResp { + repeated DBMainline data = 1; +} + +// 领取关卡宝箱 +message MainlineGetRewardReq { + string chapterObj = 1; // 章节唯一对象id +} + +message MainlineGetRewardResp { + DBMainline data = 1; //当前章节信息 +} + +// 挑战关卡 +message MainlineChallengeReq { + string chapterObj = 1; // 章节唯一对象id + uint32 mainlineId = 2; // 小关ID + int32 leadpos = 3; //队长位置 + repeated string teamids = 4; //阵容信息 +} + +message MainlineChallengeResp { + BattleInfo info = 1; + string chapterObj = 2; // 章节唯一对象id + uint32 mainlineId = 3; // 小关ID +} + +// 客户端通知服务器打赢了 +message MainlineChallengeOverReq { + string chapterObj = 1; // 章节唯一对象id + uint32 mainlineId = 2; // 小关ID + BattleReport report = 3; //战报 +} + +message MainlineChallengeOverResp { + DBMainline data = 1; //当前章节信息 + repeated string newheros = 2; //获得的新英雄 + int32 olv = 3; //以前的等级 +} + +// 推送新章节 +message MainlineNewChapterPush{ + DBMainline data = 1; +} \ No newline at end of file diff --git a/src/pb/temop/martialhall_db.proto b/src/pb/temop/martialhall_db.proto new file mode 100644 index 0000000..6900135 --- /dev/null +++ b/src/pb/temop/martialhall_db.proto @@ -0,0 +1,32 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +enum PillarState { + NoUse = 0; //未使用 + Useing = 1; //使用中 + Receive = 2; //待领取 +} + +///练功柱子 +message DBPillar { + int32 index = 1; //柱子下标 + bool isunlock = 2; //是否解锁 + PillarState state = 3; //状态 + string hero = 4; //当前练功英雄 + int64 start = 5; //开始时间 + int64 end = 6; //结束时间 + int64 lastbill = 7; //上次结账时间 + int32 reward = 8; //奖励 +} + +//练功房 +message DBMartialhall { + string id = 1; //组件id + string uid = 2; //用户id + int32 lv = 3; //武馆等级 + DBPillar pillar1 = 4; //柱子1 + DBPillar pillar2 = 5; //柱子2 + DBPillar pillar3 = 6; //柱子3 + DBPillar pillar4 = 7; //柱子4 + DBPillar pillar5 = 8; //柱子5 +} \ No newline at end of file diff --git a/src/pb/temop/martialhall_msg.proto b/src/pb/temop/martialhall_msg.proto new file mode 100644 index 0000000..d57341a --- /dev/null +++ b/src/pb/temop/martialhall_msg.proto @@ -0,0 +1,45 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "martialhall_db.proto"; + +///信息请求 +message MartialhallInfoReq {} +///信息请求 回应 +message MartialhallInfoResp { DBMartialhall info = 1; } +///练功请求 +message MartialhallPracticeReq { + int32 pillar = 1; //柱子 + string hero = 2; //英雄 + int32 time = 3; //修炼时长 +} +///练功请求 回应 +message MartialhallPracticeResp { + bool issucc = 1; //是否成功 + DBMartialhall info = 2; +} + +///领取 请求 +message MartialhallReceiveReq { int32 pillar = 1; } +///领取 回应 +message MartialhallReceiveResp { + int32 pillar = 1; +} + +///升级 请求 +message MartialhallUpgradeReq {} + +///升级 请求回应 +message MartialhallUpgradeResp { + bool issucc = 1; + DBMartialhall info = 2; +} + +///解锁 请求 +message MartialhallUnLockReq { + int32 pillar = 1; //柱子 +} +///解锁 请求 回应 +message MartialhallUnLockResp { + bool issucc = 1; + DBMartialhall info = 2; +} \ No newline at end of file diff --git a/src/pb/temop/mline_db.proto b/src/pb/temop/mline_db.proto new file mode 100644 index 0000000..9d4f33e --- /dev/null +++ b/src/pb/temop/mline_db.proto @@ -0,0 +1,13 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +message DBMline { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + int32 cType = 3; //@go_tags(`bson:"cType"`) 章节类型 + int32 chapterId = 4; //@go_tags(`bson:"chapterId"`) 章节ID + int32 stageId = 5; //@go_tags(`bson:"stageId"`) 主线关卡ID + map star = 6;// 关卡对应的星级 (key 关卡ID value 星数) + map award = 7; //@go_tags(`bson:"award"`) (key 配置表星级) + map ps = 8;// 预扣的体力 +} \ No newline at end of file diff --git a/src/pb/temop/mline_msg.proto b/src/pb/temop/mline_msg.proto new file mode 100644 index 0000000..c82a0a6 --- /dev/null +++ b/src/pb/temop/mline_msg.proto @@ -0,0 +1,58 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "mline_db.proto"; +import "battle_msg.proto"; +import "comm.proto"; + +// 查询关卡进度 +message MlineGetListReq { + int32 cType = 1; // 章节类型 +} + +// 返回进度信息 +message MlineGetListResp { + repeated DBMline data = 1; +} + +// 领取关卡宝箱 +message MlineGetRewardReq { + int32 cId = 1; // 章节配置表唯一ID + int32 star = 2; // 星级奖励 +} + +message MlineGetRewardResp { + DBMline data = 1; //当前章节信息 + repeated UserAssets reward = 2; // 奖励 +} + +// 挑战关卡 +message MlineChallengeReq { + int32 stageId = 1; // 小关ID + BattleFormation battle = 2; +} + +message MlineChallengeResp { + BattleInfo info = 1; + int32 stageId = 2; // 小关ID +} + +// 客户端通知服务器打赢了 +message MlineChallengeOverReq { + int32 stageId = 1; // 小关ID + BattleReport report = 3; //战报 +} + +message MlineChallengeOverResp { + DBMline data = 1; //当前章节信息 + repeated UserAssets reward = 2; // 奖励 +} + +// 扫荡关卡 +message MlineCleanStageReq { + int32 stageId = 1; // 小关ID +} + +message MlineCleanStageResp { + int32 stageId = 1; // 小关ID + repeated UserAssets reward = 2; // 奖励 +} \ No newline at end of file diff --git a/src/pb/temop/moonfantasy_db.proto b/src/pb/temop/moonfantasy_db.proto new file mode 100644 index 0000000..d6b4620 --- /dev/null +++ b/src/pb/temop/moonfantasy_db.proto @@ -0,0 +1,39 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +message UserInfo { + string uid = 1; //用户id + string name = 2; //昵称 + string avatar = 3; // 头像 + int32 lv = 4; //等级 +} + +//月之秘境 +message DBMoonFantasy { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //用户id + string monster = 3; //怪物id + int64 ctime = 4; //创建时间 + repeated UserInfo join = 5; //参与人数 + int32 numup = 6; //人数上限 + int32 unitmup = 7; //单人可挑战次数 + int64 expir = 8; //过期时间 + map record = 9; //挑战记录 +} + +//用户参与的月之秘境列表 +message DBUserMFantasy { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //用户id + int32 triggerNum = 3; //@go_tags(`bson:"triggerNum"`) 月之秘境触发次数 + // int32 ticket = 4; //@go_tags(`bson:"ticket"`)挑战券 + int32 buyNum = 5; //@go_tags(`bson:"buyNum"`) 月之秘境挑战次数 + int64 lastTrigger = 6; //@go_tags(`bson:"lastTrigger"`) 月之秘境最后触发时间 + int64 lastrtickettime = 7;//@go_tags(`bson:"lastrtickettime"`) 最后回复劵时间 +} + +//RPC 触发请求 +message RPCTargetMFReq { + string uid = 1; //用户id + string boosid = 2; //怪物id +} \ No newline at end of file diff --git a/src/pb/temop/moonfantasy_msg.proto b/src/pb/temop/moonfantasy_msg.proto new file mode 100644 index 0000000..f96d5db --- /dev/null +++ b/src/pb/temop/moonfantasy_msg.proto @@ -0,0 +1,63 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "errorcode.proto"; +import "moonfantasy_db.proto"; +import "battle_msg.proto"; + +//获取秘境列表请求 +message MoonfantasyGetListReq {} +//获取秘境列表请求 回应 +message MoonfantasyGetListResp { + int32 battleNum = 1; //剩余挑战次数 + int32 buyNum = 2; //已购买次数 + repeated DBMoonFantasy dfantasys = 3; //秘境列表 +} + +///推送触发秘境 +message MoonfantasyTriggerPush { + bool issucc = 1; //是否成功 + string mid = 2; //唯一id //挑战时需要传递的数据 + string monster = 3; //怪物id +} + +///询问秘境 +message MoonfantasyAskReq { + string mid = 1; //唯一id +} + +message MoonfantasyAskResp { + ErrorCode code = 1; //是否成功 + DBMoonFantasy info = 2; //秘境信息 可能为空 +} + +///挑战秘境 +message MoonfantasyBattleReq { + string mid = 1; //唯一id + BattleFormation battle = 2; //战斗类型 +} + +message MoonfantasyBattleResp { + ErrorCode code = 1; //是否成功 + string mid = 2; //怪物id + BattleInfo info = 3; +} + +///领取战斗奖励 +message MoonfantasyReceiveReq { + string bid = 2; //战斗id 后续需要这个id来领取奖励 + string mid = 3; //怪物id + BattleReport report = 4; //战报 +} + +///领取战斗奖励 +message MoonfantasyReceiveResp { + bool issucc = 1; //是否成功 +} + +///购买挑战次数 +message MoonfantasyBuyReq { int32 BuyNum = 1; } +///购买挑战次数 回应 +message MoonfantasyBuyResp { + bool issucc = 1; //是否成功 + int32 BattleNum = 2; //当前挑战次数 +} \ No newline at end of file diff --git a/src/pb/temop/notify_db.proto b/src/pb/temop/notify_db.proto new file mode 100644 index 0000000..bee9b6d --- /dev/null +++ b/src/pb/temop/notify_db.proto @@ -0,0 +1,12 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +//系统公告数据结构 +message DBSystemNotify { + string id = 1; //数据公告Id + string title = 2; //公告标题 + string content = 3; //公告内容 + bool istop = 4; //是否置顶 + int64 ctime = 5; //创建时间 + int64 rtime = 6; //发布时间 +} \ No newline at end of file diff --git a/src/pb/temop/notify_msg.proto b/src/pb/temop/notify_msg.proto new file mode 100644 index 0000000..d777594 --- /dev/null +++ b/src/pb/temop/notify_msg.proto @@ -0,0 +1,25 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "comm.proto"; +import "errorcode.proto"; +import "notify_db.proto"; +import "google/protobuf/any.proto"; + +//统一错误码推送 +message NotifyErrorNotifyPush { + string ReqMainType = 1; // 请求协议模块 模块名 例如:user 对应项目中 user的模块 + string ReqSubType = 2; // 请求协议函数 例如:login 对应项目中 user的模块中 + // api_login 的处理函数 + ErrorCode Code = 3; // 执行返回错误码 对应 errorcode.proto 枚举 + google.protobuf.Any arg = 4; //参数信息 + ErrorData err = 5; //错误数据 +} + +//获取系统公告 请求 +message NotifyGetListReq {} + +//获取系统公告 回应 +message NotifyGetListResp { + int64 LastReadTime = 1; //最后一次阅读时间 + repeated DBSystemNotify SysNotify = 2; //公告列表 +} \ No newline at end of file diff --git a/src/pb/temop/pagoda_db.proto b/src/pb/temop/pagoda_db.proto new file mode 100644 index 0000000..5e3a3b0 --- /dev/null +++ b/src/pb/temop/pagoda_db.proto @@ -0,0 +1,30 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "battle_msg.proto"; + +message DBPagoda { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + int32 pagodaId = 3; //@go_tags(`bson:"pagodaId"`) 塔层 + map reward = 4; // 是否领奖 + int32 type = 5; + bool complete = 6; // 是否通关 + int32 passCheckID = 7; // 战令领奖ID + int32 vipPassCheckID = 8; // vip战令领奖ID + map data = 9; // key 页签 value 层数 +} + + +// 爬塔数据明细 +message DBPagodaRecord { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + int32 pagodaId = 3; //@go_tags(`bson:"pagodaId"`) 塔层 + int32 type = 4; // 塔类型 + string nickname = 5;// 昵称 + string icon = 6; // 头像 + int32 lv = 7; // 等级 + int32 leadpos = 8; //队长位置 + repeated LineUp line = 9; // 阵容数据 + int32 costTime = 10; //@go_tags(`bson:"costTime"`) 闯关耗时 单位s +} \ No newline at end of file diff --git a/src/pb/temop/pagoda_msg.proto b/src/pb/temop/pagoda_msg.proto new file mode 100644 index 0000000..9dd25a5 --- /dev/null +++ b/src/pb/temop/pagoda_msg.proto @@ -0,0 +1,79 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "pagoda_db.proto"; +import "battle_msg.proto"; +import "comm.proto"; +// 查询塔进度 +message PagodaGetListReq { + +} +// 返回进度信息 +message PagodaGetListResp { + DBPagoda data = 1; +} + +// 领取关卡宝箱 +message PagodaGetRewardReq { + int32 id = 1; // 对应 task_reward 表中的id +} + +message PagodaGetRewardResp { + DBPagoda data = 1; +} + +message PagodaChallengeReq { + int32 cid = 1; // 塔的配置id + BattleFormation battle = 3; +} + +message PagodaChallengeResp { + BattleInfo info = 1; + int32 cid = 2; // 塔的配置id +} + +// 客户端通知服务器打赢了 +message PagodaChallengeOverReq { + int32 cid = 1; // 塔的配置id + BattleReport report = 3; //战报 +} + +message PagodaChallengeOverResp { + DBPagoda data = 1; +} + +// 排行榜 +message PagodaRankListReq{ + int32 cid = 1; // + bool friend = 2; // true 好友榜 +} + +message PagodaRankListResp{ + repeated DBPagodaRecord ranks = 1; +} + +// 查询玩家最佳通关记录数据 +message PagodaQueryRecordReq{ + +} + +message PagodaQueryRecordResp{ + DBPagodaRecord data = 1; +} + +// 激活赛季塔 +message PagodaActivateReq{ + +} + +message PagodaActivateResp{ + DBPagoda data = 1; +} +// 领取战令奖励 +message PagodaWarOrderReq{ + +} + +message PagodaWarOrderResp{ + DBPagoda data = 1; + repeated UserAssets itmes = 2;// 获得的奖励 +} \ No newline at end of file diff --git a/src/pb/temop/pandatakekan_db.proto b/src/pb/temop/pandatakekan_db.proto new file mode 100644 index 0000000..5f8c072 --- /dev/null +++ b/src/pb/temop/pandatakekan_db.proto @@ -0,0 +1,36 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +enum PandataPillarState { + NoUse = 0; //未使用 + Useing = 1; //使用中 + Receive = 2; //待领取 +} +///熊猫柱子 +message DBPandataPillar { + int32 index = 1; //柱子下标 + bool isunlock = 2; //是否解锁 + PandataPillarState state = 3; //状态 + string hero = 4; //当前练功英雄 + int64 start = 5; //开始时间 + int64 end = 6; //结束时间 + int64 lastbill = 7; //上次结账时间 + int32 reward = 8; //奖励 +} + +//熊猫武馆教习 +message DBPandataTeacher { + string id = 1; //id + string cid = 2; //配置id + string student =3; //学员id 有表示正在教学,没有表示没有教学 +} + +//练功房 +message DBPandataKekan { + string id = 1; //id + string uid = 2; //用户id + DBPandataPillar pillar1 = 4; //柱子1 + DBPandataPillar pillar2 = 5; //柱子2 + DBPandataPillar pillar3 = 6; //柱子3 + DBPandataPillar pillarf = 7; //好友柱子 +} \ No newline at end of file diff --git a/src/pb/temop/pandatakekan_msg.proto b/src/pb/temop/pandatakekan_msg.proto new file mode 100644 index 0000000..c2730f6 --- /dev/null +++ b/src/pb/temop/pandatakekan_msg.proto @@ -0,0 +1,28 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "pandatakekan_db.proto"; + +///信息请求 +message PandataKekanInfoReq {} +///信息请求 回应 +message PandataKekanInfoResp { DBPandataKekan info = 1; } + +///解锁请求 +message PandataKekanUnLockReq {} +message PandataKekanUnLockResp {} + +///练功请求 +message PandataKekanPracticeReq {} +message PandataKekanPracticeResp {} + +///蹭馆请求 +message PandataKekanLootReq {} +message PandataKekanLootResp {} + +///驱逐 +message PandataKekanExpulsionReq {} +message PandataKekanExpulsionResp {} + +///领取收益 +message PandataKekanReceiveReq {} +message PandataKekanReceiveResp {} \ No newline at end of file diff --git a/src/pb/temop/parkour_db.proto b/src/pb/temop/parkour_db.proto new file mode 100644 index 0000000..14e988f --- /dev/null +++ b/src/pb/temop/parkour_db.proto @@ -0,0 +1,58 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +enum RaceType { + ordinary = 0; + prop = 1; +} + +//队伍状态 +enum RaceTeamState { + teaming = 0; //组队中 + matching = 1; //匹配中 + raceing = 2; //比赛中 +} + +//队员信息 +message DBRaceMember { + string uid = 1; //用户id + string name = 2; //用户名称 + string avatar = 3; //用户头像 + string mount = 4; //上阵坐骑 + int32 hp = 5; //初始血量 + int32 innermost = 6; //里程数 + bool ready = 7; //是否准备 + bool isai = 8; //是否是ai + bool isoff = 9; //是否离线 +} + +message DBRaceInvite { + string uid = 1; //用户id + string name = 2; //用户名称 + string avatar = 3; //用户头像 + int64 expired = 4; //过期时间 +} + +//个人竞赛信息 +message DBParkour { + string id = 1; //@go_tags(`bson:"_id"`) 队伍id + string uid = 2; //用户id + map mounts = 3; //坐骑列表 + string dfmount = 4; //默认坐骑 + RaceTeamState state = 5; //队伍状态 + int32 integral = 6; //积分 + string captainid = 7; //队长id 当前所在队伍 + repeated DBRaceInvite invite = 8; //邀请列表 + repeated DBRaceMember member = 9; //成员列表 +} + +//比赛数据 +message DBRace { + string id = 1; //@go_tags(`bson:"_id"`) 比赛唯一id + string servicePath = 2; //比赛所在服务 + RaceType rtype = 3; //比赛类型 + int32 trackid = 4; //赛道id + int32 innermost =5; //里程数 + repeated DBRaceMember redmember = 6; //红方队伍 + repeated DBRaceMember bulemember = 7; //蓝方队伍 +} diff --git a/src/pb/temop/parkour_msg.proto b/src/pb/temop/parkour_msg.proto new file mode 100644 index 0000000..b428e9d --- /dev/null +++ b/src/pb/temop/parkour_msg.proto @@ -0,0 +1,157 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "parkour_db.proto"; + +//请求比赛信息 +message ParkourInfoReq { + +} + +//请求比赛信息请求 +message ParkourInfoResp { + DBParkour info = 1; + repeated DBParkour recommend = 2; +} + +//推送捕羊大赛用户信息改变 +message ParkourInfoChangePush { + DBParkour info = 1; +} + +//组队邀请请求 +message ParkourInviteReq { + string uid = 1; //邀请队友 +} +//组队邀请回应 +message ParkourInviteResp { + bool issucc = 1; + DBParkour team = 2; +} +//组队邀请通知推送 +message ParkourInviteNoticePush { + DBParkour team = 1; + int32 state = 2; //1 发起请求 2拒绝请求 3接收请求 +} +//推送队伍对变化通知 +message ParkourTeamChanagePush { + DBParkour team = 1; +} + +//邀请处理请求 +message ParkourInviteHandleReq{ + string captainid = 1; //队长id + int32 state = 2; //2拒绝请求 3接收请求 +} + +message ParkourInviteHandleResp{ + bool isSucc = 1; +} + +//退出 请求 +message ParkourQuitTeamReq { + string captainid = 1; //队长id +} +//退出 回应 +message ParkourQuitTeamResp { + +} +//队伍成员加入推送 +message ParkourTeamJoinNoticePush { + DBRaceMember member = 1; +} +//队伍成员退出推送 +message ParkourTeamQuitNoticePush { + DBRaceMember member = 1; +} +//队伍解散通知推送 +message ParkourTeamDisbandNoticePush { + +} + +//匹配请求 +message ParkourRaceMatchReq { + +} + +//匹配请求 +message ParkourRaceMatchResp { + +} + +//匹配成功 +message ParkourRaceMatchSuccPush { + DBRace race = 1; +} + +//准备完毕 +message ParkourReadyReq { + string id = 1; +} +//准备完毕 +message ParkourReadyResp { + +} + +//竞速开始推送 +message ParkourRaceStartPush { + int32 countdown = 1; //倒计时 +} + +//射门请求 +message ParkourShotReq { + string id = 1; +} + +//射门请求 +message ParkourShotResp { + +} + +//躲避障碍请求 +message ParkourAvoidReq { + string id = 1; + int32 distance = 2; +} + +//躲避障碍请求 回应 +message ParkourAvoidResp { + +} + +//全员冲刺 +message ParkourAllSprintsPush { + +} + +//比赛数值变化推送 +message ParkourRaceChanagePush { + DBRace race = 1; +} + +//比赛 +message ParkourRaceOverPush { + DBRace race = 1; +} + + + + +///匹配请求 RPC消息定义 服务器自用 客户端不用理会 +message RPCParkourJoinMatchReq { + string captainid = 1; //队长id + repeated DBRaceMember member = 2; //成员数 +} + +///RPC消息定义 服务器自用 客户端不用理会 +message RPCParkourJoinMatchResp { +} + +///匹配成功通知请求 +message RPCParkourMatchSuccReq { + repeated DBRaceMember red = 2; //临时红队 + repeated DBRaceMember bule = 3; //临时蓝队 +} +///匹配成功通知请求 +message RPCParkourMatchSuccResp { + +} \ No newline at end of file diff --git a/src/pb/temop/pay_db.proto b/src/pb/temop/pay_db.proto new file mode 100644 index 0000000..bd4c938 --- /dev/null +++ b/src/pb/temop/pay_db.proto @@ -0,0 +1,29 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +//支付订单数据表 +message DBPayOrder { + string orderid = 1; + string uid = 2; + string productid = 3; + int64 ctime = 4; +} + +// +message DBUserPay { + string uid = 1; //用户id + map record = 2; //商品购买次数 +} + +//每日商城商品数据 +message PayDailyItem { + int32 id = 1; + int32 buyunm = 2; + int64 lastrefresh = 3; +} + +//用户每日礼包 +message DBPayDaily { + string uid = 1; //用户id + map items = 2; //商品购买次数 +} \ No newline at end of file diff --git a/src/pb/temop/pay_msg.proto b/src/pb/temop/pay_msg.proto new file mode 100644 index 0000000..b767832 --- /dev/null +++ b/src/pb/temop/pay_msg.proto @@ -0,0 +1,47 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "pay_db.proto"; +import "comm.proto"; +import "errorcode.proto"; + +//充值记录 +message PayRecordReq { + +} +//充值记录 +message PayRecordResp{ + DBUserPay info = 1; +} + + +//用户重置信息获取 +message PayInfoReq {} +message PayInfoResp { DBPayDaily info = 1; } + +//购买每日礼包 +message PayDailyBuyReq { int32 id = 1; } +message PayDailyBuyResp { bool isucc = 1; repeated UserAssets items = 2;} + + +//充值完成推送 +message PayShippedPush { + string pid = 1; + string orderid = 2; + repeated UserAssets items = 3; + DBUserPay info = 4; +} + +///支付系统发货请求 +message PayDeliveryReq { + string uid = 1; + string orderid = 2; + string productid = 3; + int32 price = 4; + int32 amount = 5; +} +///支付系统发货请求 回应 +message PayDeliveryResp { + ErrorCode code = 1; //@go_tags(`json:"s""`) 头像 + string msg = 2; + string data = 3; +} diff --git a/src/pb/temop/practice_db.proto b/src/pb/temop/practice_db.proto new file mode 100644 index 0000000..100c4d9 --- /dev/null +++ b/src/pb/temop/practice_db.proto @@ -0,0 +1,71 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "battle_db.proto"; + +///熊猫柱子 +message DBPracticePillar { + int32 index = 1; //柱子下标 + int32 lv = 2; //柱子等级 + int32 isunlock = 3; //是否解锁 0不能解锁 1可解锁 2已解锁 + string uid = 4; //英雄uid + string hero = 5; //当前练功英雄 + string teacher = 6; //教习 + string prop = 7; //道具 + int64 start = 8; //开始时间 + int64 end = 9; //结束时间 + int64 expend = 10; //经验上限时间 +} + +//熊猫武馆教习 +message DBPracticeTeacher { + string id = 1; //id + string cid = 2; //配置id + string student =3; //学员id 有表示正在教学,没有表示没有教学 +} + +//雕像 +message DBPracticeStatuer { + string uid = 1; + int32 figure = 2; + string name = 3; + string unionname = 4; + int64 end = 5; +} + +//练功房 +message DBPracticeRoom { + string id = 1; //@go_tags(`bson:"_id"`) id + string uid = 2; //用户id + int32 gymaction = 3; //健身房动作 + int32 gymrefresh = 4; //健身房刷新次数 + int64 lastrefresh = 5; //最后刷新时间 + map full = 6; //满级登记 + map knapsack = 7; //资源 + DBPracticePillar pillar1 = 8; //柱子1 + DBPracticePillar pillar2 = 9; //柱子2 + DBPracticePillar pillar3 = 10; //柱子3 + DBPracticePillar pillarf = 11; //好友柱子 + repeated DBPracticeStatuer statuers= 12; //武馆雕像 + int32 currnpc = 13; //当前npc + int32 npcstate = 14; //npc状态 0 未挑战 1 挑战失败 2挑战成功 3 CD中 + int64 refresh = 15; //刷新时间 + int32 battlenum = 16; //战斗次数 + int32 captain = 17; //战斗征信队长位 + repeated BattleRole formation = 18; //战斗阵型 +} + +message DBPracticeQiecuoInvite { + string uid = 1; + int64 timestamp = 2; +} + + +//切磋请求记录 +message DBPracticeQiecuoRecord{ + string id = 1; //@go_tags(`bson:"_id"`) id + string uid = 2; //发起人id + repeated DBPracticeQiecuoInvite targets = 3; + int32 status = 4; //0邀请中 1战斗中 + string battid = 5; + repeated string member = 6; //接受方id +} \ No newline at end of file diff --git a/src/pb/temop/practice_msg.proto b/src/pb/temop/practice_msg.proto new file mode 100644 index 0000000..f3ce6e2 --- /dev/null +++ b/src/pb/temop/practice_msg.proto @@ -0,0 +1,220 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "errorcode.proto"; +import "practice_db.proto"; +import "battle_msg.proto"; +import "pvp_db.proto"; + + + +///信息请求 +message PracticeInfoReq {} +///信息请求 回应 +message PracticeInfoResp { DBPracticeRoom info = 1; } + +///推送自己的房价数据变化 +message PracticeRommChangePush{ + DBPracticeRoom info = 1; +} + +///请求好友武馆房间信息 +message PracticeFriendRommReq { + repeated string fuid = 1; +} +///请求好友武馆房间信息 回应 +message PracticeFriendRommResp { + map infos = 1; +} +///升级请求 +message PracticeUnLockReq { + int32 index = 1; //柱子id +} +message PracticeUnLockResp { + DBPracticeRoom info = 1; +} + + +///升级请求 +message PracticeUpgradeReq { + int32 index = 1; //柱子id +} +message PracticeUpgradeResp { + int32 index = 1; //柱子id + int32 lv = 2; +} + +///练功请求 +message PracticePracticeReq { + int32 index = 1; //柱子id + string hero = 2; //训练英雄id + string teacher = 3; //教习id + string prop = 4; //道具id +} +message PracticePracticeResp { + DBPracticePillar pillar = 1; +} + +///蹭馆请求 +message PracticeLootReq { + string friend = 1; //好友id + string hero = 2; //训练英雄id + string teacher = 3; //教习id + string prop = 4; //道具id +} +message PracticeLootResp { + string friend = 1; //好友id + DBPracticePillar pillar = 2; +} + +///驱逐 +message PracticeExpulsionReq { + +} +message PracticeExpulsionResp { + DBPracticePillar pillar = 1; + map knapsack = 2; //资源 +} + +///自己的英雄被驱逐推送 +message PracticeBeExpulsionPush{ + string fuid = 1; + DBPracticePillar pillar = 2; + map knapsack = 3; //资源 +} + + +///领取收益 +message PracticeReceiveReq { + int32 index = 1; //柱子id + string friend = 2; //好友id +} +message PracticeReceiveResp { + DBPracticePillar pillar = 1; + map knapsack = 2; //资源 +} + +///登记满级英雄 +message PracticeEnrolledReq { + int32 group = 1; + repeated string hero = 2; +} +///登记满级英雄 回应 +message PracticeEnrolledResp{ + int32 group = 1; + repeated string hero = 2; +} + +///练功道具和教习推送 +message PracticeJXItemPush{ + repeated string id = 1; +} + + +///健身获得buff请求 +message PracticeGymInfoReq { + +} +///健身获得buff请求 +message PracticeGymInfoResp { + int32 lastaction = 1; + int32 refreshnum = 2; +} + +message PracticeGymRefreshReq { + +} + +message PracticeGymRefreshResp { + int32 lastaction = 1; + int32 refreshnum = 2; +} + +///健身获得buff请求 +message PracticeGetGymBuffReq { + int32 posture = 1; +} + +///健身获得buff请求 回应 +message PracticeGetGymBuffResp { + int32 buffid = 1; +} + + +///健身 确认buff 请求 +message PracticeGymConfirmReq { + int32 buffid = 1; +} + +///健身 确认buff 请求回应 +message PracticeGymConfirmResp { + int32 buffid = 1; +} + + +///武馆切磋请求 +message PracticeQiecuoReq { + string fid = 1; +} +message PracticeQiecuoResp { + string fid = 1; + bool isbattle = 2; + DBPvpBattle battle = 3; +} + + +//接受切磋 +message PracticeAcceptReq{ + string uid = 1; //切磋发起者 +} + +message PracticeAcceptResp{ + bool isSucc = 1; +} + + + +//拒绝切磋 +message PracticeRefuseReq{ + string uid = 1; //切磋发起者 +} + +message PracticeRefuseResp{ + bool isSucc = 1; + +} + + +//切磋通知 +message PracticeQiecuonotifyPush{ + string uid = 1; //发起者(切磋) + string name = 2; //发起者用户名 + int32 notifyType = 3; //1发起通知 2接受通知 3拒绝通知 +} + +//NPC战斗请求 +message PracticeNPCBattkleReq { + BattleFormation formation = 1; //战斗类型 +} +//NPC战斗请求 回应 +message PracticeNPCBattkleResp { + ErrorCode code = 1; //是否成功 + BattleInfo info = 2; +} + +//NPC战斗结束请求 +message PracticeNPCBattkleFinishReq { + BattleReport report = 1; //战报 +} +//NPC战斗结束请求 回应 +message PracticeNPCBattkleFinishResp { + bool issucc = 1; //是否成功 +} + +//NPC对话 请求 +message PracticeNPCDialogReq{ + +} +//NPC对话 请求 +message PracticeNPCDialogResp{ + bool issucc = 1; //是否成功 +} \ No newline at end of file diff --git a/src/pb/temop/privilege_db.proto b/src/pb/temop/privilege_db.proto new file mode 100644 index 0000000..00c3fbd --- /dev/null +++ b/src/pb/temop/privilege_db.proto @@ -0,0 +1,24 @@ +syntax = "proto3"; +option go_package = ".;pb"; + // vip 月卡特权 +message DBPrivilege { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + string cId = 3; //@go_tags(`bson:"cId"`) 计费点数ID + int64 cTime = 4; //@go_tags(`bson:"cTime"`) //购买时间 + int64 eTime = 5; //@go_tags(`bson:"eTime"`) //到期时间 + int64 rewardTime = 6; //@go_tags(`bson:"rewardTime"`) 每日奖励时间 +} + +message PrivilegeList{ + repeated int32 privilegeID = 1; //@go_tags(`bson:"privilegeID"`) 特权ID +} + +message DBVip { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + map reward= 3; // key vip 等级 + map privilege = 4;//@go_tags(`bson:"privilege"`) 特权ID + int64 cTime = 5; //@go_tags(`bson:"cTime"`) //购买时间 + int64 rewardTime = 6; //@go_tags(`bson:"rewardTime"`) 每日奖励时间 +} \ No newline at end of file diff --git a/src/pb/temop/privilege_msg.proto b/src/pb/temop/privilege_msg.proto new file mode 100644 index 0000000..9ffa40b --- /dev/null +++ b/src/pb/temop/privilege_msg.proto @@ -0,0 +1,38 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "privilege_db.proto"; +// 查询特权列表 +message PrivilegeGetListReq { + +} +// 返回特权列表数据 +message PrivilegeGetListResp { + repeated DBPrivilege data = 1; +} + +// 购买月卡 +message PrivilegeBuyYuekaReq { + string cID = 1; + +} + +message PrivilegeBuyYuekaResp { + repeated DBPrivilege data = 1; +} + +message PrivilegeBuyGiftReq { + int32 vipLv = 1; // vip 等级 + +} + +message PrivilegeBuyGiftResp { + DBVip data = 1; +} + +message PrivilegeVipListReq { + +} + +message PrivilegeVipListResp { + DBVip data = 1; +} \ No newline at end of file diff --git a/src/pb/temop/protoc.exe b/src/pb/temop/protoc.exe new file mode 100644 index 0000000..bfeb457 Binary files /dev/null and b/src/pb/temop/protoc.exe differ diff --git a/src/pb/temop/pvp_db.proto b/src/pb/temop/pvp_db.proto new file mode 100644 index 0000000..926b215 --- /dev/null +++ b/src/pb/temop/pvp_db.proto @@ -0,0 +1,31 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +//Pvp类型 +enum PvpType{ + friends = 0; //好友切磋 +} + +enum PvpState { + void = 0; //无效状态 + ready = 1; //准备中 + battle = 2; //战斗中 + cancel = 3; //战斗取消 + finish = 4; //战斗结束 +} + +message PvpUserInfo { + string uid = 1; + string name = 2; + string avatar = 3; + int32 lv = 4; +} + +message DBPvpBattle { + string id = 1; //战斗id + string servicePath = 2; //战斗区服地址 + PvpType ptype = 3; //pvp类型 + PvpState state = 4; //战斗状态 + PvpUserInfo red = 5; //红方id + PvpUserInfo blue = 6; //红方id +} \ No newline at end of file diff --git a/src/pb/temop/pvp_msg.proto b/src/pb/temop/pvp_msg.proto new file mode 100644 index 0000000..e5c1ba4 --- /dev/null +++ b/src/pb/temop/pvp_msg.proto @@ -0,0 +1,107 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "pvp_db.proto"; +import "battle_msg.proto"; +import "errorcode.proto"; + + + +//战斗列表 请求 +message PvpListReq { + +} +//战斗列表 请求回应 +message PvpListResp { + repeated DBPvpBattle list = 1; +} + +//战斗列表推送 +message PvpIntoReq { + string battleid = 1; //战斗id +} + +//战斗列表推送 +message PvpIntoResp { + ErrorCode code = 1; //是否成功 + string battleid = 2; //战斗id + BattleStateInfo info=3; //战斗状态数据 +} + +//Pvp 战斗准备推送 +message PvpReadyPush { + string servicePath = 1; //战斗区服地址 + string battleid = 2; //战斗id + PvpUserInfo red = 3; //红方用户信息 + PvpUserInfo blue = 4; //蓝方用户信息 + int32 countdown = 5; //布阵倒计时 +} + +//加载完毕请求 +message PvpLoadCompleteReq { + string battleid = 1; //战斗id +} +//加载完毕请求 +message PvpLoadCompleteResp { + string battleid = 1; //战斗id + bool issucc = 2; +} +//加载完毕 通知 +message PvpLoadCompleteNoticePush { + string battleid = 1; //战斗id + int32 side = 2; +} + + +//Pvp 战斗准备推送 +message PvpCancelPush { + string servicePath = 1; //战斗区服地址 + string battleid = 2; //战斗id +} + +message PvpActiveCancelReq { + string battleid = 1; //战斗id +} +message PvpActiveCancelResp { + bool issucc = 1; +} + +//布阵 请求 +message PvpFormationReq { + string battleid = 1; //战斗id + BattleFormation formation = 2; //阵型 +} + +//布阵 请求 回应 +message PvpFormationResp { + bool issucc = 1; +} + +//战斗开始推送 +message PvpStartPush{ + ErrorCode code = 1; //是否成功 + BattleInfo info = 2; +} + +//实时Pvp 指令推送 +message PvpOutCmdPush { + string battleid = 1; + repeated BattleCmd cmd = 2; +} + +//pvp 输入指令请求 +message PvpInCmdReq { + string battleid = 1; + BattleCmd cmd =2; +} + +//pvp 输入指令请求 回应 +message PvpInCmdResp { + ErrorCode code = 1; //是否成功 + string battleid = 2; + BattleCmd cmd = 3; +} + +//实时Pvp 战斗结束推送 +message PvpFinishPush { + string battleid = 1; +} diff --git a/src/pb/temop/reddot_msg.proto b/src/pb/temop/reddot_msg.proto new file mode 100644 index 0000000..32123a6 --- /dev/null +++ b/src/pb/temop/reddot_msg.proto @@ -0,0 +1,18 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +//红点信息请求 +message ReddotGetAllReq {} + +message ReddotGetAllResp { + map reddot = 1; //红点信息 +} + +//红点信息请求 +message ReddotGetReq { + repeated int32 rids = 1; +} + +message ReddotGetResp { + map reddot = 1; //红点信息 +} \ No newline at end of file diff --git a/src/pb/temop/reputation_db.proto b/src/pb/temop/reputation_db.proto new file mode 100644 index 0000000..d727589 --- /dev/null +++ b/src/pb/temop/reputation_db.proto @@ -0,0 +1,30 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +message DBReputation { + string uid = 1; //@go_tags(`bson:"uid"`) 玩家ID + map camps = 2; //@go_tags(`bson:"camps"`) key 阵营id + CampAttr attrGlobal = 3; //@go_tags(`bson:"attrGlobal"`) 全局阵营属性 +} + +// 阵营 +message Camp { + int32 reputationLv=1; //@go_tags(`bson:"reputationLv"`) 声望等级 + CampAttr campAttr = 2; //@go_tags(`bson:"campAttr"`) + repeated TalentNode nodes = 3; //@go_tags(`bson:"nodes"`) 天赋节点 +} + +// 阵营声望属性 +message CampAttr{ + int32 hp = 1; + int32 attack = 2; + int32 defense = 3; + int32 hpPer = 4; +} + +// 天赋节点 +message TalentNode{ + int32 nid = 1; //@go_tags(`bson:"nid"`) 节点ID + int32 lv = 2; //@go_tags(`bson:"lv"`) 天赋节点等级 + int32 status= 3; //@go_tags(`bson:"status"`) 状态 0未升级 1未满级 2满级 +} \ No newline at end of file diff --git a/src/pb/temop/reputation_msg.proto b/src/pb/temop/reputation_msg.proto new file mode 100644 index 0000000..afb7b86 --- /dev/null +++ b/src/pb/temop/reputation_msg.proto @@ -0,0 +1,8 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +message reputationUpgradeReq{ + int32 zyId = 1; //阵营ID 1-4 +} + +message reputationUpgradeResp{} \ No newline at end of file diff --git a/src/pb/temop/rtask_msg.proto b/src/pb/temop/rtask_msg.proto new file mode 100644 index 0000000..cc47f04 --- /dev/null +++ b/src/pb/temop/rtask_msg.proto @@ -0,0 +1,16 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +// 测试使用 +message RtaskTestReq { + int32 rtaskType = 1; //任务类型 + repeated int32 params = 2; //参数 + int32 condiId = 3; //条件ID + int32 groupId = 4; //分组编号 + string rtaskIds = 5; //已完成的任务ids +} + +message RtaskTestResp { + bool flag = 1; + repeated int32 rtaskIds = 2; +} \ No newline at end of file diff --git a/src/pb/temop/serverdata.proto b/src/pb/temop/serverdata.proto new file mode 100644 index 0000000..1a162db --- /dev/null +++ b/src/pb/temop/serverdata.proto @@ -0,0 +1,12 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +//服务器数据 +message DBServerData { + string id = 1; //主键id + int32 serverState = 2;//@go_tags(`bson:"serverState"`) 服务器状态 + int32 disposableLoop = 3; //@go_tags(`bson:"disposableLoop"`) 一次性调用的塔数据索引 // + int32 fixedLoop = 4; //@go_tags(`bson:"fixedLoop"`) 赛季塔循环调用索引 + int32 seasonType = 5;//@go_tags(`bson:"seasonType"`) 赛季塔类型 + int64 openTime = 6; //@go_tags(`bson:"openTime"`) 开服时间 +} diff --git a/src/pb/temop/shop_db.proto b/src/pb/temop/shop_db.proto new file mode 100644 index 0000000..d067117 --- /dev/null +++ b/src/pb/temop/shop_db.proto @@ -0,0 +1,45 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "equipment_db.proto"; + +enum ShopType { + Null = 0; + GoldShop = 1; + DiamondShop = 2; + PVPShop = 3; + PVEShop = 4; + AllianceShop = 5; + HeroShop =6; + SmithyShop =7; +} + +message UserShopData { + int64 LastRefreshTime = 1; //最后一次刷新时间 + int32 ManualRefreshNum = 2; //手动刷新次数 + repeated int32 Items = 3; //商品列表 + map buy = 4; //购买记录 + map preview = 5; //预览数据 +} + +message DBShop { + string id = 1; //@go_tags(`bson:"_id"`) 装备id + string uid = 2; //@go_tags(`bson:"uid"`) 装备id + int32 refreshnumgoldShop = 3; //@go_tags(`bson:"refresholdShop"`) 刷新金币商店次数 + int64 refreshtimegoldShop = 4; //@go_tags(`bson:"refresholdShop"`) 刷新金币商店的时间 + UserShopData goldShop = 5; //@go_tags(`bson:"goldShop"`) 金币商店数据 + UserShopData diamondShop = 6; //@go_tags(`bson:"diamondShop"`) 金币商店数据 + UserShopData pvpShop = 7; //@go_tags(`bson:"pvpShop"`) 金币商店数据 + UserShopData pveShop = 8; //@go_tags(`bson:"pveShop"`) 金币商店数据 + UserShopData allianceShop = 9; //@go_tags(`bson:"allianceShop"`) 金币商店数据 + UserShopData heroShop = 10; //@go_tags(`bson:"heroShop"`) 金币商店数据 + UserShopData smithyShop = 11; //@go_tags(`bson:"smithyShop"`) 金币商店数据 +} + +// message DBShopItem { +// string id = 1; //@go_tags(`bson:"_id"`) 装备id +// string uid = 2; //@go_tags(`bson:"uid"`) 装备id +// int32 goodsId = 3; //@go_tags(`bson:"goodsId"`) 商品Id +// map buyNum = 4; //@go_tags(`bson:"buyNum"`) 购买数量 +// map lastBuyTime = +// 5; //@go_tags(`bson:"lastBuyTime"`) 最后一次购买的时间 +// } diff --git a/src/pb/temop/shop_msg.proto b/src/pb/temop/shop_msg.proto new file mode 100644 index 0000000..56b67a0 --- /dev/null +++ b/src/pb/temop/shop_msg.proto @@ -0,0 +1,41 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "shop_db.proto"; +import "comm.proto"; +import "equipment_db.proto"; + +//商品对象数据 +message ShopItem { + int32 GoodsId = 1; //商品Id + repeated UserAssets Items = 2; //货物 + repeated UserAssets Consume = 3; //消耗 + int32 Sale = 4; //打折 + int32 LeftBuyNum = 5; //还可购买次数 + DB_Equipment preview = 6; //装备预览数据 +} + +//获取装备列表请求 +message ShopGetListReq { + ShopType sType = 1; //商城类型 + bool IsManualRefresh = 2; //是否手动刷新 +} + +//获取装备列表请求 +message ShopGetListResp { + ShopType sType = 1; //商城类型 + bool IsManualRefresh = 2; //是否手动刷新 + repeated ShopItem Goods = 4; //商品列表 + int32 SurplusRefreshNum = 5; //剩余手动刷新次数 +} + +//购买商品 请求 +message ShopBuyReq { + ShopType ShopType = 1; //商店类型 + int32 GoodsId = 2; //商品Id + int32 BuyNum = 3; //商品购买数量 +} + +//购买商品 回应 +message ShopBuyResp { + bool IsSucc = 1; //是否成功 +} diff --git a/src/pb/temop/smithy_db.proto b/src/pb/temop/smithy_db.proto new file mode 100644 index 0000000..c38f3d6 --- /dev/null +++ b/src/pb/temop/smithy_db.proto @@ -0,0 +1,75 @@ +syntax = "proto3"; +option go_package = ".;pb"; + + +message Mastery{ + int32 lv =1; + int32 value = 2; +} + +// 炉子信息 +message DBStove{ + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + int32 lv = 3; // 炉子等级 + map data = 4; // key 图纸ID value 熟练度 + map skill = 5; // 台子技能 + map forge = 6; // key 套装类型 value 打造次数 + int32 temperature = 7;// 炉子温度 + int64 recoveTime = 8; //@go_tags(`bson:"recoveTime"`) 恢复满时间 + map hit = 9; +} + +message CustomerInfo{ + int32 customerId = 1; //顾客ID + int32 suitId = 2; //套装ID 随机套装 + int32 equipCount = 3;//装备数量 +} + +message DBCustomer{ + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) + repeated CustomerInfo customers = 3; // @go_tags(`bson:"customers"`) 顾客信息 + int32 total = 4; //@go_tags(`bson:"total"`) 顾客累计数 + int64 lastRefreshTime = 5; // @go_tags(`bson:"lastRefreshTime"`) 上次更新时间 +} + +// 装备图鉴 +message DBAtlas{ + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + map atlas = 3; // 图鉴信息 + map collect = 4; // 收藏品图鉴信息 + int32 score = 5; // 总积分 + int32 award = 6; // 奖励进度 + +} +message CollectData{ + string id = 1; // 收集图鉴id + int32 score = 2; + int64 time = 3; // 获得时间 + bool activate = 4; // 是否激活 +} +message ForgeList{ + ForgeData data1 = 1; + ForgeData data2 = 2; + bool activate = 3; // 是否激活 +} +message ForgeData{ + int32 forgeCount = 1; // 打造次数 + int32 lv = 2; + int32 quality = 3; + int32 score = 4; + int64 time = 5; // 获得时间 +} + +//玩家图鉴任务 +message DBTujianTask { + string uid = 1; //@go_tags(`bson:"uid"`) + repeated TujianTask tasks = 2; // @go_tags(`bson:"tasks"`) 任务列表 + } + +message TujianTask{ + int32 taskId = 1; //@go_tags(`bson:"taskId"`) 任务ID + int32 received = 2; //@go_tags(`bson:"received"`) 领取状态 0未领取 1待领取 2已领取 +} diff --git a/src/pb/temop/smithy_msg.proto b/src/pb/temop/smithy_msg.proto new file mode 100644 index 0000000..49a2250 --- /dev/null +++ b/src/pb/temop/smithy_msg.proto @@ -0,0 +1,127 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "smithy_db.proto"; +import "equipment_db.proto"; +import "comm.proto"; +// 铁匠铺 获取炉子信息 +message SmithyGetStoveInfoReq { + +} + +message SmithyGetStoveInfoResp { + DBStove data = 1; +} + + +// 打造装备 +message SmithyForgeEquipReq{ + int32 reelId = 1; // 卷轴ID + int32 lava = 2;// 添加熔岩 + int32 quality = 3;// 精益制造 + int32 suiteId = 4;// 套装ID (非定制传0 ) + int32 position = 5; // 装备位置(没有指定位置传 -1) + map hit = 6;// 敲击数据 key 敲打 cid value 敲打次数 +} + +message SmithyForgeEquipResp{ + repeated DB_Equipment equip = 1; // 装备ID + DBStove data = 2; +} + + +// 炉子升级 +message SmithyStoveUpReq{ + +} + +message SmithyStoveUpResp{ + DBStove data = 1; +} + +// 炉子升温 +message SmithyRiseReq{ + string itemId = 1; // 材料ID + int32 count = 2;// 材料数量 +} + +message SmithyRiseResp{ + DBStove data = 1; +} + +// 工具学习 升级 共用 +message SmithyToolsUpReq{ + int32 id = 1; // 工具配置ID +} + +message SmithyToolsUpResp{ + DBStove data = 1; +} +// 顾客 +message SmithyCustomerReq{ + +} +message SmithyCustomerResp{ + repeated CustomerInfo customers = 1; //顾客及装备信息 +} + +// 出售装备 +message SmithySellReq{ + repeated string equipIds = 1; // 装备ID + int32 customerId = 2; //顾客ID +} + +message SmithySellResp{ + int32 customerId = 1; //顾客ID + repeated string equipIds =2; //出售的装备 + repeated CustomerInfo customers = 3; +} + +// 拒绝交易 +message SmithyRefuseReq{ + int32 customerId = 1; //顾客ID +} +message SmithyRefuseResp{ + repeated CustomerInfo customers = 1; +} + +// 查看图鉴信息 +message SmithyAtlasListReq{ + +} +message SmithyAtlasListResp{ + DBAtlas data = 1; +} + +// 图鉴激活更新 +message SmithyAtlasActivateReq{ + string id = 1; // 图鉴ID +} + +message SmithyAtlasActivateResp{ + DBAtlas data = 1; +} + +// 图鉴信息奖励任务领取 +message SmithyAtlasAwardReq{ + +} +message SmithyAtlasAwardResp{ + DBAtlas data = 1; // 奖励信息 + repeated UserAssets res = 2; // 获得的奖励 +} + +//图鉴任务奖励领取 +message SmithyTaskAwardReq{ + int32 taskId = 1; +} +message SmithyTaskAwardResp{ + int32 taskId = 1; +} + +//图鉴任务查询 +message SmithyTasklistReq{ + +} +message SmithyTasklistResp{ + repeated TujianTask tasks= 1; //任务列表 +} diff --git a/src/pb/temop/sociaty_db.proto b/src/pb/temop/sociaty_db.proto new file mode 100644 index 0000000..262bcba --- /dev/null +++ b/src/pb/temop/sociaty_db.proto @@ -0,0 +1,133 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "battle_msg.proto"; + +message DBSociaty { + string id = 1; //@go_tags(`bson:"_id"`) ID + string creater = 2; //@go_tags(`bson:"creater"`) 创建人 + string name = 3; //@go_tags(`bson:"name"`) 公会名称 + string icon = 4; //@go_tags(`bson:"icon"`) 公会图标 + string notice = 5; //@go_tags(`bson:"notice"`) 公告 + int32 exp = 6; //@go_tags(`bson:"exp"`) 经验 + int32 lv = 7; //@go_tags(`bson:"lv"`) 等级 + bool isApplyCheck = 8; //@go_tags(`bson:"isApplyCheck"`) 是否必须审批 + int32 applyLv = 9; //@go_tags(`bson:"applyLv"`) 等级限制 + int64 ctime = 10; //@go_tags(`bson:"ctime"`) 创建时间 + repeated ApplyRecord applyRecord = + 11; //@go_tags(`bson:"applyRecord"`) 入会申请 + repeated SociatyMember members = 12; //@go_tags(`bson:"members"`) 公会成员 + int32 activity = 13; //@go_tags(`bson:"activity"`) 活跃度 + int64 accuseTime = 14; //@go_tags(`bson:"accuseTime"`) 会长弹劾时间 + int32 lastSignCount = 15; //@go_tags(`bson:"lastSignCount"`) 昨日签到的人数 + repeated string signIds = 16; //@go_tags(`bson:"signIds"`) 今日签到的玩家IDs + int64 dismissTime = 17; //@go_tags(`bson:"dismissTime"`) 公会解散时间 + int64 dismissCD = 18; //@go_tags(`bson:"dismissCD"`) 解散CD +} + +//申请记录 +message ApplyRecord { + string uid = 1; //@go_tags(`bson:"uid"`) 申请的玩家ID + int64 ctime = 2; //@go_tags(`bson:"ctime"`) 申请时间 +} + +//职位 +enum SociatyJob { + NOJOB = 0; //无职位/权限 + MEMBER = 1; //成员 + ADMIN = 2; //管理员 + VICEPRESIDENT = 3; //副会长 + PRESIDENT = 4; //会长 +} + +// 公会成员 +message SociatyMember { + string uid = 1; //@go_tags(`bson:"uid"`) 成员ID + SociatyJob job = 2; //@go_tags(`bson:"job"`) 职位 + int64 ctime = 3; //@go_tags(`bson:"ctime"`) 入会时间 + int32 contribution = 4; //@go_tags(`bson:"contribution"`) 贡献值 + map teams = 5; //@go_tags(`bson:"teams"`) 公会BOSS 队伍 +} + +// 日志 +message SociatyLog { + string content = 1; //@go_tags(`bson:"content"`) 日志内容 + int64 ctime = 2; //@go_tags(`bson:"ctime"`) 创建时间 +} + +message DBSociatyLog { + string sociatyId = 1; //@go_tags(`bson:"sociatyId") 公会ID + repeated SociatyLog list = 2; //@go_tags(`bson:"list"`) 日志 +} + +// 公会成员任务 +message DBSociatyTask { + string sociatyId = 1; //@go_tags(`bson:"sociatyId") 公会ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + repeated SociatyTask taskList = 3; //@go_tags(`bson:"taskList"`) 任务列表 + repeated SociatyActivity activityList = + 4; //@go_tags(`bson:"activityList"`) 活跃度列表 + int64 lastUpdateTime = 5; //@go_tags(`bson:"lastUpdateTime"`) 上次初始时间 +} + +// 任务 +message SociatyTask { + int32 taskId = 1; //@go_tags(`bson:"taskId"`) 任务ID + int32 status = 2; //@go_tags(`bson:"status"`) 领取状态:0未完成 1已完成 + int32 received = 3; //@go_tags(`bson:"received"`) 领取状态: 0未领取 1已领取 +} + +// 活跃度 +message SociatyActivity { + int32 id = 1; //@go_tags(`bson:"id"`) 活跃度ID + int32 status = 2; //@go_tags(`bson:"status"`) 领取状态:0未领取 1已领取 +} + +//任务活跃度排行榜 +message DBSociatyRank { + string sociatyId = 1; //@go_tags(`bson:"sociatyId"`) + string name = 2; //@go_tags(`bson:"name"`) 公会名称 + int32 lv = 3; //@go_tags(`bson:"lv"`) 等级 + int32 activity = 4; //@go_tags(`bson:"activity"`) 活跃度 + int64 ctime = 5; //@go_tags(`bson:"ctime"`) 公会创建时间 +} + +// 阵容明细 +message ChallengeTeamInfo { + string heroId = 1; //@go_tags(`bson:"heroId"`) 英雄ID +} + +// 阵容 +message ChallengeTeam { + BattleFormation formation = 1; //@go_tags(`bson:"teamInfo"`) 阵容 +} + +// 赛季信息 +message DBSociatyBossSports { + int64 endTime = 1; //@go_tags(`bson:"endTime"`) 公会BOSS赛季结束时间 + int64 settlementTime = 2; //@go_tags(`bson:"settlementTime"`) 赛季结算时间 + repeated string uids = 3; //@go_tags(`bson:"uids"`) 参赛玩家 +} + +// 玩家每次挑战的记录 +message ChallengeRecord { + map teams = 1; //@go_tags(`bson:"teams"`) 挑战队伍 + int64 integral = 2; //@go_tags(`bson:"integral"`) 公会BOSS挑战积分 + int32 duration = 3; //@go_tags(`bson:"duration"`) 战斗耗时 + int64 rtime = 4; //@go_tags(`bson:"rtime"`) 记录时间 +} + +message ChallengeTask { + int32 taskId = 1; //@go_tags(`bson:"taskId"`) 任务ID + int32 status = 2; //@go_tags(`bson:"status"`) 任务状态 0未完成 1可领取 2已领取 +} + +//玩家赛季记录 +message DBSociatyBossRecord { + string uid = 1; //@go_tags(`bson:"uid"`) 玩家ID + string sociatyId = 2; //@go_tags(`bson:"sociatyId"`) 公会ID + repeated ChallengeRecord record = 4; //@go_tags(`bson:"record"`) 赛季挑战记录 + int64 total = 5; //@go_tags(`bson:"total"`) 赛季总积分(前三积分和) + repeated int64 integrals = 6; //@go_tags(`bson:"integrals"`) 赛季中最高积分 + int32 status = 7; //@go_tags(`bson:"status"`)0当前赛季记录 1归档赛季记录 + repeated ChallengeTask tasks = 8; //@go_tags(`bson:"tasks"`) 积分任务 +} \ No newline at end of file diff --git a/src/pb/temop/sociaty_msg.proto b/src/pb/temop/sociaty_msg.proto new file mode 100644 index 0000000..04c6f68 --- /dev/null +++ b/src/pb/temop/sociaty_msg.proto @@ -0,0 +1,289 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "comm.proto"; +import "sociaty_db.proto"; +import "battle_db.proto"; +import "battle_msg.proto"; + +// 创建公会 +message SociatyCreateReq { + string name = 1; //公会名称 + string icon = 2; //公会图标 + string notice = 3; //公告 + bool isApplyCheck = 4; //审批 + int32 applyLv = 5; //限制等级 +} + +message SociatyCreateResp { + string id = 1; //公会ID + string uid = 2; //创建公会的玩家ID +} + +// 筛选条件 +enum SociatyListFilter { + ALL = 0; //全部 + CONDI = 1; //满足条件 + NOAPPLY = 2; //无审批 + APPLYING = 3; //申请中 +} +// 公会列表 +message SociatyListReq { SociatyListFilter filter = 1; } +message SociatyListResp { repeated DBSociaty list = 1; } + +// 搜索公会 +message SociatySearchReq { + string name = 1; //公会名称 +} +message SociatySearchResp { repeated DBSociaty list = 1; } + +// 设置公会 +message SociatySettingReq { + string icon = 1; //公会图标 + string notice = 2; //公告 + bool isApplyCheck = 3; //审批 + int32 applyLv = 4; //限制等级 +} + +message SociatySettingResp { + string sociatyId = 1; //公会ID +} + +// 我的公会 +message SociatyMineReq {} +message SociatyMineResp { + DBSociaty sociaty = 1; //公会信息 + SociatyMemberInfo master = 2; // 会长 +} + +//成员信息 +message SociatyMemberInfo { + string uid = 1; + string name = 2; //昵称 + string avatar = 3; //头像 + int32 lv = 4; //等级 + SociatyJob job = 5; //职位 + int64 offlineTime = 6; //离线时间 +} + +// 申请列表 +message SociatyApplyListReq { string sociatyId = 1; } +message SociatyApplyListResp { repeated SociatyMemberInfo list = 1; } + +// 申请 +message SociatyApplyReq { + string sociatyId = 1; //公会ID +} +message SociatyApplyResp { + string uid = 1; + string scoiatyId = 2; +} + +// 申请撤销 +message SociatyApplyCancelReq { string sociatyId = 1; } +message SociatyApplyCancelResp { + string uid = 1; + string sociatyId = 2; +} + +// 同意 +message SociatyAgreeReq { string uid = 1; } +message SociatyAgreeResp { + string uid = 1; + string sociatyId = 2; +} + +// 拒绝 +message SociatyRefuseReq { string uid = 1; } +message SociatyRefuseResp { + string uid = 1; + string sociatyId = 2; +} + +// 撤销申请 +message SociatyCancelReq {} +message SociatyCancelResp {} + +// 退出公会 +message SociatyQuitReq {} +message SociatyQuitResp { + string uid = 1; + string sociatyId = 2; +} + +// 解散公会 +message SociatyDismissReq { + int32 dismiss = 1; // 1取消解散 +} + +message SociatyDismissResp { + string uid = 1; + string sociatyId = 2; +} + +// 员工列表 +message SociatyMembersReq {} +message SociatyMembersResp { repeated SociatyMemberInfo list = 1; } + +// 转让公会 +message SociatyAssignReq { + string targetId = 1; //转让目标玩家ID +} +message SociatyAssignResp { + string sociatyId = 1; + string targetId = 2; //转让目标玩家ID +} + +// 踢出公会 +message SociatyDischargeReq { + string targetId = 1; //踢出目标玩家ID +} +message SociatyDischargeResp { + string sociatyId = 1; + string targetId = 2; //转让目标玩家ID +} + +// 设置职位 +message SociatySettingJobReq { + string targetId = 1; //目标玩家ID + SociatyJob job = 2; //职位 +} +message SociatySettingJobResp { + string sociatyId = 1; + string targetId = 2; //目标玩家ID + SociatyJob job = 3; //职位 +} + +// 弹劾 +message SociatyAccuseReq {} +message SociatyAccuseResp { string sociatyId = 1; } + +// 签到 +message SociatySignReq {} +message SociatySignResp { + string uid = 1; + string sociatyId = 2; +} + +//日志列表 +message SociatyLogReq {} +message SociatyLogResp { DBSociatyLog log = 1; } + +// 任务列表 +message SociatyTaskListReq {} +message SociatyTaskListResp { repeated SociatyTask list = 1; } + +// 任务奖励领取 +message SociatyReceiveReq { + int32 taskId = 1; //任务ID +} +message SociatyReceiveResp { + int32 taskId = 1; + string sociatyId = 2; +} + +// 活跃度列表 +message SociatyActivityListReq {} +message SociatyActivityListResp { repeated SociatyActivity list = 1; } + +//活跃度奖励领取 +message SociatyActivityReceiveReq { + int32 id = 1; //配置ID +} +message SociatyActivityReceiveResp { + int32 id = 1; + string sociatyId = 2; +} + +// 公会排行榜 +message SociatyRankReq { + int32 rankType = 1; // 1个人2公会成员3全服 +} +message SociatyRankResp { repeated DBSociatyRank rank = 1; } + +// 公会解散推送 +message SociatyPDismissPush { string sociatyId = 1; } + +// 审核通过推送 +message SociatyPAgreePush { + string uid = 1; + string sociatyId = 2; +} + +// 公会BOSS入口 +message SociatyBMainReq {} + +message SociatyBMainResp { + map teams = 1; //公会BOSS 队伍 + int32 ticket = 2; // 挑战券数量 + int64 endTime = 3; //赛季结束时间 + int64 settlementTime = 4; //赛季结算时间 + int64 total = 5; //总积分 + repeated int64 highIntegrals = 6; //最高的积分 + int64 personalRanking = 7; //个人排名 + int64 sociatyRanking = 8; //公会排名 +} + +// 公会BOSS 布阵 +message SociatyBFormationReq { + string sociatyId = 1; + map teams = 2; //队伍信息,队伍编号1 2 3,从1开始 +} + +message SociatyBFormationResp { + string sociatyId = 1; + string uid = 2; +} + +// 公会BOSS挑战 +message SociatyBChallengeStartReq { string sociatyId = 1; } +message SociatyBChallengeStartResp { + string sociatyId = 1; + string uid = 2; +} + +message SociatyBChallengeFinishReq { + PlayType ptype = 1; + BattleReport report = 2; +} + +message SociatyBChallengeFinishResp { + int64 integral = 1; //积分 +} + +// 公会BOSS 阵容推荐 +message SociatyRecommendReq { + int32 cate = 1; // 1全服排行 2好友排行 +} + +message SociatyRecommendResp { map teams = 1; } + +// 公会BOSS 领取奖励 +message SociatyBReceiveReq { int32 taskId = 1; } + +message SociatyBReceiveResp { + string sociatyId = 1; + int32 taskId = 2; +} + +//公会BOSS 排名 +message SociatyBRankReq { + int32 rankType = 1; //排名分类 1个人排名2公会成员3全服排名 +} + +message SociatyRankInfo { + string name = 1; //昵称 + string head = 2; //头像 + int32 lv = 3; //等级 + string sociatyName = 4; //公会名称 + int64 ranking = 5; //名次 + int64 integral = 6; //积分 +} +message SociatyBRankResp { repeated SociatyRankInfo rank = 1; } + +//挑战券购买 +message SociatyBuyReq { + UserAssets atn = 1; //挑战券消耗资源及价格 + int32 buyNum = 2; //购买数量 +} + +message SociatyBuyResp { string uid = 1; } diff --git a/src/pb/temop/sys_db.proto b/src/pb/temop/sys_db.proto new file mode 100644 index 0000000..110be7d --- /dev/null +++ b/src/pb/temop/sys_db.proto @@ -0,0 +1,9 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +message DBOpenCond { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + map cond = 3; // 功能开启条件 key opencond配置id value:0 自动激活 1 已经激活 +} + diff --git a/src/pb/temop/sys_msg.proto b/src/pb/temop/sys_msg.proto new file mode 100644 index 0000000..31f6f8d --- /dev/null +++ b/src/pb/temop/sys_msg.proto @@ -0,0 +1,26 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +message SysFuncListReq { + repeated string keys = 1; //功能ID +} + +message SysFuncListResp { + repeated string funcIds = 1; //功能ID +} + +message SysFuncGetListReq { + repeated string keys = 1; //功能ID +} + +message SysFuncGetListResp { + map cond = 1; // 功能开启条件 key opencond配置id value:0 自动激活 1 已经激活 +} +// 手动激活 +message SysFuncActivateReq { + string cid = 1; // opencond表的key +} + +message SysFuncActivateResp { + string cid = 1; +} diff --git a/src/pb/temop/task_db.proto b/src/pb/temop/task_db.proto new file mode 100644 index 0000000..a874169 --- /dev/null +++ b/src/pb/temop/task_db.proto @@ -0,0 +1,59 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +message DBTask { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + repeated TaskData dayList = 4; //@go_tags(`bson:"dayList"`) 日常任务列表 + repeated TaskData weekList = 5; //@go_tags(`bson:"weekList"`) 周常任务列表 + repeated TaskData achieveList = + 6; //@go_tags(`bson:"achieveList"`) 成就任务列表 +} + +message TaskData { + int32 taskId = 3; //@go_tags(`bson:"taskId"`) 任务Id + int32 tag = 4; //@go_tags(`bson:"tag"`) 标签 + int32 progress = 5; //@go_tags(`bson:"progress"`) 任务进度/完成次数 + int32 active = 6; //@go_tags(`bson:"active"`) 活跃度 + int32 status = 7; //@go_tags(`bson:"status"`) 任务状态 默认0未完成 1已完成 + int32 received = 8; //@go_tags(`bson:"received"`) 领取状态 默认0未领取 1已领取 + int32 typeId = 9; //@go_tags(`bson:"typeId"`) + int32 sort = 10; //@go_tags(`bson:"sort"`) +} + +message DBActivity { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + repeated ActivityData activityList = + 3; //@go_tags(`bson:"activityList"`) 活跃度列表 +} + +message ActivityData { + int32 taskId = 1; //@go_tags(`bson:"taskId"`) taskId + int32 tag = 2; //@go_tags(`bson:"tag"`) 标签 + int32 received = 3; //@go_tags(`bson:"received"`) 领取状态 默认0未领取 1已领取 +} + +message frtaskIds { repeated int32 rtaskIds = 1; } + +// 玩家任务状态 +message DBRtask { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + map frtaskIds = + 3; //@go_tags(`bson:"frtaskIds"`) 已完成的任务Id + bool isReward = 5; //@go_tags(`bson:"isReward"`) 接收奖励 +} + +message rtaskData { + map data = 1; //@go_tags(`bson:"data"`) 当前任务值 + int32 rtype = 2; //@go_tags(`bson:"rtype"`) 任务类型 + int64 timestamp = 3; //@go_tasg(`bson:"timestamp"`) 时间戳 +} +// 玩家任务记录 +message DBRtaskRecord { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + map vals = 3; //@go_tags(`bson:"vals"`) 任务记录值 + int64 ctime = 4; //@go_tags(`bson:"ctime"`) 创建时间 +} \ No newline at end of file diff --git a/src/pb/temop/task_msg.proto b/src/pb/temop/task_msg.proto new file mode 100644 index 0000000..e872852 --- /dev/null +++ b/src/pb/temop/task_msg.proto @@ -0,0 +1,53 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "task_db.proto"; + +message TaskGetrecordReq {} +message TaskGetrecordResp { DBRtaskRecord record = 1; } + +//任务触发 +message TaskSendReq { + int32 taskType = 1; //任务类型 + repeated int32 params = 2; //任务参数 +} +message TaskSendResp { + bool isSucc = 1; +} + +//领取 +message TaskReceiveReq { + int32 taskTag = 1; // 1日常/2周常/3成就 + int32 id = 2; //任务唯一ID +} + +message TaskReceiveResp { + int32 taskId = 1; //任务配置ID +} + +//任务列表 +message TaskListReq { + int32 taskTag = 1; //日常/周常/成就 +} + +message TaskListResp { repeated TaskData list = 1; } + +//活跃度 +message TaskActiveListReq { int32 taskTag = 1; } +message TaskActiveListResp { + repeated ActivityData list = 1; //活跃度列表 + int32 active = 2; //活跃度值 +} + +//活跃度领取 +message TaskActiveReceiveReq { + int32 taskTag = 1; // 1日常/2周常 + int32 id = 2; //唯一id +} +message TaskActiveReceiveResp { + int32 taskTag = 1; + int32 id = 2; +} + + +//任务完成推送 +message TaskFinishedPush { int32 taskId = 1; } \ No newline at end of file diff --git a/src/pb/temop/taskcond_msg.proto b/src/pb/temop/taskcond_msg.proto new file mode 100644 index 0000000..c8df7e0 --- /dev/null +++ b/src/pb/temop/taskcond_msg.proto @@ -0,0 +1,7 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +//任务完成条件推送 +message TaskcondFinishedPush { + int32 condId = 1; //达成的任务条件ID +} \ No newline at end of file diff --git a/src/pb/temop/troll_db.proto b/src/pb/temop/troll_db.proto new file mode 100644 index 0000000..2446d0b --- /dev/null +++ b/src/pb/temop/troll_db.proto @@ -0,0 +1,54 @@ +syntax = "proto3"; +option go_package = ".;pb"; + + +// 巨怪列车 +message DBTrollTrain { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + map items = 3;// 货物 key 货物ID + map price = 4;// 货物买入价格 key 货物ID + int32 gridNum = 5; //@go_tags(`bson:"gridNum"`) 当前使用格子数量 + int32 tarinPos = 6; //@go_tags(`bson:"tarinPos"`) 火车位置 (商人位置) + int32 rangeId = 7; //@go_tags(`bson:"rangeId"`) 增长幅度 + int32 buy = 8; // 挂机进货标准/千分比 + int32 sell = 9; //挂机卖出标准/千分比 + int32 npcLv = 10;//@go_tags(`bson:"npcLv"`) npc 等级 + map npcReward = 11;//@go_tags(`bson:"npcReward"`) npc奖励 + int64 totalEarn = 12;//@go_tags(`bson:"totalEarn"`) 累计赚的钱 + int32 sellCount = 13;//@go_tags(`bson:"sellCount"`) 今天已经卖出次数 + int64 refreshTime = 14;//@go_tags(`bson:"refreshTime"`) 最后一次刷新的时间 通过这个计算下一次刷新时间 + int32 aiCount = 15;//@go_tags(`bson:"aiCount"`) AI 交易次数 + map shop= 16; // 商人的限购数量 + int64 ctime = 17; // 创建时间 + int32 circle = 18; // 循环商人的次数 + map surpriseID = 19; //@go_tags(`bson:"surpriseID"`) key商人id value惊喜货物ID + int64 resetTime = 20; //@go_tags(`bson:"resetTime"`) 每日重置时间 +} + +// 收益记录 +message DBTrollRecord{ + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + int32 gold = 3; // 收益 + int32 pos = 4; // 商人位置 + int64 time = 5; // 交易时间 +} + +message DBGoods{ + string id = 1; //@go_tags(`bson:"_id"`) ID + int32 period = 2; // 变动周期 + int32 curPeriod = 3; // 当前变动周期 + int32 weight = 4; // 周期权重 + int32 price = 5; // 当前价格 + int32 time = 6; // 刷新时间 +} + +message DBTroll { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + int32 useCount = 3; // 当前背包使用的数量 + map items = 4; // 背包数据 + map goods = 5; // 货物 key 货物ID + int32 lv = 6;// 商队等级 +} diff --git a/src/pb/temop/troll_msg.proto b/src/pb/temop/troll_msg.proto new file mode 100644 index 0000000..75be80f --- /dev/null +++ b/src/pb/temop/troll_msg.proto @@ -0,0 +1,74 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "troll_db.proto"; +// 查询进度 +message TrollGetListReq { + +} +// 返回进度信息 +message TrollGetListResp { + DBTrollTrain data = 1; +} + +// 买卖货物 +message TrollBuyOrSellReq { + map items =1;//买入货物的数量(负数为卖) +} + +message TrollBuyOrSellResp { + DBTrollTrain data = 1; +} + +// afk 设置 +message TrollAfkSetReq { + int32 buy = 1; + int32 sell = 2; + int32 count = 3; // 挂机次数 +} + +message TrollAfkSetResp { + DBTrollTrain data = 1; +} + +// npv等级奖励 +message TrollNpcRewardReq { + int32 rewardId = 1; +} + +message TrollNpcRewardResp { + DBTrollTrain data = 1; +} + +// 获取收益排行榜 +message TrollRankListReq { + +} +message RankData{ + int32 rankId = 1; // 排名 + string uid = 2; + string name = 3; // 昵称 + int64 gold = 4; // 收益金币 + int32 figure = 5; // 形象 + int32 title = 6; +} +message TrollRankListResp { + repeated RankData data = 1; +} + +// 获取收益明细 +message TrollRecordListReq { + +} + +message TrollRecordListResp { + repeated DBTrollRecord data = 1; +} +// 获取惊喜商品 +message TrollSurpriseIdReq { + +} + +// 返回进度信息 +message TrollSurpriseIdResp { + map surpriseID = 1; //@go_tags(`bson:"surpriseID"`) key商人id value惊喜货物ID +} \ No newline at end of file diff --git a/src/pb/temop/user_db.proto b/src/pb/temop/user_db.proto new file mode 100644 index 0000000..2ebc992 --- /dev/null +++ b/src/pb/temop/user_db.proto @@ -0,0 +1,75 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +message CacheUser { + string uid = 1; //@go_tags(`bson:"uid"`) 用户id + string SessionId = 2; //@go_tags(`bson:"sessionId"`) 会话id + string ServiceTag = 3; //@go_tags(`bson:"serviceTag"`) 所在服务集群 区服id + string GatewayServiceId = + 4; //@go_tags(`bson:"gatewayServiceId"`) 所在网关服务id + string ip = 5; //@go_tags(`bson:"ip"`) 远程ip +} + +message DBUser { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + string uuid = 3; //@go_tags(`bson:"uuid"`) 玩家唯一uuid + string binduid = 4; //@go_tags(`bson:"binduid"`) 玩家账号 + string name = 5; //@go_tags(`bson:"name"`) 玩家名 + string sid = 6; //@go_tags(`bson:"sid"`) 区服id + string createip = 7; //@go_tags(`bson:"createip"`) 创建账号时的ip + string lastloginip = 8; //@go_tags(`bson:"lastloginip"`) 最后一次登录时的ip + int64 ctime = 9; //@go_tags(`bson:"ctime"`) 玩家创号时间戳 + int64 logintime = 10; //@go_tags(`bson:"logintime"`) 最后一次登录时间 + int32 gender = 11; //@go_tags(`bson:"gender"`) 性别 0男1女 + string avatar = 12; //@go_tags(`bson:"avatar"`) 头像 + int64 gold = 13; //@go_tags(`bson:"gold"`) 金币 + int64 exp = 14; //@go_tags(`bson:"exp"`) 经验 + int64 vipexp = 15; //@go_tags(`bson:"vipexp"`) vip经验 + int64 starcoin = 16; //@go_tags(`bson:"starcoin"`) 星座图币 + bool created = 17; //@go_tags(`bson:"created"`) 创角 + int32 lv = 18; //@go_tags(`bson:"lv"`) 等级 + int32 vip = 19; //@go_tags(`bson:"vip"`) vip等级 + int64 diamond = 20; //@go_tags(`bson:"diamond"`) 钻石 + int32 title = 21; //@go_tags(`bson:"title"`) 头衔 + int64 offlinetime = 22; //@go_tags(`bson:"offlinetime"`) 离线时间 + int32 figure = 23; //@go_tags(`bson:"figure"`) 主角形象 + string bgp = 24; //@go_tags(`bson:"bgp"`) 背景 + int32 ps = 25; //@go_tags(`bson:"ps"`) 体力 + int64 lastRecoverPsSec = + 26; //@go_tags(`bson:"lastRecoverPsSec"`) 上次体会恢复时间 + int32 moongold = 27; //@go_tags(`bson:"moongold"`) 纯净月髓 + int32 talent1 = 28; //@go_tags(`bson:"talent1"`) 阵营1天赋点 + int32 talent2 = 29; //@go_tags(`bson:"talent2"`) 阵营2天赋点 + int32 talent3 = 30; //@go_tags(`bson:"talent3"`) 阵营3天赋点 + int32 talent4 = 31; //@go_tags(`bson:"talent4"`) 阵营4天赋点 +} + +message DBUserSetting { + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + uint32 huazhi = 3; //@go_tags(`bson:"huazhi"`) 画质 0极致 1精致 2正常 3流畅 + uint32 kangjuchi = 4; //@go_tags(`bson:"kangjuchi"`) 抗锯齿 0 1 2 3 + bool gaoguang = 5; //@go_tags(`bson:"gaoguang"`) 高光 + bool wuli = 6; //@go_tags(`bson:"wuli"`) 物理模拟 + bool music = 7; //@go_tags(`bson:"music"`) 音乐 + bool effect = 8; //@go_tags(`bson:"effect"`) 音效 + + bool guaji = 9; //@go_tags(`bson:"guaji"`) 挂机 + bool fuben = 10; //@go_tags(`bson:"fuben"`) 特殊副本重置 + bool tansuo = 11; //@go_tags(`bson:"tansuo"`) 蜂窝探索 + bool huodong = 12; //@go_tags(`bson:"huodong"`) 特殊活动开启 + bool xuanshang = 13; //@go_tags(`bson:"wanfa"`)悬赏玩法重置 + bool saiji = 14; //@go_tags(`bson:"wanfa"`)格斗场玩法赛季重置 +} + +// 签到功能 +message DBSign { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + int64 signTime = 3; //@go_tags(`bson:"signTime"`) 玩家签到时间 + int32 signCount = 4; //@go_tags(`bson:"signCount"`) 玩家累计签到次数 + int32 group = 5; //记录循环签到值 + int32 day = 6; // 今天是这个月第几天 + repeated int32 puzzle= 7; //@go_tags(`bson:"puzzle"`) 拼图游戏完成情况 // 0 未签到 1 已签到 2 玩了游戏 + int32 tips = 8; // 提示次数 +} \ No newline at end of file diff --git a/src/pb/temop/user_msg.proto b/src/pb/temop/user_msg.proto new file mode 100644 index 0000000..883beec --- /dev/null +++ b/src/pb/temop/user_msg.proto @@ -0,0 +1,217 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "errorcode.proto"; +import "user_db.proto"; +import "userexpand.proto"; +import "pagoda_db.proto"; +import "viking_db.proto"; +import "hunting_db.proto"; +import "serverdata.proto"; +//用户登录 +message UserLoginReq { + string account = 1; //账号 + string sid = 2; //区服编号 +} + +message UserLoginResp { + DBUser data = 1; + DBUserExpand ex = 2; //用户扩展 + int64 timeNow = 3; // 服务器时间 +} + +// 获取用户信息 +message UserInfoReq {} + +message UserInfoResp { + DBUser data = 1; + DBUserExpand ex = 2; //用户扩展 +} + +//登出 +message UserLogoutReq {} + +message UserLogoutResp {} + +//注册 +message UserRegisterReq { + string account = 1; + string sid = 2; +} + +message UserRegisterResp { + ErrorCode Code = 1; + string account = 2; +} + +message UserLoadResp { CacheUser data = 1; } + +//创角 +message UserCreateReq { + string NickName = 1; //昵称 + int32 figure = 2; // 模型 做展示用 + int32 gender = 3; //性别 0男1女 +} + +message UserCreateResp { bool IsSucc = 1; } + +// 玩家资源变更推送 +message UserResChangedPush { + int64 gold = 1; //@go_tags(`bson:"gold"`) 金币 + int64 exp = 2; //@go_tags(`bson:"exp"`) 经验 + int64 vipexp = 3; //@go_tags(`bson:"vipexp"`) 经验 + int64 diamond = 4; //@go_tags(`bson:"diamond"`) 钻石 + int32 friend = 5; //@go_tags(`bson:"frined`) 友情点 + int64 starcoin = 6; //@go_tags(`bson:"starcoin`) 星座币 + int32 guildcoin = 7; //@go_tags(`bson:"guildcoin`) 公会币 + int32 arenacoin = 8; //@go_tags(`bson:"arenacoin`) 竞技场币 + int32 ps = 9; //@go_tags(`bson:"ps"`) 体力 + int32 moongold = 10; //@go_tags(`bson:"moongold"`) 纯净月髓 +} +// 玩家在其它终端登录的通知 +message UserOtherTermLoginPush { string uid = 1; } + +message UserPsChangedPush { + int32 ps = 1; //@go_tags(`bson:"ps"`) 体力 +} + +//用户设置获取 +message UserGetSettingReq {} + +message UserGetSettingResp { + DBUserSetting setting = 1; //用户设置 +} + +// 更新用户设置 +message UserUpdateSettingReq { DBUserSetting setting = 1; } +message UserUpdateSettingResp { string uid = 1; } + +// 初始化验证码 +message UserVeriCodeReq {} +message UserVeriCodeResp { + int32 code = 1; //验证码 +} + +//初始化用户数据 +message UserInitdataReq { + int32 code = 1; //验证码 +} +message UserInitdataResp { string uid = 1; } + +//修改玩家名字 +message UserModifynameReq { + string name = 1; //玩家名称 +} +message UserModifynameResp { + string uid = 1; + uint32 count = 2; //剩余修改次数 + string name = 3; +} + +// 修改头像 +message UserModifyavatarReq { + string avatarId = 1; //头像ID +} + +message UserModifyavatarResp { + string uid = 1; + string avatarId = 2; +} + +// 修改背景图片 +message UserModifybgpReq { + string bgpId = 1; //背景图片ID +} + +message UserModifybgpResp { + string uid = 1; + string bgpId = 2; //背景图片ID +} + +// 修改形象 +message UserModifyfigureReq { int32 figureId = 1; } + +message UserModifyfigureResp { + string uid = 1; + int32 figureId = 2; +} + +// 图鉴 +message UserGetTujianReq {} +message UserGetTujianResp { repeated string heroids = 1; } + +//玩家等级经验变化推送 +message UserLvChangedPush { + string uid = 1; + int64 exp = 2; + int32 lv = 3; +} + +// vip 等级变化 +message UserVipChangedPush { + string uid = 1; + int64 vipExp = 2; + int32 vipLv = 3; +} +// 用户签名 +message UserModifysignReq { string sign = 1; } + +message UserModifysignResp { string uid = 1; } + +// 玩家战斗记录 +message UserBattlerecordReq { string uid = 1; } + +message UserBattlerecordResp { + DBUser data = 1; + DBUserExpand ex = 2; //用户扩展 + DBPagodaRecord pagodaRecord = 3; //爬塔战斗记录 + repeated DBHuntingRank huntingRecord = 4; //狩猎战斗记录 + repeated DBVikingRank vikingRecord = 5; //维京远征战斗记录 +} + +// 玩家阵容展示设置 +message UserSettingteamReq { + repeated string heroObjIds = 2; //英雄ID +} +message UserSettingteamResp { string uid = 1; } + +//玩家阵容展示 +message UserShowteamReq {} + +message UserShowteamResp { + repeated string heroObjIds = 1; //英雄ID +} + +// 全服在线用用户session +message UserOnlineResp { repeated CacheUser users = 1; } + +// 用户数据列表 +message UserDataListResp { repeated DBUser users = 1; } + +message UserGetServerDataReq {} + +message UserGetServerDataResp { DBServerData data = 1; } + +message UserSignReq { +} +// 推送签到信息 +message UserSignResp { + DBSign data = 1; +} + +//拼图领奖 +message UserPuzzleAwardReq { + int32 index = 1; +} +//拼图领奖 回应 +message UserPuzzleAwardResp { + int32 index = 2; +} + +// 修改提示次数 +message UserChangeTipsReq { + int32 tips = 1; +} + +message UserChangeTipsResp { + DBSign data = 1; +} \ No newline at end of file diff --git a/src/pb/temop/userexpand.proto b/src/pb/temop/userexpand.proto new file mode 100644 index 0000000..663a741 --- /dev/null +++ b/src/pb/temop/userexpand.proto @@ -0,0 +1,40 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +//用户扩展数据 +message DBUserExpand { + string id = 1; //主键id + string uid = 2; //用户id + int64 lastreadnotiftime = 3; //最后阅读公告时间 + int64 lastInitdataTime = 4; //上次初始数据时间 + uint32 initdataCount = 5; //今日初始累计次数 + int32 chatchannel = 6; //跨服聊天频道 + int32 modifynameCount = 7; //修改昵称次数 + map expitem = 8; //该英雄重复获取后所获得的升星道具 + int32 activeday = 11; //日活跃度 + int32 activeweek = 12; //周活跃度 + string sign = 13; //用户签名 + int32 friendPoint = 14; //@go_tags(`bson:"friendPoint"`) 友情点 + int32 friendPointID = 15; //@go_tags(`bson:"friendPointID"`) 每日获赠友情点 + int32 friendPointOD = 16; //@go_tags(`bson:"friendPointOD"`) 每日送出友情点 + int32 loginAddCount = 19; //@go_tasgs(`bson:"loginAddCount"`) 累计登录天数 + int32 loginContinueCount = + 20; //@go_tasgs(`bson:"loginContinueCount"`) 连续登录天数 + int32 rtaskId = 21; //@go_tags(`bson:"rtaskId"`) 当前完成的随机任务ID + repeated string teamHeroIds = 22; //@go_tags(`bson:"teamHeroIds"`) 阵容英雄IDs + string sociatyId = 23; //@go_tags(`bson:"sociatyId"`) 公会ID + int64 sociatyCd = 24; //@go_tags(`bson:"sociatyCd"`) 主动退出CD + int32 guildcoin = 25; //@go_tags(`bson:"guildcoin"`) 公会币 + int32 arenacoin = 26;//@go_tags(`bson:"arenacoin"`) 竞技场币 + int32 physicalbuynum = 27; //@go_tags(`bson:"physicalbuynum"`)体力购买次数 + int64 physicalbuyLasttime = 28;//@go_tags(`bson:"physicalbuyLasttime"`)最后购买体力事件 + int32 buyunifiedticket = 29; //@go_tags(`bson:"buyunifiedticket"`)购买统一入场门票次数 + int64 lasttimeunifiedticket = 30; //@go_tags(`bson:"lasttimeunifiedticket"`)最后购买统一入场门票时间 + int64 recovertimeunifiedticket = 31;//@go_tags(`bson:"recovertimeunifiedticket"`)同意门票恢复时间 + int32 sociatyTicketBuyNum = 32;//@go_tags(`bson:"sociatyTicketBuyNum"`) 公会boss挑战券购买次数 + int32 sociatyTicket = 33;//@go_tags(`bson:"sociatyTicket"`) 公会boss挑战券数量 + map mline = 34;//@go_tags(`bson:"mline"`) 主线关卡最大进度 key难度val是关卡ID + repeated int32 suiteId = 35;//@go_tags(`bson:"suiteId"`) 套装Id + int32 globalbuff = 36; //@go_tags(`bson:"globalbuff"`) 全局buff + map race = 37; // key 阵营ID 1~4 value 总好感度 +} \ No newline at end of file diff --git a/src/pb/temop/viking_db.proto b/src/pb/temop/viking_db.proto new file mode 100644 index 0000000..fb55e25 --- /dev/null +++ b/src/pb/temop/viking_db.proto @@ -0,0 +1,27 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "battle_msg.proto"; +//维京远征 +message DBViking { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + map boss = 3; // key boos 类型 value 难度 + int32 buyCount = 4;//@go_tags(`bson:"buyCount"`) 购买次数 + int64 cTime = 5; //@go_tags(`bson:"cTime"`) 修改时间 + map bossTime = 6; //@go_tags(`bson:"bossTime"`) + int64 recoveryTime = 7; //@go_tags(`bson:"recoveryTime"`) // 开始恢复的时间 +} + +// 维京远征排行榜 +message DBVikingRank { + string id = 1; //@go_tags(`bson:"_id"`) ID + string uid = 2; //@go_tags(`bson:"uid"`) 用户ID + int32 difficulty = 3; // 难度 + int32 bosstype = 4; // boss类型塔类型 + string nickname = 5;// 昵称 + string icon = 6; // 玩家头像 + int32 lv = 7; // 玩家等级 + int32 leadpos = 8; //队长位置 + repeated LineUp line = 9; // 阵容数据 + int32 costTime = 10; //@go_tags(`bson:"costTime"`) 闯关耗时 单位s +} diff --git a/src/pb/temop/viking_msg.proto b/src/pb/temop/viking_msg.proto new file mode 100644 index 0000000..6a5b611 --- /dev/null +++ b/src/pb/temop/viking_msg.proto @@ -0,0 +1,62 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "viking_db.proto"; +import "battle_msg.proto"; +import "comm.proto"; +message VikingGetListReq { + +} + +message VikingGetListResp { + DBViking data = 1; +} + +// 挑战 +message VikingChallengeReq { + int32 bossId = 1; // boos 类型 + int32 difficulty = 2; // 难度 + BattleFormation battle = 3; + bool autoBuy = 4;// 自动购买 +} + +message VikingChallengeResp { + BattleInfo info = 1; + int32 bossId = 2; // boos 类型 + int32 difficulty = 3; // 难度 +} + +message VikingChallengeOverReq { + int32 bossId = 1; // boos 类型 + int32 difficulty = 2; // 难度 + BattleReport report = 3; //战报 + repeated int32 star = 4;// 自动出售装备的星级 +} + +// 客户端通知服务器打赢了 +message VikingChallengeOverResp { + DBViking data = 1; + repeated UserAtno asset = 2;// 推送atno + repeated string sell = 3; // 自动出售的装备 + map heroexp = 4;// 英雄获得经验 +} + + +// 购买 +message VikingBuyReq { + int32 count = 1;// 购买次数 +} + +message VikingBuyResp { + DBViking data = 1; +} + +// 排行榜 +message VikingRankListReq{ + int32 boosType = 1; // boss 类型 + bool friend = 2; // 是否是好友榜 +} + +message VikingRankListResp{ + repeated DBVikingRank ranks = 1; // 排行数据 有序的 注意boss类型 +} + diff --git a/src/pb/temop/worldtask_db.proto b/src/pb/temop/worldtask_db.proto new file mode 100644 index 0000000..a167b20 --- /dev/null +++ b/src/pb/temop/worldtask_db.proto @@ -0,0 +1,19 @@ +syntax = "proto3"; +option go_package = ".;pb"; + +message DBWorldtask { + string uid = 1; //@go_tags(`bson:"uid"`) 玩家ID + repeated int32 taskList = 3; //@go_tags(`bson:"taskList"`) 任务列表 + map currentTask = 4; //@go_tags(`bson:"currentTask"`) 正在进行的任务 + map chapters = 5; //@go_tags(`bson:"chapters"`) key章节ID v状态 1已解锁2已领取 + int64 daliyRefreshTime = 6; //@go_tags(`bson:"daliyRefreshTime"`) + int64 weekRefreshTime = 7; //@go_tags(`bson:"weekRefreshTime"`) +} + +message Worldtask { + int32 taskId = 1; //@go_tags(`bson:"taskIds"`) 任务ID + int32 taskType= 3; //@go_tags(`bson:"taskType"`) 任务类型 1 日/周常 2随机任务 3支线剧情 + int32 npcStatus = 5; //@go_tags(`bson:"npcStatus"`) NPC任务完成状态0未完成 1完成 + repeated int32 condiIds = 6; //@go_tags(`bson:"condiIds"`) 任务完成条件 + int32 deliverNpc = 7; //@go_tags(`bson:"deliverNpc"`) 交付NPC完成状态0未完成 1完成 +} \ No newline at end of file diff --git a/src/pb/temop/worldtask_msg.proto b/src/pb/temop/worldtask_msg.proto new file mode 100644 index 0000000..2addbd8 --- /dev/null +++ b/src/pb/temop/worldtask_msg.proto @@ -0,0 +1,93 @@ +syntax = "proto3"; +option go_package = ".;pb"; +import "battle_msg.proto"; +import "worldtask_db.proto"; +import "errorcode.proto"; + +// 我的世界任务 +message WorldtaskMineReq {} + +message WorldtaskMineResp { DBWorldtask task = 1; } + +//接受任务 +message WorldtaskAcceptReq{ + int32 groupId = 1; + int32 taskId = 2; +} +message WorldtaskAcceptResp{ + ErrorCode Code = 1; +} + +//任务完成条件推送 +message WorldtaskCompletecondisPush{ + int32 groupId = 1; + int32 taskId = 2; + repeated int32 condiIds = 3; +} + +//校验任务完成条件 +message WorldtaskCompleteCondiReq{ + int32 groupId = 1; + int32 taskId = 2; + int32 condiId = 3; +} + +message WorldtaskCompleteCondiResp{ + ErrorCode code = 1; + int32 taskId = 2; + int32 condiId = 3; +} + +// 完成任务 +message WorldtaskFinishReq { + int32 groupId = 1; //分组ID + int32 taskId = 2; //任务ID +} +message WorldtaskFinishResp { + ErrorCode code = 1; + int32 taskId = 2; + int32 condiId = 3; +} + +//任务完成条件达成的推送 +message WorldtaskNexttaskPush { + map nextTask = 1; + repeated int32 finishedTaskIds = 2;// 当前完成的任务 +} + +// 开始战斗 +message WorldtaskBattleStartReq { + int32 battleConfId = 1; //战斗配表ID + BattleFormation battle = 2; //战斗类型 +} + +message WorldtaskBattleStartResp { + BattleInfo info = 1; //战斗信息 +} + +// 战斗完成 +message WorldtaskBattleFinishReq { + int32 groupId = 1; + int32 taskId = 2; //任务ID + int32 condiId = 3; //完成条件ID + int32 battleConfId = 4; //战斗配表ID + BattleReport report = 5; //战报 +} + +message WorldtaskBattleFinishResp { + int32 taskId = 1; //任务ID +} + +// 当前完成的任务列表推送 +message WorldtaskFinishIdsPush { + repeated Worldtask taskList = 1; //完成的任务 key:groupId val:任务ID +} + +// 章节奖励领取 +message WorldtaskChapterrewardReq{ + int32 groupId = 1; +} + +message WorldtaskChapterrewardResp{ + ErrorCode code = 1; +} \ No newline at end of file diff --git a/src/views/protocol/Index.vue b/src/views/protocol/Index.vue index 35e3853..9f34e3a 100644 --- a/src/views/protocol/Index.vue +++ b/src/views/protocol/Index.vue @@ -227,6 +227,9 @@ export default defineComponent({ { mainType: 'pay', subs: [] }, { mainType: 'reddot', subs: [] }, { mainType: 'combat', subs: [] }, + { mainType: 'library', subs: [] }, + { mainType: 'practice', subs: [] }, + { mainType: 'parkour', subs: [] }, ]) for (const v of Object.keys(proto)) { for (const v1 of proto_models) {