潜艇来袭(Qt官方案例-2维动画游戏)

一、游戏介绍

1 开始界面

启动程序,进入开始界面。

2 开始新游戏

点击菜单:File》New Game (或者Ctrl+N)进入新游戏。

开始新游戏之后,会有一个海底的潜艇,和水面舰艇对战。

计算机:自动控制潜艇。海底潜艇会隔段时间发射一枚鱼雷(从水下垂直向水面移动,看起来像一个小火箭);潜艇会不断的左右来回游动(往右走到头就折返再往左走到头,如此反复);

玩家:手动控制水面舰艇。玩家需要手动按键盘才会发射反潜导弹。其中,按上方向键往右侧发射一个反潜导弹;按下方向键向左侧发射一个反潜导弹;

3 游戏结束

如果玩家唯一的这艘水面舰艇被鱼雷击中,责游戏结束。

4 游戏过关

如果玩家击中了一艘潜艇,会获得一定分数。如果击中多艘潜艇会完成一关,进入下一关。下一关的潜艇数量会更多,速度会更快,发射的鱼雷也会更多。

二、设计实现

1 基本类型设计

1)水面舰艇

2)潜艇

3)

1 程序初始化

Qt前驱技术点

Qt状态系统

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/98280.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

zabbix配置钉钉告警、和故障自愈

钉钉告警python脚本 cat python20 #!/usr/bin/python3 #coding:utf-8 import requests,json,sys,os,datetime # 机器人的Webhook地址 webhook"钉钉" usersys.argv[1] textsys.argv[3] data{"msgtype": "text","text": {"conten…

MetInfo5.0文件包含漏洞

MetInfo历史版本与文件 环境在这里下载,使用phpstudy搭建 我们来看到这个index.php,如下图所示,其中定义了fmodule变量与module变量,其中require_once语句表示将某个文件引入当前文件,在这个代码中,通过r…

matlab函数 状态空间系统ss、能控性矩阵ctrb、矩阵的秩rank、能控标准型canon、零极点配置place、系统极点pole等函数(线性定常系统)

matlab函数 能控性矩阵ctrb、能控标准型canon、零极点配置place 第一章,线性定常系统 ss 如果已知线性定常系统的ABCD四个矩阵,可以得到状态空间系统 其他更具体的用法请直接看帮助文档。 用法:ss(A,B,C,D) 假如 可以输入 A [-1.5,-2…

Vue——vue3中的ref和reactive数据理解以及父子组件之间props传递的数据

ref()函数 这是一个用来接受一个内部值,返回一个响应式的、可更改的 ref 对象,此对象只有一个指向其内部值的属性 .value。 作用:创建一个响应式变量,使得某个变量在发生改变时可以同步发生在页面上。 模板语句中使用这个变量时…

模拟实现list

目录 list的实现结构节点的实现迭代器的实现第一个模板参数T第二个模板参数Ref第三个模板参数Ptr 实现list中的接口函数插入和删除赋值重载和拷贝构造析构函数 总结 list的实现结构 STL库中的list的结构是双向循环链表,所以我们这里也实现一个双向循环链表 我们这…

万里路,咫尺间:汽车与芯片的智能之遇

目前阶段,汽车产业有两个最闪耀的关键词,就是智能与低碳。 在践行双碳目标与产业智能化的大背景下,汽车已经成为了能源技术、交通技术、先进制造以及通信、数字化、智能化技术的融合体。汽车的产品形态与产业生态都在发生着前所未有的巨大变革…

Python 快速输出接下来几个月的月末日期

# pip install arrow 安装库(若已安装 可忽略) import arrowEnd_of_month_date [] # 月末日期 for i in range(100):if arrow.now().shift(daysi).format(YYYY-MM-DD)[-2:] 01: # 若日期为 1 号 则返回前一天的日期End_of_month_date.append(arrow.now…

MySQL——MySQL的基础操作部分

使用命令行登录 mysql -u root -p 直接敲击回车后输入密码即可: 当看到出现“mysql>“的符号之后,就表示已经进入到了MySQL系统中,就可以输入My&#xf…

Java中的网络编程------基于Socket的TCP编程和基于UDP的网络编程,netstat指令

Socket 在Java中,Socket是一种用于网络通信的编程接口,它允许不同计算机之间的程序进行数据交换和通信。Socket使得网络应用程序能够通过TCP或UDP协议在不同主机之间建立连接、发送数据和接收数据。以下是Socket的基本介绍: Socket类型&…

将本地jar打包到本地maven仓库或maven私服仓库中

将本地jar包打包到本地的maven仓库中的命令&#xff1a; mvn install:install-file -DgroupIdtebie.applib.api -DartifactIdapiclient -Dversion1.0-SNAPSHOT -Dfile本地jar路径 -Dpackagingjar说明&#xff1a; DgroupId pom中的<groupId></groupId> Dartifact…

用半天时间从零开始复习前端之html

目录 前言 科班生的标配&#xff1a;半天听完一门标记型语言 准备工作 webstorm2022 webstrom 第一个html页面 body h系列标签 行标签和块标签 列表标签 表格标签&#xff08;另起一篇&#xff09; 万能的input 1.快速生成多个标签 2.同时选中多个 前言 科班生的标…

GIT实战篇,教你如何使用GIT可视化工具

系列文章目录 手把手教你安装Git&#xff0c;萌新迈向专业的必备一步 GIT命令只会抄却不理解&#xff1f;看完原理才能事半功倍&#xff01; 快速上手GIT命令&#xff0c;现学也能登堂入室 GIT实战篇&#xff0c;教你如何使用GIT可视化工具 系列文章目录一、GIT有哪些常用工具…