|
|
virtual void | SetupPlayerInputComponent (class UInputComponent *PlayerInputComponent) override |
|
virtual UAbilitySystemComponent * | GetAbilitySystemComponent () const override |
|
UAttributeSet * | GetAttributeSet () const |
| virtual FCombatActionData | GetCombatActionData (ECombatActionType ActionType) const override |
| | 현재 장착된 무기를 기반으로 특정 행동(평타/스킬)에 필요한 전투 데이터를 반환합니다. @detail UnitBase와 PlayerBase는 이를 오버라이딩하여 서로 다른 데이터 테이블을 참조하여 구조체를 리턴
|
| virtual TArray< struct FFXPayload * > | GetFXPayloads (EFXEventType EventType) const override |
| | 특정 상황(EventType)에 맞는 최종 연출 데이터(Payload)를 반환합니다. (기본값: nullptr)
|
|
virtual void | Die () |
|
virtual bool | CanMove () const |
| | 현재 캐릭터가 이동 가능한 상태인지 (태그 기반) 검사합니다.
|
|
bool | IsDead () const |
|
void | AttachWeapon (AActor *NewWeapon, FName SocketName) |
| void | TestKillSelf () |
| | [디버그용] 강제로 Die() 함수를 호출하여 사망 처리 로직을 테스트합니다.
|
|
void | CheckHit (FName SocketName, ESocketTargetType TargetType) |
|
void | ResetHitActors () |
| bool | IsHostile (ACharacterBase *Target) const |
| | 상대방이 적대적인지(공격 대상인지) 확인합니다.
|
|
void | SpawnDamagePopup (float DamageAmount, bool bIsCritical) |
|
void | SetCurrentActionData (const FCombatActionData &InData) |
| | 현재 액션 데이터 세팅 (어빌리티에서 스킬 시작 시 호출)
|
|
FCombatActionData | GetCurrentActionData () const |
| | 현재 액션 데이터 반환 (노티파이에서 타격 시 호출)
|
| virtual USceneComponent * | GetWeaponMesh () const |
| | 자식 클래스들이 무기 메쉬를 던져줄 수 있도록 가상 함수 선언
|
| virtual UAnimMontage * | GetDeathMontage () const |
| | 사망 몽타주를 반환하는 가상 함수 (자식 클래스에서 오버라이드)
|
| virtual UAnimMontage * | GetHitMontage () const |
| | 피격 몽타주를 반환하는 가상 함수
|
|
virtual void | PlayHitReaction () |
| | 데미지를 받았을 때 호출되는 피격 연출 통합 함수
|
| virtual void | OnDeathAnimationFinished () |
| | 애니메이션이 끝나거나 노티파이에서 호출될 가상 함수
|
|
void | SetCurrentMuzzleSocketInfo (FName InSocketName, ESocketTargetType InSocketTarget) |
| | 노티파이에서 발사 소켓 정보(타겟+이름)를 캐릭터에 저장(캐싱)해주는 함수
|
|
FTransform | GetCurrentMuzzleTransform () const |
| | 캐싱된 타겟(무기 or 몸체)을 기준으로 최종 발사 트랜스폼(위치+회전) 반환
|
| void | ExecuteAttackFromNotify (FName SocketName, ESocketTargetType TargetType, bool bIsTick) |
| | 애니메이션 노티파이에서 호출하는 통합 공격 사령탑
|
|
|
bool | bIsDead = false |
|
TObjectPtr< class UWidgetComponent > | HealthWidget = nullptr |
|
TSubclassOf< class AActor > | DamageTextActorClass = nullptr |
|
TObjectPtr< AActor > | CurrentWeaponActor = nullptr |
|
TObjectPtr< UAbilitySystemComponent > | AbilitySystemComponent |
|
TObjectPtr< UAttributeSet > | AttributeSet |
|
FCombatActionData | CurrentActiveActionData |
|
TArray< AActor * > | HitActors |
|
TSubclassOf< class ADamageTextActor > | DamageTextClass |
|
FName | CurrentMuzzleSocketName = NAME_None |
| | 투사체를 발사할 최신 소켓 이름 (노티파이에서 세팅됨)
|
|
ESocketTargetType | CurrentMuzzleSocketTarget = ESocketTargetType::CharacterBody |
| | 투사체 발사 소켓을 찾을 메쉬 대상 (몸체 vs 무기)
|