Як зробити флеш гру

Автор: Sara Rhodes
Дата Створення: 13 Лютий 2021
Дата Оновлення: 1 Липня 2024
Anonim
Как создать свою игру? | ТОП 5 программ для новичков
Відеоролик: Как создать свою игру? | ТОП 5 программ для новичков

Зміст

Flash - це популярний формат ігор, що запускаються в браузерах. Хоча цей формат здає позиції мобільних додатків, багато хороші ігри пишуться саме в цьому форматі. У Flash використовується ActionScript - це легкий в освоєнні мову програмування, який дозволяє контролювати об'єкти на екрані.

кроки

Частина 1 з 3: Початок

  1. 1 Придумайте гру (її сюжет), перш ніж приступити до написання коду. У Flash створюються прості ігри, тому оберіть жанр гри і продумайте її концепцію. Прочитайте статтю Як зробити комп'ютерну гру. Основні жанри включають в себе:
    • Нескінченний забіг. В таких іграх персонаж рухається автоматично, а гравець тільки направляє його і перестрибує через перешкоди (або іншим чином взаємодіє з грою).
    • Бійки. В таких іграх головний персонаж повинен перемогти ворогів в нескінченних бійках / боях.
    • Пазли. Ігри-головоломки. Варіюються від найпростіших головоломок (зібрати три однакових кульки) до складних головоломок, що складають основу пригодницьких ігор.
    • РПГ. В таких іграх необхідно розвивати головний персонаж (його вміння, зовнішність, характер), щоб мати можливість боротися з різним противником. Код РПГ-гри набагато складніше коду найпростішої гри.
  2. 2 Flash краще підходить для створення 2D-ігор (двомірних). У ньому можна створювати і 3D-ігри (тривимірні), але для цього потрібно дуже добре знати мову програмування і інші просунуті прийоми. Практично всі популярні Flash ігри - це двомірні гри.
    • Флеш-ігри найкраще підходить для короткочасних ігрових сеансів, тому що в них грають тоді, коли є вільний час (не більше 15 хвилин).
  3. 3 Ознайомтеся з мовою програмування ActionScript3 (AS3), на якому пишуться флеш-ігри. Ви можете створити просту гру, маючи базові знання в AS3.
    • Є кілька книг про ActionScript, доступних на Amazon і в інших магазинах, поряд з великою кількістю навчальних посібників і онлайн-прикладів.
  4. 4 Скачайте Flash Professional. Це платна, але найкраща програма, в якій створюються флеш-ігри. Є й інші аналогічні програми, в тому числі безкоштовні, але часто їм не вистачає сумісності або у вас піде більше часу на досягнення тих же цілей.
    • Flash Professional є єдиною програмою, яка вам знадобиться для створення гри.

Частина 2 з 3: Створення найпростішої гри

  1. 1 Усвідомте основні структури коду, написаного на 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.

  2. 2 Створіть об'єкти, з якими буде взаємодіяти гравець. До об'єктів можна віднести спрайт, персонажів або відеокліпи. У нашому прикладі простої гри ви будете створювати прямокутник.
    • Запустіть Flash Professional. Створіть новий проект ActionScript 3.
    • На панелі інструментів натисніть інструмент «Прямокутник». Ця панель може перебувати в різних місцях в залежності від конфігурації Flash Professional. Намалюйте прямокутник у вікні «Сцена».
    • Виділіть прямокутник за допомогою інструменту «Виділення».
  3. 3 Задайте властивості об'єкта. Для цього відкрийте меню «Змінити» і виберіть пункт «Перетворити в символ» (або натисніть F8). У вікні «Перетворити в символ» надайте об'єкту легко впізнаване ім'я, наприклад, «ворог» (enemy).
    • Знайдіть вікно «Властивості». У верхній частині вікна розташовано пусте текстове поле, позначене як «Ім'я зразка» (якщо навести на це поле курсор). Введіть те ж ім'я, яке ви вводили при перетворенні об'єкта в символ (в нашому прикладі «ворог»). Це призведе до створення унікального імені, яке можна використовувати в AS3 коді.
    • Кожен «зразок» є окремим об'єктом, який залежить від коду. Ви можете скопіювати вже створені «зразки»; для цього кілька разів натисніть «Бібліотека» і перетягніть «зразок» на «сцену». При кожному додаванні «зразка» його ім'я буде змінюватися ( «ворог», «враг1», «враг2» і так далі).
    • Коли ви звертаєтеся до об'єкта в коді, просто використовуйте ім'я «зразка» (в нашому прикладі «ворог»).
  4. 4 Зміна властивостей зразка. Після створення зразка ви можете змінити його властивості, наприклад, змінити розмір. Для цього введіть ім'я зразка, потім «.», Потім назва властивості, а потім значення:
    • enemy.x = 150; Визначає положення об'єкта «ворог» по осі Х.
    • enemy.y = 150; Визначає положення об'єкта «ворог» по осі Y (початок осі Y лежить у верхній точці «сцени»).
    • enemy.rotation = 45; Поворот об'єкта «ворог» на 45 ° за годинниковою стрілкою.
    • enemy.scaleX = 3; Розтягує об'єкт «ворог» по ширині на множник 3. Негативне значення величини переверне об'єкт.
    • enemy.scaleY = 0.5; Уріже висоту об'єкта вдвічі.
    • .
  5. 5 вивчіть команду trace (). Вона повертає поточні значення для конкретних об'єктів і необхідна для визначення того, що все працює правильно. Не варто включати цю команду в вихідний код гри, але вона знадобиться вам для налагодження програми.
  6. 6 Створіть найпростішу гру, використовуючи наведену вище інформацію. У нашому прикладі ви створите гру, в якій противник буде міняти розмір кожного разу, як ви клацніть по ньому, і до тих пір, поки у нього не закінчиться запас здоров'я.

    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"); // Показує втрачений запас здоров'я. }

  7. 7 Запустіть гру. Відкрийте меню «Управління» і виберіть «Протестувати». Запуститься ваша гра; клацніть по противнику, щоб змінити його розмір. Отладочная інформація буде відображатися у вікні «Вивід».

Частина 3 з 3: Просунуті прийоми

  1. 1 Пакети. У них (в окремих файлах) зберігаються змінні, постійні, функції та інша інформація; ви можете імпортувати пакети в вашу програму. Використовуючи пакет, вже створений кимось, ви сильно спростите собі задачу по створенню програми.
    • Прочитайте цю статтю для отримання докладної інформації про те, як працюють пакети.
  2. 2 Створення папок проекту. Якщо ви створюєте гру з декількома зображеннями і звуковими файлами, створіть кілька папок. Це дозволить вам не заплутатися в різних елементах, а також зберігати пакети у відповідних папках.
    • Створіть базову теку проекту. У базовій папці необхідно створити підпапку «IMG», де будуть зберігатися зображення, підпапку «SND» для звукових файлів і підпапку «SRC» з пакетами і кодом гри.
    • Створіть папку «Game» в папці «SRC» для файлу «Constants».
    • Така структура розташування папок не є обов'язковою; вона приведена як приклад упорядкування та організації елементів вашого проекту (це особливо важливо в разі великих проектів). Якщо ви створюєте просту гру (як в нашому прикладі), ніяких папок створювати не потрібно.
  3. 3 Додайте звук в гру. Гра без звуку або музики швидко набридне будь-якому гравцеві. Ви можете додати звук за допомогою інструменту «Шари». Більш детальну інформацію про це пошукайте в інтернеті.
  4. 4 Створіть файл «Constant». Якщо у вашій грі багато постійних величин, значення яких не змінюються протягом всієї гри, ви можете створити файл «Constant», щоб зберігати в ньому всі постійні величини. Постійними величинами є сила тяжіння, швидкість персонажа і інші.
    • Якщо ви створюєте файл «Constant», помістіть його в відповідну папку проекту, а потім імпортуйте в пакет. Наприклад, ви створюєте файл сonstants.as і ставите його в папку з грою. Щоб імпортувати його, ви повинні використовувати наступний код:

      package {import Game. *; }

  5. 5 Подивіться гри інших розробників. Багато розробники не розкривають кодів своїх ігор, але є безліч навчальних і інших проектів, в яких ви можете подивитися код. Це відмінний спосіб дізнатися про деякі передових прийомах, які допоможуть вам при створенні хорошої гри.