Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Fill out your copyright notice in the Description page of Project Settings.
- #pragma once
- #include "GameFramework/Character.h"
- #include "AuroraBaseWeapon.h"
- #include "AuroraBaseCharacter.generated.h"
- UCLASS(Blueprintable)
- class ENTERAURORA_API AAuroraBaseCharacter : public ACharacter
- {
- GENERATED_BODY()
- /* Camera Boom Component */
- UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = Camera, meta = (AllowPrivateAccess = "true"))
- class USpringArmComponent* cameraBoom;
- /* Main Camera Component */
- UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = Camera, meta = (AllowPrivateAccess = "true"))
- class UCameraComponent* mainCamera;
- public:
- /* Constructor */
- AAuroraBaseCharacter(const FObjectInitializer& ObjectInitializer);
- // Called when the game starts or when spawned
- virtual void BeginPlay() override;
- // Called every frame
- virtual void Tick(float DeltaSeconds) override;
- // Called to bind functionality to input
- virtual void SetupPlayerInputComponent(class UInputComponent* InputComponent) override;
- /* Character Properties */
- UPROPERTY(EditDefaultsOnly, BlueprintReadWrite, Category = "Character")
- float currentHealth;
- UPROPERTY(EditDefaultsOnly, BlueprintReadWrite, Category = "Character")
- float maxHealth;
- UPROPERTY(EditDefaultsOnly, BlueprintReadWrite, Category = "Character")
- float moveSpeed;
- float joystickXValue;
- float joystickYValue;
- FVector joystickNormalized;
- FTimerHandle fireHandler;
- /* Character Weapon */
- UPROPERTY(EditDefaultsOnly, BlueprintReadWrite, Category = "Character")
- TSubclassOf<AAuroraBaseWeapon> primaryClass;
- UPROPERTY(EditDefaultsOnly, BlueprintReadWrite, Category = "Character")
- FName primaryAttachSocket;
- UPROPERTY(EditDefaultsOnly, BlueprintReadWrite, Category = "Character")
- AAuroraBaseWeapon* currentWeapon;
- /* Character Functions */
- void OnMoveForward(float Rate);
- void OnMoveSideways(float Rate);
- void GetJoystickXValue(float Val);
- void GetJoystickYValue(float Val);
- void OnCharacterRotation();
- void OnSpawnWeapon(TSubclassOf<AAuroraBaseWeapon> weaponToSpawn, FName attachSocket);
- /** Returns CameraBoom subobject **/
- FORCEINLINE class USpringArmComponent* GetCameraBoom() const { return cameraBoom; }
- /** Returns FollowCamera subobject **/
- FORCEINLINE class UCameraComponent* GetMainCamera() const { return mainCamera; }
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement