Предисловие
Почему Flash?
Системные требования
Как читать эту книгу
Прилагаемый CD-ROM
Часть 1. Первое знакомство с проектированием Flash-игр
Глава 1. ПЕРВЫЕ ШАГИ
Воодушевляющий быстрый старт
Терминология
Игровые виды
Основные термины
Жанры игр
Ограничения Flash
Flash в сравнении с не Flash-играми
Неосуществимые детали игры
Подведение итогов
Глава 2. План: от идеи к проектированию
Процесс проектирования
Поиск идеи
Определение вашей аудитории
Определитесь с внешним видом и ощущениями
Определение ваших слабых сторон
Отбрасывание лишнего
Создание игры
Контроль качества
Подведение итогов
Часть 2. Исследование основ
Глава 3. Тригонометрия 101
Зачем изучать тригонометрию?
Координатная система Flash
Декартовы координаты
Углы
АНАТОМИЯ ТРЕУГОЛЬНИКА
ТЕОРЕМА ПИФАГОРА
Сердце тригонометрии
Синус, косинус и тангенс
Проекция
Векторы
Подведение итогов
Глава 4. Основы физики
Введение в физику
Скорость, векторная скорость и ускорение
Скорость и векторная скорость
Ускорение
Три закона движения Ньютона
Первый закон Ньютона
Второй закон Ньютона
Третий закон Ньютона
Гравитация
Реальная гравитация
Достаточный подход к рассмотрению гравитации
Трение
Реальное трение
Достаточный подход к описанию трения
Подведение итогов
Глава 5. Обнаружение столкновений
Что такое столкновение?
Обнаружение с использованием hitTest
Столкновение клипа с клипом
Столкновение клипа с точкой
Столкновение формы с точкой
Обнаружение столкновений с применением математики
Обнаружение столкновения точки с окружностью
Обнаружение столкновения окружности с окружностью
Обнаружение столкновения "линия - линия"
Обнаружение столкновения "окружность - линия"
Обнаружение столкновения точки с прямоугольником
Обнаружение столкновения прямоугольника с прямоугольником
Обнаружение столкновения со сложными фигурами
Подведение итогов
Глава 6. Реакции на столкновения
Отскакивание от стен
Реакции "объект - стена"
Реакции "окружность - линия"
Сохранение импульса и энергии
Обзор: что такое импульс и энергия
Законы сохранения
Применение законов сохранения
Реакции "прямоугольник - прямоугольник"
Реакции "окружность - окружность" (бильярдные шары)
Подведение итогов
Глава 7. Миры, основанные на плитках
Введение в плитки
Создание плиток для вида сверху-вниз и управление ими
Создание сетки и хранение информации
Точность обнаружения
Добавление персонажа в мир игры
Материализация данных о мире
Подведение итогов
Глава 8. Изометрический взгляд на мир
Введение в изометрию
Взгляд на изометрию с технической точки зрения
Система координат изометрического мира
Размещение объекта в изометрическом мире
Сортировка по Z
Разрушение простого мира
Подведение итогов
Глава 9. Искусственный интеллект
Виды AI
Доморощенный AI
Правила управления персонажами
Недостатки и методы их преодоления
Код ActionScript противника
Совершенный лабиринт
Правила для совершенного лабиринта
Применение ActionScript для создания лабиринта
Визуальная реализация совершенного лабиринта
Алгоритмы поиска пути
Алгоритм A*
Подведение итогов
Глава 10. Применение списка рекордов
Администрирование списка рекордов
Список в действии
Настройка кадров пользовательского интерфейса
Настройка кода ActionScript
Подведение итогов
Глава 11. Графика в играх
Овладение графическим подходом
Различные виды графики
Идентификация ваших инструментов
Подготовка графики
Этапы разработки графики
Этап 1. Мозговой штурм
Этап 2. Продумывание
Этап 3. Изготовление
Методики, не создающие проблем
Свет и тень
Добавление глубины
Отбрасывание теней
Освещение интерфейса пользователя
Придание тексту перспективы
Изменение оттенка
Разбиение на плитки
Анимация в игре
Подведение итогов
Глава 12. Звук в играх
Почему важен звук
Управление звуковыми эффектами
Звук, помещенный в кадры
Звук, управляемый через ActionScript
Создание звуковых эффектов
Настройка
Запись
"Это неправильный звук!"
Создание музыкальных циклов
Циклы ритма
Редактирование и подготовка циклов звука
Подведение итогов
Глава 13. Препарирование чата
Введение в чат
Практический обзор чата
Детали
Структура файла
Код ActionScript
Подведение итогов
Часть 3. Игры
Глава 14. Поиск слова
Обзор игры
Логика игры
Выбор категории
Создание сетки
Глава 15. Ледяной мир: игра для приставки
Обзор игры
XML и редактор уровней
Формат XML
Редактор уровня
Структура игры и файлы ресурсов
Структура игры
Поддержка клипов
Код игры
Код ActionScript, не найденный в функции
levelLoaded()
Событие onEnterFrame
listenForKeys()
baddyDetection()
collectableDetect()
Возможные усовершенствования игры
Подведение итогов
Глава 16. Пинбол
Обзор игры
Код игры
Код ActionScript, которого нет в функции
Событие onEnterFrame
buildMap()
createFlipper()
initializeShot()
flip()
checkCollision()
Возможные усовершенствования игры
Подведение итогов
Глава 17. Крестики-нолики: ваша первая многопользовательская игра
Обзор игры
Многопользовательский аспект
Код игры
Подведение итогов
Глава 18. Девять шаров
Обзор игры
Многопользовательские аспекты игры
Синхронизация: проблема многопользовательских игр и решение
Многопользовательские действия
Код игры
Общий обзор
Кто первый?
Функции
startGame()
onEnterFrame
moveDone()
shoot()
Возможные улучшения игры
Подведение итогов
Глава 19. "Не провались!"
Обзор игры
Многопользовательские действия
Операторы игры
Код ActionScript, которого нет в функции
onEnterFrame
buildWorld()
buildCharacter()
startGame()
worldClicked()
determineFall()
fall()
checkTile()
Возможные улучшения игры
Подведение итогов
Приложение A
ЗАЩИТА ВАШИХ ИГР
Воровство и защита от воровства
Уязвимость: загрузка SWF
Защитное(ые) средство(а)
Слабое место: встраивание SWF в HTML
Средство защиты
Слабое место: раскрытие кода ActionScript
Средство защиты
Что делать, если вы нашли вашу игру на другом сайте?
Написать Web-мастеру
Написать или позвонить провайдеру
Подавайте судебный иск
Приложение B
Многопользовательские серверы
Что такое сервер сокета?
Основы Интернета
Серверы сокетов
Введение в ElectroServer
Детали
Инсталляция ElectroServer
Запуск ElectroServer
Приложение C
Объект ElectroServerAS
Операторы "нажми и тащи"
Методы и свойства объекта ElectroServerAS
Приложение D
Основы XML во Flash
Изучение основ XML
Использование объекта XML
Форматирование XML
Разбор XML
Loading XML
Sending XML
Введение в серверы сокетов
Применение объекта XML SOCKET
Приложение E
Ресурсы разработчика
Основные игровые ресурсы
В Интернете
Книги
Сайты Flash-ресурсов
Flashkit
Мы здесь
Ultrashock
MotionCulture
Искуственный интеллект (AI)
On the Web
Книги
Изометрия
В Интернетe
Книги
Математика
В Интернете
Книги
Физика
В Интернете
Книги
Звук
Библиотеки звуков
Ритм-машины
Программы редактирования звука
Приложение F
Другие игры