Implemented Vaulting Fix without Animations

This commit is contained in:
Rafal Swierczek 2024-01-12 16:18:40 +00:00
parent 5afd4bfe31
commit c25cbe5977
19 changed files with 97 additions and 62 deletions

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="UserContentModel">
<attachedFolders />
<explicitIncludes />
<explicitExcludes />
</component>
</project>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RiderProjectSettingsUpdater">
<option name="vcsConfiguration" value="2" />
</component>
</project>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$/.." vcs="Git" />
</component>
</project>

View File

@ -8,26 +8,17 @@
</component>
<component name="ChangeListManager">
<list default="true" id="d360942f-2e59-47ef-8164-c79fbf7dd251" name="Changes" comment="">
<change beforePath="$PROJECT_DIR$/.idea/.idea.EndlessVendetta.dir/.idea/.gitignore" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/.idea.EndlessVendetta.dir/.idea/discord-ij.xml" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/.idea.EndlessVendetta.dir/.idea/encodings.xml" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/.idea.EndlessVendetta.dir/.idea/indexLayout.xml" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/.idea.EndlessVendetta.dir/.idea/misc.xml" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/.idea.EndlessVendetta.dir/.idea/vcs.xml" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/.idea.EndlessVendetta/.idea/.gitignore" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/.idea.EndlessVendetta/.idea/encodings.xml" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/.idea.EndlessVendetta/.idea/indexLayout.xml" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/.idea.EndlessVendetta/.idea/vcs.xml" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/.idea.EndlessVendetta/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/.idea.EndlessVendetta/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset" beforeDir="false" afterPath="$PROJECT_DIR$/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Content/FirstPerson/GunMechanicWorld.uasset" beforeDir="false" afterPath="$PROJECT_DIR$/Content/FirstPerson/GunMechanicWorld.uasset" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Content/FirstPersonArms/Animations/FirstPerson_AnimBP.uasset" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Content/FirstPersonArms/Character/Mesh/SK_Mannequin_Arms_Skeleton.uasset" beforeDir="false" afterPath="$PROJECT_DIR$/Content/FirstPersonArms/Character/Mesh/SK_Mannequin_Arms_Skeleton.uasset" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Content/FirstPersonArms/Animations/NewFirstPerson_AnimBP.uasset" beforeDir="false" afterPath="$PROJECT_DIR$/Content/FirstPersonArms/Animations/NewFirstPerson_AnimBP.uasset" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Content/Levels/TrainingFacility.umap" beforeDir="false" afterPath="$PROJECT_DIR$/Content/Levels/TrainingFacility.umap" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Content/StarterContent/Architecture/Floor_400x400.uasset" beforeDir="false" afterPath="$PROJECT_DIR$/Content/StarterContent/Architecture/Floor_400x400.uasset" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Content/StarterContent/Particles/P_Ambient_Dust.uasset" beforeDir="false" afterPath="$PROJECT_DIR$/Content/StarterContent/Particles/P_Ambient_Dust.uasset" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Plugins/VaultIt/Content/Anims/AnimsVaultFP/CR_VaultIt_FP_BothHands.uasset" beforeDir="false" afterPath="$PROJECT_DIR$/Plugins/VaultIt/Content/Anims/AnimsVaultFP/CR_VaultIt_FP_BothHands.uasset" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Plugins/VaultIt/Content/Anims/FirstPerson_AnimBP.uasset" beforeDir="false" afterPath="$PROJECT_DIR$/Plugins/VaultIt/Content/Anims/FirstPerson_AnimBP.uasset" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Plugins/VaultIt/Content/Blueprints/BP_FirstPersonCharacter.uasset" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Plugins/VaultIt/Content/Blueprints/BP_ThirdPersonGameMode.uasset" beforeDir="false" afterPath="$PROJECT_DIR$/Plugins/VaultIt/Content/Blueprints/BP_ThirdPersonGameMode.uasset" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Plugins/VaultIt/Content/Maps/ThirdPersonExampleMap.umap" beforeDir="false" afterPath="$PROJECT_DIR$/Plugins/VaultIt/Content/Maps/ThirdPersonExampleMap.umap" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Source/EndlessVendetta/EndlessVendettaCharacter.cpp" beforeDir="false" afterPath="$PROJECT_DIR$/Source/EndlessVendetta/EndlessVendettaCharacter.cpp" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Source/EndlessVendetta/MyVICharacterAbilityBase.cpp" beforeDir="false" afterPath="$PROJECT_DIR$/Source/EndlessVendetta/MyVICharacterAbilityBase.cpp" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Source/EndlessVendetta/EndlessVendettaCharacter.h" beforeDir="false" afterPath="$PROJECT_DIR$/Source/EndlessVendetta/EndlessVendettaCharacter.h" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Source/EndlessVendetta/MyVICharacterBase.cpp" beforeDir="false" afterPath="$PROJECT_DIR$/Source/EndlessVendetta/MyVICharacterBase.cpp" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Source/EndlessVendetta/MyVICharacterBase.h" beforeDir="false" afterPath="$PROJECT_DIR$/Source/EndlessVendetta/MyVICharacterBase.h" afterDir="false" />
</list>
@ -42,36 +33,36 @@
<component name="MarkdownSettingsMigration">
<option name="stateVersion" value="1" />
</component>
<component name="ProjectColorInfo"><![CDATA[{
"customColor": "",
"associatedIndex": 2
}]]></component>
<component name="ProjectColorInfo">{
&quot;customColor&quot;: &quot;&quot;,
&quot;associatedIndex&quot;: 2
}</component>
<component name="ProjectId" id="2anGr7EBwnf66ySbAuSjb4RMO0p" />
<component name="ProjectViewState">
<option name="hideEmptyMiddlePackages" value="true" />
<option name="showLibraryContents" value="true" />
</component>
<component name="PropertiesComponent"><![CDATA[{
"keyToString": {
"C++ Project.EndlessVendetta.executor": "Run",
"RunOnceActivity.OpenProjectViewOnStart": "true",
"RunOnceActivity.ShowReadmeOnStart": "true",
"git-widget-placeholder": "GunRange-2.0",
"node.js.detected.package.eslint": "true",
"node.js.detected.package.tslint": "true",
"node.js.selected.package.eslint": "(autodetect)",
"node.js.selected.package.tslint": "(autodetect)",
"nodejs_package_manager_path": "npm",
"vue.rearranger.settings.migration": "true"
<component name="PropertiesComponent">{
&quot;keyToString&quot;: {
&quot;C++ Project.EndlessVendetta.executor&quot;: &quot;Run&quot;,
&quot;RunOnceActivity.OpenProjectViewOnStart&quot;: &quot;true&quot;,
&quot;RunOnceActivity.ShowReadmeOnStart&quot;: &quot;true&quot;,
&quot;git-widget-placeholder&quot;: &quot;GunRange-2.0&quot;,
&quot;node.js.detected.package.eslint&quot;: &quot;true&quot;,
&quot;node.js.detected.package.tslint&quot;: &quot;true&quot;,
&quot;node.js.selected.package.eslint&quot;: &quot;(autodetect)&quot;,
&quot;node.js.selected.package.tslint&quot;: &quot;(autodetect)&quot;,
&quot;nodejs_package_manager_path&quot;: &quot;npm&quot;,
&quot;vue.rearranger.settings.migration&quot;: &quot;true&quot;
},
"keyToStringList": {
"rider.external.source.directories": [
"C:\\Users\\Rafal\\AppData\\Roaming\\JetBrains\\Rider2023.3\\resharper-host\\DecompilerCache",
"C:\\Users\\Rafal\\AppData\\Roaming\\JetBrains\\Rider2023.3\\resharper-host\\SourcesCache",
"C:\\Users\\Rafal\\AppData\\Local\\Symbols\\src"
&quot;keyToStringList&quot;: {
&quot;rider.external.source.directories&quot;: [
&quot;C:\\Users\\Rafal\\AppData\\Roaming\\JetBrains\\Rider2023.3\\resharper-host\\DecompilerCache&quot;,
&quot;C:\\Users\\Rafal\\AppData\\Roaming\\JetBrains\\Rider2023.3\\resharper-host\\SourcesCache&quot;,
&quot;C:\\Users\\Rafal\\AppData\\Local\\Symbols\\src&quot;
]
}
}]]></component>
}</component>
<component name="RunManager">
<configuration name="EndlessVendetta" type="CppProject" factoryName="C++ Project">
<configuration_1>
@ -144,6 +135,7 @@
<option name="presentableId" value="Default" />
<updated>1704947128241</updated>
<workItem from="1704947131131" duration="5567000" />
<workItem from="1705055116614" duration="7901000" />
</task>
<servers />
</component>

BIN
EndlessVendetta/Content/BountySystem/testintesting.uasset (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:06d7c8221d10354ec1e9be8f31b4d84447688c99f651d8e702849bac8846c4e8
size 79266
oid sha256:2cb0baa3cb244f0c771bf7f27cd6664ec6fd72000d44ba61106bcb06d8373c17
size 79838

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:7db21551a3a56def353e10eb4a8429d0980049797fd36509f2096a18a79c6f39
size 679253
oid sha256:2c78df31eabfc41ac0e3ae48be1a5b9f3750579d4cae774133a9da9f877e2f13
size 680775

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:016cace4ca772f5945f13571260dfb094c56cf8abbd05c91dbf504546f0c1c96
oid sha256:aecb50fea2c0d71ab625d938c375ba641ce01e27c30dbbe63cd6c931a83d8ee0
size 14831

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:edaf3b6429e17258e879c82ded01267c2b2ef0ea5ef9b90566fbf2d131ff6d04
size 284169

View File

@ -50,6 +50,18 @@ void AEndlessVendettaCharacter::BeginPlay()
// Call the base class
Super::BeginPlay();
// Set the fp skeletal mesh for the vault it plugin to use
TArray<UActorComponent*> MeshActComps = GetComponentsByClass(USkeletalMeshComponent::StaticClass());
for (auto MeshActorComponent : MeshActComps)
{
USkeletalMeshComponent* MeshSkeletalComp = Cast<USkeletalMeshComponent>(MeshActorComponent);
if (MeshSkeletalComp->ComponentHasTag("FP_Mesh"))
{
FP_SkeletalMesh = MeshSkeletalComp;
break;
}
}
//Add Input Mapping Context
if (APlayerController* PlayerController = Cast<APlayerController>(Controller))
{

View File

@ -26,10 +26,12 @@ class AEndlessVendettaCharacter : public ACharacter
{
GENERATED_BODY()
protected:
/** Pawn mesh: 1st person view (arms; seen only by self) */
UPROPERTY(VisibleDefaultsOnly, Category=Mesh)
UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category=Mesh)
USkeletalMeshComponent* Mesh1P;
private:
/** First person camera */
UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = Camera, meta = (AllowPrivateAccess = "true"))
UCameraComponent* FirstPersonCameraComponent;
@ -203,11 +205,17 @@ protected:
void Interact();
protected:
// Used by vault it plugin to run vaulting animations
USkeletalMeshComponent* FP_SkeletalMesh = nullptr;
// APawn interface
virtual void SetupPlayerInputComponent(UInputComponent* InputComponent) override;
// End of APawn interface
public:
UFUNCTION(BlueprintCallable, Category = "Stealth")
void SetCrouch();
UFUNCTION(BlueprintCallable, Category = "Stealth")

View File

@ -211,7 +211,7 @@ bool AMyVICharacterBase::CanVault_Implementation() const
}
// Animation instance is required to play vault montage
if (!GetMesh() || !GetMesh()->GetAnimInstance())
if (!IsValid(FP_SkeletalMesh) || !IsValid(FP_SkeletalMesh->GetAnimInstance()))
{
UE_LOG(LogTemp, Warning, TEXT("Animation instance is required to play vault montage"));
return false;

View File

@ -100,7 +100,7 @@ public:
virtual UVIPawnVaultComponent* GetPawnVaultComponent_Implementation() const override;
virtual UMotionWarpingComponent* GetMotionWarpingComponent_Implementation() const override;
virtual USkeletalMeshComponent* GetMeshForVaultMontage_Implementation() const override { return GetMesh(); }
virtual USkeletalMeshComponent* GetMeshForVaultMontage_Implementation() const override { return FP_SkeletalMesh; }
virtual FVIAnimSet GetVaultAnimSet_Implementation() const override;
virtual FVITraceSettings GetVaultTraceSettings_Implementation() const override;
virtual FVector GetVaultDirection_Implementation() const override;