diff --git a/Content/Legumix/Ennemy/MeleeEnemy/BP_MeleeEnemy.uasset b/Content/Legumix/Ennemy/MeleeEnemy/BP_MeleeEnemy.uasset index 0ad6d19..9d91910 100644 --- a/Content/Legumix/Ennemy/MeleeEnemy/BP_MeleeEnemy.uasset +++ b/Content/Legumix/Ennemy/MeleeEnemy/BP_MeleeEnemy.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:77a4f9da08863166e9d4bfd5c34ba0d5d5cb5a5019336e40069e434586982e3f -size 155532 +oid sha256:93f9b1b58b4fbcd25edbd71b7c063ceff3eb570196cff23c65734dd201bc1132 +size 156474 diff --git a/Content/Legumix/Levels/LVL_GYM_00.umap b/Content/Legumix/Levels/LVL_GYM_00.umap index 7c5a4e3..d523f28 100644 --- a/Content/Legumix/Levels/LVL_GYM_00.umap +++ b/Content/Legumix/Levels/LVL_GYM_00.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9c0f7a83ea411981c11010e37f610332042e1f1d2bcf43c1dc81fb8f3ba21483 -size 979519 +oid sha256:84197784f712cc43d6b4e3512ca08739be790090387576fd7d1f2c915ac36c95 +size 979590 diff --git a/Content/Legumix/Player/BP_Play.uasset b/Content/Legumix/Player/BP_Play.uasset index af0ab3c..b3bc6bc 100644 --- a/Content/Legumix/Player/BP_Play.uasset +++ b/Content/Legumix/Player/BP_Play.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c33f1294a895879d3fda162bd55395f16161fdd04b3e443fe2a8b2a09a6acbd7 -size 299947 +oid sha256:bd8399d8102d6f0110ecf618b4decef972e915c833035ab6058ff7512acf695b +size 484954 diff --git a/Content/Legumix/Player/HUD/Greyscale.uasset b/Content/Legumix/Player/HUD/Greyscale.uasset new file mode 100644 index 0000000..4185ef5 --- /dev/null +++ b/Content/Legumix/Player/HUD/Greyscale.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ab485ad2bb51767342e4f10983b22737c5bafc972d39fcd62b0cc856de8a415 +size 9283 diff --git a/Content/Legumix/Player/HUD/M_Postprocess_Damage.uasset b/Content/Legumix/Player/HUD/M_Postprocess_Damage.uasset new file mode 100644 index 0000000..5c6e575 --- /dev/null +++ b/Content/Legumix/Player/HUD/M_Postprocess_Damage.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0dcb8de706099ffc7ee8024490eafff0c3cee3540d1f546509d2dcc39dd02ffc +size 23688 diff --git a/Content/Legumix/Player/HUD/M_Postprocess_Damage_Inst.uasset b/Content/Legumix/Player/HUD/M_Postprocess_Damage_Inst.uasset new file mode 100644 index 0000000..0a2f168 --- /dev/null +++ b/Content/Legumix/Player/HUD/M_Postprocess_Damage_Inst.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47f61885148b08c7dce5a87092f0bd7f50862c2e37c11269ae5092f7fc60757a +size 6220 diff --git a/Content/Legumix/Player/HUD/T_LavaMat4_Emissive.uasset b/Content/Legumix/Player/HUD/T_LavaMat4_Emissive.uasset new file mode 100644 index 0000000..f4847bd --- /dev/null +++ b/Content/Legumix/Player/HUD/T_LavaMat4_Emissive.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebcff105190025a7407d86121af16d8ea7e5860dcc7d2773d3716c5f44708146 +size 57666122 diff --git a/Source/LegumeMix/Private/Enemy/LMEnemy.cpp b/Source/LegumeMix/Private/Enemy/LMEnemy.cpp index 25abcfa..aadbe70 100644 --- a/Source/LegumeMix/Private/Enemy/LMEnemy.cpp +++ b/Source/LegumeMix/Private/Enemy/LMEnemy.cpp @@ -6,6 +6,7 @@ ALMEnemy::ALMEnemy() { PrimaryActorTick.bCanEverTick = true; EnemyState = EEnemyState::EES_Chasing; + AttackingRadius = 100.f; AttackingDamage = 0.f; } diff --git a/Source/LegumeMix/Private/Player/LMPlayer.cpp b/Source/LegumeMix/Private/Player/LMPlayer.cpp index e611f89..a2dbffc 100644 --- a/Source/LegumeMix/Private/Player/LMPlayer.cpp +++ b/Source/LegumeMix/Private/Player/LMPlayer.cpp @@ -27,6 +27,10 @@ ALMPlayer::ALMPlayer() SpreadStream = FRandomStream(FMath::Rand()); HealthComponent = CreateDefaultSubobject(TEXT("HealthComponent")); + + HitPeriodLengthInSeconds = 0.f; + TimeElapsedSinceLastDamageInSeconds = 0.f; + CumulatedDamagesOnCurrentHitPeriod = 0.f; } void ALMPlayer::BeginPlay() diff --git a/Source/LegumeMix/Public/Enemy/LMEnemy.h b/Source/LegumeMix/Public/Enemy/LMEnemy.h index 919aa54..b129aa2 100644 --- a/Source/LegumeMix/Public/Enemy/LMEnemy.h +++ b/Source/LegumeMix/Public/Enemy/LMEnemy.h @@ -44,7 +44,7 @@ protected: double GetDistanceToTarget(const AActor* TargetedActor); /** - * Returns the distance between the enemy and a target. + * Performs an attack on the targeted pawn * @param TargetedPawn * @returns */ diff --git a/Source/LegumeMix/Public/Player/LMPlayer.h b/Source/LegumeMix/Public/Player/LMPlayer.h index a7bef32..38bbe50 100644 --- a/Source/LegumeMix/Public/Player/LMPlayer.h +++ b/Source/LegumeMix/Public/Player/LMPlayer.h @@ -113,6 +113,34 @@ private: UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category=Legumix, meta = (AllowPrivateAccess = true)) TObjectPtr HealthComponent; + /** + * Length of the period in which the damages HUD will be displayed on player screen. + */ + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category=Legumix, meta = (AllowPrivateAccess = true)) + double HitPeriodLengthInSeconds; + + /** + * Time elapsed since last damage taken. + * If it's superior to the HitPeriodLengthInSeconds variable, ends the Hit period + * and so the displaying of damages HUD on player screen + */ + UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category=Legumix, meta = (AllowPrivateAccess = true)) + double TimeElapsedSinceLastDamageInSeconds; + + /** + * Cumulated damages taken by the player on the current hit period + * To calculate view occlusion percent for the damage HUD + */ + UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category=Legumix, meta = (AllowPrivateAccess = true)) + float CumulatedDamagesOnCurrentHitPeriod; + + /** + * Player health at the current hit period beginning + * To calculate view occlusion percent for the damage HUD + */ + UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category=Legumix, meta = (AllowPrivateAccess = true)) + float HealthAtTheCurrentHitPeriodBeginning; + private: #if WITH_EDITORONLY_DATA /** If set, bullet debug will be drawn. */