87 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Protocol Buffer
		
	
	
		
		
			
		
	
	
			87 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Protocol Buffer
		
	
	
|  | syntax = "proto3";
 | ||
|  | package dof;
 | ||
|  | option go_package = "./;pb";
 | ||
|  | 
 | ||
|  | // ClientMessage 客户端发送给服务端的消息类型
 | ||
|  | message ClientMessage {
 | ||
|  |   oneof actual {
 | ||
|  |     PlayerEnter player_enter = 1;
 | ||
|  |     LevelPrepared level_prepared = 2;
 | ||
|  |     PointFound point_found = 3;
 | ||
|  |     LevelEnd level_end = 4;
 | ||
|  |     AllLevelEnd all_level_end = 5;
 | ||
|  |     PlayerLeave player_leave = 6;
 | ||
|  |   }
 | ||
|  | }
 | ||
|  | 
 | ||
|  | // ServerMessage 服务端发送给客户端的消息类型
 | ||
|  | message ServerMessage {
 | ||
|  |   oneof actual {
 | ||
|  |     PlayerEntered player_entered = 1;
 | ||
|  |     GameStart game_start = 2;
 | ||
|  |     LevelStart level_start = 3;
 | ||
|  |     PointFound point_found = 4;
 | ||
|  |     GameFinish game_finish = 5;
 | ||
|  |   }
 | ||
|  | }
 | ||
|  | 
 | ||
|  | // PlayerEnter 客户端进入房间
 | ||
|  | message PlayerEnter {
 | ||
|  |   string room_id = 1;
 | ||
|  |   string uid = 2;
 | ||
|  |   string nick_name = 3;
 | ||
|  |   string country = 4;
 | ||
|  | }
 | ||
|  | 
 | ||
|  | message LevelResource {
 | ||
|  |   string level_id = 1;
 | ||
|  |   string android_generation = 2;
 | ||
|  |   string ios_generation = 3;
 | ||
|  | }
 | ||
|  | 
 | ||
|  | // PlayerEntered 服务端接收到 PlayerEnter 消息后发还给客户端的回执
 | ||
|  | message PlayerEntered {
 | ||
|  |   int64 cid = 1;
 | ||
|  | }
 | ||
|  | 
 | ||
|  | message GameStart {
 | ||
|  |   repeated LevelResource level_resource = 1;
 | ||
|  | }
 | ||
|  | 
 | ||
|  | message LevelPrepared {
 | ||
|  |   int64 cid = 1;
 | ||
|  |   string level = 2;
 | ||
|  | }
 | ||
|  | 
 | ||
|  | message LevelStart {
 | ||
|  |   string level = 1;
 | ||
|  | }
 | ||
|  | 
 | ||
|  | message PointFound {
 | ||
|  |   int64 cid = 1;
 | ||
|  |   string level = 2;
 | ||
|  |   int32 point_id = 3;
 | ||
|  | }
 | ||
|  | 
 | ||
|  | message LevelEnd {
 | ||
|  |   int64 cid = 1;
 | ||
|  |   string level = 2;
 | ||
|  | }
 | ||
|  | 
 | ||
|  | message AllLevelEnd {
 | ||
|  |   int64 cid = 1;
 | ||
|  | }
 | ||
|  | 
 | ||
|  | message GameScore {
 | ||
|  |   string uid = 1;
 | ||
|  |   int32 score = 2;
 | ||
|  | }
 | ||
|  | 
 | ||
|  | message GameFinish {
 | ||
|  |   repeated GameScore scores = 1;
 | ||
|  | }
 | ||
|  | 
 | ||
|  | message PlayerLeave {
 | ||
|  |   int64 cid = 1;
 | ||
|  | }
 |