Payback 0.0.1
CK Graduation Project
로딩중...
검색중...
일치하는것 없음
UPlayerAttackHitCondition 클래스 참조

#include <PlayerAttackHitCondition.h>

UPlayerAttackHitCondition에 대한 상속 다이어그램 :
Inheritance graph
UPlayerAttackHitCondition에 대한 협력 다이어그램:
Collaboration graph

Public 멤버 함수

virtual bool CheckCondition (const UCameraEffectProcessor *Processor, const FCameraEffect &CameraEffect, APlayerController *PC) override
 
virtual void Initialize (const FCameraEffect &CameraEffect, APlayerController *PC) override
 

Public 속성

float LastHitTime = 0.0f
 
- UCameraEffectSectionCondition(으)로부터 상속된 Public 속성
virtual bool CheckCondition (const UCameraEffectProcessor *Processor, const FCameraEffect &CameraEffect, APlayerController *PC) PURE_VIRTUAL(UCameraEffectSectionCondition
 

추가로 상속된 멤버들

- UCameraEffectSectionCondition(으)로부터 상속된 Protected 멤버 함수
virtual AGameCameraManagerGetCameraManager (const UWorld *InWorld) const
 
bool IsInCooldown (const UWorld *InWorld) const
 
FORCEINLINE bool IsActivated () const
 
FORCEINLINE bool SetActivated (const bool InActivated)
 
FORCEINLINE int32 GetActivatedFrame () const
 
FORCEINLINE void SetActivatedFrame (const int32 Frame)
 
FORCEINLINE void SetCooldownEndTime (const double InEndTime)
 
- UCameraEffectSectionCondition(으)로부터 상속된 Protected 속성
int32 ActivationFrames = 0
 
bool bUseCoolDown = false
 
float CooldownSeconds = 0.0f
 

멤버 함수 문서화

◆ CheckCondition()

bool UPlayerAttackHitCondition::CheckCondition ( const UCameraEffectProcessor Processor,
const FCameraEffect CameraEffect,
APlayerController *  PC 
)
overridevirtual
21{
22 check(Processor);
23 check(PC);
24
25 const UWorld* World = PC->GetWorld();
26 check(World);
27
28 // 활성화 중: N프레임 경과 시 비활성화 + 쿨다운 시작
29 if (IsActivated())
30 {
32 {
33 LastHitTime = World->GetTimeSeconds();
34 SetCooldownEndTime(World->GetTimeSeconds() + CooldownSeconds);
35 SetActivated(false);
36 return false;
37 }
38
39 return true;
40 }
41
42 // 쿨다운 중이면 재실행 불가
43 if (IsInCooldown(World))
44 {
45 return false;
46 }
47
48 AGameCameraManager* CameraManager = GetCameraManager(World);
49
50 if (CameraManager == nullptr || LastHitTime >= CameraManager->GetLastHitConfirmedTime())
51 {
52 return false;
53 }
54
55 LastHitTime = CameraManager->GetLastHitConfirmedTime();
56
58 SetActivated(true);
59 return true;
60}
Definition GameCameraManager.h:28
FORCEINLINE double GetLastHitConfirmedTime() const
Definition GameCameraManager.h:71
FORCEINLINE int32 GetActivatedTickCount() const
Definition CameraEffectProcessor.h:41
float CooldownSeconds
Definition CameraEffectSectionCondition.h:79
bool IsInCooldown(const UWorld *InWorld) const
Definition CameraEffectSectionCondition.cpp:16
FORCEINLINE bool IsActivated() const
Definition CameraEffectSectionCondition.h:45
FORCEINLINE void SetCooldownEndTime(const double InEndTime)
Definition CameraEffectSectionCondition.h:65
FORCEINLINE void SetActivatedFrame(const int32 Frame)
Definition CameraEffectSectionCondition.h:60
virtual AGameCameraManager * GetCameraManager(const UWorld *InWorld) const
Definition CameraEffectSectionCondition.cpp:27
FORCEINLINE bool SetActivated(const bool InActivated)
Definition CameraEffectSectionCondition.h:50
FORCEINLINE int32 GetActivatedFrame() const
Definition CameraEffectSectionCondition.h:55
int32 ActivationFrames
Definition CameraEffectSectionCondition.h:72
float LastHitTime
Definition PlayerAttackHitCondition.h:22
이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

◆ Initialize()

void UPlayerAttackHitCondition::Initialize ( const FCameraEffect CameraEffect,
APlayerController *  PC 
)
overridevirtual

UCameraEffectSectionCondition(으)로부터 재구현되었습니다.

12{
13 Super::Initialize(CameraEffect, PC);
14
15 AGameCameraManager* CameraManager = GetCameraManager(PC->GetWorld());
16 LastHitTime = CameraManager->GetLastHitConfirmedTime() + KINDA_SMALL_NUMBER;
17}
이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

멤버 데이터 문서화

◆ LastHitTime

float UPlayerAttackHitCondition::LastHitTime = 0.0f

이 클래스에 대한 문서화 페이지는 다음의 파일들로부터 생성되었습니다.: