-
Notifications
You must be signed in to change notification settings - Fork 1
/
socket_data_example.py
83 lines (78 loc) · 2.27 KB
/
socket_data_example.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
"""
Socket传输数据样例
"""
# Server Send
status = {
'map': 1, # 地图编号
'bg': 2, # 背景编号
'players': # 游戏中的玩家角色
[
{
'id': '1', # 角色编号
'pos': (608, 653), # 角色坐标
'skin': 'p_pale', # 角色皮肤
'status': 'idle', # 角色状态机
'frame_index': 0.86, # 状态机动画帧索引(取整)
'face_direction': 'right', # 角色面向的方向
'bullet_list': # 场景中存在的子弹
[
{
'pos': (1129, 682), # 子弹坐标
'image_path': './assets/game/weapon/gun/bullet/bullet.png', # 子弹贴图
'damage': 50 # 子弹伤害
}
],
'score': 0
}
],
'timer': # 游戏倒计时时间
{
'time': 1,
'finished': False # False/True
}
}
# Client Send
response = { # 在./server.py/ResponseHandler(CLASS)中处理
'action': 'commands', # 调用handle_commands()
'value':
{
'commands':
[
{
'movement': { # 调用handle_movement()
'id': '1',
'pos': (531, 781)
}
},
{
'animation': { # 调用handle_animation()
'id': '1',
'skin': 'p_pale',
'status': 'idle',
'frame_index': 0.79,
'face_direction': 'right'
}
},
{
'bullet': { # 调用handle_bullet()
'id': '1',
'bullet_list':
[{
'bullet_id': 123456,
'destroy': False,
'pos': (124, 750),
'image_path': './assets/game/weapon/gun/bullet/bullet.png',
'damage': 50
}]
}
},
{
'score': { # 调用handle_bullet()
'id': '1',
'score': 0
}
}
],
'id': '1' # data sender
}
}