Bugfix Crash on Boss Kill
This commit is contained in:
parent
279c0dc7d8
commit
027a48bbec
@ -5,12 +5,13 @@
|
|||||||
|
|
||||||
void UDamageDown::Invoke(AActor* Character, float TimeOfExpiry)
|
void UDamageDown::Invoke(AActor* Character, float TimeOfExpiry)
|
||||||
{
|
{
|
||||||
CombatSystem = Cast<ATurnBaseCombatV2>(GetWorld()->GetGameState());
|
ATurnBaseCombatV2* CombatSystem = Cast<ATurnBaseCombatV2>(GetWorld()->GetGameState());
|
||||||
CombatSystem->EnemyBaseDamageMultiplier -= EnemyDamageMultiplierDecreaseAmount;
|
CombatSystem->EnemyBaseDamageMultiplier -= EnemyDamageMultiplierDecreaseAmount;
|
||||||
}
|
}
|
||||||
|
|
||||||
void UDamageDown::OnExpiry(AActor* Character)
|
void UDamageDown::OnExpiry(AActor* Character)
|
||||||
{
|
{
|
||||||
|
ATurnBaseCombatV2* CombatSystem = Cast<ATurnBaseCombatV2>(GetWorld()->GetGameState());
|
||||||
CombatSystem->EnemyBaseDamageMultiplier += EnemyDamageMultiplierDecreaseAmount;
|
CombatSystem->EnemyBaseDamageMultiplier += EnemyDamageMultiplierDecreaseAmount;
|
||||||
Super::OnExpiry(Character);
|
Super::OnExpiry(Character);
|
||||||
}
|
}
|
||||||
|
@ -21,7 +21,4 @@ public:
|
|||||||
virtual void Invoke(AActor* Character, float TimeOfExpiry) override;
|
virtual void Invoke(AActor* Character, float TimeOfExpiry) override;
|
||||||
virtual void OnExpiry(AActor* Character) override;
|
virtual void OnExpiry(AActor* Character) override;
|
||||||
virtual void OnEnemyTurn(AActor* Enemy, AActor* Character) override;
|
virtual void OnEnemyTurn(AActor* Enemy, AActor* Character) override;
|
||||||
|
|
||||||
protected:
|
|
||||||
ATurnBaseCombatV2* CombatSystem;
|
|
||||||
};
|
};
|
||||||
|
@ -5,12 +5,13 @@
|
|||||||
|
|
||||||
void UDamageDownPlayer::Invoke(AActor* Character, float TimeOfExpiry)
|
void UDamageDownPlayer::Invoke(AActor* Character, float TimeOfExpiry)
|
||||||
{
|
{
|
||||||
CombatSystem = Cast<ATurnBaseCombatV2>(GetWorld()->GetGameState());
|
ATurnBaseCombatV2* CombatSystem = Cast<ATurnBaseCombatV2>(GetWorld()->GetGameState());
|
||||||
CombatSystem->BaseDamageMultiplier -= PlayerDamageMultiplierDecreaseAmount;
|
CombatSystem->BaseDamageMultiplier -= PlayerDamageMultiplierDecreaseAmount;
|
||||||
}
|
}
|
||||||
|
|
||||||
void UDamageDownPlayer::OnExpiry(AActor* Character)
|
void UDamageDownPlayer::OnExpiry(AActor* Character)
|
||||||
{
|
{
|
||||||
|
ATurnBaseCombatV2* CombatSystem = Cast<ATurnBaseCombatV2>(GetWorld()->GetGameState());
|
||||||
CombatSystem->BaseDamageMultiplier += PlayerDamageMultiplierDecreaseAmount;
|
CombatSystem->BaseDamageMultiplier += PlayerDamageMultiplierDecreaseAmount;
|
||||||
Super::OnExpiry(Character);
|
Super::OnExpiry(Character);
|
||||||
}
|
}
|
||||||
|
@ -21,7 +21,4 @@ public:
|
|||||||
virtual void Invoke(AActor* Character, float TimeOfExpiry) override;
|
virtual void Invoke(AActor* Character, float TimeOfExpiry) override;
|
||||||
virtual void OnExpiry(AActor* Character) override;
|
virtual void OnExpiry(AActor* Character) override;
|
||||||
virtual void OnEnemyTurn(AActor* Enemy, AActor* Character) override;
|
virtual void OnEnemyTurn(AActor* Enemy, AActor* Character) override;
|
||||||
|
|
||||||
protected:
|
|
||||||
ATurnBaseCombatV2* CombatSystem;
|
|
||||||
};
|
};
|
||||||
|
@ -344,7 +344,7 @@ void ATurnBaseCombatV2::ExecuteCast(FString Combo)
|
|||||||
else if (Combo == "AI")
|
else if (Combo == "AI")
|
||||||
{
|
{
|
||||||
UStatusEffect* TempDamageDownStatusEffect = NewObject<UStatusEffect>(PlayerActor, DamageDownStatusEffect);
|
UStatusEffect* TempDamageDownStatusEffect = NewObject<UStatusEffect>(PlayerActor, DamageDownStatusEffect);
|
||||||
StatusSystem->AddStatusEffect(TempDamageDownStatusEffect, 1);
|
StatusSystem->AddStatusEffect(TempDamageDownStatusEffect, 1, true);
|
||||||
StatusEffects.Add(TempDamageDownStatusEffect);
|
StatusEffects.Add(TempDamageDownStatusEffect);
|
||||||
AddBattleLogMessage("Player Casted DamageDown");
|
AddBattleLogMessage("Player Casted DamageDown");
|
||||||
StatusTextBlock->SetColorAndOpacity(FSlateColor(FLinearColor(1.0f, 1.0f, 1.0f, 1.0f)));
|
StatusTextBlock->SetColorAndOpacity(FSlateColor(FLinearColor(1.0f, 1.0f, 1.0f, 1.0f)));
|
||||||
@ -789,7 +789,7 @@ void ATurnBaseCombatV2::EnemyTurn()
|
|||||||
else ChanceToMiss = 30;
|
else ChanceToMiss = 30;
|
||||||
if (FMath::RandRange(1, 100) > ChanceToMiss)
|
if (FMath::RandRange(1, 100) > ChanceToMiss)
|
||||||
{
|
{
|
||||||
if (IsBossBoolProperty->GetPropertyValue_InContainer(EnemyActor) && FMath::RandRange(1, 100) > 10)
|
if (IsBossBoolProperty->GetPropertyValue_InContainer(EnemyActor) && FMath::RandRange(1, 100) <= 10)
|
||||||
{
|
{
|
||||||
FOutputDeviceNull AR;
|
FOutputDeviceNull AR;
|
||||||
UStatusSystem* StatusSystem = Cast<UStatusSystem>(PlayerActor->GetComponentByClass(UStatusSystem::StaticClass()));
|
UStatusSystem* StatusSystem = Cast<UStatusSystem>(PlayerActor->GetComponentByClass(UStatusSystem::StaticClass()));
|
||||||
|
Loading…
Reference in New Issue
Block a user