Что такое точное сообщение об ошибке и что идет не так?
[self.project addSprite:sprite];
[p addSprite:sprite];
И p
, и self.project
будут одним и тем же объектом (если вы не сделали что-то еще, чтобы переназначить project
между временем, назначенным p
, и тем блоком был выполнен.
Обратите внимание, что вы также пропускаете объекты, которые называются sprite
и aImage
.