Spell card tweaks and wait mode

This commit is contained in:
Marco 2025-06-09 10:55:43 +02:00
commit 70d22b2be8
3 changed files with 72 additions and 44 deletions

View file

@ -23,6 +23,8 @@ public partial class ParallelPatternGroup : AttackPattern
//private int _currentPatternIndex = 0;
//private AttackPattern CurrentPattern => patternGroup.Patterns[_currentPatternIndex];
private double _progressTimer = 0;
private List<IPatternMachine> _patternMachines = [];
@ -39,6 +41,7 @@ public partial class ParallelPatternGroup : AttackPattern
public void UpdatePattern(double delta)
{
_progressTimer += delta;
foreach (var patternMachine in _patternMachines)
{
//if (!CurrentPattern.WaitForCompletion || _patternMachine.IsComplete())
@ -50,7 +53,13 @@ public partial class ParallelPatternGroup : AttackPattern
public bool IsComplete()
{
return _patternMachines.TrueForAll(x => x.IsComplete());
if (patternGroup.WaitForCompletion)
{
return _patternMachines.TrueForAll(x => x.IsComplete()) && _progressTimer >= patternGroup.Duration;
}
return _patternMachines.TrueForAll(x => x.IsComplete()) || _progressTimer >= patternGroup.Duration;
}
}