关于Java 中,我们的作业是一个 机战的小游戏,怎么去实现一个 子弹击中的问题,用代码解释。

 我来答
匿名用户
2014-04-18
展开全部

这个是碰撞检测算法。

简单说,你绘制的对象,比如飞机A,子弹B,都是图形,有大小、有形状的,这个形状的边角都有坐标点。

//B的矩形右侧坐标
B.RightX;
//A的矩形左侧坐标
A.LeftX;

假定它们图形都是矩形,子弹B从左侧向右侧平移,与飞机A“碰撞”,碰撞的条件,可以认为是子弹B的最右侧坐标大于等于飞机A的所在的左侧坐标。

if(B.RightX >= A.LeftX)

游戏循环中不断进行这样的检测,一旦检测到碰撞成立时就认为是击中了。


进一步,并不是每个图形都是规则的矩形或者圆形,这个时候,你就要为图形自己定义一个碰撞检测图形(比如一个合适大小的圆形,大小刚好可以包裹你的对象)这个形状的坐标与对象运动关联,同步改变。通过这个碰撞检测的图形的坐标是否重合来判断是否碰撞。

更多追问追答
追问
这个我还是知道的,那用代码怎么写嘛?
追答
你已经写给你了啊,就是一个if,判断坐标。剩下的游戏逻辑就是你自己的事了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式