Updated PlayerCharacter to Crouch

This commit is contained in:
Philip W 2023-10-07 00:30:37 +01:00
parent 8fc80f9b31
commit 8ef1ecf488
6 changed files with 87 additions and 65 deletions

Binary file not shown.

Binary file not shown.

View File

@ -6,6 +6,7 @@
#include "Components/CapsuleComponent.h"
#include "EnhancedInputComponent.h"
#include "EnhancedInputSubsystems.h"
#include "GameFramework/CharacterMovementComponent.h"
//////////////////////////////////////////////////////////////////////////
@ -16,6 +17,8 @@ AEndlessVendettaCharacter::AEndlessVendettaCharacter()
// Character doesnt have a rifle at start
bHasRifle = false;
//Enable Crouching
GetCharacterMovement()->GetNavAgentPropertiesRef().bCanCrouch = true;
// Set size for collision capsule
GetCapsuleComponent()->InitCapsuleSize(55.f, 96.0f);
@ -33,7 +36,6 @@ AEndlessVendettaCharacter::AEndlessVendettaCharacter()
Mesh1P->CastShadow = false;
//Mesh1P->SetRelativeRotation(FRotator(0.9f, -19.19f, 5.2f));
Mesh1P->SetRelativeLocation(FVector(-30.f, 0.f, -150.f));
}
void AEndlessVendettaCharacter::BeginPlay()
@ -59,7 +61,6 @@ void AEndlessVendettaCharacter::BeginPlay()
GadgetManager->SpawnGadgets(Cast<USceneComponent>(PlayersCamera));
break;
}
}
//////////////////////////////////////////////////////////////////////////// Input
@ -89,9 +90,25 @@ void AEndlessVendettaCharacter::SetupPlayerInputComponent(class UInputComponent*
//Weapon Shooting
EnhancedInputComponent->BindAction(TapShootAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::TapFireCaller);
//Crouching
EnhancedInputComponent->BindAction(CrouchAction, ETriggerEvent::Started, this, &AEndlessVendettaCharacter::SetCrouch);
EnhancedInputComponent->BindAction(CrouchAction, ETriggerEvent::Completed, this, &AEndlessVendettaCharacter::SetUnCrouch);
}
}
void AEndlessVendettaCharacter::SetCrouch()
{
Crouch();
GLog->Log("Crouching");
}
void AEndlessVendettaCharacter::SetUnCrouch()
{
UnCrouch();
GLog->Log("UnCrouching");
}
void AEndlessVendettaCharacter::ToggleRecon()
{
if (IsValid(PrimaryWeapon)) EquipPrimary();
@ -239,7 +256,6 @@ void AEndlessVendettaCharacter::EquipSecondary()
// SecondaryWeapon->Destroy();
// bHasRifle = false;
// }
}
//Calls the fire function in the baseWeaponClass

View File

@ -33,15 +33,15 @@ class AEndlessVendettaCharacter : public ACharacter
/** MappingContext */
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true"))
class UInputMappingContext* DefaultMappingContext;
UInputMappingContext* DefaultMappingContext;
/** Jump Input Action */
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true"))
class UInputAction* JumpAction;
UInputAction* JumpAction;
/** Move Input Action */
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true"))
class UInputAction* MoveAction;
UInputAction* MoveAction;
// Gadget Actions
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true"))
@ -51,16 +51,19 @@ class AEndlessVendettaCharacter : public ACharacter
/** Weapon Equip Action */
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true"))
class UInputAction* EquipPrimaryWeapon;
UInputAction* EquipPrimaryWeapon;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true"))
class UInputAction* EquipSecondaryWeapon;
UInputAction* EquipSecondaryWeapon;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true"))
class UInputAction* TapShootAction;
UInputAction* TapShootAction;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true"))
class UInputAction* HoldShootAction;
UInputAction* HoldShootAction;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = Input, meta = ( AllowPrivateAccess = "true" ))
UInputAction* CrouchAction;
public:
AEndlessVendettaCharacter();
@ -73,7 +76,6 @@ protected:
AGadgetManager* GadgetManager;
public:
/** Look Input Action */
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = Input, meta = (AllowPrivateAccess = "true"))
class UInputAction* LookAction;
@ -103,7 +105,6 @@ public:
UFUNCTION(BlueprintCallable, Category = "Weapons")
void TapFireCaller();
protected:
/** Called for movement input */
void Move(const FInputActionValue& Value);
@ -123,16 +124,18 @@ protected:
//UFUNCTION(BlueprintCallable, Category = "Weapons")
//void WeaponPickUpSystem(AActor* PickedUpWeapon);
protected:
// APawn interface
virtual void SetupPlayerInputComponent(UInputComponent* InputComponent) override;
// End of APawn interface
UFUNCTION(BlueprintCallable, Category = "Stealth")
void SetCrouch();
UFUNCTION(BlueprintCallable, Category = "Stealth")
void SetUnCrouch();
public:
/** Returns Mesh1P subobject **/
/** Returns Mesh1P Sub-object **/
USkeletalMeshComponent* GetMesh1P() const { return Mesh1P; }
/** Returns FirstPersonCameraComponent subobject **/
/** Returns FirstPersonCameraComponent Sub-object **/
UCameraComponent* GetFirstPersonCameraComponent() const { return FirstPersonCameraComponent; }
};