Zitat Zitat von Kelven Beitrag anzeigen
Der Fehler hat mit der Reihenfolge der Operationen zu tun. Du solltest zunächst den Prozentsatz komplett berechnen und erst ganz am Schluss mit b.mhp multiplizieren.

Die Formel würde dann so aussehen: b.mhp*(0.5*((a.hp/a.mhp)+0.5)

Hätte a 100% der MaxHP wäre der Prozentsatz z. B.:0.5*1.5 = 75%
Hätte a 60% der MaxHP wäre der Prozentsatz Z. B.: 0.5*1.1 = 55%
Hätte a 20% der MaxHP wäre der Prozentsatz Z. B.: 0.5*0.7 =35%

So hattest du es dir gedacht, oder?
Leider stimmt das nicht Kelven. Die Multiplikation ist eine assoziative Operation.
Es gilt: (a * b) * c == a * (b * c) == a * b * c
Daher macht es keinen Unterschied ob die Formel nun
b.mhp * ( 0.5 * REST )
anstatt
(b.mhp * 0.5) * REST
lautet.