Currently, my actor classes have CCActions defined inside them which I retain because I do not want to reallocate them for performance reasons. Now if I have a CCSequence which has a CCCallFunc inside it, then my problem begins - when it's time to release my actor, the actor's dealloc method does not get called because CCCallFunc actually retains a copy of my actor when I created it. So now, this like a chicken and egg thing where the actor is waiting for the retain count to go down to 0 but then my CCCallFunc - which is inside my class (and retained) needs to be deallocated as well for the retain count to go down (but of course, it wouldn't get deallocated because I put it in the dealloc method - which is not being called at all).. Sorry for the confusing explanation but I hope you get the idea :) I don't want to put another method just to release this CCAction just before calling release as I am thinking that there might be a better way of handling this. Any thoughts?
Cheers!