if let Some(resume) = self.resume.as_ref() {
match resume.tick(blackboard) {
NodeResult::Running(resume) => {
return NodeResult::Running(
Self {
resume: Some(resume),
child: self.child.clone(),
}
.arc(),
)
}
_ => {}
}
}
match self.child.tick(blackboard) {
NodeResult::Running(resume) => {
return NodeResult::Running(
Self {
resume: Some(resume),
child: self.child.clone(),
}
.arc(),
)
}
_ => {}
}
// Restart, cuz we never end
NodeResult::Running(Arc::new(Self {
child: self.child.clone(),
resume: None,
}))