Updated Combat to Make Combos Reversible
This commit is contained in:
parent
eda89672b4
commit
38d3378c5a
BIN
Content/Levels/Build.umap
(Stored with Git LFS)
BIN
Content/Levels/Build.umap
(Stored with Git LFS)
Binary file not shown.
@ -343,7 +343,7 @@ void ATurnBaseCombatV2::ExecuteCast(FString Combo)
|
|||||||
{
|
{
|
||||||
FOutputDeviceNull AR;
|
FOutputDeviceNull AR;
|
||||||
UStatusSystem* StatusSystem = Cast<UStatusSystem>(PlayerActor->GetComponentByClass(UStatusSystem::StaticClass()));
|
UStatusSystem* StatusSystem = Cast<UStatusSystem>(PlayerActor->GetComponentByClass(UStatusSystem::StaticClass()));
|
||||||
if (Combo == "PA")
|
if (Combo == "PA" || Combo == "AP")
|
||||||
{
|
{
|
||||||
UStatusEffect* TempThornsStatusEffect = NewObject<UStatusEffect>(PlayerActor, ThornsStatusEffect);
|
UStatusEffect* TempThornsStatusEffect = NewObject<UStatusEffect>(PlayerActor, ThornsStatusEffect);
|
||||||
StatusSystem->AddStatusEffect(TempThornsStatusEffect, 1, false);
|
StatusSystem->AddStatusEffect(TempThornsStatusEffect, 1, false);
|
||||||
@ -354,7 +354,7 @@ void ATurnBaseCombatV2::ExecuteCast(FString Combo)
|
|||||||
const FString Command3 = FString::Printf(TEXT("PlayStatusAnimation"));
|
const FString Command3 = FString::Printf(TEXT("PlayStatusAnimation"));
|
||||||
HUD->CallFunctionByNameWithArguments(*Command3, AR, nullptr, true);
|
HUD->CallFunctionByNameWithArguments(*Command3, AR, nullptr, true);
|
||||||
}
|
}
|
||||||
else if (Combo == "PI")
|
else if (Combo == "PI" || Combo == "IP")
|
||||||
{
|
{
|
||||||
UStatusEffect* TempDOTStatusEffect = NewObject<UStatusEffect>(PlayerActor, DOTStatusEffect);
|
UStatusEffect* TempDOTStatusEffect = NewObject<UStatusEffect>(PlayerActor, DOTStatusEffect);
|
||||||
StatusSystem->AddStatusEffect(TempDOTStatusEffect, 1, false);
|
StatusSystem->AddStatusEffect(TempDOTStatusEffect, 1, false);
|
||||||
@ -365,7 +365,7 @@ void ATurnBaseCombatV2::ExecuteCast(FString Combo)
|
|||||||
const FString Command3 = FString::Printf(TEXT("PlayStatusAnimation"));
|
const FString Command3 = FString::Printf(TEXT("PlayStatusAnimation"));
|
||||||
HUD->CallFunctionByNameWithArguments(*Command3, AR, nullptr, true);
|
HUD->CallFunctionByNameWithArguments(*Command3, AR, nullptr, true);
|
||||||
}
|
}
|
||||||
else if (Combo == "AI")
|
else if (Combo == "AI" || Combo == "IA")
|
||||||
{
|
{
|
||||||
UStatusEffect* TempDamageDownStatusEffect = NewObject<UStatusEffect>(PlayerActor, DamageDownStatusEffect);
|
UStatusEffect* TempDamageDownStatusEffect = NewObject<UStatusEffect>(PlayerActor, DamageDownStatusEffect);
|
||||||
StatusSystem->AddStatusEffect(TempDamageDownStatusEffect, 1, true);
|
StatusSystem->AddStatusEffect(TempDamageDownStatusEffect, 1, true);
|
||||||
@ -413,7 +413,7 @@ void ATurnBaseCombatV2::ExecuteCast(FString Combo)
|
|||||||
{
|
{
|
||||||
case true:
|
case true:
|
||||||
// Player Turn
|
// Player Turn
|
||||||
DamageEnemy(*ValidCombos.Find(Combo));
|
DamageEnemy(ValidCombos.Contains(Combo) ? *ValidCombos.Find(Combo) : *ValidCombos.Find(Combo.Reverse()));
|
||||||
OnPlayerTurn.Broadcast(PlayerActor, EnemyActor);
|
OnPlayerTurn.Broadcast(PlayerActor, EnemyActor);
|
||||||
break;
|
break;
|
||||||
case false:
|
case false:
|
||||||
@ -565,12 +565,14 @@ float ATurnBaseCombatV2::CalculateEscapePercentage() const
|
|||||||
|
|
||||||
bool ATurnBaseCombatV2::IsValidCombo(const FString& Combo) const
|
bool ATurnBaseCombatV2::IsValidCombo(const FString& Combo) const
|
||||||
{
|
{
|
||||||
return ValidCombos.Contains(Combo);
|
if (ValidCombos.Contains(Combo) || ValidCombos.Contains(Combo.Reverse())) return true;
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool ATurnBaseCombatV2::IsSpecialCombo(const FString& Combo) const
|
bool ATurnBaseCombatV2::IsSpecialCombo(const FString& Combo) const
|
||||||
{
|
{
|
||||||
return SpecialCombos.Contains(Combo);
|
if (SpecialCombos.Contains(Combo) || SpecialCombos.Contains(Combo.Reverse())) return true;
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
void ATurnBaseCombatV2::SwitchTurn()
|
void ATurnBaseCombatV2::SwitchTurn()
|
||||||
|
Loading…
Reference in New Issue
Block a user