From 0901cc79737d7b144e83dfc4d2f5c6f1fa9237f9 Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Wed, 10 Apr 2024 15:36:17 +0100 Subject: [PATCH] Update AI to Be Hostile If Player is Holding a Weapon --- .../Source/EndlessVendetta/AI/AI_EnemyController.cpp | 4 ++++ .../Source/EndlessVendetta/EndlessVendettaCharacter.h | 4 +++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp index 6d354168..8e248814 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp @@ -102,6 +102,10 @@ void AAI_EnemyController::OnTargetPerceptionUpdated(AActor* Actor, FAIStimulus c GetBlackboardComponent()->SetValueAsObject("TargetPlayer", Actor); GetBlackboardComponent()->SetValueAsVector("TargetLocation", Stimulus.StimulusLocation); GetBlackboardComponent()->SetValueAsBool("CanSeePlayer", true); + if (PlayerCharacter->CurrentOverlayState != EOverlayState::Default) + { + GetBlackboardComponent()->SetValueAsBool("IsHostile", true); + } } else if (!Stimulus.WasSuccessfullySensed() && Stimulus.Type == SightConfig->GetSenseID()) { diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h index 04f7bd7d..33113e53 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h @@ -105,6 +105,8 @@ private: public: AEndlessVendettaCharacter(); + UPROPERTY(BlueprintReadOnly) + EOverlayState CurrentOverlayState = EOverlayState::Default; UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "Stats") float CurrentHealth = 100.0f; UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Stats") @@ -168,7 +170,7 @@ public: FSetOverlayState SetOverlayStateEvent; UFUNCTION(BlueprintCallable, Category = "Weapon") - void SetOverlayState(EOverlayState OverlayState) const; + void SetOverlayState(EOverlayState OverlayState); DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FRestrictedAreaStatusChangedSignature, bool, bIsInRestrictedAreaLmao);