?
?
java植物大战僵尸思路
JAVA课程设计
植物大战僵尸(团队)
?
?
#1.团队名称、团队成员介绍 ##团名:嗷嗷嗷嗷嗷 ###吴军霖(组长)
写得一手好代码也改得一手好bug
代码整洁好看源于强迫症
大概没有什么不会的东西叭
真正的王者段位 ###欧阳震霆(组员)
同样擅长写代码
在青青草原上创造了僵尸家族
熟练掌握多线程等技术
也是王者段位 ###陈文杰(组员)
可代码可PPT可画图
创造太阳落在青青草地
熟练******等等厉害技术
***(隐藏段位) ###刘艳钦(组员)
可代码可bug可博客
豌豆射手吐出豌豆
在数据库的危险边缘试探
擅长叨逼叨和细节控
***(隐藏段位)
#2.项目git地址
戳我叭~!!!
#3.项目git提交记录截图(要体现出每个人的提交记录、提交说明),老师将重点考核。
#4.项目功能架构图与主要功能流程图
#5.项目UML图
#6.项目运行截图
#7.项目关键代码(不能太多) ###1.游戏界面效果###
JLayeredPane为容器添加了深度,允许组件在需要时互相重叠。
JLayeredPane将深度范围按 层 划分,在同一层内又对组件按位置进一步划分,将组件放入容器时需要指定组件所在的层,以及组件在该层内的 位置(position/index)。 层的编号越大越显示在前面;同层内位置编号越大越靠近底部
使用JLayeredPane对界面实现按层划分,使各组件按层级相覆盖,并实现组件对鼠标监听的优先级划分
代码定义了两个层级面板,一个作为游戏的选择界面,一个作为战斗界面
在选择界面中,在层级面板的底层添加背景图,在较上层添加各个功能按钮,而在最上层有一个不可见的登录注册组件(JPanel),点击登录按钮时将登录面板改为可见.点击游戏开始时,将窗体的层级面板换为战斗面板战斗面板中也是将背景图置于底层,将其它组件放在面板的较上层.将阳光所在层级设置高于其他组件可以实现阳光对鼠标的监听优先于其他组件,使得阳光收集事件可以优先于其他事件,如卡片的选取,铲子的点击和菜单的点击.点击时菜单时,各线程暂停,同样在最顶层使原来不可见的菜单面板设为可见.
private void chooseCards(){
Card card1 = new Card(GameFrame,SunFlower, plantMap, controller);
card1.setBounds(85, 7, card1.getCardWidth(), card1.getCardHeight());
Cardboard.add(card1);
cardList.add(card1);
Card card2 = new Card(GameFrame,Peashooter, plantMap, controller);
card2.setBounds(145, 7, card2.getCardWidth(), card2.getCardHeight());
Cardboard.add(card2);
cardList.add(card2);
}
class PaintThread implements Runnable{
JFrame frame;
PaintThread(LaunchFrame launchFrame) {
this.frame = launchFrame;
}
###2.僵尸的产生
通过根据状态不断重绘僵尸来达到动画效果
/***** 正常移动 *****/
for (int i=1 ; this.x minx this.state==1 ; i++){
if(this.life=50) {
this.state=2;
zombie.setPic(0);
zombie.setState(state);
break;
}
if(this.x==350)
this.life=20;
try {
if (i%11==0){
zombie.normalpicChange();
}
zombie.setBounds(x,y,300,300);
Thread.sleep(8);
if (i%7==0){
this.x--;
}
zombie.repaint();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
//正常换图
public void normalpicChange(){
if (pic allPic[type])
pic++;
else
pic = 0;
}
public void normalwalk(){
}
public void paintComponent(Graphics g) {
super.paintC
您可能关注的文档
- 微服务商城系统订单、支付流程分析.docx
- Quill基本使用和配置指南-DevUI.docx
- AI(人工智能)园区顶层设计方案.docx
- 融数数据基于Kubernetes的微服务治理和构建平台.docx
- Java并发编程与高并发解决方案 (2).docx
- Docker入门到实践-IDEA集成Docker构建容器镜像部署项目.docx
- jenkins+Docker+springcloud微服务持续集成.docx
- 数据新基建白皮书,释放数据生产力.docx
- sgg微服务架构解析-nacos.docx
- 图像超分辨率重建原理学习.docx
- 河北盐山中学等校2025-2026学年上学期高三一模化学试卷(含解析).docx
- 河北正定中学2025-2026学年高一上学期期末考试物理试卷(含解析).docx
- 河北张家口市怀安县2025-2026学年第一学期期末教学综合评价八年级地理试卷(含解析).docx
- 河南安阳市殷都区2025-2026学年第一学期期末教学质量检测七年级地理试卷(含解析).docx
- 河南安阳市滑县2025一2026学年第一学期期末学业质量监测八年级地理试题(含解析).docx
- 河南安阳市林州市2025-2026学年上学期期末考试高一政治试题(含解析).docx
- 河南焦作市武陟县第一中学2025-2026学年高一上学期1月月考语文试卷(含解析).docx
- 河南济源市2025-2026学年上学期期末学业质量调研七年级历史试卷(含解析).docx
- PICC导管并发症的紧急处理与护理.pptx
- 河南鹤壁市2025-2026学年高二上学期期末考试生物试题(含解析).docx
最近下载
- DB37_T 4904-2025 链式切割水泥土连续墙技术规程.docx VIP
- DB37_T 4903-2025 沥青路面防裂封水粘结层技术规范.docx VIP
- DB37_T 4909-2025 城市轨道交通隧道结构渗漏水治理技术规程.docx VIP
- 2026年河南工业和信息化职业学院单招职业技能考试题库及参考答案详解.docx VIP
- DB37_T 4914-2025 电梯按需维护保养管理技术规范.docx VIP
- DB37_T 4915-2025 氧气瓶充装自动控制技术要求.docx VIP
- 最全汉语水平的考试HSK6级历年真题经典版.pdf VIP
- 博朗-欧乐B_OralB 5000__O3762_5_CHIN使用说明书.pdf VIP
- DB37_T 4918.5-2025 政务信息化项目管理 第5部分:项目和系统编码.docx VIP
- 价值链视角下的山西汾酒公司资金管理问题与优化路径探究11000字【论文】 .docx VIP
原创力文档

文档评论(0)