Ios 如何改进此跳转代码?
我有一个iOS游戏,青蛙从睡莲垫跳到睡莲垫。游戏是垂直方向的,我试图实现的视角是鸟瞰图,用户从顶部观看青蛙和风景。青蛙从睡莲垫跳到睡莲垫,代码如下: 反弹方法:Ios 如何改进此跳转代码?,ios,objective-c,Ios,Objective C,我有一个iOS游戏,青蛙从睡莲垫跳到睡莲垫。游戏是垂直方向的,我试图实现的视角是鸟瞰图,用户从顶部观看青蛙和风景。青蛙从睡莲垫跳到睡莲垫,代码如下: 反弹方法: -(void)bounce { [self jumpSound]; if (frog.center.y > 450) { upMovement = 2; } else if (frog.center.y > 350) {
-(void)bounce {
[self jumpSound];
if (frog.center.y > 450) {
upMovement = 2;
}
else if (frog.center.y > 350) {
upMovement = 1.5;
}
else if (frog.center.y > 250) {
upMovement = 0.5;
}
}
还有莉莉帕德运动:
-(void)lilyPadMovement {
if (CGRectIntersectsRect(frog.frame, lily.frame) && (upMovement <=-1)){
[self bounce];
[self lilyPadFall];
if (lilyPadUsed == NO) {
addedScore = 1;
lilyPadUsed = YES;
}
}
}
-(无效)LilyPadmove{
如果(CGRectIntersectsRect(frog.frame,lily.frame)&(upMovement你真的想知道是否有足够的重叠,使青蛙能够离开,而不是掉进水里。因此,可能中心之间的距离必须小于X,你可以根据看起来好的地方调整X
例如(使用毕达哥拉斯公式):
//已定义此函数:
内联浮点正方形(浮点a){返回a*a;}
//将相交测试更改为:
如果(((正方形(蛙心x-lily.center.x)+正方形(蛙心y-lily.center.y))<10000)
(向上移动你这是什么意思?设置cgrectintersectsrect&&(frog.center.x^
是C的异或运算符吗?是的,但每次回到C我都会忘记它!固定在上面…thx
//having defined this function:
inline float square (float a) { return a*a; }
//change intersect test to:
if (((square(frog.center.x-lily.center.x) + square(frog.center.y-lily.center.y)) < 10000) &&
(upMovement <= -1)) { ...