本文整理汇总了Java中com.badlogic.gdx.ai.fsm.State类的典型用法代码示例。如果您正苦于以下问题:Java State类的具体用法?Java State怎么用?Java State使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
State类属于com.badlogic.gdx.ai.fsm包,在下文中一共展示了State类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: handleMessage
import com.badlogic.gdx.ai.fsm.State; //导入依赖的package包/类
@SuppressWarnings("unchecked")
@Override
public boolean handleMessage(Telegram msg) {
if (msg.message == MessageType.YOU_ARE_DISMANTLED.ordinal()) {
kill();
Vector3 p = Game.instance.activeIsland.pos;
ItemDrop i = new ItemDrop(Island.SIZE / 2 - 5, Island.SIZE / 4 * 3 + p.y + 1, Island.SIZE / 2, Item.get("YELLOW_CRYSTAL"), 1);
island.addEntity(i, false, false);
return true;
}
if (msg.message == MessageType.STRUCTURE_BROADCAST_HANDLED.ordinal()) {
requestedHumanStates.removeValue((State<Human>) msg.extraInfo, true);
}
return false;
}
示例2: changeState
import com.badlogic.gdx.ai.fsm.State; //导入依赖的package包/类
public <T extends State> GameEntity changeState(T state){
if(fsmC == null) fsmC = Mappers.fsm.get(this.entity);
if(fsmC != null && fsmC.stateMachine.getCurrentState() != state){
fsmC.stateMachine.changeState(state);
}
return this;
}
示例3: Structure
import com.badlogic.gdx.ai.fsm.State; //导入依赖的package包/类
public Structure(float x, float y, float z, String model) {
super(Math.round(x), Math.round(y), Math.round(z), model);
nodes = new Array<StructureNode>();
workers = new Array<Human>();
int width = (int) Math.ceil(boundingBox.getDimensions().x);
int depth = (int) Math.ceil(boundingBox.getDimensions().z);
nodes.add(new StructureNode(NodeType.target, -1, 0, Math.round(depth / 2)));
nodes.add(new StructureNode(NodeType.target, width, 0, Math.round(depth / 2)));
nodes.add(new StructureNode(NodeType.target, Math.round(width / 2), 0, -1));
nodes.add(new StructureNode(NodeType.target, Math.round(width / 2), 0, depth));
nodes.add(new StructureNode(NodeType.build, 0, 0, Math.round(depth / 2)));
nodes.add(new StructureNode(NodeType.build, width - 1, 0, Math.round(depth / 2)));
nodes.add(new StructureNode(NodeType.build, Math.round(width / 2), 0, 0));
nodes.add(new StructureNode(NodeType.build, Math.round(width / 2), 0, depth - 1));
inventory = new Inventory();
buildInventory = new NonStackingInventory(256 /* That should be enough... */);
costs = new ResourceList();
requestedHumanStates = new Array<State<Human>>();
handledHumanStates = new Array<State<Human>>();
tasks = new Array<Task>();
taskQueue = new Array<Task>();
working = true;
dimensions.x++;
dimensions.z++;
setBuilt(false);
}
示例4: broadcast
import com.badlogic.gdx.ai.fsm.State; //导入依赖的package包/类
public void broadcast(float delay, State<Human> requestedState, Object... params) {
Array<Object> array = new Array<Object>(params);
array.insert(0, this);
if (!requestedHumanStates.contains(requestedState, true)) requestedHumanStates.add(requestedState);
MessageDispatcher.getInstance().dispatchMessage(delay, this, null, MessageType.STRUCTURE_BROADCAST.ordinal(), new BroadcastPayload(requestedState, array.items));
}
示例5: changeState
import com.badlogic.gdx.ai.fsm.State; //导入依赖的package包/类
public void changeState(State<Human> newState, Object... params) {
previousStateParams.clear();
previousStateParams.addAll(stateParams);
stateParams.clear();
stateParams.addAll(params);
stateMachine.changeState(newState);
}
示例6: Entity
import com.badlogic.gdx.ai.fsm.State; //导入依赖的package包/类
public Entity(final GraphicsProcessor graphics, final PhysicsProcessor physics, final AudioProcessor audio,
final State<Entity> initialState) {
this.graphics = graphics;
this.physics = physics;
this.audio = audio;
stateMachine = new DefaultStateMachine<Entity>(this, initialState);
}
示例7: getCurrentState
import com.badlogic.gdx.ai.fsm.State; //导入依赖的package包/类
public State getCurrentState(){
if(fsmC == null) fsmC = Mappers.fsm.get(this.entity);
return fsmC == null? null : fsmC.stateMachine.getCurrentState();
}
示例8: changeState
import com.badlogic.gdx.ai.fsm.State; //导入依赖的package包/类
public void changeState (State<GameEntity> state) {
stateMachine.changeState(state);
}
示例9: Tatics
import com.badlogic.gdx.ai.fsm.State; //导入依赖的package包/类
private Tatics(State<Entity> entryState){
this.entryState = entryState;
}
示例10: changeState
import com.badlogic.gdx.ai.fsm.State; //导入依赖的package包/类
public void changeState (State<Entity> state) {
stateMachine.changeState(state);
}
示例11: getWorkerState
import com.badlogic.gdx.ai.fsm.State; //导入依赖的package包/类
public State<Human> getWorkerState() {
return workerState;
}
示例12: getState
import com.badlogic.gdx.ai.fsm.State; //导入依赖的package包/类
public State<Human> getState() {
return stateMachine.getCurrentState();
}
示例13: SyncedStateMachine
import com.badlogic.gdx.ai.fsm.State; //导入依赖的package包/类
public SyncedStateMachine(E owner, State<E> initialState) {
super(owner, initialState);
}
示例14: changeState
import com.badlogic.gdx.ai.fsm.State; //导入依赖的package包/类
@Override
public void changeState(State<E> newState) {
newStateEntered = false;
super.changeState(newState);
newStateEntered = true;
}
示例15: BroadcastPayload
import com.badlogic.gdx.ai.fsm.State; //导入依赖的package包/类
public BroadcastPayload(State<Human> state, Object... params) {
this.state = state;
this.params = params;
}