android打飞机游戏源代码

android打飞机游戏源代码

ID:36014325

大小:37.19 KB

页数:32页

时间:2019-04-29

android打飞机游戏源代码_第1页
android打飞机游戏源代码_第2页
android打飞机游戏源代码_第3页
android打飞机游戏源代码_第4页
android打飞机游戏源代码_第5页
资源描述:

《android打飞机游戏源代码》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、packagecom.pg;importandroid.graphics.Bitmap;importandroid.graphics.Canvas;importandroid.graphics.Paint;importandroid.view.KeyEvent;/***@authorHimi**/publicclassPlayer{//主角的血量与血量位图//默认3血privateint主角的血量=3;privateBitmap主角的血量位图;//主角的坐标以及位图publicint主角的坐标x,主角的坐标y;privateBitmap主角的位图;//

2、主角移动速度privateint主角移动速度=5;//主角移动标识(基础章节已讲解,你懂得)privatebooleanisUp,isDown,isLeft,isRight;//碰撞后处于无敌时间//计时器privateint无敌计时器=0;//因为无敌时间privateint无敌时间=60;//是否碰撞的标识位privateboolean是否碰撞;//主角的构造函数publicPlayer(BitmapbmpPlayer,BitmapbmpPlayerHp){this.主角的位图=bmpPlayer;this.主角的血量位图=bmpPlayerHp;

3、主角的坐标x=MySurfaceView.screenW/2-bmpPlayer.getWidth()/2;主角的坐标y=MySurfaceView.screenH-bmpPlayer.getHeight();}//主角的绘图函数publicvoiddraw(Canvascanvas,Paintpaint){//绘制主角//当处于无敌时间时,让主角闪烁if(是否碰撞){//每2次游戏循环,绘制一次主角if(无敌计时器%2==0){canvas.drawBitmap(主角的位图,主角的坐标x,主角的坐标y,paint);}}else{canvas.dra

4、wBitmap(主角的位图,主角的坐标x,主角的坐标y,paint);}//绘制主角血量for(inti=0;i<主角的血量;i++){canvas.drawBitmap(主角的血量位图,i*主角的血量位图.getWidth(),MySurfaceView.screenH-主角的血量位图.getHeight(),paint);}}//实体按键publicvoidonKeyDown(intkeyCode,KeyEventevent){if(keyCode==KeyEvent.KEYCODE_DPAD_UP){isUp=true;}if(keyCode==

5、KeyEvent.KEYCODE_DPAD_DOWN){isDown=true;}if(keyCode==KeyEvent.KEYCODE_DPAD_LEFT){isLeft=true;}if(keyCode==KeyEvent.KEYCODE_DPAD_RIGHT){isRight=true;}}//实体按键抬起publicvoidonKeyUp(intkeyCode,KeyEventevent){if(keyCode==KeyEvent.KEYCODE_DPAD_UP){isUp=false;}if(keyCode==KeyEvent.KEYCOD

6、E_DPAD_DOWN){isDown=false;}if(keyCode==KeyEvent.KEYCODE_DPAD_LEFT){isLeft=false;}if(keyCode==KeyEvent.KEYCODE_DPAD_RIGHT){isRight=false;}}//主角的逻辑publicvoidlogic(){//处理主角移动if(isLeft){主角的坐标x-=主角移动速度;}if(isRight){主角的坐标x+=主角移动速度;}if(isUp){主角的坐标y-=主角移动速度;}if(isDown){主角的坐标y+=主角移动速度;}/

7、/判断屏幕X边界if(主角的坐标x+主角的位图.getWidth()>=MySurfaceView.screenW){主角的坐标x=MySurfaceView.screenW-主角的位图.getWidth();}elseif(主角的坐标x<=0){主角的坐标x=0;}//判断屏幕Y边界if(主角的坐标y+主角的位图.getHeight()>=MySurfaceView.screenH){主角的坐标y=MySurfaceView.screenH-主角的位图.getHeight();}elseif(主角的坐标y<=0){主角的坐标y=0;}//处理无敌状态

8、if(是否碰撞){//计时器开始计时无敌计时器++;if(无敌计时器>=无敌时间){//无敌时

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。