Screeps-工种调度方案V1
截止到2023-7-8本人在GCL1,RCL3的阶段,代码还在建设ing,思考有限
背景
在Screeps中,对于每个工种,都需要其有自己的行为模式
同时如果当工种自己的事情做完了,可以去帮着其他的工种做事
同时由于调用工种都从Creeps调用,耦合度高,编码不方便,需要整合为一个单独的工种类
需求
对于工种的调用需要使用Creeps类的方法进行调用,需要将其封装为一个工种类
同时需要支持工种间的相互切换
设计
首先将状态模式的变化顺序进行明确
之后判断变化条件,通过transform方法进行状态变更
由于Creeps为Screeps官方提供的接口,无法变化,所以需要通过适配器模式,进行适配
然后将工种继承这个适配器,调用工种即可
结果
现在只需要通过继承CreepsAdapter类,实现work方法即可进行新工种的行为使用
之后通过在transform方法里传递进需要变化的CreepsAdapter即可
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 txuw
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果