Initialize Git with LFS for binary assets and add standard Unreal Engine .gitignore/.gitattributes. Co-authored-by: Cursor <cursoragent@cursor.com>
49 lines
1.3 KiB
C++
49 lines
1.3 KiB
C++
// REALMS IN RUIN. Copyright (c) 2025 Trevor Edwards. All rights reserved.
|
|
|
|
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
#include "AbilitySystemInterface.h"
|
|
#include "GameFramework/Character.h"
|
|
#include "RIRBaseCharacter.generated.h"
|
|
|
|
// Forward declarations
|
|
class URIRAbilitySystemComponent; // Custom AbilitySystemComponent
|
|
class URIRAttributeSet; // Custom AttributeSet
|
|
class UAbilitySystemComponent;
|
|
class UAttributeSet;
|
|
class UGameplayEffect;
|
|
class UGameplayAbility;
|
|
|
|
// Base Character class using GAS for RIR Project
|
|
UCLASS(ABSTRACT)
|
|
class REALMSINRUIN_API ARIRBaseCharacter : public ACharacter, public IAbilitySystemInterface
|
|
{
|
|
GENERATED_BODY()
|
|
|
|
public:
|
|
// Sets default values for this character's properties
|
|
ARIRBaseCharacter();
|
|
|
|
// Implementation of IAbilitySystemInterface
|
|
virtual UAbilitySystemComponent* GetAbilitySystemComponent() const override;
|
|
|
|
// Custom getter for the attribute set
|
|
UAttributeSet* GetAttributeSet() const { return AttributeSet; }
|
|
|
|
|
|
protected:
|
|
// Called when the game starts or when spawned
|
|
virtual void BeginPlay() override;
|
|
|
|
UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "Abilities")
|
|
TObjectPtr<UAbilitySystemComponent> AbilitySystemComponent;
|
|
|
|
UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "Abilities")
|
|
TObjectPtr<UAttributeSet> AttributeSet;
|
|
};
|
|
|
|
|
|
|
|
|