这个游戏其实就是我们熟悉的贪食蛇,作者这里设计玩家操作的人物大概是吞食地板上的污垢,然后也像贪食蛇一样身体长大一节.
游戏所用到的图片大概是作者草草画出来的,感觉很粗糙,毕竟只是搞开发的,不是美工
上面有游戏的背景图,像一个网格的感觉,然后是菜单,游戏的主角分为头部和尾部图片.
然后进入游戏的时候需要一个开始的画面作为游戏的进入点
下面的类MrNomGame继承了AndroidGame类,显示游戏开始画面
package com.badlogic.androidgames.mrnom; import com.badlogic.androidgames.framework.Screen; import com.badlogic.androidgames.framework.impl.AndroidGame; public class MrNomGame extends AndroidGame { public Screen getStartScreen() { return new LoadingScreen(this); } }LoadingScreen作为Screen的一个子类,而Screen为一个抽像类
package com.badlogic.androidgames.framework; public abstract class Screen { protected final Game game; public Screen(Game game) { this.game = game; } public abstract void update(float deltaTime); public abstract void present(float deltaTime); public abstract void pause(); public abstract void resume(); public abstract void dispose(); }
package com.badlogic.androidgames.mrnom; import com.badlogic.androidgames.framework.Game; import com.badlogic.androidgames.framework.Graphics; import com.badlogic.androidgames.framework.Screen; import com.badlogic.androidgames.framework.Graphics.PixmapFormat; public class LoadingScreen extends Screen { public LoadingScreen(Game game) { super(game); } public void update(float deltaTime) { Graphics g = game.getGraphics(); Assets.background = g.newPixmap("background.png", PixmapFormat.RGB565); Assets.logo = g.newPixmap("logo.png", PixmapFormat.ARGB4444); Assets.mainMenu = g.newPixmap("mainmenu.png", PixmapFormat.ARGB4444); Assets.buttons = g.newPixmap("buttons.png", PixmapFormat.ARGB4444); Assets.help1 = g.newPixmap("help1.png", PixmapFormat.ARGB4444); Assets.help2 = g.newPixmap("help2.png", PixmapFormat.ARGB4444); Assets.help3 = g.newPixmap("help3.png", PixmapFormat.ARGB4444); Assets.numbers = g.newPixmap("numbers.png", PixmapFormat.ARGB4444); Assets.ready = g.newPixmap("ready.png", PixmapFormat.ARGB4444); Assets.pause = g.newPixmap("pausemenu.png", PixmapFormat.ARGB4444); Assets.gameOver = g.newPixmap("gameover.png", PixmapFormat.ARGB4444); Assets.headUp = g.newPixmap("headup.png", PixmapFormat.ARGB4444); Assets.headLeft = g.newPixmap("headleft.png", PixmapFormat.ARGB4444); Assets.headDown = g.newPixmap("headdown.png", PixmapFormat.ARGB4444); Assets.headRight = g.newPixmap("headright.png", PixmapFormat.ARGB4444); Assets.tail = g.newPixmap("tail.png", PixmapFormat.ARGB4444); Assets.stain1 = g.newPixmap("stain1.png", PixmapFormat.ARGB4444); Assets.stain2 = g.newPixmap("stain2.png", PixmapFormat.ARGB4444); Assets.stain3 = g.newPixmap("stain3.png", PixmapFormat.ARGB4444); Assets.click = game.getAudio().newSound("click.ogg"); Assets.eat = game.getAudio().newSound("eat.ogg"); Assets.bitten = game.getAudio().newSound("bitten.ogg"); Settings.load(game.getFileIO()); game.setScreen(new MainMenuScreen(game)); } public void present(float deltaTime) { } public void pause() { } public void resume() { } public void dispose() { } }
package com.badlogic.androidgames.mrnom; import com.badlogic.androidgames.framework.Pixmap; import com.badlogic.androidgames.framework.Sound; public class Assets { public static Pixmap background; public static Pixmap logo; public static Pixmap mainMenu; public static Pixmap buttons; public static Pixmap help1; public static Pixmap help2; public static Pixmap help3; public static Pixmap numbers; public static Pixmap ready; public static Pixmap pause; public static Pixmap gameOver; public static Pixmap headUp; public static Pixmap headLeft; public static Pixmap headDown; public static Pixmap headRight; public static Pixmap tail; public static Pixmap stain1; public static Pixmap stain2; public static Pixmap stain3; public static Sound click; public static Sound eat; public static Sound bitten; }
game.getGraphics().drawPixmap(Assets.background, 0, 0)
Assets.click.play(1);