que estoy tratando de hacer un método para mi CCSprite
basado Player
clase para iniciar la instancia jugador fundido o salir hasta que se detiene llamando stopAllActions.
Cocos2d fade in/out acción para repetir siempre
En mi clase tengo Player
:
- (void)pulse
{
[self setOpacity:1.0];
CCAction *fadeIn = [CCFadeTo actionWithDuration:0.5 opacity:0.5];
CCAction *fadeOut = [CCFadeTo actionWithDuration:0.5 opacity:1.0];
CCSequence *pulseSequence = [CCSequence actions:
fadeIn, // I get a warning about incompatible pointer types...
fadeOut,
nil];
[self runAction:pulseSequence];
}
Esto no funciona y no aborda la parte de repetir para siempre. Sé que probablemente debería usar CCRepeatForever
, pero no veo cómo implementarlo correctamente.
Gracias!
Todavía estoy obteniendo los errores de puntero incompatibles para ambas acciones de fundido. '~/Player.m: advertencia: Problema semántico: tipos de punteros incompatibles que envían 'CCAction *' al parámetro de tipo 'CCFiniteTimeAction *' ' – Steve
aunque si cambio 'CCAction' a' CCFiniteTimeAction' el error desaparece y funciona. ¿Por qué sería eso? – Steve
Entiendo ahora, usted escribió a CCAction cuando no era necesario. CCFadeTo hereda CCFiniteTimeAction. Eso es todo lo que CCSequence necesita saber. Edité mi respuesta en consecuencia. – Steinbitglis