Я пытаюсь построить 2D-игру «Змея» в Android. На самом деле, я изучаю ее из книги Изучение Java путем создания игр для Android . Это действительно круто для начинающих. Кстати, я столкнулся с некоторой проблемой при создании этой игры. Я не понимаю, как добавить фоновое изображение или цвет. Мой код указан ниже:
public void drawGame() {
if (ourHolder.getSurface().isValid()) {
canvas = ourHolder.lockCanvas();
//Paint paint = new Paint();
canvas.drawColor(Color.WHITE);//the background
paint.setColor(Color.argb(255, 51, 0, 0));
paint.setTextSize(topGap/2);
canvas.drawText("Score: " + score + " Lives: "+lives+" Hi:" + hi, 10, topGap-6, paint);
//draw a border - 4 lines, top right, bottom , left
paint.setStrokeWidth(3);//4 pixel border
canvas.drawLine(1,topGap,screenWidth-1,topGap,paint);
canvas.drawLine(screenWidth-1,topGap,screenWidth-1,topGap+(numBlocksHigh*blockSize),paint);
canvas.drawLine(screenWidth-1,topGap+(numBlocksHigh*blockSize),1,topGap+(numBlocksHigh*blockSize),paint);
canvas.drawLine(1,topGap, 1,topGap+(numBlocksHigh*blockSize), paint);
//Draw the snake
canvas.drawBitmap(headBitmap, snakeX[0]*blockSize, (snakeY[0]*blockSize)+topGap, paint);
//Draw the body
for(int i = 1; i < snakeLength-1;i++){
canvas.drawBitmap(bodyBitmap, snakeX[i]*blockSize, (snakeY[i]*blockSize)+topGap, paint);
}
//draw the tail
canvas.drawBitmap(tailBitmap, snakeX[snakeLength-1]*blockSize, (snakeY[snakeLength-1]*blockSize)+topGap, paint);
//draw the apple
canvas.drawBitmap(appleBitmap, appleX*blockSize, (appleY*blockSize)+topGap, paint);
ourHolder.unlockCanvasAndPost(canvas);
}
}
И я также пытаюсь реализовать мою границу, чтобы змея могла пройти любую сторону границы и вернуться с другой стороны, как противоположная. Как змея, иди по правую сторону границы и возвращайся с левой стороны, не покидая жизни. Пожалуйста, помогите мне