Inicializa escena en cocos2d con el parámetro

Estoy intentando inicializar una escena en cocos2d (versión 0.99.5) y quiero pasar un parámetro. En este caso, el parámetro es un valor int correspondiente al número de nivel. La class de escena en sí misma es una subclass de CCLayer , y la inicializo con el método de class de nodo:

 GameScene *scene = [GameScene node]; //GameScene subclass of CCLayer 

Tengo un método de inicio personalizado que toma la variable "nivel", de la siguiente manera:

 - (id) initWithGameLevel:(int)level { if ((self = [super init])){ // etc } } 

Solo me pregunto: ¿estoy lejos de la base en mi enfoque para crear mi propio método initWithX y cómo inicializaré la escena con el nivel integer?

Agregue este método a su subclass

 +(id)nodeWithGameLevel:(int)level{ return [[[self alloc] initWithGameLevel:level] autorelease]; } 

y en vez de

 GameScene *scene = [GameScene node]; 

escribir

 GameScene *scene = [GameScene nodeWithGameLevel:levelNumber];