behaviour-tree-test/modules/behaviour_nodes/control_nodes.h
Sara c13f8ff2df Add 'modules/behaviour_nodes/' from commit '2a4e00e6f1'
git-subtree-dir: modules/behaviour_nodes
git-subtree-mainline: c3f9669b10
git-subtree-split: 2a4e00e6f1
2026-03-13 12:58:46 +01:00

50 lines
1.3 KiB
C++

#pragma once
#include "behaviour_nodes/behaviour_composite.h"
#include "behaviour_nodes/behaviour_node.h"
#include "core/variant/variant.h"
class BehaviourSequence : public BehaviourComposite {
GDCLASS(BehaviourSequence, BehaviourComposite);
static void _bind_methods() {}
public:
PackedStringArray get_configuration_warnings() const override;
void execute() override;
BehaviourNode *get_next() override;
private:
int current{ -1 };
};
class BehaviourSelector : public BehaviourComposite {
GDCLASS(BehaviourSelector, BehaviourComposite);
static void _bind_methods() {}
public:
PackedStringArray get_configuration_warnings() const override;
void execute() override;
BehaviourNode *get_next() override;
private:
int current{ -1 };
};
class BehaviourRepeater : public BehaviourComposite {
GDCLASS(BehaviourRepeater, BehaviourComposite);
static void _bind_methods() {}
public:
PackedStringArray get_configuration_warnings() const override;
void execute() override;
BehaviourNode *get_next() override;
};
class BehaviourRepeatUntilFail : public BehaviourComposite {
GDCLASS(BehaviourRepeatUntilFail, BehaviourComposite);
static void _bind_methods() {}
public:
PackedStringArray get_configuration_warnings() const override;
void execute() override;
BehaviourNode *get_next() override;
};