Это мой первый опыт использования AndEngine, и когда я пытаюсь создать Rectangle, он падает прямо на эту строку. Я пытаюсь использовать Rectangles для кнопок для перемещения игрока влево или вправо. Я нашел учебник для кнопок: http://www.matim-dev.com/creating-leftright-game-controller-buttons.html. Я даже попытался использовать событие касания для сцены, и вместо этого он разбился. Я искал ответы в течение долгого времени, но все равно не мог найти ответа, поэтому теперь я полностью застрял. Любая помощь будет оценена.AndEngine, создающий прямоугольник, вызывает приложение
HUD controller = new HUD();
Rectangle left = new Rectangle(0, 0, (screenWidth/2), (screenHeight), getVertexBufferObjectManager()) // It crashes right on this line.
{
@Override
public boolean onAreaTouched(TouchEvent touchEvent, float X, float Y)
{
// Move left
if (touchEvent.isActionDown())
{
isLeftTouched = true;
}
if (touchEvent.isActionUp())
{
isLeftTouched = false;
player1.stop();
}
return true;
}
@Override
public void onManagedUpdate(float secondsElapsed)
{
if (isLeftTouched)
{
// Execute your actions.
player1.moveLeft();
}
super.onManagedUpdate(secondsElapsed);
}
};
Rectangle right = new Rectangle(screenWidth/2, 0, screenWidth/2, screenHeight, getVertexBufferObjectManager())
{
@Override
public boolean onAreaTouched(TouchEvent touchEvent, float X, float Y)
{
// Move right
if (touchEvent.isActionDown())
{
isRightTouched = true;
}
if (touchEvent.isActionUp())
{
isRightTouched = false;
player1.stop();
}
return true;
}
@Override
public void onManagedUpdate(float secondsElapsed)
{
if (isRightTouched)
{
// Execute your actions.
player1.moveRight();
}
super.onManagedUpdate(secondsElapsed);
}
};
controller.registerTouchArea(left);
controller.registerTouchArea(right);
controller.attachChild(left);
controller.attachChild(right);
camera.setHUD(controller);
Вот LogCat:
E/AndroidRuntime(2440): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.teej1410.glider/ com.teej1410.glider.MainActivity}: java.lang.NullPointerException
E/AndroidRuntime(2440): at com.teej1410.glider.MainActivity.createControllers(MainActivity.java:169)
E/AndroidRuntime(2440): at com.teej1410.glider.MainActivity.onCreateOther(MainActivity.java:132)
E/AndroidRuntime(2440): at com.teej1410.glider.MainActivity.onCreateEngineOptions(MainActivity.java: 51)
W/ActivityManager( 434): Force finishing
logcat, plz .... – VenomVendor