Payback 0.0.1
CK Graduation Project
로딩중...
검색중...
일치하는것 없음
CK_CharacterPlayer.h
이 파일의 문서화 페이지로 가기
1// Fill out your copyright notice in the Description page of Project Settings.
2
3#pragma once
4
8#include "CK_CharacterPlayer.generated.h"
9
10
11struct FInputActionValue;
12class UMotionWarpingComponent;
13class USpringArmComponent;
14class UCameraComponent;
15class UInputMappingContext;
16class UInputAction;
17
18UCLASS()
19class CK_UE_API ACK_CharacterPlayer : public ACK_CharacterBase
20{
21 GENERATED_BODY()
22
23public:
25
26 UAnimMontage* GetComboMontage() const;
27 UComboActionData* GetComboActionData() const;
28 FORCEINLINE UMotionWarpingComponent* GetMotionWarpingComponent() const { return MotionWarpingComponent; }
29 FORCEINLINE UStaticMeshComponent* GetWeaponMesh() const { return WeaponMesh; }
30
31protected:
32 virtual void PostInitializeComponents() override;
33 virtual void BeginPlay() override;
34 virtual void PossessedBy(AController* NewController) override;
35 virtual void SetupPlayerInputComponent(UInputComponent* PlayerInputComponent) override;
36
37 void GASInputPressed(int32 InputId);
38 void GASInputReleased(int32 InputId);
39
40 void Move(const FInputActionValue& Value);
41
42 // --- 죽음 처리 ---
43 UFUNCTION()
44 virtual void OnDeath();
45 virtual void SetDead() override;
46
47 // --- 스탯 초기화 ---
48 virtual void InitializeAttributes() override;
49
50
51 // --- 컴포넌트 ---
52protected:
53 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "MotionWarping")
54 TObjectPtr<UMotionWarpingComponent> MotionWarpingComponent;
55
56 // --- 카메라 ---
57 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = Camera, meta = (AllowPrivateAccess = true))
58 TObjectPtr<USpringArmComponent> SpringArm;
59
60 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = Camera, meta = (AllowPrivateAccess = true))
61 TObjectPtr<UCameraComponent> FollowCamera;
62
63 // --- Weapon ---
64 UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = Weapon, Meta = (AllowPrivateAccess = "true"))
65 TObjectPtr<UStaticMeshComponent> WeaponMesh;
66
67 UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = Data)
68 TObjectPtr<UCharacterControlData> CharacterControlData;
69
70 // 캐싱용 멤버 변수
71 const FPlayerExtendedData* PlayerExtendedData = nullptr;
72};
Definition CK_CharacterBase.h:12
Definition CK_CharacterPlayer.h:20
FORCEINLINE UMotionWarpingComponent * GetMotionWarpingComponent() const
Definition CK_CharacterPlayer.h:28
FORCEINLINE UStaticMeshComponent * GetWeaponMesh() const
Definition CK_CharacterPlayer.h:29
Definition CharacterControlData.h:67
Definition ComboActionData.h:14
Definition CharacterControlData.h:25