首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >团结-两名人类玩家,如何检测哪个玩家对AI敌人造成的伤害最大?

团结-两名人类玩家,如何检测哪个玩家对AI敌人造成的伤害最大?
EN

Stack Overflow用户
提问于 2021-12-02 23:55:14
回答 1查看 140关注 0票数 0

我真的很抱歉,因为我在这里没有代码可提供。

我完全不知所措,我仍然是一个编码新手,并试图运行一个简单的练习,以测试一个游戏技工的想法通过原型。

我将使用一个简单的例子:

  • 2玩家对2个AI敌人

  • 和敌人ai都有400个生命值

  • 两人都有枪,每次按下会造成20点伤害。--

  • 在一场快速的战斗后,两个敌人都死了。--

我想奖励那些对敌人造成最大伤害的球员。

这就是我想要达到的目标:我如何去探测哪一个玩家对敌人AI造成最大的伤害?

任何帮助都是值得感谢的,一旦我能够掌握如何做到这一点的概念,我就可以继续对它进行编码。

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-12-03 10:57:02

这个问题太笼统了--有很多方法可以做到这一点。让我们坚持OOP:让我们创建“损坏”对象(脚本,类),它包含以下信息:伤害量,玩家id。是否玩家命中扳机,让我们假设,子弹预制件是实例化的。它上面有一个脚本(MonoBehaviour),叫做"DamageContainer“。当您实例化一个项目时,您还会创建您的“损坏”对象,设置正确的值,并将其放入子弹的“损坏容器”中。然后,当子弹与敌人相撞时,你会从子弹中得到这个信息。你用来降低敌人生命的伤害量。为了计算损失,你需要计数器本身。它可以是静态类、可编写脚本的对象、单例或其他东西。让我们使用静态类,这不是最佳实践,而是最简单的。您需要一个名为"DamageCounter“的简单静态类,它包含两个公共字段: Player1Damage和Player2Damage。当子弹与敌人相撞时,你需要增加对"DamageCounter“正确字段的伤害,这取决于damage.PlayerId字段。

不要忘记在每次战斗开始时重置静态类值。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70207907

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档