java推箱子课程设计
- 格式:pptx
- 大小:4.50 MB
- 文档页数:39


推箱子游戏
一、功能描述:
➢ 可以通过面板上的按钮或是键盘上的pageup,pagedown键选择上下关
➢ 可以通过面板上按钮或是键盘上的Backspace键后退,一直后退自己想要的位置,知道游戏开始时的位置。
➢ 可以通过面板上的按钮或是键盘上的字母r重新开始当前关卡游戏。
➢ 可以在复选框选择想要玩的关卡。
二、界面及运行截图
三、源代码(三部分)
1、地图类
package box;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;//读取字符文件类FileReader
import java.io.IOException;
public class map {
int[][] map=new int[20][20];
int manX,manY;
public map(int level){
String filepath="mapc/"+level+".txt";
File file = new File(filepath);
FileReader fr = null;//利用FileReader流来读取一个文件中的数据
BufferedReader br = null;//字符读到缓存里
try {
fr = new FileReader(file);
br = new BufferedReader(fr);
for (int i = 0; i < 15; i++){
String line = br.readLine();//以行为单位,一次读一行 利用BufferedReader的readLine,读取分行文本
byte[] point = line.getBytes();//将字符串转换为字节数组
Java实现经典游戏推箱⼦的⽰例代码⽬录前⾔主要设计功能截图代码实现核⼼类声⾳播放类总结
前⾔
《推箱⼦》推箱⼦是⼀个古⽼的游戏,⽬的是在训练你的逻辑思考能⼒。在⼀个狭⼩的仓库中,要求把⽊箱放到指定的位置,稍不⼩⼼就会出现箱⼦⽆法移动或者
通道被堵住的情况,所以需要巧妙的利⽤有限的空间和通道,合理安排移动的次序和位置,才能顺利的完成任务。
游戏是⽤java语⾔实现,采⽤了swing技术进⾏了界⾯化处理,设计思路⽤了⾯向对象思想。
主要需求
控制搬运⼯上下左右移动,来将箱⼦推到指定地点
主要设计
1、游戏⾯板⽣成显⽰
2、地图⽣成算法
3、⼈物移动算法
4、播放背景⾳乐
5、箱⼦移动算法
6、全部箱⼦移动到指定位置,才算游戏过关
功能截图游戏开始移动效果游戏过关
代码实现
核⼼类
public class GameFrame extends JFrame implements
ActionListener, MouseListener, KeyListener {// 实现动作事件监听器、⿏标事件监听器、键盘事件监听器
// 当前的关卡数,默认为第⼀关,从1开始计数
private int grade = 1;
// row,column记载⼈的位置,分别表⽰⼆维数组中的⾏号和列号,即map[row][column]确定⼈的位置
private int row = 7, column = 7;
// leftX,leftY记载左上⾓图⽚的位置,避免图⽚从(0,0)坐标开始,因为是图⽚填充,从(0,0)开始不⾏
private int leftX = 50, leftY = 50;
// 记载地图的总共有多少⾏、多少列
private int mapRow = 0, mapColumn = 0;
// 记载屏幕窗⼝的宽度和⾼度
private int width = 0, height = 0;
private boolean acceptKey = true;
java推箱子游戏的课程设计
一、课程目标
知识目标:
1. 掌握Java基础语法,包括数据类型、运算符、控制结构等;
2. 学会使用Java面向对象编程,包括类的定义、对象的创建、封装、继承和多态;
3. 了解二维数组的使用,能通过数组实现游戏地图的表示;
4. 掌握推箱子游戏的逻辑设计和实现。
技能目标:
1. 培养学生的编程思维和逻辑思维能力;
2. 提高学生解决实际问题的能力,学会分析问题、设计解决方案;
3. 学会使用Java编写简单的图形用户界面程序,实现游戏交互;
4. 学会运用调试工具进行程序调试,找出并修复程序中的错误。
情感态度价值观目标:
1. 激发学生对编程的兴趣,培养学习计算机科学的热情;
2. 培养学生的团队协作精神,学会与他人共同解决问题;
3. 培养学生的创新意识和实践能力,鼓励学生尝试不同的解决方案;
4. 培养学生面对困难时坚持不懈、勇于挑战的精神。
本课程针对高年级学生,结合学科特点和教学要求,旨在通过推箱子游戏的开发,帮助学生巩固Java编程知识,提高编程技能,培养良好的编程习惯和团队协作能力。课程目标具体、可衡量,为教学设计和评估提供了明确的指导。 二、教学内容
1. Java基础语法复习:数据类型、变量、运算符、控制结构(条件语句、循环语句);
2. 面向对象编程:类的定义、构造方法、成员变量、成员方法、封装、继承、多态;
3. 二维数组:数组的概念、声明、初始化、遍历、应用场景;
4. 图形用户界面(GUI):Swing库简介、窗口、面板、按钮、事件处理;
5. 游戏逻辑设计:游戏规则、地图表示、角色移动、箱子推动、胜利条件;
6. 程序调试与优化:调试工具使用、常见错误分析、性能优化;
7. 项目实践:分组进行推箱子游戏的开发,包括需求分析、设计、编码、测试和调试。
教学内容依据课程目标进行选择和组织,保证科学性和系统性。教学大纲明确以下安排和进度:
课程设计说明书 NO.1
沈 阳 大 学
推箱子趣味游戏
1. 课程设计的目的
随着科学技术的发展,人们的生活水平越来越繁忙,在充满竞争的社会条件下,压力往往带给人们很多烦恼,所以合理的解压方式称为现代人的共同心愿. 为了给大家提供一个合理的解压平台, 我们在本次课程设计中为大家开发了一款适合休闲娱乐的小游戏, 本次课程设计是配合 JAVA 程序设计课程,深入学习掌握
JAVA 语言,熟练 运用 Java 工具对系统的编写.通过课程设计各个项目的综合训练,培养学生实 际分析问题,编程和动手能力,提高学生的综合素质.
2. 设计方案论证
2.1概要设计
2.1.1 系统功能描述
2.1.2 系统开发环境
(1)硬件环境
CPU:PentiumIII
600 以上内存要求:600MB 以上
内存剩余资源:128MB 以上
(2)软件环境
JDK 1.6 及其以上版本
2.2详细设计
2.2.1 程序流程图
推箱子游戏主要分为初始化模块, 画图模块, 移动箱子模块, 移动小人模块, 功能控制模块.推箱子游戏功能模块图如图 3.1 所示.
课程设计说明书 NO.2
沈 阳 大 学 图 3.1 功能模块图
2.2.2程序中自定义类说明
(1)重来:重新开始当前关;
(2)悔一步:返回上一移动状态(可以连续返回多步) ;
(3)第一关:游戏系统默认开始关为第一关,此按钮可以将关从其它关跳跃到第一关.
(4)上一关:返回到当前关的上一关;