12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- // Copyright 1998-2019 Epic Games, Inc. All Rights Reserved.
- #pragma once
- #include "CoreMinimal.h"
- #include "GameFramework/Character.h"
- #include "RaanCharacter.generated.h"
- UCLASS(config=Game)
- class ARaanCharacter : public ACharacter
- {
- GENERATED_BODY()
- /** Camera boom positioning the camera behind the character */
- UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = Camera, meta = (AllowPrivateAccess = "true"))
- class USpringArmComponent* CameraBoom;
- /** Follow camera */
- UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = Camera, meta = (AllowPrivateAccess = "true"))
- class UCameraComponent* FollowCamera;
- /** Target volume */
- UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = Character, meta = (AllowPrivateAccess = "true"))
- class UCapsuleComponent* TargetVolume;
- public:
- ARaanCharacter();
- /** Base turn rate, in deg/sec. Other scaling may affect final turn rate. */
- UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category=Camera)
- float BaseTurnRate;
- /** Base look up/down rate, in deg/sec. Other scaling may affect final rate. */
- UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category=Camera)
- float BaseLookUpRate;
- protected:
- /** Resets HMD orientation in VR. */
- void OnResetVR();
- /** Called for forwards/backward input */
- void MoveForward(float Value);
- /** Called for side to side input */
- void MoveRight(float Value);
- /**
- * Called via input to turn at a given rate.
- * @param Rate This is a normalized rate, i.e. 1.0 means 100% of desired turn rate
- */
- void TurnAtRate(float Rate);
- /**
- * Called via input to turn look up/down at a given rate.
- * @param Rate This is a normalized rate, i.e. 1.0 means 100% of desired turn rate
- */
- void LookUpAtRate(float Rate);
- /** Handler for when a touch input begins. */
- void TouchStarted(ETouchIndex::Type FingerIndex, FVector Location);
- /** Handler for when a touch input stops. */
- void TouchStopped(ETouchIndex::Type FingerIndex, FVector Location);
- void ToggleTarget();
- void Interact();
- protected:
- // APawn interface
- virtual void SetupPlayerInputComponent(class UInputComponent* PlayerInputComponent) override;
- // End of APawn interface
- public:
- /** Returns CameraBoom subobject **/
- FORCEINLINE class USpringArmComponent* GetCameraBoom() const { return CameraBoom; }
- /** Returns FollowCamera subobject **/
- FORCEINLINE class UCameraComponent* GetFollowCamera() const { return FollowCamera; }
- /** Returns FollowCamera subobject **/
- FORCEINLINE class UCapsuleComponent* GetTargetVolume() const { return TargetVolume; }
- };
|