一款启动界面加加上滚动背景的 打飞机游戏
public class MySurfaceView extends SurfaceView implements Callback, Runnable {
private SurfaceHolder shf;//放映//定义一个投影
private Paint paint;//画笔
private Canvas canvas;//画布
private Thread th;//线程定义
private boolean flag;//线程进入条件
//设置屏幕宽高 静态的 int的
public static int screenW,screenH;
private Bitmap btmpBackGround;//游戏背景
private GameBj1 backGround;//将类进行定义。继承 声明一个滚动游戏背景对象。
public static int xiaomie=0;//提示记录击毁多少敌机
private Resources res=this.getResources();//声明一个resources实例便于加载图片
//定义 静态的 常量
public static final int GAME_MENU=0;//游戏菜单
public static final int GAME_ING=1;//游戏中
public static final int GAME_WIN=2;//游戏胜利
public static final int GAME_LOST=3;//游戏失败
public static final int GAME_PAUSE=-1;//游戏暂停
public static int gameState=GAME_MENU;//当前游戏状态(默认初始在游戏菜单界面)
private Bitmap bmpmenu;//菜单背景
private GameMenu gamemenu;//声明一个菜单对象
private Bitmap bmpButton;//游戏开始按钮
private Bitmap bmpButtonPress;//游戏开始被点击按钮
public static player player;//声明主角对象
private Matrix matrix=new Matrix();//定义矩阵以便变换
private Context context;
private Bitmap bmpplayer;//游戏主角飞机
private Bitmap bmpplayerHp;//主角飞机血量
private Bitmap bmpEnemyDuck;//怪物鸭子
private Bitmap bmpEnemyFly;//怪物苍蝇
private Vector<Enemy>vcEnemy;//声明一个敌机容器
private int createEnergyTime=50;//每次生成敌机的时间(毫秒)
private int count;//计数器
//敌人数组:1和2表示敌机的种类,-1表示Boss //二维数组的每一维都是一组怪物
private int enemyArray[][]={{1,2},{1,1},{1,3,1,2},{2,1,3},{1,2},{1},{1,1,2,1},
{1,2},{1,1,2},{3,1,2},{2,3,1,2},{3,2,2},{1,3},{1,2,2},{1,2,2,1},{2,1,2,1},
{ 3, 1, 3 }, { 2, 2 }, { 1, 2 }, { 2, 2 }, { 1, 3, 1, 1 }, { 2, 1 },{1,3,2},
{1,3,2,1},{2,3,2,1},{1,3,2,2},{3,1,3,1},{2,1},{3,3,2,1},{1,3,2,1},{2,1,2,1},
{1,3,2,1},{2,1,1,1},{1,1,2,2},{3,2,3,1},{-1}};
private int enemyArraylndex;//当前取出一维数组的下标
private Random random;//随机库,为创建的敌机赋予随即坐标
private boolean isBOSS;//是否出现Boss标识位 默认系统赋初值是false
public static Bitmap bmpBullet;//子弹
public static Bitmap bmpEnemyBullet;//敌机子弹
public static Bitmap bmpBossBullet;//Boss子弹
private Vector<BulletBoos1>cvbtbs;//敌机子弹容器
private int countEnemyByllet;//添加子弹的计数器
private Vector<BulletBoos1>cvbtbsPlayer;//主角(自己)子弹容器
private int countPlayerBullet;//添加主角(自己)子弹的计数器
public static Vector<BulletBoos1>cvbtbsBoss;//Boss的子弹容器
private Bitmap bmpBoom;////爆炸效果
private Bitmap bmpBoosBoom;////BOOS爆炸效果
private Vector<BOOM>vcBoom;//定义爆炸容器
//*******Boss处理
private Bitmap bmpEnemyBoos;//怪物猪头Boos
public static Boss boss;//声明Boss
private Bitmap bmpGameWin;//游戏胜利背景
private Bitmap bmpGameLost;//游戏失败背景
private Sound sound;//音乐类
由于代码过于太长 所以我 上传了 有需要的 请下载
这款 程序 是话费我 将近20天每日没有夜的制作 并且 非常适合初学者 因为我的代码每一句都有注释 没有看不懂的程序 只有不细心学习的人
下载地址是 :http://download.csdn.net/detail/xiyiyindie/9449331