English Version            Русская версия

 [ Разделы сервера ]  [ Карта сервера ]  [ Новости сервера ] [ Обратная связь ]



Есть иной способ использования метода hitTest(), и он состоит в том, чтобы обнаруживать столкновения между точкой и содержимым клипа – не только с ограничивающим прямоугольником. Представьте клип, который содержит несколько отдельных графических элементов или фигур. Используя метод hitTest(), мы можем сказать, сталкивается ли точка с любой из фигур в этом клипе. Ниже представлен синтаксис, использующийся для вызова этого типа обнаружения столкновения: myMovieClip.hitTest(x,y,true) Вы могли бы сразу обратить внимание, что это идентично синтаксису для обнаружения столкновения между клипом и точкой, с одним изменением: добавлением параметра true. Когда этот параметр установлен в true, метод hitTest() проверяет на столкновение между точкой и содержимым клипа. Если этого параметра нет или если он установлен в false, то метод hitTest() проверяет на столкновение между тоской и ограничивающим прямоугольником клипа. Для просмотра соответствующего случаю примера, откройте файл puzzle_piece.fla в папке Chapter05. В сцене вы увидите клип с именем экземпляра piece, содержащий фигуру части головоломки-пазла, в которой белая пуля летит в моего кота. Код ActionScript в этом клипе просто проверяет столкновение между курсором мыши и фигурой, когда происходит нажатие кнопки мыши. 1 _root.onMouseDown =function (){ 2 mx =_xmouse; 3 my =_ymouse; 4 if (piece.hitTest(mx,my,true)){ 5 trace("Meow!"); 6 } 7 } Первая строка этого кода определяет функцию, которая будет вызываться, когда кнопка мыши нажата. Когда эта функция вызвана, она устанавливает две переменных, как в наших предыдущих примерах, для сохранения позиции курсора мыши. Затем, в строке 4 встречается условный оператор, который проверяет, дает ли true функция hitTest() для совпадения положения курсора с клипом под названием piece. Если результат true, то выполняется оператор trace, чтобы показать вам, что обнаружено столкновение. Вы можете увидеть практическое применение этой методики в файле puzzle_piece_drag
Hosted by uCoz