Java 类com.badlogic.gdx.ai.msg.Telegram 实例源码

项目:Inspiration    文件:DefaultStateMachine.java   
/** Handles received telegrams. The telegram is first routed to the current state. If the current state does not deal with the
 * message, it's routed to the global state's message handler.
 * 
 * @param telegram the received telegram
 * @return true if telegram has been successfully handled; false otherwise. */
@Override
public boolean handleMessage (Telegram telegram) {

    // First see if the current state is valid and that it can handle the message
    if (currentState != null && currentState.onMessage(owner, telegram)) {
        return true;
    }

    // If not, and if a global state has been implemented, send
    // the message to the global state
    if (globalState != null && globalState.onMessage(owner, telegram)) {
        return true;
    }

    return false;
}
项目:GdxDemo3D    文件:GameStage.java   
@Override
public boolean handleMessage(Telegram telegram) {
    switch (telegram.message) {
        case Constants.MSG_GUI_SET_DOG_BUTTON_TO_WHISTLE:
            setDogButton(whistleButton, (HumanCharacter) telegram.extraInfo);
            return true;
        case Constants.MSG_GUI_SET_DOG_BUTTON_TO_THROW:
            setDogButton(throwButton, (HumanCharacter) telegram.extraInfo);
            return true;
        case Constants.MSG_GUI_CLEAR_DOG_BUTTON:
            clearDogButton((HumanCharacter) telegram.extraInfo);
            return true;
        case Constants.MSG_GUI_UPDATE_DOG_BUTTON:
            updateDogButton((HumanCharacter) telegram.extraInfo);
            return true;
    }
    return false;
}
项目:GDXJam    文件:GUISystem.java   
@Override
public boolean handleMessage (Telegram msg) {
    TelegramMessage telegramMsg = TelegramMessage.values()[msg.message];
    switch (telegramMsg) {

    case SQUAD_INPUT_SELECTED:
        int index = (Integer)msg.extraInfo;
        setSelected(index, true);
        return true;

    case GUI_INSUFFICIENT_RESOURCES:
        if(resourceAlertTask.isScheduled())
            resourceAlertTask.cancel();
        Timer.schedule(resourceAlertTask, 0.0f, 0.15f, 5);
        return true;

    default:
        return false;
    }
}
项目:Vloxlands    文件:Structure.java   
@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;
}
项目:gdx-ai    文件:InterruptibleFlatTiledAStarTest.java   
@Override
public boolean handleMessage (Telegram telegram) {
    switch (telegram.message) {
    case PF_RESPONSE: // PathFinderQueue will call us directly, no need to register for this message
        MyPathFinderRequest pfr = (MyPathFinderRequest)telegram.extraInfo;
        if (PathFinderRequestControl.DEBUG) {
            @SuppressWarnings("unchecked")
            PathFinderQueue<FlatTiledNode> pfQueue = (PathFinderQueue<FlatTiledNode>)telegram.sender;
            System.out.println("pfQueue.size = " + pfQueue.size() + " executionFrames = " + pfr.executionFrames);
        }

        // Swap double buffer
        workPath = activePath;
        activePath = (TiledSmoothableGraphPath<FlatTiledNode>)pfr.resultPath;

        isActivePathSmoothed = pfr.smoothEnabled;

        // Release the request
        requestPool.free(pfr);
        break;
    }
    return true;
}
项目:gdx-ai    文件:DefaultStateMachine.java   
/** Handles received telegrams. The telegram is first routed to the current state. If the current state does not deal with the
 * message, it's routed to the global state's message handler.
 * 
 * @param telegram the received telegram
 * @return true if telegram has been successfully handled; false otherwise. */
@Override
public boolean handleMessage (Telegram telegram) {

    // First see if the current state is valid and that it can handle the message
    if (currentState != null && currentState.onMessage(owner, telegram)) {
        return true;
    }

    // If not, and if a global state has been implemented, send
    // the message to the global state
    if (globalState != null && globalState.onMessage(owner, telegram)) {
        return true;
    }

    return false;
}
项目:nhglib    文件:AssetStateIdle.java   
public AssetStateIdle() {
    MessageManager.getInstance().addListener(new Telegraph() {
        @Override
        public boolean handleMessage(Telegram msg) {
            startGcTask();
            return true;
        }
    }, AssetsStates.ASSETS_GC);
}
项目:Inspiration    文件:PathFinderQueue.java   
@Override
public boolean handleMessage (Telegram telegram) {
    @SuppressWarnings("unchecked")
    PathFinderRequest<N> pfr = (PathFinderRequest<N>)telegram.extraInfo;
    pfr.client = telegram.sender; // set the client to be notified once the request has completed
    pfr.status = PathFinderRequest.SEARCH_NEW; // Reset status
    pfr.statusChanged = true; // Status has just changed
    pfr.executionFrames = 0; // Reset execution frames counter
    requestQueue.store(pfr);
    return true;
}
项目:GdxDemo3D    文件:DogCharacter.java   
@Override
public boolean handleMessage(Telegram telegram) {
    switch (telegram.message) {
        case Constants.MSG_DOG_LETS_PLAY:
            humanWantToPlay = true;
            stickThrown = false;
            break;
        case Constants.MSG_DOG_LETS_STOP_PLAYING:
            humanWantToPlay = false;
            break;
        case Constants.MSG_DOG_HUMAN_IS_DEAD:
            humanIsDead = true;
            humanWantToPlay = false;
            alreadyCriedForHumanDeath = false;
            break;
        case Constants.MSG_DOG_HUMAN_IS_RESURRECTED:
            humanIsDead = false;
            alreadyCriedForHumanDeath = false;
            break;
        case Constants.MSG_DOG_STICK_THROWN:
            stickThrown = true;
            break;
    }
    // Update GUI buttons if the dog's owner is selected
    if (this.human != null && this.human.selected) {
        MessageManager.getInstance().dispatchMessage(Constants.MSG_GUI_UPDATE_DOG_BUTTON, this.human);
    }
    return true;
}
项目:GDXJam    文件:ConstructionSystem.java   
@Override
public boolean handleMessage (Telegram msg) {
    TelegramMessage telegramMsg = TelegramMessage.values()[msg.message];
    switch (telegramMsg) {

    case CONSTRUCT_UNIT_REQUEST:
        Entity squad = (Entity)msg.extraInfo;
        constructUnit(squad);
        return true;

    default:
        return false;
    }

}
项目:ninja-rabbit    文件:NinjaRabbitGraphicsProcessor.java   
@Override
public boolean handleMessage(final Telegram msg) {
    Entity character = (Entity) msg.extraInfo;
    character.getBody().setTransform(RESPAWN_POSITION, character.getBody().getAngle());
    character.changeState(NinjaRabbitState.IDLE);
    character.setDirection(Direction.RIGHT);
    return true;
}
项目:ninja-rabbit    文件:LevelPlayerStatusProcessor.java   
@Override
public boolean handleMessage(final Telegram msg) {
    getStatus().setLevel((byte) (getStatus().getLevel() + 1));
    getStatus().setTime(PlayerStatus.DEFAULT_TIME);
    MessageManager.getInstance().dispatchMessage(this, MessageType.BEGIN_LEVEL.code());
    return true;
}
项目:ninja-rabbit    文件:NinjaRabbitPlayerStatusProcessor.java   
@Override
public boolean handleMessage(final Telegram msg) {
    if (msg.message == MessageType.COLLECTED.code()) {
        getStatus().setCollectibles((short) (getStatus().getCollectibles() + 1));
        getStatus().setScore(getStatus().getScore() + COLLECTIBLE_POINTS);
    } else if (msg.message == MessageType.DEAD.code()) {
        if (getStatus().getLives() > 0) {
            getStatus().setLives((short) (getStatus().getLives() - 1));
        }
        System.out.println("Dead received!");
    }
    return true;
}
项目:ninja-rabbit    文件:NinjaRabbitGame.java   
@Override
public boolean handleMessage(final Telegram msg) {
    if (msg.message == MessageType.RESET.code()) {
        reset();
    } else if (msg.message == MessageType.DEAD.code()) {
        restartCurrentLevel();
    } else if (msg.message == MessageType.BEGIN_LEVEL.code()) {
        beginNextLevel();
    }
    return false;
}
项目:ninja-rabbit    文件:LevelAudioProcessor.java   
@Override
public boolean handleMessage(final Telegram msg) {
    if (msg.message == MessageType.GAME_OVER.code()) {
        theme.stop();
        gameOverMusic.play();
    } else if (msg.message == MessageType.EXIT.code()) {
        theme.stop();
        exitMusic.play();
    }
    return true;
}
项目:gdx-ai    文件:TelegramProviderTest.java   
@Override
public boolean handleMessage (Telegram msg) {
    // build a new house
    if (houses.size <= 10) {
        houses.add(new House(this));
    }
    return false;
}
项目:gdx-ai    文件:TelegramProviderTest.java   
@Override
public boolean handleMessage (Telegram msg) {
    if (citizens.size < 3) {
        // new child
        Gdx.app.log(toString(), "We're having a baby!");
        citizens.add(new Citizen(this));
    }
    return false;
}
项目:gdx-ai    文件:TelegramProviderTest.java   
@Override
public boolean handleMessage (Telegram msg) {
    Citizen citizen = (Citizen)msg.extraInfo;
    // greet only if not in the same house
    if (this.house.id != citizen.house.id) {
        Gdx.app.log(toString(), "Hi " + citizen + ", I'm your new neighbour");
    }
    return false;
}
项目:gdx-ai    文件:MessageTimerTest.java   
@Override
public boolean handleMessage (Telegram msg) {
    this.msgCounter = (Integer)msg.extraInfo;
    this.msgTimestamp = msg.getTimestamp();
    if (timerEnabledButton.isChecked()) {
        float lag = GdxAI.getTimepiece().getTime() - msg.getTimestamp();
        lag -= (int)lag; // take the decimal part only (in case the lag is > 1)
        float delay = 1f - lag;
        sendMessage(delay, msgCounter + 1);
    }
    return true;
}
项目:gdx-ai    文件:InterruptibleHierarchicalTiledAStarTest.java   
@Override
public boolean handleMessage (Telegram telegram) {
    switch (telegram.message) {
    case PF_RESPONSE: // PathFinderQueue will call us directly, no need to register for this message
        if (PathFinderRequestControl.DEBUG) {
            @SuppressWarnings("unchecked")
            PathFinderQueue<HierarchicalTiledNode> pfQueue = (PathFinderQueue<HierarchicalTiledNode>)telegram.sender;
            System.out.println("pfQueue.size = " + pfQueue.size());
        }
        MyPathFinderRequest pfr = (MyPathFinderRequest)telegram.extraInfo;
        TiledSmoothableGraphPath<HierarchicalTiledNode> path = paths[pfr.pathIndex];
        int n = path.getCount();
        if (n > 0 && pfr.pathFound && pfr.endNode != path.get(n - 1)) {
            pfr.startNode = path.get(n - 1);
            if(pfr.pathIndex + 1 < paths.length) {
                pfr.pathIndex++;
            }
            pfr.resultPath = paths[pfr.pathIndex];
            pfr.changeStatus(PathFinderRequest.SEARCH_NEW);
            numPaths = pfr.pathIndex;
        } else {
            requestPool.free(pfr);
            numPaths = pfr.pathIndex + 1;
        }
        break;
    }
    return true;
}
项目:gdx-ai    文件:PathFinderQueue.java   
@Override
public boolean handleMessage (Telegram telegram) {
    @SuppressWarnings("unchecked")
    PathFinderRequest<N> pfr = (PathFinderRequest<N>)telegram.extraInfo;
    pfr.client = telegram.sender; // set the client to be notified once the request has completed
    pfr.status = PathFinderRequest.SEARCH_NEW; // Reset status
    pfr.statusChanged = true; // Status has just changed
    pfr.executionFrames = 0; // Reset execution frames counter
    requestQueue.store(pfr);
    return true;
}
项目:gdxjam-ugg    文件:FSMComponent.java   
@Override
public boolean handleMessage (Telegram msg) {
    return stateMachine.handleMessage(msg);
}
项目:nhglib    文件:EngineStateStart.java   
@Override
public boolean onMessage(NhgEntry entity, Telegram telegram) {
    return false;
}
项目:nhglib    文件:EngineStateRunning.java   
@Override
public boolean onMessage(NhgEntry entity, Telegram telegram) {
    return false;
}
项目:nhglib    文件:EngineStateClosing.java   
@Override
public boolean onMessage(NhgEntry entity, Telegram telegram) {
    return false;
}
项目:nhglib    文件:EngineStateNotInitialized.java   
@Override
public boolean onMessage(NhgEntry entity, Telegram telegram) {
    return false;
}
项目:nhglib    文件:EngineStatePaused.java   
@Override
public boolean onMessage(NhgEntry entity, Telegram telegram) {
    return false;
}
项目:nhglib    文件:EngineStateInitialized.java   
@Override
public boolean onMessage(NhgEntry entity, Telegram telegram) {
    return false;
}
项目:nhglib    文件:AssetStateLoading.java   
@Override
public boolean onMessage(Assets entity, Telegram telegram) {
    return false;
}
项目:nhglib    文件:AssetStateIdle.java   
@Override
public boolean onMessage(Assets entity, Telegram telegram) {
    return false;
}
项目:Pacman_libGdx    文件:GhostAgent.java   
@Override
public boolean handleMessage(Telegram msg) {
    return stateMachine.handleMessage(msg);
}
项目:Pacman_libGdx    文件:PlayerAgent.java   
@Override
public boolean handleMessage(Telegram msg) {
    return stateMachine.handleMessage(msg);
}
项目:GdxDemo3D    文件:HumanCharacter.java   
@Override
public boolean onMessage(HumanCharacter entity, Telegram telegram) {
    return false;
}
项目:GDXJam    文件:FSMComponent.java   
@Override
public boolean handleMessage (Telegram msg) {
    return stateMachine.handleMessage(msg);
}
项目:Vloxlands    文件:Entity.java   
@Override
public boolean handleMessage(Telegram msg) {
    return false;
}
项目:Vloxlands    文件:Human.java   
@Override
public boolean handleMessage(Telegram msg) {
    return stateMachine.handleMessage(msg);
}
项目:Boogie    文件:MainScreen.java   
@Override
public boolean handleMessage(Telegram arg0) {
    return uiMachine.handleMessage(arg0);
}
项目:Boogie    文件:MainScreen.java   
@Override
public boolean handleMessage(Telegram msg) {
    // TODO Auto-generated method stub
    return false;
}
项目:ninja-rabbit    文件:CollectibleRenderer.java   
@Override
public boolean handleMessage(final Telegram msg) {
    Collectible collectible = (Collectible) msg.extraInfo;
    removed.add(collectible);
    return true;
}
项目:ninja-rabbit    文件:LevelGraphicsProcessor.java   
@Override
public boolean handleMessage(final Telegram msg) {
    renderGameOver = msg.message == MessageType.GAME_OVER.code();
    return true;
}