|
Paradies Project
|
평타 외에 여러 개의 액티브 스킬을 사용하는 유닛(보스, 특수 패밀리어 등)의 클래스입니다. More...
#include <SkillCasterUnit.h>


Public Member Functions | |
| virtual void | InitializeUnit (struct FAIUnitStats *InStats, struct FAIUnitAssets *InAssets) override |
| AUnitBase의 초기화 함수를 오버라이드 | |
| FCombatActionData | GetSkillActionData (int32 SkillIndex) const |
| 인덱스를 기반으로 특정 스킬의 전투 데이터를 가져옵니다. | |
| virtual TArray< struct FFXPayload * > | GetSkillFXPayloads (int32 SkillIndex) const |
| 인덱스를 기반으로 특정 스킬의 FX 연출 데이터(Payload)를 반환합니다. | |
| virtual TArray< struct FFXPayload * > | GetSkillHitFXPayloads (int32 SkillIndex) const |
| 추가: 인덱스를 기반으로 특정 스킬의 '타격' FX 연출을 반환합니다. | |
| UAnimMontage * | GetSkillMontage (int32 SkillIndex) const |
| 인덱스를 기반으로 특정 스킬의 몽타주를 가져옵니다. | |
| void | SetCurrentCastingSkillIndex (int32 Index) |
| int32 | GetCurrentCastingSkillIndex () const |
| virtual FCombatActionData | GetCombatActionData (ECombatActionType ActionType) const override |
| 실제 전투 데이터를 조회하는 함수 | |
| virtual TArray< struct FFXPayload * > | GetFXPayloads (EFXEventType EventType) const override |
| 특정 상황(EventType)에 맞는 최종 연출 데이터(Payload)를 반환합니다. (기본값: nullptr) | |
| Public Member Functions inherited from AUnitBase | |
| virtual void | OnPoolActivate_Implementation () override |
| virtual void | OnPoolDeactivate_Implementation () override |
| const FAIUnitAssets & | GetUnitAssets () const |
| void | SetUnitID (FName InID) |
| FName | GetUnitID () const |
| FGameplayTag | GetFactionTag () const |
| virtual void | Die () override |
| bool | IsEnemy (AUnitBase *OtherUnit) |
| float | GetAttackRange () const |
| 캐싱된 기본 공격 사거리 반환 | |
| virtual UAnimMontage * | GetDeathMontage () const override |
| 부모의 가상 함수 오버라이드 | |
| virtual UAnimMontage * | GetHitMontage () const override |
| 부모의 가상 함수 오버라이드 | |
| Public Member Functions inherited from ACharacterBase | |
| virtual void | SetupPlayerInputComponent (class UInputComponent *PlayerInputComponent) override |
| virtual UAbilitySystemComponent * | GetAbilitySystemComponent () const override |
| UAttributeSet * | GetAttributeSet () const |
| 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 void | PlayHitReaction () |
| 데미지를 받았을 때 호출되는 피격 연출 통합 함수 | |
| void | SetCurrentMuzzleSocketInfo (FName InSocketName, ESocketTargetType InSocketTarget) |
| 노티파이에서 발사 소켓 정보(타겟+이름)를 캐릭터에 저장(캐싱)해주는 함수 | |
| FTransform | GetCurrentMuzzleTransform () const |
| 캐싱된 타겟(무기 or 몸체)을 기준으로 최종 발사 트랜스폼(위치+회전) 반환 | |
| void | ExecuteAttackFromNotify (FName SocketName, ESocketTargetType TargetType, bool bIsTick) |
| 애니메이션 노티파이에서 호출하는 통합 공격 사령탑 | |
| Public Member Functions inherited from IObjectPoolInterface | |
| void | OnPoolActivate () |
| 풀에서 꺼낼 때 호출(초기화, 위치 설정 등) | |
| void | OnPoolDeactivate () |
| 풀로 돌아갈 때 호출 (타이머 정지, 상태 리셋 등) | |
Protected Attributes | |
| TArray< FGameplayAbilitySpecHandle > | SkillAbilityHandles |
| 스킬 어빌리티 핸들 목록 (부여된 스킬 관리용) | |
| TArray< FCombatActionData > | CachedSkillDataArray |
| 다중 스킬의 전투 스탯(사거리, 배율 등) 캐싱 배열 | |
| TArray< FGameplayTag > | CachedSkillEffectTags |
| 다중 스킬 연출 태그 캐싱 배열 (EnemyAssets의 SkillEffectTags 복사본) | |
| TArray< FGameplayTag > | CachedSkillHitEffectTags |
| 다중 스킬 타격 연출 태그 캐싱 배열 (EnemyAssets의 SkillEffectTags 복사본) | |
| TArray< TObjectPtr< UAnimMontage > > | CachedSkillMontages |
| 다중 스킬 몽타주 캐싱 배열 (메모리에 로드된 상태 유지) | |
| int32 | CurrentCastingSkillIndex = INDEX_NONE |
| 현재 시전 중인 스킬의 인덱스 | |
| Protected Attributes inherited from AUnitBase | |
| TObjectPtr< UAIPerceptionStimuliSourceComponent > | StimuliSourceComp = nullptr |
| AI 인지 자극 컴포넌트 | |
| FName | UnitID |
| 데이터 테이블 조회를 위한 RowName 저장 | |
| FAIUnitAssets | UnitAssets |
| FCombatActionData | BasicAttackData |
| 기본 공격에 필요한 전투 데이터 모음 | |
| FAIUnitFXSettings | CachedAIUnitFX |
| AI 유닛 연출 캐싱 | |
| TObjectPtr< UAnimMontage > | CachedDeathMontage = nullptr |
| 사망 몽타주 캐싱 | |
| TObjectPtr< UAnimMontage > | CachedHitMontage = nullptr |
| 피격 몽타주 캐싱 | |
| FGameplayAbilitySpecHandle | BasicAbilityHandle |
| 평타 어빌리티 핸들 | |
| FTimerHandle | FailSafeDestroyTimerHandle |
| 몽타주 끝의 Notify가 호출되지 않는 버그 방지용 타이머 | |
| Protected Attributes inherited from ACharacterBase | |
| 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 무기) | |
Additional Inherited Members | |
| Public Attributes inherited from ACharacterBase | |
| FGameplayTag | FactionTag |
| 소속 진영 태그 | |
| Protected Member Functions inherited from AUnitBase | |
| virtual void | OnDeathAnimationFinished () override |
| 애니메이션이 끝나거나 노티파이에서 호출될 가상 함수 | |
| void | ExecuteReturnToPool () |
| void | SetAvoidanceEnabled (bool bEnable) |
| Protected Member Functions inherited from ACharacterBase | |
| virtual void | BeginPlay () override |
| virtual void | EndPlay (const EEndPlayReason::Type EndPlayReason) override |
| void | PlayHitFlash () |
| void | ResetHitFlash () |
평타 외에 여러 개의 액티브 스킬을 사용하는 유닛(보스, 특수 패밀리어 등)의 클래스입니다.
|
overridevirtual |
실제 전투 데이터를 조회하는 함수
PlayerBase가 호출하면, GameInstance와 EquipmentComponent를 탐색하여 결과 리턴.
Reimplemented from AUnitBase.

|
overridevirtual |
특정 상황(EventType)에 맞는 최종 연출 데이터(Payload)를 반환합니다. (기본값: nullptr)
Reimplemented from AUnitBase.

|
overridevirtual |
AUnitBase의 초기화 함수를 오버라이드
Reimplemented from AUnitBase.