Pull Request: #9381
There’s 3 Ability Tasks:
- AbilityTask_WaitConfirm: This task will wait for the ability to be confirmed by the server.
- AbilityTask_WaitCancel: This task waits for the Cancel Input.
- AbilityTask_WaitConfirmCancel: This task waits for the targeting confirm and/or cancel.
The problem:
The AbilityTask_WaitConfirm and AbilityTask_WaitConfirmCancel tasks were in conflict because their names are too similar and not intuitive, causing confusion because there is already an AbilityTask_WaitCancel which is managed by Ability Cancel Input, and its name is similar to AbilityTask_WaitConfirm, but AbilityTask_WaitConfirm is managed by Server Confirmation and not by Ability Confirm Input. And as I said, the AbilityTask_WaitConfirmCancel is related to Targeting and not the Confirm/Cancel Input or the Server Confirmation.
There was also the intention to resolve this conflict, which was confirmed by this comment that exists in the “AbilityTask_WaitConfirmCancel.h”:
// Fixme: this name is conflicting with AbilityTask_WaitConfirm
// UAbilityTask_WaitConfirmCancel = Wait for Targeting confirm/cancel
// UAbilityTask_WaitConfirm = Wait for server to confirm ability activation
Figured this after lost some time trying to discover why the Confirm Input was not calling the OnConfirm from AbilityTask_WaitConfirm xD
The solution
- Rename the files, classes and their properties and add CoreRedirects to avoid code breaking.
I submitted a Pull Request with some changes and details here: Fix non-intuitive and conflicting names: GAS Ability Tasks (github.com)