游戏界面和相关图片素材 11.3 程序设计的步骤 11.3.1 设计游戏窗口类(GameRoom.java) 游戏窗口类GameRoom实现游戏全部功能,继承JFrame组件实现的。是由上方Panel1和中间Panel2组成。 11.3.2 设计内部游戏面板类 游戏面板类RoomPanel是图形化实现对对碰游戏的关键,在面板中重载Paint事件将背景图片、动物池和所有动物绘制到面板中。 11.3.3 设计内部定时器类 内部定时器类TimeListener修改剩余时间,并判断是否到达100,如果到达则定时器结束,出现对话框提示是否继续游戏,如果用户选择“是”按钮则可以开始新游戏,选择“否”按钮则退出程序。 Java游戏编程原理与实践教程 主编 陈锐 夏敏捷 人民邮电出版社 游戏在8 × 8格子的游戏池中进行。每个格子中有一个图像。鼠标连续选中两个相邻的图像,它们的位置会互换,互换后如果横排或竖排有 3 个以上相同的图像,则可以消去该图像,并得分。 本章开发的游戏开始界面如图11-1,用户开始游戏后,直到窗口上方的时间值为0秒时结束。消掉图像方块可以增加用户的得分(消去一块用户的得分增10分)。 第11章 对对碰游戏(图形版) 11.2 程序设计的思路 游戏屏幕由8行8列的方块组成,方块的动物图案各不相同。为了存储游戏画面中方块动物的图案采用二维数组animal [8,8],储存对应按钮的动物图案ID(0到6的数字)。 在定时器timer控制下,不停的更新剩余时间,如果剩余时间为0秒,则游戏结束,出现图11-3游戏结束对话框提示用户是否继续。 11.2 程序设计的思路 当用户鼠标连续选中两个相邻的方块,这里不是按钮,所以识别是那个动物方块是通过鼠标单击处像素坐标计算出棋盘坐标来识别。由于两次选择所以通过(x1, y1)记录第一次位置,( x2, y2)记录第2次位置。交换二维数组animal中(x1, y1)和( x2, y2)元素两个方块的动物图案ID,交换以后调用isThreeLinked(y2, x2)和|isThreeLinked(y1, x1)检测屏幕上是否有符合消去规则的方块,如果有被消去的方块,则removeLinked(y2, x2)修改记录要绘制方块的动物图案ID的animal数组对应元素的值,不需要绘制为EMPTY(即7,因为动物图案ID是0到6的数字)。并调用updateAnimal()从游戏屏幕该列上方重新随机产生新的动物图案ID,更新动物图案ID数组animal[8][8]。最后repaint()刷新显示需要绘制的所有方块图形,从而看到动态游戏效果。

Java课设对对碰_第11章对对碰游戏(图形版)(Java游戏编程原理与实践教程课件).ppt...相关推荐

  1. java游戏编程原理与实践教程_第18章青蛙过河游戏(Java游戏编程原理与实践教程课件).ppt...

    第18章 青蛙过河游戏 青蛙过河游戏是一个有趣的智力游戏.六只青蛙分成两队,左边三只,右边三只,都要过河,但是互不相让.中间只有一块空白石头.你需要用一种方法将左面的青蛙和右面的青蛙互换. 游戏说明: ...

  2. 碰球游戏java课设实验体会_对碰球游戏教案

    活动目标:1.能合拍地随音乐边拍手唱歌边走步.2.用不同的动作方式与同伴相"碰",学会按指令做出迅速准确的反应.3.体验与同伴合作.交流的友好情感和愉快心情.活动准备:1.在日常活 ...

  3. 完成java课设的经验_课设后的感想

    今天课设答辩结束了,可以说是很圆满的成功了,我用了3天时间在我们班第一个完成答辩. 做的是简单的学生上机系统,在此之前,我从来不敢想象我可以做到,并完成得那么好. 记得刚拿到题目时就懵了,一时不知该怎 ...

  4. java课设 简单九宫格_[Java教程]简易版九宫格相加数值相等

    [Java教程]简易版九宫格相加数值相等 0 2016-02-24 00:00:10 九宫格的样子以及游戏想大家接触过,想当年也是玩了好多九宫格游戏,其中最经典的就是1-9这九个数字填进格子,横竖向. ...

  5. java 声明一个bus类_第11章 新特性 – 你应该更新的Java知识之Observer - Java 基础入门笔记...

    作为一个Java程序员,不熟悉设计模式简直不好意思和人打招呼,而Observer模式可以说是位列最常用的设计模式之列,虽然有时候在具体代码里,它不一定叫这个名字,比如改头换面叫个Listener,但模 ...

  6. 【源码+教程】Java课设项目_12款最热最新Java游戏项目_Java游戏开发_Java小游戏_飞翔的小鸟_王者荣耀_超级玛丽_推箱子_黄金矿工_贪吃蛇

    马上就要期末了,同学们课设做的如何了呢?本篇为大家带来了12款热门Java小游戏项目的源码和教程,助力大家顺利迎接暑假![源码+教程]Java课设项目_12款最热最新Java游戏项目_Java游戏开发 ...

  7. 学生信息管理系统(成绩统计)Java课设

    下载地址:学生信息管理系统(成绩统计)Java课设-Web服务器文档类资源-CSDN下载 ├── StudentInfo │   ├── bin │   │   ├── com │   │   │   ...

  8. java 课设 商品库存管理系统

    比较辛苦的java课设!写了蛮久的,战斗了好多个通宵. 下载https://download.csdn.net/download/qq_37871063/10297290 入门:JAVAFX+MVC+ ...

  9. 华南农业大学课设——数据结构课设、Java课设、操作系统课设

    文章目录 缘起 大二上-数据结构课设(高校教学管理系统)-C++.Qt 视频演示 感想 大二下-Java课设(流程图绘制程序)-JavaFX 视频演示 感想 大三上-操作系统课设(模拟磁盘文件系统实现 ...

最新文章

  1. 韩顺平循序渐进学java 第10.11讲 继承.重载.覆盖
  2. Windows Server 2012 RS 配置IIS8.0+发布网站
  3. Navicate Premium不能用localhost和127.0.0.1登陆sql-server,解决方法
  4. python filter函数中写none_Python3基础 filter 第一个参数为NONE时 结果只返回为True的对象...
  5. 前端学习(2389):项目初始化总结
  6. Leetcode-1156 Swap For Maximum Repeated Substring(单字符重复子串的最大长度)
  7. w10自动删除文件怎么关了_绝地求生怎么删除新地图_删新沙漠地图文件办法
  8. 第一类边界条件,三角单元剖分,线性插值的位场延拓,LDLT高效求解
  9. JSP基础--J2EE赢在起跑线
  10. VC6 程序 在VS2019或其他高版本上编译运行
  11. 编辑器Sublime Text安装配置
  12. 精通Linux Unix Shell编程电子书免费分享
  13. 如何用范德蒙行列式完成插值
  14. vue子组件修改props传进来的值、回调函数
  15. 威尔逊定理公式的理解
  16. 深度学习01——入门基础 基于Python
  17. Linux服务器搭建--NTP服务器的搭建与配置
  18. java知识体系综合面试题
  19. 相片尺寸怎么修改?手机如何整体缩小图片尺寸?
  20. BZOJ 2448: 挖油-区间DP+单调队列

热门文章

  1. SQL 2000数据库置疑及修复方案
  2. 【文件编码转换】将GBK编码项目转为UTF-8编码项目
  3. 海康威视USB相机踩坑指南
  4. c#程序设计教程 唐大仕pdf_C#程序设计教程
  5. api接口设计相关总结
  6. vs2017编译libxvidcore.lib
  7. java 销毁 session_Spring session对于session的创建和销毁监听
  8. 如何在UnrealEngine虚幻引擎中加载Web页面
  9. 【论文复现】使用PaddleDetection复现OrientedRepPoints的复现笔记
  10. 一天测血压的最佳时间_测量血压的最佳时间是几点?