更好的iPhone操纵杆

时间:2012-03-07 05:45:12

标签: iphone cocos2d-iphone joystick d-pad

最近我一直致力于为iPhone创建Pac-Man。是的,我知道这是在App商店,但它是5美元,我自己有更多的乐趣。除了操纵杆外,一切都很棒。它处理紧急转弯并不是很好,而且我常常把自己重新加入到鬼魂中。显然,令人难以置信的是令人沮丧。我想知道是否有人遇到任何类似的问题以及他们做了什么来修复它?目前我的操纵杆代码如下所示:

-(BOOL) checkTouchesBegan: (CGPoint*) location
{
int converty = location->y-160;
int convertx = location->x-240;

float ydif = (1.0)*(converty - y);
float xdif = (1.0)*(convertx - x);
float degrees = atan2f(xdif, ydif) * 57;
float squared = xdif*xdif + ydif*ydif;

if(degrees >= 45 && degrees < 135 && sqrt(squared) < 120)
{
    direction = 1;
    return YES;
}
else if(degrees < -45 && degrees >= -135 && sqrt(squared) < 120)
{
    direction = -1;
    return YES;
}
else if(degrees >= -45 && degrees < 45 && sqrt(squared) < 120)
{
    direction = 2;
    return YES;
}
else if(sqrt(squared) < 120)
{
    direction = -2;
    return YES;
}
return NO;

}

基本上我会检查触摸的位置,并根据该位置更改字符方向。

感谢您的帮助!

0 个答案:

没有答案