|
|
@ -38,17 +38,18 @@ public class Behaviour { |
|
|
|
public static Object Standard(AbstractCharacter caster, AbstractWorldObject target, Power power, |
|
|
|
public static Object Standard(AbstractCharacter caster, AbstractWorldObject target, Power power, |
|
|
|
ActionEntry powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) { |
|
|
|
ActionEntry powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) { |
|
|
|
boolean useAdditiveCurve = true; |
|
|
|
boolean useAdditiveCurve = true; |
|
|
|
float curveValue = modifierEntry.compoundCurveType.getValue(); |
|
|
|
float modifierCurveValue = modifierEntry.compoundCurveType.getValue(); |
|
|
|
float modValue = 0.0f; |
|
|
|
float modValue = 0.0f; |
|
|
|
|
|
|
|
|
|
|
|
if (curveValue > 0 && curveValue < .1 && |
|
|
|
if (modifierCurveValue > 0 && modifierCurveValue < .1 && |
|
|
|
modifierEntry.min != 0 && modifierEntry.max != 0) |
|
|
|
modifierEntry.min != 0 && modifierEntry.max != 0) |
|
|
|
useAdditiveCurve = false; |
|
|
|
useAdditiveCurve = false; |
|
|
|
|
|
|
|
|
|
|
|
if (useAdditiveCurve) |
|
|
|
if (useAdditiveCurve) |
|
|
|
modValue = this.percentMod + (curveValue * rank); |
|
|
|
modValue = powerAction.curve.getValue() + (modifierCurveValue * rank); |
|
|
|
else |
|
|
|
else |
|
|
|
modValue = this.percentMod * (1 + (curveValue * rank)); |
|
|
|
modValue = powerAction.curve.getValue() * (1 + (modifierCurveValue * rank)); |
|
|
|
|
|
|
|
|
|
|
|
modValue = modValue * 0.01f; |
|
|
|
modValue = modValue * 0.01f; |
|
|
|
|
|
|
|
|
|
|
|
return modValue; |
|
|
|
return modValue; |
|
|
|