帝国时代-7.10

  第一阶段是基础动作的准备,主要实现了地图更新,村民管理和初始化动作分配,控制村民实现资源获取的接口,创建并管理SN_to_Sort表。主要函数如下:

1.CurrentMap()

     实现地图的动态更新,在每次调用帧是都调用一次,记录资源,建筑,单位,陆地海洋的块坐标,用字符构建地图

2.initialSNSort()

     构建四个map表,实现由SN和资源,单位,建筑的一一对应,方便后续根据类型等查找到SN编号

3.currentFarmerStat()

    村民的管理用一张map表实现,实现SN和状态的一一对应,便于后续对村民的调度,在每帧开始时遍历村民,并将其状态存入map表中,其中,状态用几个自定义的int表示:0空闲,3攻击敌军,4砍树,5石头,6瞪羚,7大象,8捕鱼,9黄金,10建造

4.collectRes(int type, int num)

   这个函数提供了上层控制村民搜集资源的接口,type指需要的资源类型,num是分配的人数,在次函数中,首先分配空闲的人收集目的资源,如果空闲人数不足,则按照黄金 < 石头 < 鱼 < 瞪羚 <大象 < 木材的优先级顺序改变人的状态

5.autoDispatch()

  这个函数实现空闲人员的动态分配调控,在每帧调用初始调用,使得人员不会空闲,这个函数为每个资源设置了权重,然后根据权重计算现有资源的权重比占比,根据占比分配空闲人员。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值