按照官方教程写了个FlappyFly游戏,在iphone5s以下运行会报错

在iPhone5和iphone4s运行会报错,iphone5s及以上都没问题,iphone5s和iphone5以下的差别就是64位处理器和32位处理器吧?
求各位大神指导下,实在是不知道哪里的问题耶,觉得应该是跟处理器有关~



class MainScene: CCNode, CCPhysicsCollisionDelegate {

 var hero = CCSprite();
 var gamePhysicsNode = CCPhysicsNode();
 var ground1 = CCNode();
 var ground2 = CCNode();
 var grounds:Array<CCNode> = ];
 var points:NSInteger = 0;
 var scoreLabel = CCLabelTTF();
 var sinceTouch:NSTimeInterval = 0.0;
 var obstacles = NSMutableArray();    
 var startButton = CCButton();
 var restartButton = CCButton();
 var isGameStart:Bool = false;
 var isGameOver:Bool = false;

 //无关代码都不粘上来了

func didLoadFromCCB(){
 
 scrollSpeed = 80;
 grounds = ;
startButton.visible = true;

//只要注释掉这里的代理或者代理函数,iphone5-就会没问题了,
 gamePhysicsNode.collisionDelegate = self;
 
 hero.physicsBody.collisionType = "hero";
 hero.physicsBody.affectedByGravity = false;
 hero.zOrder = NS_ENUM.DrawingOrderHero.rawValue;
}
 
 
//两个代理函数
 func ccPhysicsCollisionBegin(pair: CCPhysicsCollisionPair!, hero nodeA: CCNode!, level nodeB: CCNode!) -> Bool {
   /*CODE*/
 return true;
 }
 
 func ccPhysicsCollisionBegin(pair: CCPhysicsCollisionPair!, hero nodeA: CCNode!, goal nodeB: CCNode!) -> Bool {
 /*CODE*/
 return true;}


}

报错信息:

2014-12-05 13:59:43.922 FlappyFly

*** Assertion failure in -, /Users/yuezi/Documents/OC study/FlappyFly.spritebuilder/Source/libs/cocos2d-iphone/cocos2d/CCPhysicsNode.m:369

2014-12-05 13:59:43.925 FlappyFly

*** Terminating app due to uncaught exception ‘NSInternalInconsistencyException’, reason: 'CCPhysicsCollisionBegin delegate methods must return a BOOL.

调试代码发现,问题在这里:

if(){

NSAssert(strcmp(returnType, @encode(BOOL)) == 0, @"CCPhysicsCollisionBegin delegate methods must return a BOOL.");
.begin = methods*;

}

iphone5s以上 @encode(BOOL)值为B
iphone5s以下 @encode(BOOL)值为c

怎么破?


解决了!
最后还是修改了cocos2d的CCPhysicsNode.m源码
(红色部分为自己新加上去的)

if(){

NSAssert((strcmp(returnType, @encode(BOOL)) == 0 || strcmp(returnType, "B") == 0), @"CCPhysicsCollisionBegin delegate methods must return a BOOL.");
.begin = methods*;

}