我现在只需要你的帮助。我制作了一些碰撞系统,在左右碰撞时效果很好。但!我不知道如何制作顶部和底部。我很感激你在这里的帮助。
function collided(a, b) {
if((((a['y'] + a['height']) >= b['y']) && ((a['y'] + a['height']) <= b['y'] + b['height'])) && (((a['x'] + a['width']) >= b['x']) && ((a['x'] + a['width']) <= (b['x'] + b['width']))))
return 1;
else if(((a['y'] + a['height']) >= (b['y'])) && ((a['y'] + a['height']) <= (b['y'] + b['height'])) && ((a['x'] == (b['x'] + b['width']))))
return 2;
// i need help with this (top collision) and need some bottom collision
else if((b['y'] < (a['y'] + a['height'] + 5)) && ((b['x']) < (a['x'] + a['width'])) && ((a['x']) < (b['x'] + b['width'])))
return 3;
}
所以return 1是从左边的碰撞(从b对象左边,就像停留的那个),2 是右边,3 是顶部,4 是底部。