class_name MovementParameters extends Reference ## Vector based ones for x and y export var base_move_speed :Vector2 export var base_move_acceleration :Vector2 export var move_speed_modifier :Vector2 export var move_speed_modifier_acceleration :Vector2 var gravity: int = ProjectSettings.get_setting("physics/2d/default_gravity") var jerk: float = 0.0 # export var base_h_move_speed :float # export var base_h_move_acceleration :float # export var h_move_speed_modifier :float # export var h_move_modifier_move_acceleration :float # export var base_v_move_speed :float # export var base_v_move_acceleration :float # export var v_move_speed_modifier :float # export var v_move_modifier_move_acceleration :float func modify(_movement_parameters :MovementParameters): pass func apply_state_modifier(_modifier :StateModifierMovement): match _modifier.modifier_type: StateModifierMovement.SUB_TYPE.PASS_ZERO: continue _: #print( StateModifierMovement.SUB_TYPE.PASS_ZERO, "<-->", _modifier.modifier_type ) base_move_speed.x += _modifier.horizontal_speed base_move_acceleration.x += _modifier.horizontal_acceleration move_speed_modifier.x += _modifier.horizontal_speed_offset move_speed_modifier_acceleration.x += _modifier.horizontal_speed_offset_acceleration # var movement_params :Dictionary = { # "_base_h_move_speed" : _state.horizontal_speed, # "_base_h_move_acceleration" : _state.horizontal_acceleration, # "_base_h_move_speed_modifier" : _state.horizontal_speed_offset, # "_base_h_move_modifier_move_acceleration" : _state.horizontal_speed_offset_acceleration, # "_jerk_factor" : _state.jerk_factor, # "_gravity" : _state.gravity # }