Гэри Розенцвейг - 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 - читать книгу онлайн бесплатно (ознакомительный отрывок), автор Гэри Розенцвейг
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

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

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

На рис. 15.4 показан кадр ролика Blackjack.fla. Вы видите, что игрок взял пять карт, которые в сумме дали 18 очков. А раздающий карты взял три карты, их сумма составляет 21.

Рисунок 15.4. Расклад, когда раздающий выиграл, так как у него 21, а у игрока только 18 очков

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

Если с первыми двумя картами у игрока 21 очко, он сразу же выигрывает и получает дополнительно 50 % суммы выигрыша. Если у раздающего получается 21, игра сразу же приостанавливается. Если же так не случилось, то выигрывает тот, у кого на руках большее количество очков, не превышающее 21.

Игрок может контролировать свои ставки (от 5 до 25 долларов), каждый раз повышая ставку на пять долларов.

Подход

Как и в видеопокере, здесь есть массив deck,в котором содержится перетасованная колода карт. Разница заключается в том, что в этой игре в массиве находятся шесть колод. В игре в очко такой массив называется shoe.

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

В отличие от видеопокера оценка расклада в этой игре проста. Единственная сложность: туз может стоить как одно, так и 11 очков. Однако, так как два туза дадут 22 очка, второй туз никак не может стоить 11. То есть все, что нужно, – определить, есть ли на руках туз, подсчитать, что он равен единице, а затем добавить 10, если при этом на руках не будет перебора. Например, расклад с тройкой, девяткой и тузом рассматривается как 13 очков, потому что если считать, что туз стоит 11, то на руках окажется 23 очка, то есть перебор.

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

В отличие от видеопокера на руках может быть от двух до 11 карт. Для каждого расклада создаются 11 экземпляров клипов, имена которых изменяются от «playerO» до «player10» и от «dealerO» до «dealer10». Кадры клипа «deck» – пусты. Следовательно, когда вы поместите клип на рабочее поле, вы не увидите ничего, кроме меток, которые устанавливаются программой Flash для клипов по умолчанию. На рис. 15.5 показаны все 22 метки.

Рисунок 15.5. Все карты представлены в виде маленьких кружочков, меток клипа, так как на данный момент карты не видны

В этом ролике сложная основная временная шкала. Каждая метка представляет собой различный этап игры. На рис. 15.6 показана шкала в момент, когда видна большая часть меток.

Рисунок 15.6. В сложной основной временной шкале игры в очко для каждого шага существует помеченный кадр

В процессе игры указатель текущего кадра передвигается вдоль основной временной шкалы. Каждый ключевой кадр содержит различные функции. Сам код расположен в первом ключевом кадре.

Обязательно просмотрите ролик Blackjack.fla, размещенный на Web-сайте, чтобы самому увидеть, где расположены ключевые кадры и какие функции они вызывают.

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

Первый кадр вызывает функцию initGame(), но после нее не идет команда stop(), так как указатель должен двигаться и перейти к кадру «shuffle».

initGame();

Функция initGame() определяет исходную сумму наличных денег игрока.

function initGame() {

cash = 100;

showCash();

}

Функция createDeckпохожа на одноименную функцию, используемую в видеопокере, но здесь она шесть раз добавляет каждую карту, чтобы создать шесть колод карт. Один из недостатков использования шести колод состоит в том, что программе требуется время для их перетасовки. Следовательно, кадр "shuffle" появляется перед ключевым кадром, вызывающим функцию createDeck.Поэтому слово «shuffle» (Идет перетасовка колоды) появится на экране прежде, чем код начнет тасовать карты. Следовательно, игрок не должен удивляться, почему его компьютер вдруг «завис».

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

function createDeck() {

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

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

temp = new Array();

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

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

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

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

}

}

}

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

// колода не будет перемешана.

deck = new Array();

while (temp.length>0) {

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

deck.push(temp[r]);

temp.splice(r,1);

}

}

В функции initHandсоздаются массивы playerHandи dealerHand.Переменной showDealerFirstCardприсваивается значение false, по умолчанию делается ставка в пять долларов.

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

function initHand() {

playerHand = new Array();

dealerHand = new Array();

showDealerFirstCard = false;

bet = 5;

showBet();

}

Когда игрок щелкает по кнопке Add to bet (Повысить ставку), вызывается функция addToBet,которая повышает ставку на пять долларов и не позволяет сделать ставку, превышающую 25 долларов.

// Функция увеличивает ставку игрока вплоть до 25 долларов.

function addToBet() {

bet += 5;

if (bet > 25) bet = 25;

showBet;

}

Когда игрок щелкает по кнопке Deal (Раздать), вызывается функция makeBet,которая вычитает сумму ставки из суммы наличных игрока. Затем ролик проходит по четырем кадрам от «Deal1» до «Deal4».

// Вычитаем сумму ставки из суммы наличных денег игрока.

function makeBet() {

cash -= bet;

showCash();

}

В каждом из четырех кадров вызывается функция dealCard,дважды с использованием массива playerHandи дважды – dealerHand.При выполнении этой функции по две карты раздаются игроку и раздающему. Также в каждом кадре вызывается функция showCards.

// Раздаем игроку одну карту из колоды.

function dealCard(hand) {

hand.push(deck.pop());

}

Функции showBetи showCashотображают текущую ставку и текущую сумму наличных с добавлением знака "$" впереди. Не забудьте создать соответствующие текстовые поля для каждой из этих сумм.

// Отображаем сумму наличности со знаком "$".

function showCash() {

cashDisplay = "$" + cash;

}

// Отображаем сумму ставки со знаком "$".

function showBet() {

betDisplay = "$" + bet;

}

Функция showCardsпросматривает карты, имеющиеся на руках у игрока и раздающего, и помещает соответствующие клипы на рабочее поле. С помощью переменной showDealerFirstCardуказывается, отображается ли первая карта раздающего или показывается всего лишь рубашка карты.

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

Интервал:

Закладка:

Сделать


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

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




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


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


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

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