Example usage for com.badlogic.gdx.ai.btree.utils BehaviorTreeParser DEBUG_NONE

List of usage examples for com.badlogic.gdx.ai.btree.utils BehaviorTreeParser DEBUG_NONE

Introduction

In this page you can find the example usage for com.badlogic.gdx.ai.btree.utils BehaviorTreeParser DEBUG_NONE.

Prototype

int DEBUG_NONE

To view the source code for com.badlogic.gdx.ai.btree.utils BehaviorTreeParser DEBUG_NONE.

Click Source Link

Usage

From source file:com.badlogic.gdx.ai.tests.BehaviorTreeViewer.java

License:Apache License

@Override
public void create() {
    step = 0;//from   w  w  w . j a v  a 2s. c  om
    taskNodes = new ObjectMap<Task<Dog>, TaskNode>();
    BehaviorTreeParser<Dog> parser = new BehaviorTreeParser<Dog>(BehaviorTreeParser.DEBUG_NONE);
    BehaviorTree<Dog> tree = parser.parse(Gdx.files.internal("data/dog.tree"), null);
    dog = new Dog("Dog 1", tree);
    tree.addListener(new BehaviorTree.Listener<Dog>() {
        @Override
        public void statusUpdated(Task<Dog> task, Task.Status previousStatus) {
            TaskNode tn = taskNodes.get(task);
            tn.updateStatus(previousStatus, step);
        }

        @Override
        public void childAdded(Task<Dog> task, int index) {
            TaskNode parentNode = taskNodes.get(task);
            Task<Dog> child = task.getChild(index);
            addToTree(displayTree, parentNode, child, null, 0);
            displayTree.expandAll();
        }
    });
    KryoUtils.initKryo();
    skin = new Skin(Gdx.files.internal("data/uiskin.json"));

    treeStatus = SUSPENDED;

    runDelaySlider = new Slider(0, 5, 0.01f, false, skin);
    runDelaySlider.setValue(.5f);

    runButton = new TextButton("Run", skin);

    stepButton = new TextButton("Step", skin);

    loadButton = new TextButton("Load", skin);
    loadButton.setDisabled(true);

    saveButton = new TextButton("Save", skin);

    stepLabel = new Label(new StringBuilder(LABEL_STEP + step), skin);

    stage = new Stage(new ScreenViewport());

    Table table = new Table();
    table.row().height(20).fillX();
    table.add(runDelaySlider);
    table.add(runButton);
    table.add(stepButton);
    table.add(saveButton);
    table.add(loadButton);
    table.add(stepLabel);
    table.row();
    displayTree = new Tree(skin);

    redrawTree();

    table.add(displayTree).colspan(3).fillX().fillY().expand(true, true);

    stage.addActor(table);
    table.setFillParent(true);

    saveButton.addListener(new ChangeListener() {
        @Override
        public void changed(ChangeEvent event, Actor actor) {
            save();
            saved = true;
            loadButton.setDisabled(false);
        }
    });

    loadButton.addListener(new ChangeListener() {
        @Override
        public void changed(ChangeEvent event, Actor actor) {
            load();
        }
    });

    stepButton.addListener(new ChangeListener() {
        @Override
        public void changed(ChangeEvent event, Actor actor) {
            treeStatus = STEP; // step();
        }
    });

    runButton.addListener(new ChangeListener() {
        @Override
        public void changed(ChangeEvent event, Actor actor) {
            if (treeStatus == SUSPENDED) {
                treeStatus = RUNNING;
                delay = runDelaySlider.getValue(); // this makes it start immediately
                runButton.setText("Suspend");
                stepButton.setDisabled(true);
                saveButton.setDisabled(true);
                loadButton.setDisabled(true);
            } else {
                treeStatus = SUSPENDED;
                runButton.setText("Run");
                stepButton.setDisabled(false);
                saveButton.setDisabled(false);
                loadButton.setDisabled(!saved);
            }
        }
    });

    Gdx.input.setInputProcessor(stage);

    setScreen(this);
}

From source file:com.mygdx.entities.DynamicEntities.DogEntities.DogEntity.java

@Override
public void init(World world) {
    super.init(world);
    body.setLinearDamping(5.0f);/*w w  w .j av a  2 s. c  om*/

    //ai
    Reader reader = null;
    try {
        reader = Gdx.files.internal("ai/stella.tree").reader();
        BehaviorTreeParser<DogEntity> parser = new BehaviorTreeParser<DogEntity>(BehaviorTreeParser.DEBUG_NONE);
        bt = parser.parse(reader, this);
    } finally {
        StreamUtils.closeQuietly(reader);
    }

}

From source file:com.mygdx.entities.DynamicEntities.enemies.Enemy_TestMon.java

@Override
public void init(World world) {
    super.init(world);
    EnemyManager.add(this);

    //ai//  ww w.  j ava  2s.c om
    Reader reader = null;
    try {
        //read this file in resource manager
        reader = Gdx.files.internal("ai/patrol.tree").reader();
        BehaviorTreeParser<EnemyEntity> parser = new BehaviorTreeParser<EnemyEntity>(
                BehaviorTreeParser.DEBUG_NONE);
        bt = parser.parse(reader, this);
    } finally {
        StreamUtils.closeQuietly(reader);
    }
}

From source file:com.mygdx.entities.DynamicEntities.enemies.En_Goober.java

@Override
public void init(World world) {
    super.init(world);

    body.createFixture(attFd1).setUserData(sensordata);
    body.createFixture(attFd2).setUserData(sensordata);
    body.createFixture(attFd3).setUserData(sensordata);
    body.createFixture(attFd4).setUserData(sensordata);

    //ai//  w  ww . ja  v  a2 s . c o  m
    Reader reader = null;
    try {
        //read this file in resource manager
        reader = Gdx.files.internal("ai/enemies/en_goober2.tree").reader();
        BehaviorTreeParser<EnemyEntity> parser = new BehaviorTreeParser<EnemyEntity>(
                BehaviorTreeParser.DEBUG_NONE);
        bt = parser.parse(reader, this);
    } finally {
        StreamUtils.closeQuietly(reader);
    }
}