Objective c 我自己的碰撞检测

Objective c 我自己的碰撞检测,objective-c,xcode,Objective C,Xcode,所以基本上我在建立自己的碰撞检测,但我不能完全正确地得到数学 因此,我这样做的方式是我有一个静态的球员和平台是随机生成的,并向球员移动 这是我目前的代码: //Checks to see is a platform has been created if(IsPlatform == true){ // performs check on the players position && platform position if (Player.po

所以基本上我在建立自己的碰撞检测,但我不能完全正确地得到数学

因此,我这样做的方式是我有一个静态的球员和平台是随机生成的,并向球员移动

这是我目前的代码:

//Checks to see is a platform has been created
if(IsPlatform == true){

        // performs check on the players position && platform position
        if (Player.position.y > 100 && platform.position.x < platform.contentSize.width - Player.position.x/2) {

        // allows you to jump on the platform
            JumpUp = true;

        }else if(Player.position.y < 100 && platform.position.x < platform.contentSize.width - Player.position.x/2){

            // Hit platform
            JumpUp = false;

        }else{

            JumpUp = false;
}
但我遇到的问题是让平台开始端击中玩家,因为每个平台的大小在100-400px之间不同,有时击中是在平台开始之前,其他时间是在平台开始之后,如果我幸运地在正确的位置

我尝试了很多不同的选择,但也许我的思想已经变得模糊,所以如果有人能帮我的话,我会打电话给你

谢谢
Eli

我不知道这段代码到底应该做什么,但这个检查没有任何意义:

platform.position.x < platform.contentSize.width - Player.position.x/2
您不应该在这些检查中使用platform.contentSize.width,或者如果您这样做,则应该检查平台的中心,然后以另一种方式写入。也许你真的想写这个:

 platform.position.x < Player.position.x/2