Читаем Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript полностью

...

Примечание

Команда startDrag – основное действие, позволяющее пользователю перетаскивать клип. Оно не такое универсальное, как методы перетаскивания, рассмотренные ранее, но в простых случаях работает хорошо. Команда stopDrag останавливает перетаскивание.

onClipEvent(mouseDown) {

// Определяем положение курсора.

mx = _root._xmouse;

my = _root._ymouse;

// Просматриваем все элементы картинки.

for (x=0;x<6;x++) {

for(y=0;y<4;y++) {

piece = _root[x+"-"+y];

// Выясняем, находится ли элемент под курсором

// и не находится ли он уже на своем месте?

if (piece.hitTest(mx,my) and (piece._alpha < 100)) {

// Пользователь щелкнул по элементу.

piece.startDrag()

// Выходим из циклов.

x = 6;

y = 4;

break;

}

}

}

}

Когда пользователь отпускает кнопку мыши, элемент фиксируется. Код проверяет расстояние от центра элемента до центра контура: если оно не превышает 10 пикселов, элемент перемещается точно в свое положение и становится полностью непрозрачным, так что пользователь видит: элемент находится на своем месте.

onClipEvent(mouseUp) {

// Прекращаем перемещение элемента.

stopDrag();

// Измеряем расстояние от центра элемента до центра контура.

dx = _root.outline._x – piece._x;

dy = _root.outline._x – piece._y;

dist = Math.sqrt(dx*dy+dy*dy);

// Если расстояние меньше 10 пикселов,

// элемент помещается на свое место.

if (dist < 10) {

piece._x = _root.outline._x;

piece._y = _root.outline._y;

// Делаем элемент полностью непрозрачным.

piece._alpha = 100;

}

}

Другие возможности

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

Еще один способ сделать игру интереснее – написать функцию, которая будет проверять, все ли элементы уже находятся на своем месте и если да, будет осуществлять переход к кадру с поздравлением с победой. Можно усложнить игру, создав более 24 кусочков, тем самым получив больше мелких элементов.

Если хотите, позвольте игроку поворачивать каждый элемент на 90°, 180° или 270°. Для этого пользователь мог бы нажимать клавишу Пробел. Элемент будет фиксироваться в своем положении только в том случае, если он правильно повернут.

Конечно, есть более сложные варианты, например, картинки-загадки, у которых нет очерченного контура. Игрок может соединить два или более элементов в любом месте экрана, а затем прикрепить их к целой картине. Однако для такой игры потребуется написать большой сценарий. Вместо этого давайте перейдем к другому виду составления картинок.

<p>Пятнашки</p>

Исходный файл: Slidingpuzzle.fla

В отличие от пазла игра "Пятнашки" куда интереснее в качестве компьютерной игры, чем в виде обычной игры. "Пятнашки" обычно состоят из 15 квадратных элементов, которые перемещаются вдоль сетки, рассчитанной на 16 элементов. Пустое место – дополнительная область, куда может быть перемещен элемент мозаики.

Перейти на страницу:

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных