在Gamemaker中用最小-最大值计算百分比

Calculating percentage with min-max in Gamemaker

本文关键字:最大值 计算 百分比 Gamemaker      更新时间:2023-09-26

我有一个healthbar,我想使用最小/最大和实际数字
6是最小值
8是最大值
实际数字将以7作为起始数字在它们之间浮动
尝试过((max_n+min_n)/act_n)*100,但这当然不起作用
我想那天他们在学校检查时我生病了(翻白眼)

如果您有一个(6, 8)的浮点值,并且您希望该值与最小值之间的距离表示为最大值与之间的差异

var min = 6, 
    max = 8, 
    current = 7, 
    difference = max - min, 
    percent = (current - min) / difference;  // <-- is the value you're after
                                             // it is 50% between (6,8)

我不确定我是否理解你在做什么,但我相信你计算平均值的方法不对。你不应该把实际值除以可能的总数吗?

目前,您的逻辑如下:(8+6(14)/实际(7))*100,即14/7=2*100=200。

我认为你需要颠倒这两个参数,min+max和实际值。

如果是我,我不会这样做,而是从两者中减去最小值,然后除以两者之间的差。如果6和8是动态的,这可能看起来像:

((act_n-min_n)/(max_n-min _n))*100

或者,对于值,这将是:((7.2-6)/(8-6)*100

(1.2/2)*100=60,所以你的百分比是60%

我不使用Javascript,所以请忽略我所做的任何间距错误。我不知道语言有多严格。