| 原则: | 基于事件 | 有选择同步 | ||||||||||||||||||||||||||||||
| Client | Channel | Server | ||||||||||||||||||||||||||||||
| UI | Model | Player | Player | Model | ||||||||||||||||||||||||||||
| OnXxx | 键盘、鼠标事件 | |||||||||||||||||||||||||||||||
| CommandXxxx | 发送用户指令 | |||||||||||||||||||||||||||||||
| event Commnad | ||||||||||||||||||||||||||||||||
| +=CommandHanler | 截获用户指令并转送 | |||||||||||||||||||||||||||||||
| CommandXxx | 在服务器上执行相关指令 | |||||||||||||||||||||||||||||||
| Prop=xxx | 计算后某些属性改变 | |||||||||||||||||||||||||||||||
| OnSync | 决定事件是否需要同步 | |||||||||||||||||||||||||||||||
| event Sync | ||||||||||||||||||||||||||||||||
| +=SyncHandler | 截获属性变更指令 | |||||||||||||||||||||||||||||||
| OnSync | 在客户端同步 | |||||||||||||||||||||||||||||||
| Prop=xxx | 属性发生变化 | |||||||||||||||||||||||||||||||
| +=PropChanged | 反应到UI上 | |||||||||||||||||||||||||||||||
| TODO: | 排队缓存发送 | |||||||||||||||||||||||||||||||
| 上图对折后,去掉Channel监听就是单用户版 | ||||||||||||||||||||||||||||||||

浙公网安备 33010602011771号