c# - 如何转换此代码以便在 Unity 中使用?
问题描述
我有一个简单的 pong 项目,我在 Monogame 中创建了一个非常简单的决策树实现。
现在我正在尝试创建相同的游戏,而不是统一的逻辑。
我在 Dt 中的节点结构如下:
public DecisionTreeNode DecisionTreeAction(PaddleAI AI_Ball)
{
DecisionTreeNode rootnode = new DecisionTreeNode
{
TestFunction = (BallControls) => AI_Ball.StayAtSamePosition(),
Yes = new Decision { evaluatedData = true },
No = new Decision { evaluatedData = false }
};
DecisionTreeNode Stay = new DecisionTreeNode
{
TestFunction = (BallControls) => AI_Ball.StayAtSamePosition(),
Yes = new Decision { evaluatedData = true },
No = new Decision { evaluatedData = false }
};
DecisionTreeNode GoUp = new DecisionTreeNode
{
TestFunction = (BallControls) => AI_Ball.GoUP(),
Yes = new Decision { evaluatedData = true },
No = new Decision { evaluatedData = false }
};
等等。
Unity 不像 monogame 那样使用 new 关键字。如何重新编写这些表达式,以便它们可以在 Unity 中使用?
DecisionTreeNode 是一个类。BallControls 是一个用于球逻辑的类。Paddle_AI 是一个具有 AI 桨移动功能的类。
TestFunction 是这样的:
public Func<BallControls, bool> TestFunction { get; set; }
解决方案
推荐阅读
- asana - 使用 Zapier 更新 Asana 任务自定义字段值
- docker - 从运行在容器内(托管在 Windows 中)的 .net Core api 连接到在主机上运行的 Identity Web 服务会产生错误 400 Bad Request
- solr - Solr 拼写检查和词干过滤器
- java - SpotBugs“没有为属性‘spotbugsClasspath’指定值”
- actions-on-google - Google 在每次访问后生成新的 UserId(Alpha 阶段)
- python - 使用 tkinter 和 openpyxl 遍历电子表格的最佳方式?
- php - 处理来自 3rd 方 API 的错误
- java - 能够使用杰克逊循环从 json 响应返回的每个用户
- python - Python 不同大小的元素
- php - 将 php 错误日志写入包含自定义数据的文件