Package com.teamjmonkey

Source Code of com.teamjmonkey.GameNameGoesHere

package com.teamjmonkey;

import com.jme3.app.SimpleApplication;
import com.jme3.app.StatsAppState;
import com.jme3.bullet.BulletAppState;
import com.jme3.font.BitmapFont;
import com.jme3.post.FilterPostProcessor;
import com.jme3.system.AppSettings;
import com.teamjmonkey.animation.AnimManager;
import com.teamjmonkey.appstates.BackgroundMusicAppState;
import com.teamjmonkey.appstates.GameAppState;
import com.teamjmonkey.appstates.MonkeyAppStateManager;
import com.teamjmonkey.appstates.PauseMenuAppState;
import com.teamjmonkey.controls.ControlManager;
import com.teamjmonkey.effects.EffectsManager;
import com.teamjmonkey.entity.EntityManager;
import com.teamjmonkey.file.FileManager;
import com.teamjmonkey.file.UserSettings;
import com.teamjmonkey.graphics.GraphicManager;
import com.teamjmonkey.graphics.MaterialManager;
import com.teamjmonkey.level.LevelManager;
import com.teamjmonkey.physics.PhysicsManager;
import com.teamjmonkey.sound.SoundManager;
import com.teamjmonkey.ui.UIManager;
import com.teamjmonkey.util.GameState;
import com.teamjmonkey.util.PreloadManager;
import java.util.logging.Level;
import java.util.logging.Logger;

public class GameNameGoesHere extends SimpleApplication {

    private static GameNameGoesHere thisApp;
    private UIManager uiManager;
    private FileManager fileManager;
    private LevelManager levelManager;
    private PreloadManager preloadManager;
    private ControlManager controlManager;
    private GraphicManager graphicManager;
    private MaterialManager materialManager;
    private BulletAppState bulletAppState;
    private EffectsManager effectsManager;
    private EntityManager entityManager;
    private UserSettings userSettings;
    private MonkeyAppStateManager monkeyAppStateManager;
    private PhysicsManager physicsManager;
    private SoundManager soundManager;
    private AnimManager animManager;
    private FilterPostProcessor fpp;

    public GameNameGoesHere() {
        super(new StatsAppState());
    }

    @Override
    public void simpleInitApp() {
        thisApp = this;

        fpp = new FilterPostProcessor(assetManager);

        // == Move a lot of these into the "initialise once" level === //
        bulletAppState = new BulletAppState();
        stateManager.attach(bulletAppState);

        // load needed managers now
        uiManager = new UIManager();

        fileManager = new FileManager(assetManager);
        effectsManager = new EffectsManager();
        controlManager = new ControlManager();
        preloadManager = new PreloadManager();
        graphicManager = new GraphicManager();
        materialManager = new MaterialManager();
        entityManager = new EntityManager();
        userSettings = new UserSettings();
        monkeyAppStateManager = new MonkeyAppStateManager();
        physicsManager = new PhysicsManager();
        soundManager = new SoundManager();
        animManager = new AnimManager();

        levelManager = new LevelManager();
        //bulletAppState.getPhysicsSpace().enableDebug(assetManager);

        uiManager.showMainMenu();
        inputManager.setCursorVisible(true);
        stateManager.detach(stateManager.getState(StatsAppState.class));
        stateManager.attach(new BackgroundMusicAppState(this));

        Logger.getLogger("de.lessvoid.nifty").setLevel(Level.SEVERE);
        Logger.getLogger("NiftyInputEventHandlingLog").setLevel(Level.SEVERE);
    }

    public PreloadManager getPreloadManager() {
        return preloadManager;
    }

    public static GameNameGoesHere getApp() {
        return thisApp;
    }

    public UIManager getUIManager() {
        return uiManager;
    }

    public LevelManager getLevelManager() {
        return levelManager;
    }

    public ControlManager getControlManager() {
        return controlManager;
    }

    public GraphicManager getGraphicManager() {
        return graphicManager;
    }

    public MaterialManager getMaterialManager() {
        return materialManager;
    }

    public BulletAppState getBulletAppState() {
        return bulletAppState;
    }

    public EntityManager getEntityManager() {
        return entityManager;
    }

    public EffectsManager getEffectsManager() {
        return effectsManager;
    }

    public FileManager getFileManager() {
        return fileManager;
    }

    public UserSettings getUserSettings() {
        return userSettings;
    }

    public MonkeyAppStateManager getMonkeyAppStateManager() {
        return monkeyAppStateManager;
    }

    public PhysicsManager getPhysicsManager() {
        return physicsManager;
    }

    public SoundManager getSoundManager() {
        return soundManager;
    }

    public AnimManager getAnimManager() {
        return animManager;
    }

    public AppSettings getSettings() {
        return settings;
    }

    @Override
    public void loseFocus() {
        //super.loseFocus();

        if (GameState.getGameState() == GameState.RUNNING) {
            stateManager.detach(monkeyAppStateManager.getAppState(GameAppState.class));
            stateManager.attach(monkeyAppStateManager.getAppState(PauseMenuAppState.class));
        }
    }

    @Override
    public void gainFocus() {
        //super.gainFocus();
    }

    public BitmapFont getFont() {
        return guiFont;
    }

    public FilterPostProcessor getFpp() {
        return fpp;
    }
}
TOP

Related Classes of com.teamjmonkey.GameNameGoesHere

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.