Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
2b4053c
Beginnings of general queue implementation
Packetdancer Sep 27, 2024
137bc26
Further work on bound queues.
Packetdancer Sep 27, 2024
a5f9c92
Convert abilities over to using the new bound operations queue.
Packetdancer Sep 27, 2024
b38d417
Refactor to generalize ability queue processing
Packetdancer Sep 27, 2024
9a9828f
Convert effects to bound queue
Packetdancer Sep 28, 2024
58bc8d1
Refactor and cleanup
Packetdancer Sep 28, 2024
5ff8418
A little more refactoring
Packetdancer Sep 28, 2024
935db5d
Support server-auth effects queued via GMC moves.
Packetdancer Sep 28, 2024
ac58d82
Ensure that Queue-via-GMC effects work in standalone as well.
Packetdancer Sep 28, 2024
bd5aa45
Queue rework and cleanup finished!
Packetdancer Sep 29, 2024
cc707ef
Last few tweaks to the queue setup.
Packetdancer Sep 29, 2024
a49cbd8
Further queue refactor and cleanup.
Packetdancer Sep 29, 2024
732cbbe
Add effect handles, so that PredictedQueued works right.
Packetdancer Sep 30, 2024
8369933
Small cleanup on effect handle expiry.
Packetdancer Oct 3, 2024
e6b13a6
Correct desync for server-auth queue.
Packetdancer Oct 4, 2024
d298342
Ensure we don't use the same ID if queuing two server-auth things in …
Packetdancer Oct 8, 2024
f207ab0
Fix for Reznok's two-effects-in-one-frame issue.
Packetdancer Oct 9, 2024
28e42e1
Correct issue with 2+ PredictedQueued operations in one tick, or 3+ S…
Packetdancer Oct 11, 2024
83eee31
merge
reznok Nov 21, 2024
f188a79
Fix off-by-one on server auth effect tick
reznok Nov 21, 2024
2de9ba5
Fix a task ticking bug when multiple tasks happened in a row
reznok Nov 21, 2024
f0ed573
Fix:Add SourceComponent references to effect applications
reznok Nov 21, 2024
be40a96
Add a bool to EffectData to preserve multiple instances of granted tags
reznok Nov 21, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 8 additions & 6 deletions Source/GMCAbilitySystem/Private/Ability/GMCAbility.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -59,18 +59,20 @@ void UGMCAbility::AncillaryTick(float DeltaTime){

void UGMCAbility::TickTasks(float DeltaTime)
{
for (const TPair<int, UGMCAbilityTaskBase* >& Task : RunningTasks)
for (int i=0; i < RunningTasks.Num(); i++)
{
if (Task.Value == nullptr) {continue;}
Task.Value->Tick(DeltaTime);
UGMCAbilityTaskBase* Task = RunningTasks[i];
if (Task == nullptr) {continue;}
Task->Tick(DeltaTime);
}
}

void UGMCAbility::AncillaryTickTasks(float DeltaTime){
for (const TPair<int, UGMCAbilityTaskBase* >& Task : RunningTasks)
for (int i=0; i < RunningTasks.Num(); i++)
{
if (Task.Value == nullptr) {continue;}
Task.Value->AncillaryTick(DeltaTime);
UGMCAbilityTaskBase* Task = RunningTasks[i];
if (Task == nullptr) {continue;}
Task->AncillaryTick(DeltaTime);
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,11 +24,14 @@ void UGMCAbilityTask_WaitForInputKeyPress::Activate()
{
UEnhancedInputComponent* const InputComponent = GetEnhancedInputComponent();

const FEnhancedInputActionEventBinding& Binding = InputComponent->BindAction(
Ability->AbilityInputAction, ETriggerEvent::Started, this,
&UGMCAbilityTask_WaitForInputKeyPress::OnKeyPressed);
if (InputComponent)
{
const FEnhancedInputActionEventBinding& Binding = InputComponent->BindAction(
Ability->AbilityInputAction, ETriggerEvent::Started, this,
&UGMCAbilityTask_WaitForInputKeyPress::OnKeyPressed);

InputBindingHandle = Binding.GetHandle();
InputBindingHandle = Binding.GetHandle();
}
}
else
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ void UGMCAbilityTask_WaitForInputKeyRelease::Activate()

UEnhancedInputComponent* const InputComponent = GetEnhancedInputComponent();

if (Ability->AbilityInputAction != nullptr)
if (Ability->AbilityInputAction != nullptr && InputComponent != nullptr)
{
FEnhancedInputActionEventBinding& Binding = InputComponent->BindAction(
Ability->AbilityInputAction, ETriggerEvent::Completed, this,
Expand Down
Loading