Flash-це популярний формат ігор, що запускаються в браузерах. Хоча цей формат здає позиції мобільним додаткам, багато хороші ігри пишуться саме в цьому форматі. У Flash використовується ActionScript-це легкий в освоєнні мову програмування, який дозволяє контролювати об'єкти на екрані.
Кроки
Частина1З 3:
Початок
Частина1З 3:
- Придумайте гру (її сюжет), перш ніж приступити до написання коду.у Flash створюються прості ігри, тому виберіть жанр гри і продумайте її концепцію. Прочитайте статтюяк зробити комп'ютерну гру. Основні жанри включають в себе:
- Нескінченний забіг. У таких іграх персонаж рухається автоматично, а гравець тільки направляє його і перестрибує через перешкоди (або іншим чином взаємодіє з грою).
- Бійки. У таких іграх головний персонаж повинен перемогти ворогів в нескінченних бійках / битвах.
- Пазли. Ігри-головоломки. Варіюються від найпростіших головоломок (зібрати три однакових кульки) до складних головоломок, що складають основу пригодницьких ігор.
- РПГ. У таких іграх необхідно розвивати головний персонаж (його вміння, вигляд, характер), щоб мати можливість битися з різним противником. Код РПГ-гри набагато складніше коду найпростішої гри.
- Flash краще підходить для створення 2D-ігор (двомірних).у ньому можна створювати і 3D-Ігри (Тривимірні), але для цього потрібно дуже добре знати мову програмування та інші просунуті прийоми. Практично всі популярні Flash ігри-це двомірні ігри.
- Флеш-ігри найкраще підходить для короткочасних ігрових сеансів, тому що в них грають тоді, коли є вільний час (не більше 15 хвилин).
- Ознайомтеся з мовою програмування ActionScript3 (AS3), на якому пишуться флеш-ігри. ви можете створити просту гру, маючи базові знання в AS3.
- Є кілька книг про ActionScript, доступних на Amazon і в інших магазинах, поряд з великою кількістю навчальних посібників і онлайн-прикладів.
- Скачайте Flash Professional.це платна, але найкраща програма, в якій створюються флеш-ігри. Є й інші аналогічні програми, в тому числі безкоштовні, але часто їм не вистачає сумісності або у вас піде більше часу на досягнення тих же цілей.
- Flash Professional є єдиною програмою, яка вам знадобиться для створення гри.
Частина2З 3:
Створення найпростішої гри
Частина2З 3:
- Зрозумійте основні структури коду, написаного на AS3. є три основні частини будь-якого AS3 коду:
- Змінні. У них зберігаються дані (Числові, текстові, об'єктні та багато інших). Змінні визначаються кодомvar і одним словом.
Var PlayerHealth:Number = 100; / / " var " - Ви визначаєте змінну. / / "playerHealth" - це ім'я змінної. //" Number " – це тип даних (тут - числовий). / / " 100 " - значення, приписане змінній. / / будь-який рядок коду на AS3 закінчується"; "
- Обробники подій. Шукають певні події, які повинні бути виконані, і повідомляють про них іншим частинам програми. Це необхідно для введення гравця і повторення коду. Як правило, обробники подій звертаються до функцій.
AddEventListener(MouseEvent.CLICK, SwingSword); / / "addEventListener ()" - визначення обробника подій. / / "MouseEvent" - Категорія Введення, очікувана до виконання. // ".CLICK " - певна подія в категорії MouseEvent. / / "swingSword" - функція, що запускається при виконанні події.
- Функції. Розділи програми, що визначаються ключовим словом; до них звертаються по ходу виконання програми. Код складної гри може включати сотні функцій, а простої гри - тільки кілька. Функції можуть розташовуватися в довільному порядку, так як вони запускаються тільки тоді, коли до них звертаються.
Function SwingSword (E:MouseEvent):Void; { / / Код } //" function " – ключове слово, що вводиться на початку будь-якої функції. / / "swingSword" - ім'я функції. //" e:MouseEvent " – додатковий параметр, що вказує на те, / / що до функції звертається обробник подій. //": void " - значення, що повертається функцією. / / якщо значення не повертається, використовуйте: void.
- Змінні. У них зберігаються дані (Числові, текстові, об'єктні та багато інших). Змінні визначаються кодомvar і одним словом.
- Створіть об'єкти, з якими буде взаємодіяти гравець.до об'єктів можна віднести спрайти, персонажів або відеокліпи. У нашому прикладі простої гри ви будете створювати прямокутник.
- Запустіть Flash Professional. Створіть новий проект ActionScript 3. [1]
- На панелі інструментів натисніть інструмент "прямокутник". Ця панель може перебувати в різних місцях в залежності від конфігурації Flash Professional. Намалюйте прямокутник у вікні "Сцена".
- Виділіть прямокутник за допомогою інструменту "виділення".
- Задайте властивості об'єкта.для цього відкрийте меню "Змінити «і виберіть пункт» перетворити в символ" (або натисніть F8). У вікні "перетворити в символ «присвойте об'єкту легко впізнаване ім'я, наприклад,» ворог" (enemy).
- Знайдіть вікно "Властивості". У верхній частині вікна розташоване порожнє текстове поле, позначене як "Ім'я зразка" (якщо навести на це поле курсор). Введіть те ж ім'я, яке ви вводили при перетворенні об'єкта в символ (в нашому прикладі «ворог»). Це призведе до створення унікального імені, яке можна використовувати в AS3 коді.
- Кожен "зразок" є окремим об'єктом, який залежить від коду. Ви можете скопіювати вже створені "зразки«; для цього кілька разів натисніть» Бібліотека «і перетягніть» зразок «на»сцену". При кожному додаванні "зразка«його ім'я буде змінюватися (»ворог«,» враг1«,» враг2" і так далі).
- Коли ви звертаєтеся до об'єкта в коді, просто використовуйте ім'я "зразка «(в нашому прикладі»ворог").
- Зміна властивостей зразка.після створення зразка ви можете змінити його властивості, наприклад, змінити розмір. Для цього введіть ім'я зразка, потім".", потім назва властивості, а потім значення:
- enemy.x = 150; задає положення об'єкта "ворог" по осі х.
- enemy.y = 150; задає положення об'єкта «ворог» по осі Y (початок осі Y лежить у верхній точці «сцени»).
- enemy.rotation = 45; Поворот об'єкта» ворог " на 45° за годинниковою стрілкою.
- enemy.scaleX = 3; розтягує об'єкт «ворог» по ширині на множник 3. Від'ємне значення величини переверне об'єкт.
- enemy.scaleY = 0.5; уріже висоту об'єкта вдвічі. .
- Вивчіть командуtrace(). вона повертає поточні значення для конкретних об'єктів і необхідна для визначення того, що все працює правильно. Не варто включати цю команду в вихідний код гри, але вона знадобиться вам для налагодження програми.
- Створіть найпростішу гру, використовуючи наведену вище інформацію. у нашому прикладі ви створите гру, в якій противник буде змінювати розмір кожен раз, як ви клацніть по ньому, і до тих пір, поки у нього не закінчиться запас здоров'я.[2]
Var EnemyHP:Number = 100; / / задає величину запасу здоров'я противника (100 на початку гри). Var PlayerAttack:Number = 10; // задає силу атаки гравця при клацанні по противнику.Enemy.AddEventListener(MouseEvent.CLICK, AttackEnemy); // тобто функція запускається тільки тоді, коли клацання припадає на об'єкт, / / а не на інше місце на екрані. SetEnemyLocation(); / / розміщує противника на екрані. / / запускається на самому початку гри. Function SetEnemyLocation ():Void { Enemy.X = 200; // переміщує противника вправо на 200 пікселів від лівої частини екрану. Enemy.Y = 150; // переміщує противника вниз на 150 пікселів від верхньої частини екрану. Enemy.Rotation = 45; / / повертає ворога на 45 градусів за годинниковою стрілкою. Trace("enemy's x-value is", Enemy.X, "and enemy's y-value is", Enemy.Y); / / відображає поточну позицію противника для налагодження. } Function AttackEnemy (E:MouseEvent):Void // створює функцію для опису атаки при клацанні по противнику. { EnemyHP = EnemyHP - PlayerAttack; / / віднімає значення сили атаки гравця з значення запасу здоров'я противника. // в результаті виходить нове значення запасу здоров'я противника. Enemy.ScaleX = EnemyHP / 100; // змінює ширину на основі нового значення запасу здоров'я противника. // це значення ділиться на 100, щоб отримати десятковий дріб. Enemy.ScaleY = EnemyHP / 100; // змінює висоту на основі нового значення запасу здоров'я противника. Trace("The enemy has", EnemyHP, "HP left"); / / відображає втрачений запас здоров'я. }
- Запустіть гру.відкрийте меню "управління «і виберіть»протестувати". Запуститься ваша гра; клацніть по противнику, щоб змінити його розмір. Налагоджувальна інформація буде відображатися у вікні "висновок".
Частина3З 3:
Просунуті прийоми
Частина3З 3:
- Пакети. у них (в окремих файлах) зберігаються змінні, постійні, функції та інша інформація; ви можете імпортувати пакети в вашу програму. Використовуючи пакет, вже створений кимось, ви сильно спростите собі завдання по створенню програми.
- Прочитайте цю статтю для отримання докладної інформації про те, як працюють пакети.
- Створення папок проекту.якщо ви створюєте гру з декількома зображеннями і звуковими файлами, створіть кілька папок. Це дозволить вам не заплутатися в різних елементах, а також зберігати пакети у відповідних папках.
- Створіть базову папку проекту. У базовій папці необхідно створити підпапку "IMG«, де будуть зберігатися зображення, підпапку» SND «для звукових файлів і підпапку» SRC" з пакетами і кодом гри.
- Створіть папку "Game «у папці» SRC «для файлу»Constants".
- Така структура розташування папок не є обов'язковою; вона наведена як приклад упорядкування та організації елементів вашого проекту (це особливо важливо у випадку великих проектів). Якщо ви створюєте просту гру (як в нашому прикладі), ніяких папок створювати не потрібно.
- Додайте звук до гри. Гра без звуку або музики швидко набридне будь-якому гравцеві. Ви можете додати звук за допомогою інструменту "шари". Більш детальну інформацію про це пошукайте в Інтернеті.
- Створіть файл "Constant".якщо у вашій грі багато постійних величин, значення яких не змінюються протягом всієї гри, ви можете створити файл "Constant", щоб зберігати в ньому всі постійні величини. Постійними величинами є сила тяжіння, швидкість персонажа та інші.[3]
- Якщо ви створюєте файл "Constant", помістіть його у відповідну папку проекту, а потім імпортуйте в пакет. Наприклад, ви створюєте файл сonstants.as і ставите його в папку з грою. Щоб імпортувати його, ви повинні використовувати наступний код:
Package { Import Game.*; }
- Якщо ви створюєте файл "Constant", помістіть його у відповідну папку проекту, а потім імпортуйте в пакет. Наприклад, ви створюєте файл сonstants.as і ставите його в папку з грою. Щоб імпортувати його, ви повинні використовувати наступний код:
- Подивіться ігри інших розробників.багато розробників не розкривають кодів своїх ігор, але є безліч навчальних та інших проектів, в яких ви можете подивитися код. Це відмінний спосіб дізнатися про деякі передові прийоми, які допоможуть вам при створенні хорошої гри.