【发布时间】:2021-09-18 11:37:22
【问题描述】:
我有可以从事某些工作的 AI 玩家。所以我必须找到最好的方法来模拟这种关系。餐厅工作人员从餐厅库存中获取食物并将其带到餐桌上。在这项工作中,餐厅库存是“FoodStore”,桌子是交货点。我对肉类供应商有相同的工作概念,但是他的“食品店”是配送工厂,而他的交货点是餐厅库存。这三个对象都必须通过我尚未决定的抽象类或接口“成为”目标对象。
主要问题是我无法检查对象的“FoodAvailable”属性,因为我将它们作为其父类“目标”进行迭代以保持事物抽象,以便肉类供应商和餐厅工作人员都可以实现相同的“工作”班级。我需要能够迭代需要食物的潜在交付点,同时检查它们的资源价值,因此我需要交付点对象同时满足这两个属性,同时还要以某种方式抽象。
更复杂的是,我还有其他 AI 会来吃桌子。我似乎做得很好。建模这种特殊的关系让我很难过。我不认为代码在这种情况下是相关的,因为我只需要一个关于如何表示它的高级想法。如果有帮助,我可以提供代码。
【问题讨论】:
-
这听起来很像黑板架构。这种结构将使观察不同物体变得更加容易,并增加物体可以去的方向(将食物送回厨房......)
标签: c# unity3d architecture game-development