Both OnExecute() and OnUpdate() of ImplementedAction_Multiplatform are to invoke Forward() that is doing some action.
So, the action can be invoked twice at 1 Tick() sometimes,
because ActionTask’s ExecuteAction() has both OnExecute() and OnUpdate() together for Status.Running.
I am using nodeCanvas for turn-based ai. For each turn, i call Tick() to do something such as moving 1 tile.
But, when that action changes not-running to running, the AI can move twice.
How can I solve this status? Of course, I can solve from my side of the program.
Before that, I want to know whether this is the implementation intention.
I think it is a kind of bug or mis-implementation.
This is actually a bug that was introduced due to a code refactoring. Thanks for pointing this to me.
To fix this, please simply delete the OnExecute method override completely, so that only OnUpdate is calling Forward().