2
\$\begingroup\$

I am trying to define an AI behavior where if a conditional (MyCondition) is false, execute the task. I know I can do this as follows:

import myCondition?:"tech.otter.something.MyCondition" import otherTask:"tech.otter.something.OtherTask" root selector myCondition? # i.e. if !myCondition then otherTask otherTask 

Now I'd like to use the snazzy guard syntax like so:

root (myCondition?) otherTask 

The problem is that I really need otherTask to fire when the guard (myCondition?) is false. Is there a way to do this shy of defining a "MyInvertedCondition" task?

\$\endgroup\$

1 Answer 1

3
\$\begingroup\$

This can be achieved using decorators which can be read about here. I believe the syntax would be like this: (invert MyCondition).

If that doesn't work you can always use a subtree as your guard. The syntax would then be like this:

subtree name:"Invertedguard" invert MyCondition? ($Invertedguard) 
\$\endgroup\$

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.