如何实现动态选择?

Tomas Zato-恢复莫妮卡

我正在制作战略游戏AI。具体来说,我正在使用BWMirror Java库制作Starcraft:BroodWar虫族AI。

我遇到了单位管理方面的问题。播放器中有一些单位,可以这么说List<Unit>

Offset Name     Position
0.     Drone    [Worker]
1.     Drone    [Worker]
2.     Zergling [Fighter]
3.     Hatchery [Building]
4.     Drone    [Worker]
5.     Larva    [Passive]

有些功能显然仅适用于单位子集。我实现了一种从主列表中选择子集并将其作为新列表返回的方法。对于工人,我会得到:

Offset Name     Position
0.     Drone    [Worker]
1.     Drone    [Worker]
2.     Drone    [Worker]

现在,如果将其中一个工作程序从原始列表中删除(例如,由于其死亡),它将保留在此子列表中。有2种可能的解决方案,我都不喜欢:

  1. 每次在需要时生成选择列表。
  2. 分配一些事件回调以删除项目中所有存在的项目。

我的问题是:是否有任何类型的数据存储可以让我进行子选择,但让我保持数据同步?

这意味着我将有两个Iterable对象,一个将包含所有单元,另一个将包含worker。从所有部门中删除工作人员也将使其从工作人员中消失,而无需任何回调。

P

我认为您只有列出的2个选项,在这两个选项中,我认为第一个选项最有意义。

仅在需要时才懒惰地生成列表,这样可以节省很多时间。一位拥挤的海军陆战队员(例如您自己)可能会杀死大量的小虫,您真的不希望为每只死亡的小虫发送消息。最好在需要时只看剩下的东西。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

AEM/Sling:如何实现动态吊索选择器?

来自分类Dev

如何动态实现ionRangeSliders

来自分类Dev

如何实现动态索引?

来自分类Dev

如何实现多项选择?

来自分类Dev

如何实现选择按钮

来自分类Dev

如何实现选择排序?

来自分类Dev

使用动态编程实现活动选择概率

来自分类Dev

使用动态编程实现活动选择概率

来自分类Dev

如果选择器是动态创建的,如何实现jquery .change代码?

来自分类Dev

如何实现动态行跨度

来自分类Dev

如何选择正确的列表实现?

来自分类Dev

如何动态选择调度类型?

来自分类Dev

如何使选择框动态化

来自分类Dev

如何动态选择键名?

来自分类Dev

如何制作动态选择框?

来自分类Dev

如何动态更新选择值?

来自分类Dev

如何动态选择调度类型?

来自分类Dev

如何使用动态订购选择

来自分类Dev

如何选择动态排名值?

来自分类Dev

如何动态选择shinydashboard皮肤?

来自分类Dev

实现动态选择器并显示相应的图像

来自分类Dev

使用对象数据动态创建选择菜单并实现

来自分类Dev

Hibernate如何实现动态数据结构

来自分类Dev

如何动态地实现特定功能?

来自分类Dev

如何在C中实现动态数组?

来自分类Dev

春季:如何动态获取bean实现?

来自分类Dev

如何快速实现动态背景图像

来自分类Dev

如何动态实现社交媒体共享按钮?

来自分类Dev

如何使用KDB实现动态订户?