对于小鸟撞击水管的判断那里,有点晕了

来源:4-20 小游戏小鸟碰撞铅笔逻辑实现

新奥时代

2018-08-24

if (bird.top > pencil.bottom ||
   bird.bottom < pencil.top ||
   bird.right < pencil.left ||
   bird.left > pencil.right
)

这段代码看晕了,完全不知道是怎么比较出来的

写回答

1回答

傅猿猿

2018-08-24

其实吧,bird.left > pencil.right是可以简化掉的,只不过我写全了。给你拆开分析吧。bird.top > pencil.bottom意思是上方铅笔的底部不能超过小鸟的顶部,不然小鸟就“戳”上去了,对吧。bird.bottom < pencil.top 这个指的是小鸟和下方铅笔,不能“戳”下去。 bird.right < pencil.left 是小鸟的右侧不能碰到上下两种铅笔的左侧,最后一个条件因为小鸟是向右运动的,所以可以省略

0
2
Mrxxm
bird.left > pencil.right 这个条件不能省略,当飞过第一根铅笔,且铅笔还未被销毁,铅笔在小鸟后方,还是需要bird.left > pencil.right这个判断的。
2019-06-04
共2条回复

微信小游戏入门与实战,一天之内搞定微信小游戏开发

官方同步,第一时间掌握整套微信小游戏开发核心技术

3515 学习 · 664 问题

查看课程