项目-坦克大战学习-游戏结束

当boos受到伤害时游戏结束,游戏结束时我们需要将窗体全部绘制从别的画面,这样我们可以在游戏运行类中的update设置条件,在游戏运行类thread创建一个枚举类型定义是否游戏结束

public enum Game { play, over };//定义现在游戏运行状态

如果游戏没结束(play)或者游戏结束(over)运行不同的程序

if (game == Game.play)//如果没结束

{

duixiangweizhi.update(); //每帧调用集合

}

else if (game == Game.over) { duixiangweizhi.gameover(); }//如果结束调用绘制结束页面方法

我们需要在子弹类检测如果人机的子弹碰撞到boos那么就将游戏运行类的枚举类型修改为over

if (zd == zidanen.renji)//如果子弹是由人机发射出

{

if (duixiangweizhi.boospengzhuang(rec)!=null)

{

duixiangweizhi.boom(boomx, boomy);//爆炸特效

xiaohui = true;

tankthread.game = tankthread.Game.over;

}

}

然后定义一个可调用的方法,在游戏结束后绘制结束界面

首先定义一个画布变量获取到当前窗体画布

public static Graphics g=tankthread.g;

在在开始我们就将游戏运行类的画布变量获取到窗体画布了,所以这里直接赋值就可以

然后在方法中绘制游戏结束页面,顺便调整绘制位置保证结束页面在窗体中心

public static void gameover()//游戏结束

{

int x = 450 / 2 - Resources.GameOver.Width / 2;

int y =450/2-Resources.GameOver.Height / 2;

g.DrawImage(Resources.GameOver, x, y);//绘制结束页面

}

游戏结束

相关推荐
桌角的眼镜5 分钟前
Transformer学习笔记
笔记·学习
思成不止于此12 分钟前
MySQL 基础核心知识点全梳理:从入门到实战
数据库·笔记·学习·mysql
崇山峻岭之间33 分钟前
C++ Prime Plus 学习笔记028
c++·笔记·学习
我的xiaodoujiao1 小时前
使用 Python 语言 从 0 到 1 搭建完整 Web UI自动化测试学习系列 31--开源电商商城系统项目实战--加入购物车、提交订单测试场景
python·学习·测试工具·pytest
小菜鸟派大星1 小时前
电路学习(九)MOS管
学习·硬件·mos管·电路·电路仿真
点云SLAM1 小时前
Discrepancy 英文单词学习
人工智能·学习·英文单词学习·雅思备考·discrepancy·不一致、不协调·矛盾
立志成为大牛的小牛1 小时前
数据结构——五十三、处理冲突的方法——拉链法(王道408)
数据结构·学习·考研·算法
d111111111d2 小时前
锁相环是什么,为什么可以用来放大时钟频率,怎么做到的,还有预分频起,为什么可以进行分频和倍频?
笔记·stm32·单片机·嵌入式硬件·学习
YJlio2 小时前
Active Directory 工具学习笔记(10.3):AdExplorer 实战(三)— 配置与偏好、导出与安全
笔记·学习·安全
数据门徒2 小时前
《人工智能现代方法(第4版)》 第10章 知识表示 学习笔记
人工智能·笔记·学习