嘿,我正在尝试制作地牢爬虫,但我仍停留在地图生成上.我希望生成随机的房间,但是在完成所有操作之前,我必须先在屏幕上绘制地图.我希望地图自上而下,几乎是一个网格,稍后再将地板图像添加到其中.我的思维方式是创建一个JFrame并使用paintComponent和一个for循环绘制一个Rectangle2D以形成正方形网格.这是正确的方法吗?另外,我如何通过keyListener使角色从一个正方形移到另一个正方形?

编辑:地牢爬行者是一种自上而下的游戏,您可以在其中控制一个角色并将其在网格周围移动.您可以杀死怪物,获得武器和掉落的物品,升级等.现在,我只想找到我们在屏幕上打印地图的最佳方法.我只是从一个栅格开始,角色从一个正方形移到另一个正方形,然后按箭头键.然后,我将继续进行随机地图生成!

解决方法:

首先创建抽象级别是一个好主意.从数组开始,其中包含有关每个单元的信息(空,障碍,敌人,玩家,物品等).

像这样

int[][] a={

{0,0,0,0,0},

{0,1,0,0,0}, //"1" - obstacle

{0,0,1,0,0},

{2,0,1,0,0}, //for example "2" is player

{0,0,1,0,0}

}

现在只需绘制用于该地图的矩形(或图像,实际上看起来会更好:)).通常每个单元格的大小应相同,因此只需一步就可以绘制矩形.

标签:draw,java,user-interface

来源: https://codeday.me/bug/20191201/2081546.html

如何用java做游戏地图_Java为游戏绘制地图网格相关推荐

  1. java做过的小游戏

    写在前面 技术源于分享,所以今天抽空把自己之前用java做过的小游戏整理贴出来给大家参考学习.java确实不适合写桌面应用,这里只是通过这个游戏让大家理解oop面向对象编程的过程,纯属娱乐.代码写的很 ...

  2. 如何用java做一个桌面游戏

    也许很多同学都曾想过这样一个问题,那些在桌面上的图标一点击,游戏就运行了,这是怎么实现的那? 今天让我来演示一下这中间的一个过程. 1.首先这些游戏界面的出现,毫无疑问是java Swing做的,你只 ...

  3. 整活--我是如何用OpenCV做了数字华容道游戏(附源码)

    学更好的别人, 做更好的自己. --<微卡智享> 本文长度为3829字,预计阅读9分钟 前言 数字华容道,记得以前<最强大脑>上一个初赛题目,正好最近家里买了个数字华容道的玩具 ...

  4. java做一个打地鼠小游戏

    想起了了大学那会做过这个小游戏,今天重新写一下 首先准备几个素材图片,搜了半天没有,只好自己找了个图片截了一下(如果侵权了联系我删除). JFrame画一个主页面,设置了全局的行.列和总数,循环添加所 ...

  5. 手机java做贪吃蛇_如何用Java写一个贪吃蛇游戏

    这是一位拓胜学员用Java写贪吃蛇游戏的心得:今天课程设计终于结束了自己学java没以前学C+那么用功了觉得我学习在哪里都是个开口向上的抛物线,现在应该在右半边吧,好了进入正题. 写java贪吃蛇也是 ...

  6. java 做猜数字小游戏_Java Properties类:利用Properties类制作猜数字小游戏

    在学习Random类时我们制作过猜数字小游戏,学习了Properties类后,可以为此游戏添加保存得分记录功能 游戏规则: 玩家可以选择玩游戏还是查看得分 玩游戏: 首先玩家需要选择难度: 难度级别 ...

  7. java做计算器_java实现简单计算器

    本文实例为大家分享了java实现简单计算器的具体代码,供大家参考,具体内容如下 思路:定义一个主框架Frame,我们对原设计的草图进行划分,以方便后面的布局 下面我们来对主框架进行划分 如图,我们将主 ...

  8. 如何用java做一个网站

    小学期实践项目要求做一个网站,苦于无从下手,在网上找到了学习教程.当然网上教程很多,下面给大家推荐一个学习网址: JAVA WEB 项目教程-模仿天猫整站 J2EE版本项目没有使用SSH,SSM框架, ...

  9. java五子棋图片_java五子棋游戏如何加载图片

    展开全部 直接上程序吧: //wuziqi.java import java.applet.Applet; import java.awt.Button; import java.awt.Checkb ...

最新文章

  1. 系统学习机器学习之算法评估
  2. android sh 指令_Java/Android中实现Shell命令
  3. 【数据库原理及应用】经典题库附答案(14章全)——第十章:数据库完整性
  4. java 文件封装_Java 封装
  5. JavaScript escape() 函数
  6. [Vue.js]实战 -- 电商项目(一)
  7. 批量生成10个虚拟主机配置
  8. a href=javascript:;/a
  9. 宏基因组 微生物组 微生物生态领域杂志简介及最新影响因子
  10. 高效记忆/形象记忆(11)110数字编码表 51-60
  11. ADAMS搭建控制系统教程:偏心连杆机构的转速控制
  12. 关于正向代理,反向代理,负载均衡的个人理解
  13. 具象的东西_学完就忘?掌握科学的记忆方法,你也能成为学习高手
  14. H-A + B用于投入产出实践(VIII)
  15. mac邮箱无法验证账户名和密码问题
  16. Amazon RDS介绍 (一)
  17. linux firefox 背景色,火狐Firefox 72浏览器滚动条将自适应网页背景色
  18. C#小游戏之疯狂字母
  19. Mac修改hosts 设置虚拟域名
  20. APP留存率多少才合格——全面解析留存率

热门文章

  1. ssiOS应用架构谈 本地持久化方案及动态部署
  2. echarts柱状图+折线图实例
  3. 【Python网络爬虫与数据可视化实战案例】近15年的中国国内生产总值
  4. React Native之React速学教程
  5. java运气红包_Java实现微信发红包
  6. [luogu2469] 星际竞速
  7. 微信小程序微信服务号开发微信公众平台开发前端开发框架
  8. [LeetCode]3Sum Closest
  9. error:dereferencing pointer to incomplete type
  10. Hadoop之数据仓库概述