java小游戏-坦克大战1.0

news2024/10/5 12:50:00

文章目录

    • 游戏界面样式
    • 游戏需求分析
    • 设计类
    • 过程1:初始化界面
    • 过程2:用面向对象思想设置功能
    • 过程3:调用类实例化对象
    • 过程4:联合调试

项目代码下载: CSDN_java小游戏-坦克大战1.0

来源:该游戏来自尚学堂~,大家有兴趣可以去关注一下(^_^)

游戏界面样式

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

游戏需求分析

PrecessOn 绘图工具

  1. 模式选择:单人模式、双人模式
  2. 坦克上下左右移动,可以发射子弹,击中敌方坦克发生爆炸、击中围墙,围墙消失、被子弹击中消失。

设计类

GameObject:抽象类,定义抽象方法
GamePanel:主页面,游戏开始控制
Base:基地类
Blast:爆炸类,对于爆炸的图片进行滚动播放
Bot:敌方坦克
Bullet:子弹类
Direction:方向枚举
EnemBullet:敌人子弹
PlayerOne:玩家1-坦克1:WASD – 控制上下左右的方向,空格发射炮弹.
PlayerTwo:玩家2-坦克2:方向键 – 控制上下左右的方向,k键发射炮弹.
Tank:坦克类
Wall:围墙类

过程1:初始化界面

目标:熟悉UI页面布局,调用图片

过程2:用面向对象思想设置功能

目标:理解面向对象的思想,为类添加对应的功能

过程3:调用类实例化对象

过程4:联合调试

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

神了,Suno创作的《不期待》三个版本,你最喜欢哪一个?

Suno AI 最近尝试了下 Suno AI 的v3.5模型,有点惊艳 做了三首版本的AI歌曲,词是我写的,其他全都交给Suno了,欢迎大家来听听 B站链接 Youtube链接

源码文章上传无忧,论坛小程序支持

前言 在数字化时代,知识的分享与传播显得愈发重要。为了满足广大创作者和求知者的需求,我们推出了全新的论坛小程序,不仅支持文章、源码、链接等多样化内容的上传,还实现了付费观看功能,为创作者们提供了一个展示才华…

flask 之JWT认证实现

目录 1、JWT 1.1、JWT概述 1.2、token的生成 1.3、token校验 1.4、flask项目中实现JWT认证 1、JWT 1.1、JWT概述 JWT(JSON Web Token)是一种用于身份验证和授权的开放标准。它由三部分组成,分别是头部、负载和签名。 头部&#xff0…

第三方软件测试机构与CMA、CNAS资质

第三方软件测试机构 随着信息技术的快速发展,软件在各个领域的应用越来越广泛,软件的质量和安全性成为人们关注的焦点。为了确保软件的质量和安全性,第三方软件测试机构和CMA、CNAS资质成为了重要的保障。 第三方软件测试机构是独立于软件开…

python调用excel的demo

在本地安装Pycharm之后,新建工程,在main.py中键入如下代码,即可实现Python调用excel: import pandas as pd sheet pd.read_excel(test.xlsx) data sheet.loc[0].values print("读取指定行的数据:\n{0}".format(data)) 第一次编…

如何将 MySQL 数据库共享给他人?

文章目录 共享所有数据库给他人1. 连接到 MySQL 数据库2. 选择要使用的数据库3. 修改连接所需的 host4. 刷新权限 共享部分数据库给他人1. 创建用户2. 授权3. 刷新权限 结语 🎉欢迎来到Java学习路线专栏~探索Java中的静态变量与实例变量 ☆* o(≧▽≦)o *☆嗨~我是I…

JVMの静、动态绑定异常捕获JIT即时编译

在说明静态绑定和动态绑定之前,我们首先要了解在字节码指令的层面,JVM是如何调用方法的: 例如我有以下的代码,很简单就是在main方法中调用了另一个静态方法: public class MethodTest {public static void main(Strin…

git clone 文件名中文、有冒号等问题 fatal: repository ‘***/r/鏍″洯鏅烘収椋熷爞/.git/‘ not found

记录一个git问题,比较有意思,也比较难找。 背景 首先把代码拉下来,发现给我报错。 怀疑 刚开始以为是仓库地址变了,但是发现仓库地址并没有变过。 交流 然后寻找解决方案。因为同事也遇到过,同事交了我一招&…

数据结构第三篇【链表的相关知识点一及在线OJ习题】

数据结构第三篇【链表的相关知识点一及在线OJ习题】 链表链表的实现链表OJ习题顺序表和链表的区别和联系 本文章主要讲解关于链表的相关知识,喜欢的可以三连喔 😀😃😄😄😊😊🙃&#…

【iOS】——Runtime学习

文章目录 一、Runtime介绍二、Runtime消息传递三、实例对象、类对象、元类对象四、isa_t结构体的具体实现五、cache_t的具体实现六、class_data_bits_t的具体实现七、Runtime消息转发动态方法解析备用接收者完整消息转发 一、Runtime介绍 iOS的Runtime,通常称为Obj…

GitHub飙升!京东认证的“Python编程入门三剑客”究竟好在哪?

Python凭借着简单易学、功能强大,已经跃居TIOB编程语言榜首,并且已经开始了它的霸榜之旅。如何选择一套适合自己的Python学习教程,是每个Python爱好者面临的首要问题。 今天给小伙伴们带来的是图灵&京东认证的“Python编程入门三剑客”&…

项目:仿RabbitMQ实现的消息队列组件

文章目录 写在前面开源仓库和项目上线其他文档说明 需求分析BrokerServer交换机类型持久化消息应答 模块划分服务端模块客户端模块交换机数据管理模块队列数据管理模块绑定数据管理模块消息数据管理模块队列信息管理模块虚拟机数据管理模块路由匹配模块消费者管理模块信道管理模…

gomail发送邮件的参数如何设置?如何使用?

gomail发送邮件的认证方式有哪些?怎么设置邮件发信? Gomail是一个常用的Go语言邮件发送库,它提供了简单易用的接口,使得邮件发送变得非常方便。AokSend将详细介绍如何设置gomail发送邮件的参数,帮助开发者更好地理解和…

Java实现经纬度坐标转换

一、坐标系统简介 坐标系统,是描述物质存在的空间位置(坐标)的参照系,通过定义特定基准及其参数形式来实现。 坐标是描述位置的一组数值,按坐标的维度一般分为一维坐标(公路里程碑)和二维坐标…

申请HTTPS证书的具体步骤是什么?

在当今数字化时代,网络安全已成为企业和个人关注的焦点。HTTPS证书作为网络安全的重要组成部分,不仅象征着网站的安全性,更是数据保护和用户信任的基石。本文将详细阐述HTTPS证书的重要性以及如何申请和配置HTTPS证书,以帮助网站所…

24、Linux网络端口

Linux网络端口 1、查看网络接口信息ifconfig ens33 eth0 文件 ifconfig 当前设备正在工作的网卡,启动的设备。 ifconfig -a 查看所有的网络设备。 ifconfig ens33 查看指定网卡设备。 ifconfig ens33 up/down 对指定网卡设备进行开关 基于物理网卡设备虚拟的…

CSS 常用的三种居中定位布局

嗨,我是小路。今天主要和大家分享的主题是“”。 一、三种常用布局 1.子绝父相 margin 居中 注意:父级相对定位,子级绝对定位,并且子级margin-left,margin-top是负值,为宽度、高度的一半。 /** …

IDEA 2022

介绍 【尚硅谷IDEA安装idea实战教程(百万播放,新版来袭)】 jetbrains 中文官网 IDEA 官网 IDEA 从 IDEA 2022.1 版本开始支持 JDK 17,也就是说如果想要使用 JDK 17,那么就要下载 IDEA 2022.1 或之后的版本。 公司…

利用opencv-python实现图像全景拼接技术实现

这个代码的主要功能是将多张图像拼接成一张全景图。它使用了OpenCV库中的SIFT特征提取、特征匹配和图像变换等技术来实现图像拼接。 一、预览效果 二、安装依赖 contourpy1.2.1 cycler0.12.1 fonttools4.53.0 importlib_resources6.4.0 kiwisolver1.4.5 matplotlib3.9.0 numpy…

Linux中安装Docker,并使用Docker安装MySQL和Redis

1、安装docker 1卸载系统之前的docker yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine2、安装Docker-CE #安装必须的依赖 sudo yum install -y yum-utils \device-map…