From fd942ed30934e43896ab517f95e829a0e5ac7d7f Mon Sep 17 00:00:00 2001 From: TjgL Date: Fri, 14 Mar 2025 12:45:32 +0100 Subject: [PATCH] Fixed weapon firing animation being incorrect Signed-off-by: TjgL --- Content/Legumix/Weapon/Revolver/BP_Revolver.uasset | 4 ++-- .../Weapon/Revolver/FireAnimationTest/ABP_Arms.uasset | 4 ++-- .../Weapon/Revolver/FireAnimationTest/ABP_Revolver.uasset | 3 +++ .../Weapon/Revolver/FireAnimationTest/AM_Arms_Fire.uasset | 3 +++ .../Weapon/Revolver/FireAnimationTest/AM_Gun.uasset | 4 ++-- .../Revolver/FireAnimationTest/AM_Revolver_Fire.uasset | 3 +++ .../Weapon/Revolver/FireAnimationTest/A_Arms_Fire.uasset | 4 ++-- .../Weapon/Revolver/FireAnimationTest/A_Gun_Fire.uasset | 4 ++-- Source/LegumeMix/Private/Player/LMPlayer.cpp | 5 +++++ Source/LegumeMix/Private/Weapon/LMRevolver.cpp | 2 +- Source/LegumeMix/Private/Weapon/LMWeaponBase.cpp | 2 +- Source/LegumeMix/Public/Weapon/LMWeaponBase.h | 8 ++++++-- 12 files changed, 32 insertions(+), 14 deletions(-) create mode 100644 Content/Legumix/Weapon/Revolver/FireAnimationTest/ABP_Revolver.uasset create mode 100644 Content/Legumix/Weapon/Revolver/FireAnimationTest/AM_Arms_Fire.uasset create mode 100644 Content/Legumix/Weapon/Revolver/FireAnimationTest/AM_Revolver_Fire.uasset diff --git a/Content/Legumix/Weapon/Revolver/BP_Revolver.uasset b/Content/Legumix/Weapon/Revolver/BP_Revolver.uasset index 8448106..92a847a 100644 --- a/Content/Legumix/Weapon/Revolver/BP_Revolver.uasset +++ b/Content/Legumix/Weapon/Revolver/BP_Revolver.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5a698d15bf0250c193bf03a6dc921c8fd1944998b466396be5e2dbda4b808704 -size 40517 +oid sha256:d1eee27429be23ec90a0198461a714754f31e35522fb90cfed1b36418035628d +size 41121 diff --git a/Content/Legumix/Weapon/Revolver/FireAnimationTest/ABP_Arms.uasset b/Content/Legumix/Weapon/Revolver/FireAnimationTest/ABP_Arms.uasset index 59db029..468d017 100644 --- a/Content/Legumix/Weapon/Revolver/FireAnimationTest/ABP_Arms.uasset +++ b/Content/Legumix/Weapon/Revolver/FireAnimationTest/ABP_Arms.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1a2934af8c4e92c7a9788ac1ddb1ee22c47d49ba872ab4bb485ccd4c46cce262 -size 160494 +oid sha256:660660989145273d76392d392e98276adb3f1caf9bf73162192fe27d41807b4a +size 76529 diff --git a/Content/Legumix/Weapon/Revolver/FireAnimationTest/ABP_Revolver.uasset b/Content/Legumix/Weapon/Revolver/FireAnimationTest/ABP_Revolver.uasset new file mode 100644 index 0000000..caad70c --- /dev/null +++ b/Content/Legumix/Weapon/Revolver/FireAnimationTest/ABP_Revolver.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5dd7c7ecac9a88dd8728bc4fdf389b99638c2cd118cbe0c5207b7732ebda8e1e +size 36743 diff --git a/Content/Legumix/Weapon/Revolver/FireAnimationTest/AM_Arms_Fire.uasset b/Content/Legumix/Weapon/Revolver/FireAnimationTest/AM_Arms_Fire.uasset new file mode 100644 index 0000000..a39d0b1 --- /dev/null +++ b/Content/Legumix/Weapon/Revolver/FireAnimationTest/AM_Arms_Fire.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:855d73bcfa5e25367347516a9224bc10fb96d76093e8dc3ef17925998557fed8 +size 11228 diff --git a/Content/Legumix/Weapon/Revolver/FireAnimationTest/AM_Gun.uasset b/Content/Legumix/Weapon/Revolver/FireAnimationTest/AM_Gun.uasset index 6d9ffc5..d5d95a6 100644 --- a/Content/Legumix/Weapon/Revolver/FireAnimationTest/AM_Gun.uasset +++ b/Content/Legumix/Weapon/Revolver/FireAnimationTest/AM_Gun.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f15bd7d85ec19fe87fad5c95d77f483321dcc6d38e8c3643538ea21df70a66b6 -size 9576 +oid sha256:e34c543af60f3f480cbe17bbf9cc7a32b621eed6f9e5dcca617e732085f7b294 +size 1600 diff --git a/Content/Legumix/Weapon/Revolver/FireAnimationTest/AM_Revolver_Fire.uasset b/Content/Legumix/Weapon/Revolver/FireAnimationTest/AM_Revolver_Fire.uasset new file mode 100644 index 0000000..69b73bb --- /dev/null +++ b/Content/Legumix/Weapon/Revolver/FireAnimationTest/AM_Revolver_Fire.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd11587ecdf7670c85147fab8c54c9eed9458d7f6bde32729ffddb5b59a39c4d +size 9654 diff --git a/Content/Legumix/Weapon/Revolver/FireAnimationTest/A_Arms_Fire.uasset b/Content/Legumix/Weapon/Revolver/FireAnimationTest/A_Arms_Fire.uasset index 15b4c08..44f3da3 100644 --- a/Content/Legumix/Weapon/Revolver/FireAnimationTest/A_Arms_Fire.uasset +++ b/Content/Legumix/Weapon/Revolver/FireAnimationTest/A_Arms_Fire.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:55c3a9d78986af215df04e27201d8c93e1af7a62a385e8dc6c663c5f7cdc4dcc -size 145934 +oid sha256:e51a3169fed13015291075e20885aaa237d125c1881d1eff454de6f83c73c523 +size 148284 diff --git a/Content/Legumix/Weapon/Revolver/FireAnimationTest/A_Gun_Fire.uasset b/Content/Legumix/Weapon/Revolver/FireAnimationTest/A_Gun_Fire.uasset index 4971e08..b1868cc 100644 --- a/Content/Legumix/Weapon/Revolver/FireAnimationTest/A_Gun_Fire.uasset +++ b/Content/Legumix/Weapon/Revolver/FireAnimationTest/A_Gun_Fire.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:40214c77facf325902d09ffa38c727d72cd9e992bb8d5c1fb08bfd66b361b3a8 -size 65921 +oid sha256:e904422ebe79ab4f0ce1a25fa8f6f128b0dad4bbab04d035413fbbe13100bcd7 +size 65922 diff --git a/Source/LegumeMix/Private/Player/LMPlayer.cpp b/Source/LegumeMix/Private/Player/LMPlayer.cpp index e527479..b2e7309 100644 --- a/Source/LegumeMix/Private/Player/LMPlayer.cpp +++ b/Source/LegumeMix/Private/Player/LMPlayer.cpp @@ -131,6 +131,11 @@ void ALMPlayer::SetWeaponManager(ULMWeaponManager* Manager) void ALMPlayer::PlayAnimation(UAnimMontage* Animation) { + UAnimInstance* AnimInstance = GetArms()->GetAnimInstance(); + if (AnimInstance && Animation) + { + AnimInstance->Montage_Play(Animation); + } } void ALMPlayer::FireBullets(const FLMBulletInfo Settings) diff --git a/Source/LegumeMix/Private/Weapon/LMRevolver.cpp b/Source/LegumeMix/Private/Weapon/LMRevolver.cpp index 3c20818..994d261 100644 --- a/Source/LegumeMix/Private/Weapon/LMRevolver.cpp +++ b/Source/LegumeMix/Private/Weapon/LMRevolver.cpp @@ -29,10 +29,10 @@ void ALMRevolver::PrimaryFire() } return; } - PlayEvent(FireEvent); PlayAnimation(PrimaryFireAnimation); + Player->PlayAnimation(PrimaryFireArmsAnimation); const FVector Origin = Player->GetWeaponFiringOrigin(); const FVector Direction = Player->GetAimVector(); diff --git a/Source/LegumeMix/Private/Weapon/LMWeaponBase.cpp b/Source/LegumeMix/Private/Weapon/LMWeaponBase.cpp index bb66721..cbb8d8d 100644 --- a/Source/LegumeMix/Private/Weapon/LMWeaponBase.cpp +++ b/Source/LegumeMix/Private/Weapon/LMWeaponBase.cpp @@ -77,7 +77,7 @@ void ALMWeaponBase::PlayEvent(UFMODEvent* Event) const void ALMWeaponBase::PlayAnimation(UAnimMontage* Animation) { UAnimInstance* AnimInstance = WeaponMesh->GetAnimInstance(); - + if (Animation && AnimInstance) { AnimInstance->Montage_Play(Animation); diff --git a/Source/LegumeMix/Public/Weapon/LMWeaponBase.h b/Source/LegumeMix/Public/Weapon/LMWeaponBase.h index f1694ef..6742944 100644 --- a/Source/LegumeMix/Public/Weapon/LMWeaponBase.h +++ b/Source/LegumeMix/Public/Weapon/LMWeaponBase.h @@ -85,11 +85,15 @@ protected: /* Weapon Data */ UPROPERTY(EditAnywhere, BlueprintReadWrite,Category="Legumix|Sounds") TObjectPtr EquipSound; - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category="Legumix|Animations", meta=(AllowPrivateAccess=true)) + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category="Legumix|Animations|Fire", meta=(AllowPrivateAccess=true)) TObjectPtr PrimaryFireAnimation; + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category="Legumix|Animations|Fire", meta=(AllowPrivateAccess=true)) + TObjectPtr PrimaryFireArmsAnimation; - UPROPERTY(EditAnywhere, BlueprintReadOnly, Category="Legumix|Animations", meta=(AllowPrivateAccess=true)) + UPROPERTY(EditAnywhere, BlueprintReadOnly, Category="Legumix|Animations|Reload", meta=(AllowPrivateAccess=true)) TObjectPtr ReloadAnimation; + UPROPERTY(EditAnywhere, BlueprintReadOnly, Category="Legumix|Animations|Reload", meta=(AllowPrivateAccess=true)) + TObjectPtr ReloadArmsAnimation; /** The number of seconds before being able to fire again. */ UPROPERTY(EditAnywhere, BlueprintReadWrite, Category="Legumix|Weapon", meta=(AllowPrivateAccess=true))