Added 1st and 2nd Element UI Book Elements

This commit is contained in:
Philip W 2023-04-21 04:16:46 +01:00
parent 02e1ec436c
commit 11a58bb836
4 changed files with 28 additions and 10 deletions

Binary file not shown.

Binary file not shown.

View File

@ -24,7 +24,7 @@ ATurnBaseCombatV2::ATurnBaseCombatV2()
ThornsStatusEffect = StatusEffectThornsClassFinder.Class;
static ConstructorHelpers::FClassFinder<UStatusEffect> StatusEffectDOTClassFinder(TEXT("/Game/Blueprints/StatusEffects/BP_DamageOverTime"));
DOTStatusEffect = StatusEffectDOTClassFinder.Class;
static ConstructorHelpers::FClassFinder<UUserWidget> DeathScreenWidgetClass(TEXT("/Game/Blueprints/Death_UI/Death_UI"));
DeathScreenWidgetSubclass = DeathScreenWidgetClass.Class;
}
@ -40,7 +40,7 @@ void ATurnBaseCombatV2::StartCombat(AActor* Enemy)
FProperty* HealthProperty = Enemy->GetClass()->FindPropertyByName(FName("Health"));
int32* EnemyHealthPtr = HealthProperty->ContainerPtrToValuePtr<int32>(Enemy);
EnemyHealth = EnemyHealthPtr;
if (EnemyBlackboard->GetValueAsBool("Sight"))
{
//bEnemyHasExtraTurn = true;
@ -144,7 +144,9 @@ void ATurnBaseCombatV2::BeginPlay()
BookHUD = PlayerWidget->GetWidget();
TurnIndicatorTextBlock = Cast<UTextBlock>(HUD->GetWidgetFromName("TurnIndicator"));
CurrentComboTextBlock = Cast<UTextBlock>(HUD->GetWidgetFromName("CurrentCombo"));
CurrentComboTextBlock = Cast<UTextBlock>(BookHUD->GetWidgetFromName("CurrentCombo"));
CurrentComboTextBlock1 = Cast<UTextBlock>(BookHUD->GetWidgetFromName("CurrentCombo_1"));
CurrentComboTextBlock2 = Cast<UTextBlock>(BookHUD->GetWidgetFromName("CurrentCombo_2"));
ActionPointsTextBlock = Cast<UTextBlock>(HUD->GetWidgetFromName("ActionPoints"));
BattleLogTextBlock = Cast<UTextBlock>(HUD->GetWidgetFromName("BattleLog"));
PlayerHealthBar = Cast<UProgressBar>(BookHUD->GetWidgetFromName("PlayerHealthBar"));
@ -237,13 +239,13 @@ void ATurnBaseCombatV2::ExecuteCast(FString Combo)
case true:
// Player Turn
DamageEnemy(*ValidCombos.Find(Combo));
//GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Green, FString::Printf(TEXT("Enemy Damaged %d"), *ValidCombos.Find(Combo)));
//GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Green, FString::Printf(TEXT("Enemy Damaged %d"), *ValidCombos.Find(Combo)));
OnPlayerTurn.Broadcast(PlayerActor, EnemyActor);
break;
case false:
// Enemy Turn
DamagePlayer(*ValidCombos.Find(Combo));
//GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Green, FString::Printf(TEXT("Player Damaged %d"), *ValidCombos.Find(Combo)));
//GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Green, FString::Printf(TEXT("Player Damaged %d"), *ValidCombos.Find(Combo)));
OnEnemyTurn.Broadcast(EnemyActor, PlayerActor);
break;
}
@ -452,6 +454,18 @@ void ATurnBaseCombatV2::RunButtonOnClick()
void ATurnBaseCombatV2::UpdateComboString(FString NewCombo) const
{
CurrentComboTextBlock->SetText(FText::FromString(NewCombo));
CurrentComboTextBlock1->SetText(FText::FromString(""));
CurrentComboTextBlock2->SetText(FText::FromString(""));
if (NewCombo.Len() == 1)
{
CurrentComboTextBlock1->SetText(FText::FromString(NewCombo));
}
else if (NewCombo.Len() == 2)
{
CurrentComboTextBlock1->SetText(FText::FromString(NewCombo.LeftChop(1)));
CurrentComboTextBlock2->SetText(FText::FromString(NewCombo.RightChop(1)));
}
}
void ATurnBaseCombatV2::UpdateActionPoints() const

View File

@ -27,7 +27,7 @@ public:
int* EnemyHealth = nullptr;
float* PlayerHealth = nullptr;
UPROPERTY(EditDefaultsOnly)
int DefaultActionPoints = 3;
int DefaultActionPoints = 2;
UPROPERTY(EditDefaultsOnly)
int ActiveActionPoints = 0;
@ -149,6 +149,10 @@ private:
UPROPERTY(VisibleAnywhere)
UTextBlock* CurrentComboTextBlock;
UPROPERTY(VisibleAnywhere)
UTextBlock* CurrentComboTextBlock1;
UPROPERTY(VisibleAnywhere)
UTextBlock* CurrentComboTextBlock2;
UPROPERTY(VisibleAnywhere)
UTextBlock* BattleLogTextBlock;
UPROPERTY(VisibleAnywhere)
UTextBlock* ActionPointsTextBlock;