Я начал использовать Rokon для создания графической части своей игры, но когда она была закончена, у меня возникли большие проблемы с созданием системы меню и выдачей ей предупреждений. Обескураженный, я начал все заново без игрового движка и сделал красивый интерфейс. Когда пользователь нажимает кнопку «Запустить игру», я хочу запустить Rokon, чтобы загрузить созданную мной графику, но я перепробовал все, что мог придумать, и не могу заставить ее закрыться. Я только что сделал базовый вызов, чтобы создать новый GameEngine, поскольку GameEngine делает все остальное с новым видом и остальным. Вот код в моей MainActivity (не обращайте внимания на сложность, сейчас я просто хочу загрузить одну сложность):
protected void startGame(int difficulty) {
// TODO Auto-generated method stub
Context context = getApplicationContext();
int duration = Toast.LENGTH_SHORT;
Toast toast = Toast.makeText(context, "Game Started!" + "\n" + "Difficulty set to: " + difficulty, duration);
toast.show();
switch(difficulty){
case 1:
{
//Code to start Game on Easy
GameEngine easyGame = new GameEngine();
easyGame.onCreate();
Вот код Rokon GameEngine, который я пытаюсь использовать, я обязательно добавил библиотеку и другие каталоги, которые он ранее использовал ...
import com.stickycoding.rokon.DrawPriority;
import com.stickycoding.rokon.RokonActivity;
public class GameEngine extends RokonActivity {
public static final float GAME_WIDTH = 320f;
public static final float GAME_HEIGHT = 480f;
private GameScene scene;
public void onCreate() {
debugMode();
forceFullscreen();
forcePortrait();
setGameSize(GAME_WIDTH, GAME_HEIGHT);
setDrawPriority(DrawPriority.PRIORITY_VBO);
setGraphicsPath("textures/");
createEngine();
}
public void onLoadComplete() {
Textures.load();
setScene(scene = new GameScene());
}
}
Может быть, они просто не совместимы друг с другом, и я должен с самого начала придерживаться использования Rokon, но должен быть способ заставить это работать.
Я много играл с кодом и отладчиком, пытаясь выяснить, какая часть кода не будет работать, и ошибка возникает, когда я вызываю createEngine (); если это вообще поможет ... Некоторый другой код можно закомментировать, чтобы заставить его работать, поэтому я сузил его до этой строки.