document.write("
class USpringArmComponent; class UCameraComponent; class UDandelionAbilitySet; class UInputActionGameplayAbilityMappings; UCLASS() class DANDELION_API ADandelionPlayerCharacter : public ADandelionCharacter { GENERATED_BODY() public: virtual UAbilitySystemComponent* GetAbilitySystemComponent() const override; ADandelionPlayerCharacter(); virtual void PossessedBy(AController* NewController) override; protected: virtual void SetupPlayerInputComponent(UInputComponent* PlayerInputComponent) override; private: UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "AbilitySystem", meta = (AllowPrivateAccess = "true")) TObjectPtr<UInputActionGameplayAbilityMappings> InputActionGameplayAbilityMappings; UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "AbilitySystem", meta = (AllowPrivateAccess = "true")) TSet<TObjectPtr<UDandelionAbilitySet>> DefaultGameplayAbilitySets; void InitAbilitySystem(); void OnAbilityInputTriggered(int32 InputID); void OnAbilityInputCompleted(int32 InputID); public: FORCEINLINE UInputActionGameplayAbilityMappings* GetInputActionGameplayAbilityMappings() const { return InputActionGameplayAbilityMappings; } FORCEINLINE UCameraComponent* GetTopDownCameraComponent() const { return TopDownCameraComponent; } FORCEINLINE USpringArmComponent* GetCameraBoom() const { return CameraBoom; } private: UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = Camera, meta = (AllowPrivateAccess = "true")) TObjectPtr<UCameraComponent> TopDownCameraComponent; UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = Camera, meta = (AllowPrivateAccess = "true")) TObjectPtr<USpringArmComponent> CameraBoom; void SetupCameraBoom(); void SetupCamera(); };