Гэри Розенцвейг - Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript

Тут можно читать онлайн Гэри Розенцвейг - Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript - бесплатно ознакомительный отрывок. Жанр: comp-programming. Здесь Вы можете читать ознакомительный отрывок из книги онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript
  • Автор:
  • Жанр:
  • Издательство:
    неизвестно
  • Год:
    неизвестен
  • ISBN:
    нет данных
  • Рейтинг:
    3.3/5. Голосов: 101
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 60
    • 1
    • 2
    • 3
    • 4
    • 5

Гэри Розенцвейг - Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript краткое содержание

Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript - описание и краткое содержание, автор Гэри Розенцвейг, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

Данная книга посвящена программированию игр с помощью ActionScript. Здесь вы найдете подробные указания, необходимые для создания самых разных игр – аркад, головоломок, загадок и даже игровых автоматов. В тексте приведены исходные коды программ и детальные, доступно изложенные инструкции. Базовые принципы программирования ActionScript рассматриваются на примере игр, однако вы без труда сможете применить полученные знания и для разработки неигровых проектов, таких как Web-дизайн и реклама. Рекомендации Гэри Розенцвейга помогут вам не только придумывать занимательные игры и размещать их на Web-сайте, но и оптимизировать скорость их работы, а также защищать свои творения от несанкционированного копирования. Представленный в книге код несложно изменить для использования в других программах.

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

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

Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript - читать книгу онлайн бесплатно (ознакомительный отрывок), автор Гэри Розенцвейг
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Исходный файл: Pyramidfla

Пасьянс "Пирамида" не так популярен, как обычный пасьянс, и не так сложен; однако, ему легко научиться и он очень затягивает. На рис. 15.7 представлено начало игры.

Рисунок 15.7. В пасьянс «Пирамида» играют с помощью пирамиды из 28 карт и остальной колоды

Играть можно любой полностью открытой картой. Если часть карты закрыта другой картой пирамиды, играть этой картой можно только в том случае, если закрывающую ее карту удалить. Удалить карту игрок может только в том случае, если найдет подходящую ей другую карту, чтобы сумма их значений равнялась бы 13. Например, 10 и 3 или 6 и 7 могут составить пару. Туз имеет значение 1, валет значение 11, дама 12 и король 13. Это значит, что только король может быть выбран сам по себе, без второй карты.

Цель, естественно, в том, чтобы убрать из пирамиды все карты. Оставшиеся 24 карты колоды помещены под пирамидой, и за один ход можно перевернуть одну карту. Любая перевернутая карта может быть выбрана вместе с картой из пирамиды так, чтобы составить в сумме число 13.

Попробуйте поиграть в этот пасьянс. Вам придется отложить книгу, поскольку понадобится потратить какое-то время, чтобы окончить игру.

Задача проекта

Цель этого проекта – создание полной версии игры в пасьянс «Пирамида». Программа должна узнавать даже тот редкий случай, когда игрок выигрывает, удаляя все карты из пирамиды. Если игрок чувствует себя в безвыходном положении или текущая партия представляется неплодотворной, он может нажать кнопку и в любое время пересдать карты.

Подход

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

Игрок может выбрать любую незакрытую карту из пирамиды или из стопки карт с открытой мастью. Выбранная карта выделяется рамкой.

Когда игрок щелкает по следующей карте, она сравнивается с первой, чтобы узнать, составит ли она с ней вместе 13 очков. Если да, обе карты удаляются. Если при этом одна из карт находится в стопке карт мастью вверх, то лежащая под ней карта открывается.

Определить, открыта ли какая-то карта в пирамиде, можно, пройдя циклом по всем картам в пирамиде и выясняя, присутствует ли на месте одна из двух карт, которые должны закрывать данную. Например, вторая карта в третьем ряду должна быть закрыта второй и третьей картой в четвертом ряду. Если какая-нибудь из них на месте, карта не может быть выбрана.

Когда карта удаляется из стопки открытых карт, становится видна предыдущая открытая карта. Это означает, что вам нужно следить за стопкой открытых карт, помещая их в массив, как только они оказываются перевернутыми.

Особым случаем является король. Выбранный король немедленно удаляется как из колоды карт с открытой мастью, так и из пирамиды, если, конечно, выбранный король был открыт.

Подготовка ролика

Ролик содержит в библиотеке такой же клип «deck», как в игре «Двадцать одно». Ему необходимо присвоить имя в панели Linkage Properties, чтобы он экспортировался вместе с роликом. То же относится и к клипу «outline».

В игре присутствует только два кадра: кадр "Play" и кадр "Game over". Последний будет использоваться только в редком случае выигрыша. Оба кадра должны содержать кнопку New, чтобы пересдавать карты в любой удобный игроку момент.

Создание кода

Практически весь код находится в главной временной шкале. Он начинается с функции «startGame». После того как создана новая, перетасованная, колода, создается семь рядов карт (10). Первый ряд содержит одну карту, второй – две и т. д.

Каждая карта помещается на свое место в соответствии с рядом и местом в ряду (11).К тому же масштаб каждой карты уменьшен на 50 %, поскольку колода, использованная в игре «Двадцать одно», в два раза больше по размеру той, что необходима для этой игры (12).

Значение карты берется из массива deck (13). Оно соответствует метке кадра внутри клипа «deck». Это значение сохраняется в свойстве valueклипа, после чего клип отправляется в соответствующий кадр. В свойствах клипа rowи colхранится позиция клипа в пирамиде (14).

Затем вы создаете клипы для стопок карт мастью вниз и мастью вверх (15). Клип для карт мастью вниз отправляется в кадр «back», показывающий изображение рубашки карты. Другая стопка остается в первом кадре, который пуст.

Переменная firstcardустановлена как undefined (16). Эта переменная содержит значение первой карты в паре, выбираемой самим игроком. Массив stackиспользуется для слежения за судьбой карт из стопки мастью вверх. В случае, когда карта из этой стопки используется, должно быть отыскано значение предыдущей выбранной карты.

В заключение должен быть создан экземпляр клипа рамки (17).В начальный момент он помещается за пределами видимости.

startGame();

stop();

function startGame() {

// Тасуем колоду.

createDeck();

(10) →// Выстраиваем карты в пирамиду.

level = 0;

for(row=0;row<7;row++) {

for(i=0;i<=row;i++) {

// Создаем новый клип.

mc = _root.attachMovie("Deck","card"+level,level);

(11) →// Задаем его расположение.

mc._x = i*60-row*30 + 275;

mc._y = row*30 + 50;

(12) →// Задаем масштаб.

mc._xscale = 50;

mc._yscale = 50;

(13) →// Устанавливаем знчение карты.

mc.value = deck.pop();

mc.gotoAndStop(mc.value);

(14) →// Запоминаем позицию карты.

mc.row = row;

mc.col = i;

level++;

}

}

(15) →// Размещаем клипы открытой и закрытой колод.

for(i=0;i<2;i++) {

mc = _root.attachMovie("Deck","stack"+i,level);

mc._x = i*60 + 100;

mc._y = 340;

mc._xscale = 50;

mc._yscale = 50;

level++;

}

// Показываем "рубашку" для закрытой колоды.

_root["stack0"].gotoAndStop("back");

(16) →// Задаем значение первой выбранной карты и массив для открытой колоды.

firstCard = undefined;

stack = new Array();

(17) →// Создаем и размещаем рамку.

outline = _root.attachMovie("outline","outline",1000);

outline._xscale = 50;

outline._yscale = 50;

outline._x = -1000;

}

Функция createDeckтакая же, как в игре «Двадцать одно». Однако теперь вы сортируете только одну колоду. Результат представляется в виде глобальной переменной deck.

// Создаем перетасованную колоду.

function createDeck() {

// Создаем упорядоченную колоду.

suits = ["c","d","s","h"];

temp = new Array();

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

for(num=1;num<14;num++) {

temp.push(suits[suit]+num);

}

}

// Выбираем случайные карты, пока не создадим перетасованную колоду.

deck = new Array();

while (temp.length > 0) {

r = int(Math.random()*temp.length);

deck.push(temp[r]);

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Гэри Розенцвейг читать все книги автора по порядку

Гэри Розенцвейг - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




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


Отзывы читателей о книге Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript, автор: Гэри Розенцвейг. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x