我正在搞乱 iOS 7 中的新物理 API。
我决定做一个简单的游戏,我有一个角色,他可以通过手指轻敲在屏幕上移动,周期性地,形状从底部飞起来,如果它们击中角色,游戏就结束了。
我已经实现了上述所有功能,并且效果很好,但是,唯一没有的是当形状与角色碰撞时角色会掉落。
所有碰撞都有效,我的问题是试图让角色在碰撞发生时摔倒。因为我不希望角色在此之前跌落(假设他在试图避开形状时悬浮)我决定在碰撞发生时将角色添加到重力中,确实如此,但首先,角色射击随着碰撞动画的继续向上。
有什么办法可以防止碰撞动画的发生吗?有没有更好的办法?
这是我在collisionBehavior:beganContactForItem:withBoundaryIdentifier:atPoint:
方法中的代码:
// Main Character
//
if ([item isEqual:self.mainCharacter]) {
[self.collision removeItem:item];
// Push
//
UIPushBehavior *pushBehaviour = [[UIPushBehavior alloc] initWithItems:@[self.mainCharacter] mode:UIPushBehaviorModeInstantaneous];
[pushBehaviour setPushDirection:CGVectorMake(0.0f, 1.0f)];
[self.animator addBehavior:pushBehaviour];
[pushBehaviour setActive:YES];
[self.gravity addItem:item];
}