根据距离计算游戏对象伤害

本文关键字:对象 伤害 游戏 计算 距离 | 更新日期: 2023-09-27 18:32:24

我正在尝试获取一个x%介于最小和最大数字之间的数字。

因此,例如,如果我有以下内容:

min = 5;
max = 10;
// `c` is a Collider type
float distance = Vector3.Distance(c.transform.position, transform.position);
float percent = distance / radius;

所以现在我正在寻找的是,当object B更接近object A半径的边缘时,我的最终数字更接近5。当object B靠近object A的中心时,我希望最终的数字更接近10

到目前为止,我已经有了上述内容,但我不确定获得Object Damage Amount的最终公式是什么.基本上可以把它想象成一个近距离地雷,你离得越远,你受到的伤害就越少,你离得越近,你受到的伤害就越大。

根据距离计算游戏对象伤害

var result = (1.0f - percent) * (max - min) + min;

只需确保距离始终为 <= 半径(即百分比>= 0.0 和百分比 <= 1.0)