Управление Slider Control в справке Cocos2d - PullRequest
1 голос
/ 13 июня 2011

Я делаю игру в Cocos2d.Я хочу, чтобы пунктирная линия следовала за пальцем пользователя.Я хочу, чтобы линия была прямой.Проблема в том, как проверить, сколько «точек» поместится на расстоянии между мячом и где пользователь касается?И заставить его следовать по прямой линии между положением мяча и положением пальца?Итак, вот повторное уточнение:

Мяч неподвижно стоит на левой стороне экрана и находится на полпути вверх по экрану.Пользователь перетаскивает палец, и между позицией мяча и позицией касания рисуется пунктирная линия.У меня есть «точечное» изображение, и я бы хотел, чтобы оно использовалось в качестве точек на линии.Таким образом, он должен будет воссоздать спрайт столько раз, сколько он поместится в области между двумя точками.Пожалуйста, скажите мне, если вы хотите, чтобы я уточнил, Спасибо !!

1 Ответ

0 голосов
/ 13 июня 2011

Я бы сделал объект CCNode с именем dottedLine или что-то в этом роде.

Точечное изображение будет спрайтом, который добавляется как дочерний элемент узла (несколько раз).

Я бы работалпуть от прикосновения мяча к пальцу, используя теорему Тригонометрии / Пифагора.

Для создания линии:

Из точки 0, мяч, я бы добавил 15-20 пикселей к точке касания вдольпуть и поместив точку, я повторял бы это, пока не достигнул конца строки.

Для каждой размещенной точки я увеличивал счетчик и устанавливал это число как целочисленный тег этого спрайта.для использования в методе обновления.

Каждый раз, когда вызывается метод cctouchesmoved, я вызываю метод обновления объекта dottedLine.

Этот метод проверяет расстояние между мячом и точкой касания, делит его на числоиз точек в настоящее время дочерних объектов и удалить или добавить все, что нужно.Воссоздание спрайтов каждый раз, когда вы двигаете пальцем, будет грязным и расточительным, поэтому повторное использование ваших точек и просто установка их новых позиций, поскольку путь между изменениями мяча и точки касания, вероятно, будет наилучшим.

Я не собираюсьчтобы предоставить вам код, я думаю, что я объяснил более чем достаточно, чтобы вы занялись поиском в Google и решили это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...