Как реализовать жесты в cocos2d для конкретной сцены - PullRequest
1 голос
/ 09 декабря 2011

Я делаю карточную игру, используя cocos2d для iOS, и пользователь может просто провести картой вверх, чтобы выбрать свою карту, а это значит, что ему не нужно проводить больше нигде в игре. Это может быть очень глупый вопрос, но даже после изучения Интернета в течение последних двух дней я не смог найти ничего особенного для реализации распознавания жестов (а именно, пролистывания вверх) только в одной сцене, а не во всем приложении. Я прочитал документацию по документации UISwipeGestureRecognizer от Apple, многочисленные блоги и несколько других видеоуроков. Все, что я мог найти, это реализовать его в приложении с одной сценой. Небольшое движение в правильном направлении было бы потрясающим. Я действительно буду признателен, если вы предоставите мне некоторый пример кода. Я понял концепцию методов CCTouchesBegan и т. Д. Но я все еще не понимаю, как реализовать смахивание одного из двух спрайтов (карт) в PlayerScene (сцена, где игроки выбирают карты).

Заранее спасибо миллион.

1 Ответ

2 голосов
/ 10 декабря 2011

Это так же просто, как добавить UIGestureRecognizer в определенный момент времени, а затем удалить этот распознаватель жестов, когда он вам больше не нужен. В вашем случае это может быть метод очистки (void) вашей сцены. Нет причин, по которым распознаватели жестов должны быть глобальными.

Вы должны проверить Kobold2D (на основе cocos2d), для которого я создал супер-легкую оболочку для распознавателей жестов . С этим все, что вам нужно сделать, это установить соответствующий «разрешенный» флаг на YES, а затем на NO, чтобы запускать и останавливать распознаватели жестов.

...