gratis game creator cocos2d cocos iphone text cocos2d-iphone

iphone - cocos2d - cocos game creator



cocos2d: alineaciĆ³n de texto LabelAtlas? (4)

FWIW, terminé escribiendo código para hacer esto.

if(delegate.score > 99) { [scoreLabel setPosition:ccp(374, 265)]; } else if(delegate.score > 9) { [scoreLabel setPosition:ccp(410, 265)]; }

¿Hay alguna forma en Cocos2d 0.7.1 para especificar la alineación de texto en LabelAtlas?

Estoy usando un LabelAtlas para un puntaje (que se muestra en la esquina superior derecha), pero cuando el puntaje supera 10, el segundo dígito se corta.

Puedo implementar código para detectar eso y mover LabelAtlas, pero ¿hay alguna forma de que cocos2d lo haga por mí?

Gracias.


Mientras eso funcione, tendrás el mismo problema si el puntaje supera 1000.

Puede usar la propiedad anchorPosition para cambiar dónde se define la posición. Por ejemplo; en mi juego scoreLabel la scoreLabel de scoreLabel en la esquina inferior derecha de la pantalla. Para garantizar que esté siempre visible, configuro anchorPosition como la esquina inferior derecha de la etiqueta y luego establezco su position donde quiero que esté la esquina inferior derecha de la etiqueta.

[scoreLabel setAnchorPoint:ccp(1, 0)]; [scoreLabel setPosition:ccp(480, 0)];

Si lo quiere colocar en la esquina superior derecha de la pantalla, puede utilizar de manera similar el siguiente código para definir el ancla como la esquina superior derecha.

[scoreLabel setAnchorPoint:ccp(1, 1)]; [scoreLabel setPosition:ccp(480, 320)];


Simplemente uso esto para centrar mis LabelAtlas :

[scoreLabel setAnchorPoint:ccp(.5, .5)];

Cuando el puntaje cambia, la etiqueta permanece alineada en el centro sin actualizar la posición.