active-logic / activelogic-cs

Behavior Trees and Case Logic for C#7
GNU Affero General Public License v3.0
106 stars 7 forks source link

RoR-enabled decorator may fail after ordered composite. #35

Closed eelstork closed 3 years ago

eelstork commented 3 years ago

Considering:

status Step() => Sequence()[ 
    and ? A : 
    and ? B : repeat] && Wait(1f);

In this and related cases, even if A and B return done immediately, the ordered sequence still requires 2 frames to complete. This will then introduce a discontinuity that resets the Wait decorator, potentially causing a freeze.

NOTE: for the repeat terminal see #36

eelstork commented 3 years ago

Pending #42, patched in 07b1474bca7d0d2fc484a2a5e98f1561c879031f