Browse Source

新增初步战斗协议

neo 1 year ago
parent
commit
46616f8a2c
3 changed files with 223 additions and 1 deletions
  1. 9 1
      proto-lib/all_socket.lua
  2. 49 0
      proto-lib/proto_battle.lua
  3. 165 0
      proto-lib/proto_room.lua

+ 9 - 1
proto-lib/all_socket.lua

@@ -6,7 +6,9 @@ package.loaded[PROTO_ROOT .. "proto-lib.proto_bag"] = nil -- 2100
6 6
 package.loaded[PROTO_ROOT .. "proto-lib.proto_test"] = nil -- 2200
7 7
 package.loaded[PROTO_ROOT .. "proto-lib.proto_shop"] = nil -- 2300
8 8
 package.loaded[PROTO_ROOT .. "proto-lib.proto_mail"] = nil -- 2400
9
-package.loaded[PROTO_ROOT .. "proto-lib.proto_box"] = nil -- 2400
9
+package.loaded[PROTO_ROOT .. "proto-lib.proto_box"] = nil -- 2500
10
+package.loaded[PROTO_ROOT .. "proto-lib.proto_room"] = nil -- 2600
11
+package.loaded[PROTO_ROOT .. "proto-lib.proto_battle"] = nil -- 2600
10 12
 
11 13
 -- 其他协议
12 14
 -- proto-lib.proto_http -- 31000~31999
@@ -19,6 +21,8 @@ local proto_test = require(PROTO_ROOT .. "proto-lib.proto_test")
19 21
 local proto_shop = require(PROTO_ROOT .. "proto-lib.proto_shop")
20 22
 local proto_mail = require(PROTO_ROOT .. "proto-lib.proto_mail")
21 23
 local proto_box = require(PROTO_ROOT .. "proto-lib.proto_box")
24
+local proto_room = require(PROTO_ROOT .. "proto-lib.proto_room")
25
+local proto_battle = require(PROTO_ROOT .. "proto-lib.proto_battle")
22 26
 
23 27
 local c2s = proto_socket.c2s
24 28
 c2s = c2s .. proto_user.c2s
@@ -27,6 +31,8 @@ c2s = c2s .. proto_test.c2s
27 31
 c2s = c2s .. proto_shop.c2s
28 32
 c2s = c2s .. proto_mail.c2s
29 33
 c2s = c2s .. proto_box.c2s
34
+c2s = c2s .. proto_room.c2s
35
+c2s = c2s .. proto_battle.c2s
30 36
 
31 37
 local s2c = proto_socket.s2c
32 38
 s2c = s2c .. proto_user.s2c
@@ -35,6 +41,8 @@ s2c = s2c .. proto_test.s2c
35 41
 s2c = s2c .. proto_shop.s2c
36 42
 s2c = s2c .. proto_mail.s2c
37 43
 s2c = s2c .. proto_box.s2c
44
+s2c = s2c .. proto_room.s2c
45
+s2c = s2c .. proto_battle.s2c
38 46
 
39 47
 local proto = {
40 48
     c2s = c2s,

+ 49 - 0
proto-lib/proto_battle.lua

@@ -0,0 +1,49 @@
1
+local proto_struct = [[
2
+]]
3
+
4
+local proto_c2s =
5
+    [[
6
+    # 战斗信息
7
+    battle_get_info 2700 {
8
+        request {
9
+        }
10
+        response {
11
+            code 0: integer
12
+        }
13
+    }
14
+]]
15
+
16
+local proto_s2c =
17
+    [[
18
+        # 战斗信息
19
+        on_battle_info 2700 {
20
+            request {
21
+            }
22
+        }
23
+
24
+        # 开始战斗
25
+        on_battle_start 2701 {
26
+            request {
27
+            }
28
+        }
29
+        
30
+        # 战斗轮次
31
+        on_battle_round 2702 {
32
+            request {
33
+            }
34
+        }
35
+
36
+        # 战斗结算
37
+        on_battle_settle 2703 {
38
+            request {
39
+                winUid 1: integer                       # 胜利玩家ID
40
+            }
41
+        }
42
+]]
43
+
44
+local proto = {
45
+    c2s = proto_struct .. proto_c2s,
46
+    s2c = proto_struct .. proto_s2c
47
+}
48
+
49
+return proto

+ 165 - 0
proto-lib/proto_room.lua

@@ -0,0 +1,165 @@
1
+local proto_struct =
2
+    [[
3
+    # 房间玩家信息
4
+    .DataRoomPlayer {
5
+        playerInfo 0: DataUserBaseInfo      # 玩家信息
6
+        seatId 1: integer                   # 位置ID
7
+        status 2: integer                   # 状态 1:准备
8
+    }
9
+
10
+    # 房间信息
11
+    .DataRoom {
12
+        roomId 0: integer                   # 房间号
13
+        battleBoxList 1: *integer           # 战斗箱子ID列表
14
+        playerList 2: *DataRoomPlayer       # 房间玩家列表
15
+        status 3: integer                   # 房间状态 0:等待中 1:进行中 2:结束
16
+        createTime 4: integer               # 创建时间
17
+    }
18
+
19
+    # 射击结果
20
+    .DataBattleShot {
21
+        itemId 0: integer                   # 中奖饰品ID
22
+        price 1: integer                    # 射击价格
23
+    }
24
+    # 战斗玩家
25
+    .DataBattlePlayer {
26
+        uid 0: integer                      # 玩家ID
27
+        shotList 1: *DataBattleShot         # 射击结果列表
28
+    }
29
+    # 战斗记录
30
+    .DataBattleRecord {
31
+        roomInfo 0: DataRoom
32
+        battleId 1: string
33
+        winUid 2: integer
34
+        battlePlayerList 3: *DataBattlePlayer   # 战斗玩家列表
35
+    }
36
+]]
37
+
38
+local proto_c2s =
39
+    [[
40
+        # 获取房间列表
41
+        room_get_info 2600 {
42
+            request {
43
+            }
44
+            response {
45
+                code 0: integer
46
+                roomList 1: *DataRoom       # 房间信息列表
47
+                myRoom 2: DataRoom          # 已进入房间
48
+            }
49
+        }
50
+
51
+        # 创建房间
52
+        room_create_room 2601 {
53
+            request {
54
+                battleBoxList 1: *integer   # 战斗箱子ID列表
55
+            }
56
+            response {
57
+                code 0: integer             # 返回结果吗
58
+                room 1: DataRoom            # 房间信息
59
+            }
60
+        }
61
+
62
+        # 进入房间
63
+        room_player_enter 2602 {
64
+            request {
65
+                roomId 0: integer           # 房间号码
66
+            }
67
+            response {
68
+                code 0: integer
69
+                room 1: DataRoom            # 房间信息
70
+            }
71
+        }
72
+
73
+        # 离开房间
74
+        room_player_leave 2603 {
75
+            request {
76
+            }
77
+            response {
78
+                code 0: integer
79
+            }
80
+        }
81
+
82
+        # 解散房间
83
+        room_dismiss_room 2604 {
84
+         request {
85
+            }
86
+            response {
87
+                code 0: integer             # 返回结果码
88
+            }
89
+        }
90
+
91
+        # 获取自身房间信息
92
+        room_get_in_room_info 2605 {
93
+            request {
94
+            }
95
+            response {
96
+                code 0: integer             # 返回结果码
97
+                room 1: DataRoom            # 房间信息
98
+            }
99
+        }
100
+
101
+        # 所在好友房内玩家操作
102
+        room_player_opt 2606 {
103
+            request {
104
+                optType 0: integer          # 1.坐下,2.站起 ,3.踢参与者(房主强制让坐下的站起)
105
+                targetUid 1: integer        # 被踢的参与者uid(类型3使用)
106
+            }
107
+            response {
108
+                code 0: integer
109
+            }
110
+        }
111
+
112
+        # 开始比赛
113
+        room_battle_start 2607 {
114
+            request {
115
+            }
116
+            response {
117
+                code 0: integer
118
+            }
119
+        }
120
+
121
+        # 获取房间对战记录列表
122
+        room_get_record_list 2620 {
123
+         request {
124
+            }
125
+            response {
126
+                code 0: integer             # 返回结果码
127
+                list 1: *DataBattleRecord   # 房间对战记录列表
128
+            }
129
+        }
130
+        
131
+        # 获取房间对战记录列表
132
+        room_get_brilliant_record_list 2621 {
133
+         request {
134
+            }
135
+            response {
136
+                code 0: integer             # 返回结果码
137
+                list 1: *DataBattleRecord   # 房间对战记录列表
138
+            }
139
+        }
140
+]]
141
+
142
+local proto_s2c =
143
+    [[
144
+        # 新创建房间推送
145
+        on_room_new 2600 {
146
+            request {
147
+                room 0: DataRoom            # 房间信息
148
+            }
149
+        }
150
+
151
+        # 所在好友房成员改变推送
152
+        on_room_player_change 2601 {
153
+            request {
154
+                type 0: integer                 # 消息的类型 [房间成员变化 100进入, 101离开, 102坐下 103站起,104强制站起, 105被踢出]
155
+                changeRoomPlayer 1: *DataRoomPlayer # 变化的房间成员
156
+            }
157
+        }
158
+]]
159
+
160
+local proto = {
161
+    c2s = proto_struct .. proto_c2s,
162
+    s2c = proto_struct .. proto_s2c
163
+}
164
+
165
+return proto