Resolve #6: Migrate LumiCharacter to C++ #7

Merged
lance1416 merged 8 commits from 6-migrate-lumi-character-to-cpp into main 2024-09-10 20:23:45 +08:00
4 changed files with 18 additions and 6 deletions
Showing only changes of commit 73353dabde - Show all commits
Binary file not shown.
Binary file not shown.
@@ -37,6 +37,7 @@ ALumiCharacter::ALumiCharacter()
CameraBoom->SetupAttachment(RootComponent); CameraBoom->SetupAttachment(RootComponent);
CameraBoom->TargetArmLength = 400.0f; // The camera follows at this distance behind the character CameraBoom->TargetArmLength = 400.0f; // The camera follows at this distance behind the character
CameraBoom->bUsePawnControlRotation = true; // Rotate the arm based on the controller CameraBoom->bUsePawnControlRotation = true; // Rotate the arm based on the controller
CameraBoom->SocketOffset = DefaultBoomOffset;
// Create a follow camera // Create a follow camera
FollowCamera = CreateDefaultSubobject<UCameraComponent>(TEXT("FollowCamera")); FollowCamera = CreateDefaultSubobject<UCameraComponent>(TEXT("FollowCamera"));
@@ -54,6 +54,13 @@ class WIZARDINGCENTRAL_API ALumiCharacter : public ACharacter
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = Input, meta = (AllowPrivateAccess = "true")) UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = Input, meta = (AllowPrivateAccess = "true"))
UInputAction* LookAction; UInputAction* LookAction;
/** The default boom offset */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = Camera, meta = (AllowPrivateAccess = "true"))
FVector DefaultBoomOffset = FVector(0.0f, 60.0f, 30.0f);
/** The boom offset when aiming */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = Camera, meta = (AllowPrivateAccess = "true"))
FVector AimBoomOffset = FVector(200.0f, 65.0f, 45.0f);
/** The current stance of the character */ /** The current stance of the character */
UPROPERTY(BlueprintReadWrite, meta = (AllowPrivateAccess = "true")) UPROPERTY(BlueprintReadWrite, meta = (AllowPrivateAccess = "true"))
ELumiStance CurrentStance = ELumiStance::Default; ELumiStance CurrentStance = ELumiStance::Default;
@@ -86,7 +93,11 @@ protected:
UFUNCTION(BlueprintNativeEvent, Category = "Stance") UFUNCTION(BlueprintNativeEvent, Category = "Stance")
void OnMagicStance(); void OnMagicStance();
public: /**
* Check if the character has jumped the maximum number of times
*
* @return True if the character cannot jump anymore, false otherwise
*/
UFUNCTION(BlueprintPure, Category = "LumiCharacter") UFUNCTION(BlueprintPure, Category = "LumiCharacter")
bool IsLastJump(); bool IsLastJump();
@@ -173,4 +184,4 @@ public:
UPROPERTY(BlueprintAssignable, Category = "Stance") UPROPERTY(BlueprintAssignable, Category = "Stance")
FStanceChangedDelegate OnStanceChanged; FStanceChangedDelegate OnStanceChanged;
}; };