diff --git a/EndlessVendetta/Content/FPWeapon/Mesh/SK_FPGun.uasset b/EndlessVendetta/Content/FPWeapon/Mesh/SK_FPGun.uasset index ceecd3a8..fb9bcccb 100644 --- a/EndlessVendetta/Content/FPWeapon/Mesh/SK_FPGun.uasset +++ b/EndlessVendetta/Content/FPWeapon/Mesh/SK_FPGun.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d1541e35feca0492ef7d3627594bf8a44a1d2df2de065eef10debc2ff10e5b82 -size 2639726 +oid sha256:a25bd766b410c091404860a06869807c72f401b56bb3a1176d4a9f059f62e3aa +size 2639719 diff --git a/EndlessVendetta/Content/FPWeapon/Mesh/SK_FPGun_Skeleton.uasset b/EndlessVendetta/Content/FPWeapon/Mesh/SK_FPGun_Skeleton.uasset index 069548d4..05540461 100644 --- a/EndlessVendetta/Content/FPWeapon/Mesh/SK_FPGun_Skeleton.uasset +++ b/EndlessVendetta/Content/FPWeapon/Mesh/SK_FPGun_Skeleton.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:708dc110739caaf4ba73ad02c0d6e9610992e65d199b7939f2824b04ded9772f -size 9980 +oid sha256:2dea0307b92ccbed30109943ac5590faf782a6883906b1583a171e1296bafd2a +size 10750 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_ARTEST1.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_ARTEST1.uasset index f2ca1773..7efad0d9 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_ARTEST1.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_ARTEST1.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:da280a53ff9a19fc5698a2e4e87a2f0b6e4fd81c95fb5929a659cdb507b0d446 -size 41581 +oid sha256:2dd4b81f67f4c6069cc038ec8100dff8c3f4e28bbb79d37b10bcdd51f71f83d3 +size 41445 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/AnimatedPistol/BP_BasePistolWeapon_Animated.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/AnimatedPistol/BP_BasePistolWeapon_Animated.uasset index 3cd2eccc..ccc2ed32 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/AnimatedPistol/BP_BasePistolWeapon_Animated.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/AnimatedPistol/BP_BasePistolWeapon_Animated.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:412a1fbdf641138e1bc451eecb3fc9e8a829692d8532a478834269eeadb547b7 -size 246895 +oid sha256:205e8a18116f736714205b9148256ad96810ffeb84ea16a491b783bf989c17b1 +size 254152 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/AnimatedPistol/Pistol.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/AnimatedPistol/Pistol.uasset index a7b68978..94d5738d 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/AnimatedPistol/Pistol.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/AnimatedPistol/Pistol.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:46a72a6671c239098b2d0ebfa2e2af9fbfb8bb7b53d39fb723db61c91a0477bd -size 935377 +oid sha256:8aad6513dafb2daf9c77cc9ffedead792f7ee4e22709ca20309d967f64ee1e7b +size 935300 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/AnimatedPistol/Pistol_Skeleton.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/AnimatedPistol/Pistol_Skeleton.uasset index 3aa488b7..cfe22307 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/AnimatedPistol/Pistol_Skeleton.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/AnimatedPistol/Pistol_Skeleton.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b7e0480b2ff1c91c0099c9d4a03590743360d8d139a4e103154e2be11856cf8d -size 7647 +oid sha256:bcd0987d98828fe75124f3bdbec4cb955591c45296cfb0a933d7b26f90542015 +size 9054 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/Workbench_WeaponAttachments/BP_WeaponWorkbench.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/Workbench_WeaponAttachments/BP_WeaponWorkbench.uasset index e0b19392..b7e51127 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/Workbench_WeaponAttachments/BP_WeaponWorkbench.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/Workbench_WeaponAttachments/BP_WeaponWorkbench.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4a985ecacf144a27ded607dd2012889e01421cc0050d1278ca36a169872cf899 -size 149685 +oid sha256:3058523d1db3b3ce8bb608d719510ca31385f07e180d6ee49bc98d73950fe67d +size 177754 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/Workbench_WeaponAttachments/Workbench_UI/WBP_Workbench.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/Workbench_WeaponAttachments/Workbench_UI/WBP_Workbench.uasset index f7d9ff1f..5346743d 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/Workbench_WeaponAttachments/Workbench_UI/WBP_Workbench.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/Workbench_WeaponAttachments/Workbench_UI/WBP_Workbench.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:453fcd2051bb7162a4c54dccd78d1c02603a9c11ab43a18146451d41d776862c -size 309217 +oid sha256:0ae694c450bf435ae7b867f11ce28e41372a31c1b0b6e8b6a1c8d19ee4f38baf +size 576887 diff --git a/EndlessVendetta/Content/Levels/DoorTestLevel.umap b/EndlessVendetta/Content/Levels/DoorTestLevel.umap index 4421c400..09bc9382 100644 --- a/EndlessVendetta/Content/Levels/DoorTestLevel.umap +++ b/EndlessVendetta/Content/Levels/DoorTestLevel.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d2943d11286f0fe5199956829c50f4c143255de490d6854d443df6956b6aaed9 -size 19237 +oid sha256:df1aa3a4181f8c693ffe2f2f152cde6f60f1f28dd691cfd35de34c6837fbe35f +size 19500 diff --git a/EndlessVendetta/Content/StarterContent/Shapes/TempExtendedMag.uasset b/EndlessVendetta/Content/StarterContent/Shapes/TempExtendedMag.uasset new file mode 100644 index 00000000..ab1b9cd1 --- /dev/null +++ b/EndlessVendetta/Content/StarterContent/Shapes/TempExtendedMag.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dad1cb27145affe784da5f1db42f9979fd90bec8ab16c70049273f58cabfb210 +size 47919 diff --git a/EndlessVendetta/Content/StarterContent/Shapes/TempGrip.uasset b/EndlessVendetta/Content/StarterContent/Shapes/TempGrip.uasset new file mode 100644 index 00000000..35c3fed8 --- /dev/null +++ b/EndlessVendetta/Content/StarterContent/Shapes/TempGrip.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c9dc7d2236cc8b2c51501b90fb11df94a79d6085951375c97275bc705228633 +size 31406 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/DoorTestLevel/0/24/JBARER4CBJ0QZT5CZY8ID6.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/DoorTestLevel/0/24/JBARER4CBJ0QZT5CZY8ID6.uasset deleted file mode 100644 index cc218a93..00000000 --- a/EndlessVendetta/Content/__ExternalActors__/Levels/DoorTestLevel/0/24/JBARER4CBJ0QZT5CZY8ID6.uasset +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:624574d06d0678bdb53ec083c7b9635e45021665db71193cdbbd1c149026a7ba -size 6519 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/DoorTestLevel/2/K1/58MA6LCG9V3BWWEPHFBLQO.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/DoorTestLevel/2/K1/58MA6LCG9V3BWWEPHFBLQO.uasset new file mode 100644 index 00000000..5ad45d46 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/DoorTestLevel/2/K1/58MA6LCG9V3BWWEPHFBLQO.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf90068af9ba236bf3b3aac0f65d70eced4c12c6b814b4acbf9e816b4fdd14ce +size 7960 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/DoorTestLevel/9/V5/00HOTT7GJB6N5M6TZHPJO5.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/DoorTestLevel/9/V5/00HOTT7GJB6N5M6TZHPJO5.uasset deleted file mode 100644 index f35d5c73..00000000 --- a/EndlessVendetta/Content/__ExternalActors__/Levels/DoorTestLevel/9/V5/00HOTT7GJB6N5M6TZHPJO5.uasset +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:227182e3c4bf297a0f312798841c02a738f6cf738d30d574a85f837401023418 -size 6609 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/DoorTestLevel/D/HT/HCK94DMZ442FV8M21GRO0Q.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/DoorTestLevel/D/HT/HCK94DMZ442FV8M21GRO0Q.uasset index 5884c860..428faf33 100644 --- a/EndlessVendetta/Content/__ExternalActors__/Levels/DoorTestLevel/D/HT/HCK94DMZ442FV8M21GRO0Q.uasset +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/DoorTestLevel/D/HT/HCK94DMZ442FV8M21GRO0Q.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a01b69854d463092b0ca667e7b38400f45d77bc28a442d80e1ad7629d26507c5 +oid sha256:3e9e0a24b83198ae0ade3feeb3113927c21a9c5554943157bf12b84964c81603 size 6374 diff --git a/EndlessVendetta/EndlessVendetta.sln.DotSettings.user b/EndlessVendetta/EndlessVendetta.sln.DotSettings.user deleted file mode 100644 index 2b08f3a1..00000000 --- a/EndlessVendetta/EndlessVendetta.sln.DotSettings.user +++ /dev/null @@ -1,2 +0,0 @@ - - C:\Users\Rafal\AppData\Local\JetBrains\Rider2023.3\resharper-host\temp\Rider\vAny\CoverageData\_EndlessVendetta.-1253833435\Snapshot\snapshot.utdcvr \ No newline at end of file diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp index a6c43f0c..6fe6193b 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp @@ -13,6 +13,8 @@ #include #include "EndlessVendetta/BountySystem/ControlsTraining/TargetDummy.h" +#include "EndlessVendetta/Workbench&Attachments/ExtendedMagAttachmentClass.h" +#include "EndlessVendetta/Workbench&Attachments/GripAttachmentClass.h" #include "EndlessVendetta/Workbench&Attachments/SilencerAttachmentClass.h" @@ -278,6 +280,7 @@ void ABaseWeaponClass::InteractPrompt() WeaponStatsPopUp(); } +//Called in weaponworkbench WBP void ABaseWeaponClass::SetupSilencerAttachment(UStaticMesh* SilencerMesh) { GEngine->AddOnScreenDebugMessage(-1, 15.f, FColor::Red, TEXT("SETTING UP SILENCER ATTACHMENTS")); @@ -290,11 +293,13 @@ void ABaseWeaponClass::SetupSilencerAttachment(UStaticMesh* SilencerMesh) { if (IsValid(WeaponSkeletonMesh)) { + //this handles giving the weapon the required component class/code SilencerAttachmentClass->AttachToComponent(WeaponSkeletonMesh, FAttachmentTransformRules::SnapToTargetIncludingScale, FName(TEXT("SilencerMeshSocket"))); UE_LOG(LogTemp, Display, TEXT("All Attachment is valid")); //this makes it showup in editor for better debugging SilencerAttachmentClass->CreationMethod = EComponentCreationMethod::Instance; SilencerAttachmentClass->RegisterComponent(); + //below handles seeing the physical attachment you selected UStaticMeshComponent* StaticMeshComp = NewObject(SilencerAttachmentClass, UStaticMeshComponent::StaticClass()); if (IsValid(StaticMeshComp)) { @@ -309,3 +314,78 @@ void ABaseWeaponClass::SetupSilencerAttachment(UStaticMesh* SilencerMesh) } } } + +//Called in weaponworkbench WBP +void ABaseWeaponClass::SetupExtendedMagAttachment(UStaticMesh* ExtendedMagMesh) +{ + GEngine->AddOnScreenDebugMessage(-1, 15.f, FColor::Red, TEXT("SETTING UP EXTENDEDMAG ATTACHMENTS")); + FTransform EmptyTransform; + + USceneComponent* ExtendedMagAttachmentClass = Cast(AddComponentByClass(UExtendedMagAttachmentClass::StaticClass(), false, EmptyTransform, false)); + ExtendedMagAttachmentClass->ComponentTags.Add(FName("AttachmentType")); + USkeletalMeshComponent* WeaponSkeletonMesh = FindComponentByClass(); + if (IsValid(ExtendedMagAttachmentClass)) + { + if (IsValid(WeaponSkeletonMesh)) + { + //this handles giving the weapon the required component class/code + ExtendedMagAttachmentClass->AttachToComponent(WeaponSkeletonMesh, FAttachmentTransformRules::SnapToTargetIncludingScale, FName(TEXT("ExtendedMagSocket"))); + UE_LOG(LogTemp, Display, TEXT("All Attachment is valid")); + //this makes it showup in editor for better debugging + ExtendedMagAttachmentClass->CreationMethod = EComponentCreationMethod::Instance; + ExtendedMagAttachmentClass->RegisterComponent(); + //below handles seeing the physical attachment you selected + UStaticMeshComponent* StaticMeshComp = NewObject(ExtendedMagAttachmentClass, UStaticMeshComponent::StaticClass()); + if (IsValid(StaticMeshComp)) + { + StaticMeshComp->AttachToComponent(ExtendedMagAttachmentClass, FAttachmentTransformRules::SnapToTargetIncludingScale); + StaticMeshComp->SetStaticMesh(ExtendedMagMesh); + StaticMeshComp->SetRelativeRotation(FRotator(0, 180, 0)); + StaticMeshComp->SetCollisionEnabled(ECollisionEnabled::NoCollision); + //Making it show in editor for debugging + StaticMeshComp->CreationMethod = EComponentCreationMethod::Instance; + StaticMeshComp->RegisterComponent(); + } + } + } +} + +//Called in weaponworkbench WBP +void ABaseWeaponClass::SetupGripAttachment(UStaticMesh* GripMesh) +{ + GEngine->AddOnScreenDebugMessage(-1, 15.f, FColor::Red, TEXT("SETTING UP GRIP ATTACHMENTS")); + FTransform EmptyTransform; + + USceneComponent* GripAttachmentClass = Cast(AddComponentByClass(UGripAttachmentClass::StaticClass(), false, EmptyTransform, false)); + GripAttachmentClass->ComponentTags.Add(FName("AttachmentType")); + USkeletalMeshComponent* WeaponSkeletonMesh = FindComponentByClass(); + if (IsValid(GripAttachmentClass)) + { + if (IsValid(WeaponSkeletonMesh)) + { + //this handles giving the weapon the required component class/code + GripAttachmentClass->AttachToComponent(WeaponSkeletonMesh, FAttachmentTransformRules::SnapToTargetIncludingScale, FName(TEXT("GripMeshSocket"))); + UE_LOG(LogTemp, Display, TEXT("All Attachment is valid")); + //this makes it showup in editor for better debugging + GripAttachmentClass->CreationMethod = EComponentCreationMethod::Instance; + GripAttachmentClass->RegisterComponent(); + //below handles seeing the physical attachment you selected + UStaticMeshComponent* StaticMeshComp = NewObject(GripAttachmentClass, UStaticMeshComponent::StaticClass()); + if (IsValid(StaticMeshComp)) + { + StaticMeshComp->AttachToComponent(GripAttachmentClass, FAttachmentTransformRules::SnapToTargetIncludingScale); + StaticMeshComp->SetStaticMesh(GripMesh); + StaticMeshComp->SetRelativeRotation(FRotator(0, 0, 0)); + StaticMeshComp->SetCollisionEnabled(ECollisionEnabled::NoCollision); + //Making it show in editor for debugging + StaticMeshComp->CreationMethod = EComponentCreationMethod::Instance; + StaticMeshComp->RegisterComponent(); + } + } + } +} + +void ABaseWeaponClass::RemoveAllAttachments() +{ + +} diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h index d934ea9e..2a67c1f6 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h @@ -172,9 +172,20 @@ public: //void GetOutHit(FHitResult OutHit); + //ATTACHMENTS UFUNCTION(BlueprintCallable) void SetupSilencerAttachment(UStaticMesh* SilencerMesh); + UFUNCTION(BlueprintCallable) + void SetupExtendedMagAttachment(UStaticMesh* ExtendedMagMesh); + + UFUNCTION(BlueprintCallable) + void SetupGripAttachment(UStaticMesh* GripMesh); + + UFUNCTION(BlueprintCallable) + void RemoveAllAttachments(); + + // UFUNCTION(BlueprintImplementableEvent) void ShowReloadingWidget(); diff --git a/EndlessVendetta/Source/EndlessVendetta/Workbench&Attachments/ExtendedMagAttachmentClass.cpp b/EndlessVendetta/Source/EndlessVendetta/Workbench&Attachments/ExtendedMagAttachmentClass.cpp new file mode 100644 index 00000000..fc1129ad --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/Workbench&Attachments/ExtendedMagAttachmentClass.cpp @@ -0,0 +1,45 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "ExtendedMagAttachmentClass.h" + +#include "EndlessVendetta/WeaponSystem/BaseWeaponClass.h" + + +// Sets default values for this component's properties +UExtendedMagAttachmentClass::UExtendedMagAttachmentClass() +{ + // Set this component to be initialized when the game starts, and to be ticked every frame. You can turn these features + // off to improve performance if you don't need them. + PrimaryComponentTick.bCanEverTick = true; + + // ... +} + + +// Called when the game starts +void UExtendedMagAttachmentClass::BeginPlay() +{ + Super::BeginPlay(); + BaseWeaponClass = Cast(this->GetAttachParentActor()); + if (BaseWeaponClass) + { + IncreaseAmmoCount(); + } +} + + +// Called every frame +void UExtendedMagAttachmentClass::TickComponent(float DeltaTime, ELevelTick TickType, FActorComponentTickFunction* ThisTickFunction) +{ + Super::TickComponent(DeltaTime, TickType, ThisTickFunction); +} + +void UExtendedMagAttachmentClass::IncreaseAmmoCount() +{ + if (!IsValid(BaseWeaponClass)) return; + UE_LOG(LogTemp, Warning, TEXT("AmmoCountIncrease activated")); + BaseWeaponClass->MagazineSize *= 2; + BaseWeaponClass->currentAmmoCount = BaseWeaponClass->MagazineSize; +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/Workbench&Attachments/ExtendedMagAttachmentClass.h b/EndlessVendetta/Source/EndlessVendetta/Workbench&Attachments/ExtendedMagAttachmentClass.h new file mode 100644 index 00000000..787af853 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/Workbench&Attachments/ExtendedMagAttachmentClass.h @@ -0,0 +1,31 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "Components/SceneComponent.h" +#include "ExtendedMagAttachmentClass.generated.h" + + +UCLASS(ClassGroup=(Custom), meta=(BlueprintSpawnableComponent)) +class ENDLESSVENDETTA_API UExtendedMagAttachmentClass : public USceneComponent +{ + GENERATED_BODY() + +public: + // Sets default values for this component's properties + UExtendedMagAttachmentClass(); + +protected: + // Called when the game starts + virtual void BeginPlay() override; + +public: + // Called every frame + virtual void TickComponent(float DeltaTime, ELevelTick TickType, FActorComponentTickFunction* ThisTickFunction) override; + + UPROPERTY(EditAnywhere) + class ABaseWeaponClass* BaseWeaponClass; + + void IncreaseAmmoCount(); +}; diff --git a/EndlessVendetta/Source/EndlessVendetta/Workbench&Attachments/GripAttachmentClass.cpp b/EndlessVendetta/Source/EndlessVendetta/Workbench&Attachments/GripAttachmentClass.cpp new file mode 100644 index 00000000..cbced9f9 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/Workbench&Attachments/GripAttachmentClass.cpp @@ -0,0 +1,33 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "GripAttachmentClass.h" + + +// Sets default values for this component's properties +UGripAttachmentClass::UGripAttachmentClass() +{ + // Set this component to be initialized when the game starts, and to be ticked every frame. You can turn these features + // off to improve performance if you don't need them. + PrimaryComponentTick.bCanEverTick = true; + + // ... +} + + +// Called when the game starts +void UGripAttachmentClass::BeginPlay() +{ + Super::BeginPlay(); + + // ... + +} + + +// Called every frame +void UGripAttachmentClass::TickComponent(float DeltaTime, ELevelTick TickType, FActorComponentTickFunction* ThisTickFunction) +{ + Super::TickComponent(DeltaTime, TickType, ThisTickFunction); +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/Workbench&Attachments/GripAttachmentClass.h b/EndlessVendetta/Source/EndlessVendetta/Workbench&Attachments/GripAttachmentClass.h new file mode 100644 index 00000000..89d795a2 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/Workbench&Attachments/GripAttachmentClass.h @@ -0,0 +1,26 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "Components/SceneComponent.h" +#include "GripAttachmentClass.generated.h" + + +UCLASS(ClassGroup=(Custom), meta=(BlueprintSpawnableComponent)) +class ENDLESSVENDETTA_API UGripAttachmentClass : public USceneComponent +{ + GENERATED_BODY() + +public: + // Sets default values for this component's properties + UGripAttachmentClass(); + +protected: + // Called when the game starts + virtual void BeginPlay() override; + +public: + // Called every frame + virtual void TickComponent(float DeltaTime, ELevelTick TickType, FActorComponentTickFunction* ThisTickFunction) override; +};