0
我正在用Xcode使用Cocos2d 2.0fc0開發遊戲,並且我已經掛斷電話。我想在加載CCLayer/CCScene Game類時定義一個BOOL屬性來定義第二個玩家是本地玩家還是遠程玩家(Game Center)。問題是我不確定如何在這種情況下做到這一點。以下是我到目前爲止有:在CCScene中爲CCLayer設置屬性
@interface RemoteGame : CCLayer <GameCenterControllerDelegate> {
BOOL isRemote;
}
@property (assign, readwrite) BOOL isRemote;
+(CCScene *) sceneIsRemote: (BOOL) b;
-
@implementation RemoteGame
@synthesize isRemote;
+(CCScene *) sceneIsRemote: (BOOL) b {
CCScene *scene = [CCScene node];
RemoteGame *layer = [RemoteGame node];
layer.isRemote = b;
[scene addChild: layer];
return scene;
}
-(id) init {
if((self=[super init])) {
if (isRemote) {
[GameCenterController sharedController].delegate = self;
}
}
}
然後我加載像這樣的情景:
CCScene *trans = [CCTransitionFlipX transitionWithDuration:.75 scene:[RemoteGame sceneIsRemote: YES]];
[[CCDirector sharedDirector] replaceScene:trans];
[self presentGCTurnViewController];
場景加載罰款,但BOOL沒有正確設置。
對,完全有道理!我移動了代表命令,如上所述,國王如預期。謝謝! – Kris 2012-03-30 00:23:39