diff --git a/Content/Blueprints/Characters/Player/BP_ExoPlayerCharacter.uasset b/Content/Blueprints/Characters/Player/BP_ExoPlayerCharacter.uasset index 3b39f71..bb0822f 100644 Binary files a/Content/Blueprints/Characters/Player/BP_ExoPlayerCharacter.uasset and b/Content/Blueprints/Characters/Player/BP_ExoPlayerCharacter.uasset differ diff --git a/Content/Models/T-Pose/Animations/RifleAiming/LocomotionRifleAimBlend.uasset b/Content/Models/T-Pose/Animations/RifleAiming/LocomotionRifleAimBlend.uasset new file mode 100644 index 0000000..ff5b01a Binary files /dev/null and b/Content/Models/T-Pose/Animations/RifleAiming/LocomotionRifleAimBlend.uasset differ diff --git a/Content/Models/T-Pose/Animations/RifleAiming/RifleIdleAiming.uasset b/Content/Models/T-Pose/Animations/RifleAiming/RifleIdleAiming.uasset new file mode 100644 index 0000000..7c04dc5 Binary files /dev/null and b/Content/Models/T-Pose/Animations/RifleAiming/RifleIdleAiming.uasset differ diff --git a/Content/Models/T-Pose/Animations/RifleAiming/RifleWalkingBackwardAiming.uasset b/Content/Models/T-Pose/Animations/RifleAiming/RifleWalkingBackwardAiming.uasset new file mode 100644 index 0000000..7acb8fb Binary files /dev/null and b/Content/Models/T-Pose/Animations/RifleAiming/RifleWalkingBackwardAiming.uasset differ diff --git a/Content/Models/T-Pose/Animations/RifleAiming/RifleWalkingForwardAiming.uasset b/Content/Models/T-Pose/Animations/RifleAiming/RifleWalkingForwardAiming.uasset new file mode 100644 index 0000000..c78e5ec Binary files /dev/null and b/Content/Models/T-Pose/Animations/RifleAiming/RifleWalkingForwardAiming.uasset differ diff --git a/Content/Models/T-Pose/Animations/RifleAiming/RifleWalkingLeftAiming.uasset b/Content/Models/T-Pose/Animations/RifleAiming/RifleWalkingLeftAiming.uasset new file mode 100644 index 0000000..44bd718 Binary files /dev/null and b/Content/Models/T-Pose/Animations/RifleAiming/RifleWalkingLeftAiming.uasset differ diff --git a/Content/Models/T-Pose/Animations/RifleAiming/RifleWalkingRightAiming.uasset b/Content/Models/T-Pose/Animations/RifleAiming/RifleWalkingRightAiming.uasset new file mode 100644 index 0000000..01ff4a2 Binary files /dev/null and b/Content/Models/T-Pose/Animations/RifleAiming/RifleWalkingRightAiming.uasset differ diff --git a/Content/Models/T-Pose/Animations/RifleNonAiming/LocomotionRifleNonAimBlend.uasset b/Content/Models/T-Pose/Animations/RifleNonAiming/LocomotionRifleNonAimBlend.uasset new file mode 100644 index 0000000..a358d6d Binary files /dev/null and b/Content/Models/T-Pose/Animations/RifleNonAiming/LocomotionRifleNonAimBlend.uasset differ diff --git a/Content/Models/T-Pose/Animations/RifleNonAiming/RifleIdle.uasset b/Content/Models/T-Pose/Animations/RifleNonAiming/RifleIdle.uasset new file mode 100644 index 0000000..c5328b9 Binary files /dev/null and b/Content/Models/T-Pose/Animations/RifleNonAiming/RifleIdle.uasset differ diff --git a/Content/Models/T-Pose/Animations/RifleNonAiming/RifleRunning.uasset b/Content/Models/T-Pose/Animations/RifleNonAiming/RifleRunning.uasset new file mode 100644 index 0000000..8144d33 Binary files /dev/null and b/Content/Models/T-Pose/Animations/RifleNonAiming/RifleRunning.uasset differ diff --git a/Content/Models/T-Pose/Animations/RifleNonAiming/RifleWalkingBackward.uasset b/Content/Models/T-Pose/Animations/RifleNonAiming/RifleWalkingBackward.uasset new file mode 100644 index 0000000..39a9d37 Binary files /dev/null and b/Content/Models/T-Pose/Animations/RifleNonAiming/RifleWalkingBackward.uasset differ diff --git a/Content/Models/T-Pose/Animations/RifleNonAiming/RifleWalkingForward.uasset b/Content/Models/T-Pose/Animations/RifleNonAiming/RifleWalkingForward.uasset new file mode 100644 index 0000000..816d483 Binary files /dev/null and b/Content/Models/T-Pose/Animations/RifleNonAiming/RifleWalkingForward.uasset differ diff --git a/Content/Models/T-Pose/Animations/RifleNonAiming/RifleWalkingLeft.uasset b/Content/Models/T-Pose/Animations/RifleNonAiming/RifleWalkingLeft.uasset new file mode 100644 index 0000000..483e0d0 Binary files /dev/null and b/Content/Models/T-Pose/Animations/RifleNonAiming/RifleWalkingLeft.uasset differ diff --git a/Content/Models/T-Pose/Animations/RifleNonAiming/RifleWalkingRight.uasset b/Content/Models/T-Pose/Animations/RifleNonAiming/RifleWalkingRight.uasset new file mode 100644 index 0000000..e8203e2 Binary files /dev/null and b/Content/Models/T-Pose/Animations/RifleNonAiming/RifleWalkingRight.uasset differ diff --git a/Content/Models/T-Pose/PlayerAnimationBP.uasset b/Content/Models/T-Pose/PlayerAnimationBP.uasset index fd31a52..635fa5c 100644 Binary files a/Content/Models/T-Pose/PlayerAnimationBP.uasset and b/Content/Models/T-Pose/PlayerAnimationBP.uasset differ diff --git a/Content/Models/T-Pose/T-Pose.uasset b/Content/Models/T-Pose/T-Pose.uasset index e5c14c2..1dfc86a 100644 Binary files a/Content/Models/T-Pose/T-Pose.uasset and b/Content/Models/T-Pose/T-Pose.uasset differ diff --git a/Content/Models/T-Pose/T-Pose_Skeleton.uasset b/Content/Models/T-Pose/T-Pose_Skeleton.uasset index 108b9fe..74d15b4 100644 Binary files a/Content/Models/T-Pose/T-Pose_Skeleton.uasset and b/Content/Models/T-Pose/T-Pose_Skeleton.uasset differ diff --git a/Source/Exo/Private/Characters/Components/ShootingComponent.cpp b/Source/Exo/Private/Characters/Components/ShootingComponent.cpp index 0ebdcf5..357aade 100644 --- a/Source/Exo/Private/Characters/Components/ShootingComponent.cpp +++ b/Source/Exo/Private/Characters/Components/ShootingComponent.cpp @@ -116,14 +116,17 @@ void UShootingComponent::PickUpGun(UStaticMeshComponent* PickedGunMesh) DropGun(); FAttachmentTransformRules AttachmentRules(EAttachmentRule::SnapToTarget, EAttachmentRule::SnapToTarget, - EAttachmentRule::KeepRelative, true); + EAttachmentRule::KeepWorld, true); PickedGunMesh->SetSimulatePhysics(false); PickedGunMesh->SetCastShadow(false); - PickedGunMesh->AttachToComponent(PlayerCharacter->Weapon, AttachmentRules, FName(TEXT("GripPoint"))); + PickedGunMesh->AttachToComponent(PlayerCharacter->GetMesh(), AttachmentRules, FName(TEXT("GripPoint"))); AGunBase* PickedGunBase = Cast(PickedGunMesh->GetOwner()); + // Tymczasowo + bHasRifle = true; + if (IsValid(CurrentGunBase)) { SecondaryGunBase = PickedGunBase; @@ -176,13 +179,16 @@ void UShootingComponent::DropGun() StopAiming(); FDetachmentTransformRules DetachmentRules(EDetachmentRule::KeepRelative, EDetachmentRule::KeepRelative, - EDetachmentRule::KeepRelative, false); + EDetachmentRule::KeepWorld, false); CurrentGunMesh->DetachFromComponent(DetachmentRules); CurrentGunMesh->SetSimulatePhysics(true); CurrentGunMesh->bCastDynamicShadow = true; CurrentGunMesh->CastShadow = true; + // Tymczasowo + bHasRifle = false; + CurrentGunMesh = nullptr; CurrentGunBase = nullptr; } diff --git a/Source/Exo/Private/Characters/ExoPlayerCharacter.cpp b/Source/Exo/Private/Characters/ExoPlayerCharacter.cpp index debe083..dd28981 100644 --- a/Source/Exo/Private/Characters/ExoPlayerCharacter.cpp +++ b/Source/Exo/Private/Characters/ExoPlayerCharacter.cpp @@ -33,13 +33,6 @@ AExoPlayerCharacter::AExoPlayerCharacter() InteractionComponent = CreateDefaultSubobject(TEXT("Interaction Component")); ShootingComponent = CreateDefaultSubobject(TEXT("Shooting Component")); - Weapon = CreateDefaultSubobject("Weapon"); - Weapon->SetupAttachment(GetMesh()); - Weapon->SetCollisionEnabled(ECollisionEnabled::NoCollision); - Weapon->bCastDynamicShadow = false; - Weapon->CastShadow = false; - Weapon->SetRelativeLocation(FVector(-50.f, 0.f, -90.f)); - //bUseControllerRotationPitch = false; //bUseControllerRotationYaw = true; //bUseControllerRotationRoll = false; diff --git a/Source/Exo/Public/Characters/Components/ShootingComponent.h b/Source/Exo/Public/Characters/Components/ShootingComponent.h index 717dfdb..0db59c8 100644 --- a/Source/Exo/Public/Characters/Components/ShootingComponent.h +++ b/Source/Exo/Public/Characters/Components/ShootingComponent.h @@ -90,6 +90,9 @@ public: UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Mele Attack") float MeleRange = 75.f; + UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Shooting") + bool bHasRifle = false; + UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "Shooting") AThrowableBase* ThrowableItem = nullptr; diff --git a/Source/Exo/Public/Characters/ExoPlayerCharacter.h b/Source/Exo/Public/Characters/ExoPlayerCharacter.h index 7cd054f..047f3b7 100644 --- a/Source/Exo/Public/Characters/ExoPlayerCharacter.h +++ b/Source/Exo/Public/Characters/ExoPlayerCharacter.h @@ -21,9 +21,6 @@ public: AExoPlayerCharacter(); /// U PROPERTIES /// - UPROPERTY(EditAnywhere, Category = "Combat") - TObjectPtr Weapon; - UPROPERTY(VisibleAnywhere, BlueprintReadOnly) TObjectPtr InteractionComponent; @@ -60,8 +57,8 @@ public: UPROPERTY(EditAnywhere, Category = "Movement Properties") float CrouchSpeed = 300.f; - UPROPERTY(EditAnywhere, Category = "Aiming") - float bIsAimingMode = false; + UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Aiming") + bool bIsAimingMode = false; UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Crouch") bool bIsCrouchingMode = false;