Files
Ransom-s-wake/game/domain/rules/dive_accessibility_adjustments.gd

28 lines
831 B
GDScript

class_name DiveAccessibilityAdjustments
extends RefCounted
var oxygen_consumption_multiplier: float
var battery_consumption_multiplier: float
var pressure_damage_multiplier: float
func _init(
p_oxygen_consumption_multiplier: float = 1.0,
p_battery_consumption_multiplier: float = 1.0,
p_pressure_damage_multiplier: float = 1.0
) -> void:
oxygen_consumption_multiplier = p_oxygen_consumption_multiplier
battery_consumption_multiplier = p_battery_consumption_multiplier
pressure_damage_multiplier = p_pressure_damage_multiplier
func validation_error() -> String:
for multiplier: float in [
oxygen_consumption_multiplier,
battery_consumption_multiplier,
pressure_damage_multiplier,
]:
if not is_finite(multiplier) or multiplier <= 0.0:
return "accessibility multipliers must be finite and positive"
return ""