41 lines
978 B
TypeScript
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;
|
|
}
|