《游戏编程模式》笔记——字节码
意图
将行为编码为虚拟机的指令,赋予其数据的灵活性。
说人话就是,通过外部数据来定义行为,游戏程序通过读取数据解析后进行对应的行为。
如果把游戏的行为写到代码中,每次修改的时候都要重新编译整个游戏程序,十分的不方便。
行为=组合
为了支持复杂的行为,我们需要通过将单一的行为进行组合。
例如我们有一个治疗技能,它会根据角色的敏捷和智力的平均值来治疗角色。
这么一个技能的行为就可以是:
获取角色当前血量
获取角色当前敏捷
获取角色当前智力
敏捷与智力相加
敏捷与智力相加的结果除2得到治疗量
角色血量与治疗量相加获得治疗结果
将角色的血量设置为治疗结果
我们需要将各个行为封装成对应的函数,在解析了数据以后执行对应的行为进行堆叠依次执行,再复杂的行为都可以实现。
参考
《游戏编程模式》