28 lines
831 B
GDScript
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 ""
|