tengri/Source/TengriPlatformer/Character/TengriCharacter.ts

56 lines
2.2 KiB
TypeScript

// Source/TengriPlatformer/Character/TengriCharacter.ts
import { Pawn } from '/Content/UE/Pawn.ts';
import { CapsuleComponent } from '/Content/UE/CapsuleComponent.ts';
import { SkeletalMesh } from '/Content/UE/SkeletalMesh.ts';
import { ArrowComponent } from '/Content/UE/ArrowComponent.ts';
import { TengriMovementComponent } from '/Source/TengriPlatformer/Movement/TengriMovementComponent.ts';
import { InputAction } from '/Content/UE/InputAction.ts';
import { InputMappingContext } from '/Content/UE/InputMappingContext.ts';
export class TengriCharacter extends Pawn {
constructor() {
super();
this.CapsuleComponent = new CapsuleComponent();
this.Mesh = new SkeletalMesh();
this.ArrowComponent = new ArrowComponent();
this.MovementComponent = new TengriMovementComponent();
this.InteractAction = new InputAction();
this.ThrowAction = new InputAction();
this.AimAction = new InputAction();
this.ItemHeldMappingContext = new InputMappingContext();
}
// ========================================================================
// COMPONENTS
// ========================================================================
public CapsuleComponent: CapsuleComponent;
public Mesh: SkeletalMesh;
public ArrowComponent: ArrowComponent;
public MovementComponent: TengriMovementComponent;
// ========================================================================
// INPUT CONFIG
// ========================================================================
public InteractAction: InputAction;
public ThrowAction: InputAction;
public AimAction: InputAction;
public ItemHeldMappingContext: InputMappingContext;
// ========================================================================
// INTERACTION API
// ========================================================================
public Interact(): void {}
public OnItemHeldInput(): void {}
// ========================================================================
// INTERACTION STATE
// ========================================================================
public bIsAiming: boolean = false;
}