回合战斗设计总结

1.战斗模块划分
__init__  对外接口
cmd  放指令组装的类
defines  常量
package  装数据包的类
warcontext   将战斗的单例集中起来,作为统一接口
view
    v_war  战场视图
    v_warunit  战斗单元视图
    warui  界面视图
parts  视图分离
    war  
p_warunits  战斗单元增删
    warui  战场ui的细节,如头部人物图标,操作显示,倒计时
    warunit  战场单元相关,位置,血条,选中效果
com  视图分离,放一些不参与单元测试的单元部分,如法术播放,摄像机,特效播放
    warui  
    warunit 
ctrl
    war  
    warui  
    warunit  
model
    m_buff  buff属性
    m_summon  宠物数据
    m_war  战场数据
    m_warunit  战斗单元数据
service  面向接口编程,主要是为了将依赖表现,导表等的部分改为调用service,有利于单元测试
    facade  对外接口服务
    factory  工厂服务
    server  发包服务
    table  导表服务
    view  视图服务

2.结构图

 

ViewModel:视图数据,作为View和Ctrl的分离层。里面实质是包含数据及信号,用于脱离view的单元测试。在接入view后,只需注册信号就可以有相应的视图变化。与Ctrl关联的改为ViewModel,测试逻辑再也不需要模拟View层,View层也只会在启动游戏后,由ViewModel数据驱动去改变显示。

 

3.处理过程

接收到服务端发过来的数据包 -> 将数据组装为客户端数据包 -> 对数据包进行解析,组装出回合指令 -> 回合指令表现

 

posted @ 2019-07-12 00:47  枫林晚月  阅读(297)  评论(0编辑  收藏  举报