Простое обнаружение столкновений в Cocos2d - это либо обнаружение перекрывающихся прямоугольников, либо обнаружение точки в прямоугольнике. Чтобы обнаружить столкновения сложных форм, вам нужно использовать физический движок (Box2D или Бурундук), но это, несомненно, сделает вашу игру непростой:).
Или, может быть, вы можете использовать двухпроходное обнаружение столкновений. Сначала вы обнаруживаете, перекрывают ли ограничивающие прямоугольники фигур, и если они это делают, то вы используете некоторую математическую формулу или что-то еще, чтобы проверить столкновение с ромбами. Немного скелетного кода:
if (CGRectContainsRect([sprite1 boundingBox], [sprite2 boundingBox])) {
/* the rectangles overlap so now use some trigonometric formula,
euler formula, harmonic series or fourier transform or something,
to further check if the actual shapes overlap or not :P */
}