package com.heavylead;
import com.google.inject.Guice;
import com.google.inject.Injector;
import com.heavylead.injection.HeavyLeadInjector;
import com.heavylead.views.interfaces.INavigator;
import com.jme.input.InputHandler;
import com.jme.input.MouseInput;
import com.jme.util.Timer;
import com.jmex.bui.BuiSystem;
import com.jmex.bui.PolledRootNode;
import org.lex.input.mouse.MouseManager;
import org.lex.input.mouse.component.CombinedMouse;
/**
* The Class HeavyLead.
*/
public final class HeavyLead {
/** The Constant _defaultCursor. */
private static final String DEFAULT_CURSOR = "defaultCursor";
/** The Constant _attackCursor. */
private static final String ATTACK_CURSOR = "attackCursor";
/** The Constant _selectCursor. */
private static final String SELECT_CURSOR = "selectCursor";
/**
* Private constructor.
*/
private HeavyLead() {
}
/**
* The main method.
* @param args the arguments
*/
public static void main(final String[] args) {
final Injector injector = Guice.createInjector(new HeavyLeadInjector());
final IHeavyLeadGame app = injector.getInstance(IHeavyLeadGame.class);
app.start();
final MouseManager mouseManager = new MouseManager(CombinedMouse.get());
mouseManager.setNativeMousePreferred(true);
MouseInput.get().setCursorVisible(true);
mouseManager.setCursor(DEFAULT_CURSOR,
"data/cursors/goldenarrow_v2/default.cursor");
mouseManager.setCursor(ATTACK_CURSOR,
"data/cursors/goldenarrow_v2/spinning.cursor");
mouseManager.setCursor(SELECT_CURSOR,
"data/cursors/goldenarrow_select/default.cursor");
mouseManager.useCursor(DEFAULT_CURSOR);
mouseManager.registerWithInputHandler(injector.getInstance(InputHandler.class));
BuiSystem.init(new PolledRootNode(Timer.getTimer(),
injector.getInstance(InputHandler.class)),
"/data/gbui/heavylead.bss");
final INavigator navigator = injector.getInstance(INavigator.class);
navigator.setInjector(injector);
navigator.displayMainMenu();
}
}
|