Merge remote-tracking branch 'origin/master'
# Conflicts: # Content/Legumix/Ennemy/RangeEnemy/BP_DistantEnemy.uasset
This commit is contained in:
commit
ec440f74f9
BIN
Content/Legumix/Ennemy/BP_HealthComponent.uasset
(Stored with Git LFS)
BIN
Content/Legumix/Ennemy/BP_HealthComponent.uasset
(Stored with Git LFS)
Binary file not shown.
BIN
Content/Legumix/Player/BP_Play.uasset
(Stored with Git LFS)
BIN
Content/Legumix/Player/BP_Play.uasset
(Stored with Git LFS)
Binary file not shown.
@ -58,7 +58,7 @@ void ULMHealthComponent::Kill()
|
|||||||
void ULMHealthComponent::HitBoxHit(ULMHitBox* HitBox, const float Damage, const FVector& Origin, const FHitResult& HitInfo)
|
void ULMHealthComponent::HitBoxHit(ULMHitBox* HitBox, const float Damage, const FVector& Origin, const FHitResult& HitInfo)
|
||||||
{
|
{
|
||||||
TakeDamage(Damage);
|
TakeDamage(Damage);
|
||||||
OnHit(Damage, Origin, HitInfo);
|
OnHit.Broadcast(Damage, Origin, HitInfo);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -14,11 +14,15 @@ ULMHitBox::ULMHitBox()
|
|||||||
|
|
||||||
void ULMHitBox::OnHit(const FLMBulletInfo& BulletInfo, const FHitResult& Hit)
|
void ULMHitBox::OnHit(const FLMBulletInfo& BulletInfo, const FHitResult& Hit)
|
||||||
{
|
{
|
||||||
const float Damage = BulletInfo.Damage;
|
|
||||||
const double Distance = FVector::Distance(BulletInfo.Origin, GetComponentLocation());
|
const double Distance = FVector::Distance(BulletInfo.Origin, GetComponentLocation());
|
||||||
|
|
||||||
const float TotalDamage = CalculateDamage(Damage, Distance, BulletInfo.Falloff, BulletInfo.MaxDistance);
|
const float TotalDamage = CalculateDamage(BulletInfo.Damage, Distance, BulletInfo.Falloff, BulletInfo.MaxDistance);
|
||||||
OnHitBoxHit.Broadcast(this, TotalDamage, BulletInfo.Origin, Hit);
|
OnHitSimple(TotalDamage, BulletInfo.Origin, Hit);
|
||||||
|
}
|
||||||
|
|
||||||
|
void ULMHitBox::OnHitSimple(float const Damage, FVector const Origin, const FHitResult& Hit)
|
||||||
|
{
|
||||||
|
OnHitBoxHit.Broadcast(this, Damage, Origin, Hit);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool ULMHitBox::CanBeHitByTeam(const ETeam Team) const
|
bool ULMHitBox::CanBeHitByTeam(const ETeam Team) const
|
||||||
|
@ -17,6 +17,7 @@ class LEGUMEMIX_API ULMHealthComponent : public UActorComponent
|
|||||||
|
|
||||||
DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FOnHealthChangedSignature, float, Health, float, Damage);
|
DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FOnHealthChangedSignature, float, Health, float, Damage);
|
||||||
DECLARE_DYNAMIC_MULTICAST_DELEGATE(FOnDeathSignature);
|
DECLARE_DYNAMIC_MULTICAST_DELEGATE(FOnDeathSignature);
|
||||||
|
DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams(FOnHitSignature, float, Damage, const FVector&, Origin, const FHitResult&, HitInfo);
|
||||||
|
|
||||||
public:
|
public:
|
||||||
ULMHealthComponent();
|
ULMHealthComponent();
|
||||||
@ -78,8 +79,8 @@ public:
|
|||||||
* @param Origin The origin of the damage.
|
* @param Origin The origin of the damage.
|
||||||
* @param HitInfo The collisions informations.
|
* @param HitInfo The collisions informations.
|
||||||
*/
|
*/
|
||||||
UFUNCTION(BlueprintImplementableEvent, Category=Legumix, meta=(Keywords = "Refill"))
|
UPROPERTY(BlueprintCallable, BlueprintAssignable, Category=Legumix)
|
||||||
void OnHit(float Damage, const FVector& Origin, const FHitResult& HitInfo);
|
FOnHitSignature OnHit;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Completely refill the health of the component.
|
* Completely refill the health of the component.
|
||||||
|
@ -20,7 +20,12 @@ class LEGUMEMIX_API ULMHitBox : public UCapsuleComponent
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
ULMHitBox();
|
ULMHitBox();
|
||||||
|
UFUNCTION(BlueprintCallable, Category=Legumix)
|
||||||
void OnHit(const FLMBulletInfo& BulletInfo, const FHitResult& Hit);
|
void OnHit(const FLMBulletInfo& BulletInfo, const FHitResult& Hit);
|
||||||
|
|
||||||
|
UFUNCTION(BlueprintCallable, Category=Legumix)
|
||||||
|
void OnHitSimple(float const Damage, FVector const Origin, const FHitResult& Hit);
|
||||||
|
|
||||||
void SetHealthComponent(ULMHealthComponent* NewHealthComponent) { HealthComponent = NewHealthComponent; }
|
void SetHealthComponent(ULMHealthComponent* NewHealthComponent) { HealthComponent = NewHealthComponent; }
|
||||||
bool CanBeHitByTeam(ETeam Team) const;
|
bool CanBeHitByTeam(ETeam Team) const;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user