tengri/Content/Movement/Core/S_MovementInput.ts

41 lines
978 B
TypeScript

// Movement/Core/S_MovementInput.ts
import type { DA_MovementConfig } from '#root/Movement/Core/DA_MovementConfig.ts';
import type { S_AngleThresholds } from '#root/Movement/Surface/S_AngleThresholds.ts';
import type { CapsuleComponent } from '#root/UE/CapsuleComponent.ts';
import type { Float } from '#root/UE/Float.ts';
import type { Vector } from '#root/UE/Vector.ts';
/**
* Movement processing input data
* All data needed to compute next movement state
*
* @category Movement Input
*/
export interface S_MovementInput {
/**
* Player input vector (normalized XY direction)
*/
InputVector: Vector;
/**
* Frame delta time (seconds)
*/
DeltaTime: Float;
/**
* Character capsule component for collision
*/
CapsuleComponent: CapsuleComponent | null;
/**
* Movement configuration
*/
Config: DA_MovementConfig;
/**
* Angle thresholds in radians (for surface classification)
*/
AngleThresholdsRads: S_AngleThresholds;
}