5#include "CoreMinimal.h"
7#include "WeaponInstanceMeleeDash.generated.h"
14 GENERATED_UCLASS_BODY()
17 virtual bool CanFire(
EWeaponError& ErrorMessage, uint8
Mode = 0)
const override;
18 virtual bool Fire(uint8
Mode = 0,
float WorldTimeOverride = -1.f)
override;
19 virtual void UnEquipComplete()
override;
22 virtual void TickComponent(
float DeltaTime,
enum ELevelTick TickType, FActorComponentTickFunction *ThisTickFunction);
23 virtual void CoolDownStart(uint8
Mode)
override;
24 virtual void PlayAltFireCounter();
25 virtual void PlayWeaponAltFireEffects();
26 virtual void PlayWeaponAltFireEffects1P();
27 virtual void PlayWeaponAltFireEffects3P();
28 virtual void StopWeaponMovement()
override;
31 virtual void OnHitDuringWeaponMovement(UPrimitiveComponent* HitComponent, AActor* OtherActor, UPrimitiveComponent* OtherComp, FVector NormalImpulse,
const FHitResult&
Hit);
34 virtual void OnRep_AltFireCounter();
36 UPROPERTY(BlueprintAssignable)
37 FDashSignature OnSwordDashAvailable;
38 UPROPERTY(BlueprintAssignable)
39 FDashSignature OnSwordDashNotAvailable;
42 virtual
float GetDamage(const FHitResult& HitResult,
float DamageModifier, const UWeaponComponent* WeaponComponent = NULL) const override;
43 virtual TSubclassOf<UDamageType> GetDamageType() const override;
46 UPROPERTY(ReplicatedUsing = OnRep_AltFireCounter)
47 uint32 AltFireCounter = 0;
49 uint32 ClientAltFireCounter = 0;
52 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Melee Weapon")
53 float DashStaminaCost = -1.0f;
55 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Melee Weapon")
56 bool bRequiresTarget = true;
58 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Melee Weapon")
59 float AltFireRate = 1.f;
61 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Melee Weapon")
62 float AltDashDistance = 2000.0f;
64 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Melee Weapon")
65 float AmmoConsumedPerAltFire = 50.f;
67 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Melee Weapon")
68 float AltBaseDamage = 50.f;
70 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Melee Weapon")
71 TSubclassOf<UDamageType> AltDamageType = NULL;
73 UPROPERTY(EditDefaultsOnly, Category = "Melee Weapon|Animation")
74 UAnimMontage* AltFireAnimation1P = NULL;
75 UPROPERTY(EditDefaultsOnly, Category = "Melee Weapon|Animation")
76 UAnimMontage* WeaponAltFireAnimation1P = NULL;
77 UPROPERTY(EditDefaultsOnly, Category = "Melee Weapon|Animation")
78 UAnimMontage* AltFireAnimation3P = NULL;
81 bool bHasDashTarget = false;
EWeaponError
Definition: WeaponComponent.h:15
DECLARE_DYNAMIC_MULTICAST_DELEGATE(FDashSignature)
Definition: WeaponInstanceMeleeDash.h:13
Definition: WeaponInstanceMelee.h:41