Implement production vertical slice foundation
This commit is contained in:
1 parent
9d4a89f355
commit
a18e82eb44
104 files changed
+10595
-268
No files matched your search
@@ -0,0 +1,35 @@
|
||||
class_name VehicleCommand
|
||||
extends RefCounted
|
||||
|
||||
var sequence: int
|
||||
var longitudinal: float
|
||||
var steering: float
|
||||
var vertical: float
|
||||
var high_thrust_active: bool
|
||||
|
||||
|
||||
func _init(
|
||||
p_sequence: int,
|
||||
p_longitudinal: float,
|
||||
p_steering: float,
|
||||
p_vertical: float,
|
||||
p_high_thrust_active: bool
|
||||
) -> void:
|
||||
sequence = p_sequence
|
||||
longitudinal = p_longitudinal
|
||||
steering = p_steering
|
||||
vertical = p_vertical
|
||||
high_thrust_active = p_high_thrust_active
|
||||
|
||||
|
||||
func validation_error() -> String:
|
||||
if sequence < 0:
|
||||
return "vehicle command sequence is negative"
|
||||
for value: float in [longitudinal, steering, vertical]:
|
||||
if not is_finite(value) or value < -1.0 or value > 1.0:
|
||||
return "vehicle command axes must be finite and normalized"
|
||||
return ""
|
||||
|
||||
|
||||
static func neutral(p_sequence: int) -> VehicleCommand:
|
||||
return new(p_sequence, 0.0, 0.0, 0.0, false)
|
||||
Reference in new issue
Block a user