当前位置: 首页 > news >正文

网站建设厌倦西平县住房和城乡建设局网站

网站建设厌倦,西平县住房和城乡建设局网站,怎么进行网站建设,如何制作网站教程前言#xff1a; 许多游戏都可以通关胜利#xff0c;但是贪吃蛇不一样。贪吃蛇#xff0c;因贪而生#xff0c;因贪而亡。人生也是一样#xff0c;千万不要倒在“贪”字上。 游戏Java知识#xff1a;变量、数据类型、判断语句、循环结构、类的继承、简单窗口创建、图形…前言 许多游戏都可以通关胜利但是贪吃蛇不一样。贪吃蛇因贪而生因贪而亡。人生也是一样千万不要倒在“贪”字上。 游戏Java知识变量、数据类型、判断语句、循环结构、类的继承、简单窗口创建、图形图片的绘制、双缓存、鼠标事件、键盘事件 代码运行环境jdk-14.0.2 主要功能 1.按空格键开始游戏、暂停游戏或重新开始游戏 2.方向键控制蛇移动方向。wasd 3.蛇吃掉食物可以增长并添加游戏分数不会加快游戏速度。 4.蛇咬到自己会结束游戏 5.蛇撞到游戏区域外会自动从对面过来。 游戏素材包 游戏代码框架 游戏代码 1.GameWin窗口类 package com.sxt;import Obj.BodyObj; import Obj.FoodObj; import Obj.HeadObj;import javax.swing.*; import java.awt.*; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.util.ArrayList; import java.util.List;public class GameWin extends JFrame {//游戏状态 0未开始 1游戏中 2暂停 3失败 4通关 5.失败后重新开始public static int state 0;//分数public int score 0;//定义双缓存的图片Image offScreenImage null;//窗口宽高int winWidth 800;int winHeight 600;//蛇头的对象HeadObj headObj new HeadObj(GameUtils.rightImg, 60, 570, this);//蛇身的集合public ListBodyObj bodyObjsList new ArrayList();//食物public FoodObj foodObj new FoodObj().getFood();public void launch() {//设置窗口是否可见this.setVisible(true);//设置窗口的大小this.setSize(winWidth, winHeight);//设置窗口的位置在屏幕上居中this.setLocationRelativeTo(null);//设置窗口的标题this.setTitle(贪吃蛇);//蛇身初始化bodyObjsList.add(new BodyObj(GameUtils.bodyImg, 30, 570, this));bodyObjsList.add(new BodyObj(GameUtils.bodyImg, 0, 570, this));//键盘事件this.addKeyListener(new KeyAdapter() {Overridepublic void keyPressed(KeyEvent e) {if (e.getKeyCode() KeyEvent.VK_SPACE) {switch (state) {case 0://未开始state 1;break;case 1://游戏中state 2;repaint();break;case 2://游戏暂停state 1;break;case 3://失败后重新开始state 5;break;default:break;}}}});while (true) {if (state 1) {//游戏中才调用repaint();}//失败重启if (state 5) {state 0;resetGame();}//线程休眠try {//1秒1000毫秒Thread.sleep(200);} catch (InterruptedException e) {e.printStackTrace();}}}Overridepublic void paint(Graphics g) {//初始化双缓存图片if (offScreenImage null) {offScreenImage this.createImage(winWidth, winHeight);}//获取图片对应的grapics对象Graphics gImage offScreenImage.getGraphics();//灰色背景gImage.setColor(Color.gray);gImage.fillRect(0, 0, winWidth, winHeight);//网格线gImage.setColor(Color.BLACK);//for循环横线for (int i 0; i 20; i) {//横线gImage.drawLine(0, i * 30, 600, i * 30);//竖线gImage.drawLine(i * 30, 0, i * 30, 600);}//绘制蛇身for (int i bodyObjsList.size() - 1; i 0; i--) {bodyObjsList.get(i).paintSelf(gImage);}//绘制蛇头headObj.paintSelf(gImage);//食物绘制foodObj.paintSelf(gImage);//绘制分数GameUtils.drawWord(gImage, score 分, Color.BLUE, 50, 650, 300);//绘制提示语gImage.setColor(Color.gray);prompt(gImage);//将双缓存图片绘制到窗口中g.drawImage(offScreenImage, 0, 0, null);}//绘制提示语void prompt(Graphics g) {//未开始if (state 0) {g.fillRect(120, 240, 400, 70);GameUtils.drawWord(g, 按下空格开始游戏, Color.yellow, 35, 150, 290);}//游戏暂停if (state 2) {g.fillRect(120, 240, 400, 70);GameUtils.drawWord(g, 游戏暂停, Color.yellow, 35, 150, 290);}//游戏失败if (state 3) {g.fillRect(120, 240, 400, 70);GameUtils.drawWord(g, 咬到自己游戏失败, Color.red, 35, 150, 290);}//通关if (state 4) {g.fillRect(120, 240, 400, 70);GameUtils.drawWord(g, 达成条件游戏通关, Color.green, 35, 150, 290);//游戏暂停if (state 2) {g.fillRect(120, 240, 400, 70);GameUtils.drawWord(g, 游戏暂停, Color.yellow, 35, 150, 290);}}}//游戏重置void resetGame() {//关闭当前窗口this.dispose();//开启新窗口String[] args {};main(args);}public static void main(String[] args) {GameWin gameWin new GameWin();gameWin.launch();} }2.GameUtils工具类 package com.sxt;import java.awt.*;//工具类 public class GameUtils {//图片的种类//蛇头public static Image upImg Toolkit.getDefaultToolkit().getImage(img/up.png);public static Image downImg Toolkit.getDefaultToolkit().getImage(img/down.png);public static Image leftImg Toolkit.getDefaultToolkit().getImage(img/left.png);public static Image rightImg Toolkit.getDefaultToolkit().getImage(img/right.png);//蛇身public static Image bodyImg Toolkit.getDefaultToolkit().getImage(img/body.png);//食物public static Image foodImg Toolkit.getDefaultToolkit().getImage(img/food.png);//绘制文字public static void drawWord(Graphics g, String str, Color color, int size, int x, int y) {g.setColor(color);g.setFont(new Font(仿宋, Font.BOLD, size));g.drawString(str, x, y);} }
http://www.hkea.cn/news/14340402/

相关文章:

  • 跑步机 东莞网站建设网站联系方式设计
  • 螺旋钢管网站建设网站建设 标书
  • 零起飞网站建设工作室seo推广怎么样
  • 苏州优秀网站设计做网站页面视频教学
  • 摄影师作品网站一个网站做无限关键词
  • 网站后台 清理缓存WordPress置顶不生效
  • 可以下载源程序的网站frontpage做网站教程
  • 做网站小程序做一网站要什么时候开始
  • 网站前端设计外包公司地图位置链接怎么做
  • 建站行业发展前景wordpress图片上传慢
  • 无忧主机建站的过程深圳做微商网站的公司
  • 网站建站推广上海市工程建设信息网
  • 免费网站平台推荐有那种网站么
  • 腾讯快速建站平台如何注册一个免费网站
  • 江苏建设标准网站徐州招聘网
  • 400网站建设推广个人外贸网站制作
  • 网站建设的标语2017网站seo如何做
  • 网站文章内容一键排版功能怎么做网站盈利
  • 成都网站seo诊断html做网站的设计
  • 找苏州网站建设wordpress商店如何添加商品
  • 网站运维平台建设原则旅游网站建设策划
  • 传媒公司做网站条件长宁长沙网站建设
  • 深圳网站建设ucreator合肥网站建设公司 推荐
  • 哪个小说网站版权做的好处网站建设所用系统
  • 做网站建设需要什么资质免费网址怎么申请注册
  • 单位网站及政务新媒体建设管理网页设计基础的教学目的
  • 内网网站建设所需硬件设备建设厅特种作业证件查询官网
  • 织梦网站后台管理系统做外贸那里发广告网站
  • 合肥网站建设 合肥网络推广wordpress 文章置顶不显示
  • 企业网站建设版本wordpress自动发货如何设置