Bugfix Combat Initiation Not Checking AI Blackboard
This commit is contained in:
parent
d100a85a0d
commit
0a0c5ed017
@ -12,6 +12,7 @@
|
||||
#include "GameFramework/Character.h"
|
||||
#include "Kismet/GameplayStatics.h"
|
||||
#include "the_twilight_abyss/PlayerTemp/TempCharacter.h"
|
||||
#include "UObject/UnrealTypePrivate.h"
|
||||
|
||||
// Sets default values
|
||||
ATurnBaseCombatV2::ATurnBaseCombatV2()
|
||||
@ -38,6 +39,16 @@ void ATurnBaseCombatV2::StartCombat(AActor* Enemy)
|
||||
int32* EnemyHealthPtr = HealthProperty->ContainerPtrToValuePtr<int32>(Enemy);
|
||||
EnemyHealth = EnemyHealthPtr;
|
||||
|
||||
if (EnemyBlackboard->GetValueAsBool("Sight"))
|
||||
{
|
||||
//bEnemyHasExtraTurn = true;
|
||||
SwitchTurn();
|
||||
}
|
||||
else
|
||||
{
|
||||
bPlayerHasExtraTurn = true;
|
||||
}
|
||||
|
||||
if (HUD->IsInViewport()) return;
|
||||
HUD->AddToViewport();
|
||||
EnemyActor = Enemy;
|
||||
@ -75,6 +86,8 @@ void ATurnBaseCombatV2::StartCombat(AActor* Enemy)
|
||||
|
||||
void ATurnBaseCombatV2::EndCombat()
|
||||
{
|
||||
bEnemyHasExtraTurn = false;
|
||||
bPlayerHasExtraTurn = false;
|
||||
for (UStatusEffect* StatusEffect : StatusEffects)
|
||||
{
|
||||
StatusEffect->OnExpiry(PlayerActor);
|
||||
@ -238,7 +251,11 @@ void ATurnBaseCombatV2::ExecuteCast(FString Combo)
|
||||
return;
|
||||
}
|
||||
|
||||
SwitchTurn();
|
||||
if (!bPlayerHasExtraTurn)
|
||||
{
|
||||
SwitchTurn();
|
||||
}
|
||||
bPlayerHasExtraTurn = false;
|
||||
}
|
||||
|
||||
void ATurnBaseCombatV2::UseActionPoint()
|
||||
|
@ -115,6 +115,9 @@ protected:
|
||||
void RevertActionPoints();
|
||||
void UpdateProgressBars() const;
|
||||
|
||||
bool bPlayerHasExtraTurn = false;
|
||||
bool bEnemyHasExtraTurn = false;
|
||||
|
||||
private:
|
||||
bool IsValidCombo(FString Combo) const;
|
||||
bool IsSpecialCombo(FString Combo) const;
|
||||
|
Loading…
Reference in New Issue
Block a user