Java小游戏,防止物体跑出四周边界的算法
Java小游戏,防止物体跑出四周边界的算法
因为本人是JAVA初学者,所以下面说的这个算法会比较简单,也可能其他地方早就存在。但是,这是我自己想出来的,所以还是觉得发个文章做个纪念,嘻嘻。
算法本身很简单,其他地方就不过多叙述,直接从添加键盘监听开始。
public class QiZi extends GameObject{boolean left, right, up, down;
//添加键盘监听,增加和去掉方向控制public void addDirection(KeyEvent e) {switch(e.getKeyCode()) {case KeyEvent.VK_LEFT:left = true;break;case KeyEvent.VK_RIGHT:right = true;break;case KeyEvent.VK_UP:up = true;break;case KeyEvent.VK_DOWN:down = true;break;default:break;}}public void minusDirection(KeyEvent e) {switch(e.getKeyCode()) {case KeyEvent.VK_LEFT:left = false;break;case KeyEvent.VK_RIGHT:right = false;break;case KeyEvent.VK_UP:up = false;break;case KeyEvent.VK_DOWN:down = false;break;default:break;}}//这个就是防止和边界碰撞的代码,原理很简单//多看两遍就能看懂,speed是按一次方向键,x或y变换的次数public void draw(Graphics g) {super.drawMyself(g);if(x>10 && x<1680 && y>20 && y<870) {if(left) {x -=speed;}if(up) {y -=speed;}if(right) {x +=speed;}if(down) {y +=speed;}}else if(x<=10 && y>20 && y<870) {if(up) {y -=speed;}if(right) {x +=speed;}if(down) {y +=speed;}}else if(x>=1680 && y>20 && y<870) {if(left) {x -=speed;}if(up) {y -=speed;}if(down) {y +=speed;}}else if(x>10 && x<1680 && y>=870) {if(left) {x -=speed;}if(right) {x +=speed;}if(up) {y -=speed;}}else if(x>10 && x<1680 && y<=20) {if(left) {x -=speed;}if(right) {x +=speed;}if(down) {y +=speed;}}else if(x<=10 && y>=870) {if(right) {x +=speed;}if(up) {y -=speed;}}else if(x>=1680 && y>=870) {if(up) {y -=speed;}if(left) {x -=speed;}}else if(x>=1680 && y<=20) {if(down) {y +=speed;}if(left) {x -=speed;}}else if(x<=10 && y<=20) {if(down) {y +=speed;}if(right) {x +=speed;}}else {}
}
Java小游戏,防止物体跑出四周边界的算法相关推荐
- java小游戏-java小游戏-大鱼吃小鱼
java小游戏-java小游戏-大鱼吃小鱼 1 创建窗口 2 添加背景图 3 启动封面 4 启动页面的点击事件 5 游戏开始时的背景添加 6 双缓存解决闪屏问题 7 地方第一条小鱼的添加 8 敌方左方 ...
- Java小游戏——贪吃蛇
Java小游戏之贪吃蛇 系统目标 贪吃蛇是一个益智类游戏,通过本游戏的设计和实现,可以提升Java技术能力,提升自己独立开发的能力及掌握项目的开发流程. 开发环境 系统环境:Windows 开发工具: ...
- java小游戏-java小游戏-飞机大战
java小游戏-java小游戏-飞机大战 1 窗口创建 2 背景图片添加 3 启动页面制作 4 启动页面点击事件 5 游戏物体父类的编写 6 背景的移动 7 双缓存的添加 8 背景图片的循环出现 9 ...
- java游戏牛仔炮筒,《Java小游戏实现》:坦克大战(续2)
<Java小游戏实现>:坦克大战(续2) 相关博文: 博文<Java小游戏实现>:坦克大战(续1)中已经实现到了坦克可以发射一颗子弹了.这篇博文在此基础上继续实现更多的功能. ...
- JAVA小游戏推球球
图形化界面的简单应用 先看效果 java小游戏推球球 代码如下 import javax.swing.*; import java.awt.*; import java.awt.event.*;pub ...
- java小游戏-java小游戏-黄金矿工
java小游戏-java小游戏-黄金矿工 1 窗口绘制 2 绘制图片 3 红线绘制 4 红线摇摆 5 红线抓取 6 创建金块 7 双缓存技术 8 抓取判断 9 抓取返回 10 多个金块 11 Bug金 ...
- Java小游戏——是男人就坚持20秒
Java小游戏--是男人就坚持20秒 给大家分享一个小游戏,这是一个Swing项目,先用代码画界面板,然后依次添加飞机.子弹.计时器等: 代码如下: /** 程序的主窗体*/ public class ...
- 各种经典java小游戏_Java是这个世界上最好的语言!
为什么? 请看TIOBE最新发布的编程语言排行榜: TIOBE开发语言排行榜每月更新一次,其结果可以用来检阅开发者的编程技能能否跟上趋势,或是否有必要作出战略改变,以及什么编程语言是应该及时掌握的. ...
- Java小游戏:模仿微信群发红包
Java小游戏:模仿微信群发红包 微信群主发普通红包,普通红包规则: 群主的一笔金额,从群主余额中扣除,平均分成n等分,让群员领取. 成员领取红包后,保存到余额中. 请根据规则,完成案例中所有类的定义 ...
- 《Java小游戏实现》:坦克大战
<Java小游戏实现>:坦克大战 前面写了一个简单的聊天小程序,今天开始就写一个坦克大战的游戏,算是对Java相关小知识点的一个应用. 这个游戏的完成,我们也是分步完成,逐步累加,一个一个 ...
最新文章
- 【Docker】容器的几种网络模式
- workunit 的指的工作单元是什么_三支一扶指的是什么?主要工作内容有哪些?
- 无线传输系统功率LCC功率补偿系统设计
- linux 脚本 ,shell中的与
- 在Eclipse中的Android项目里实现代码“.NET研究”复用
- 4.API的调用过程(系统服务表)
- c语言6字符宽度和小数位数,2017年计算机二级C语言考点复习
- linux下iostat命令无效,linux iostat命令详解
- python函数式编程读取数据时出现错误_Python编程中,函数遇到问题是抛出错误好还是约定返回值好?...
- 解决PhoneGap在Android手机上的全屏问题
- bean json转kotlin_Android--------kotlin插件神器Json直接生成javaBean
- 信息学奥赛C++语言:平方值
- Linux: 不用密码直接用ssh 登入到远端电脑(RAS/DSA认证)
- 【ElasticSearch】Es 源码之 IndicesModule 源码解读
- 任正非:华为的岗位没有年龄限制;腾讯微博将于9月28日停止运营;微软关闭Visual Studio Online|极客头条
- linux系统修复找不到原安装,Linux 系统用安装盘来修复GRUB 详解
- Java推断文本文件编码格式以及读取
- 盘点阿里巴巴 33 个牛逼的开源项目,你用过哪几个?
- uclinux 嵌入式linux,2017最新嵌入式操作系统uCLinux分析
- 常用计量单位及其换算