1. Як писати ігри на JavaRush
Як ви вже зрозуміли, на JavaRush з'явилася унікальна можливість - написання ігор . Вони значно більше, ніж звичайні завдання, і набагато цікавіше. Цікаво їх не лише писати, а й, гм, тестувати. Якщо ви розумієте, про що ми ;) Робота в офісі JavaRush була буквально паралізована кілька днів, коли ми почали фазу тестування задач-ігор :) Кожне завдання-гра це проект: велике завдання з двома десятками підзадач. Під час написання гри вам потрібно буде послідовно виконати їх. Коли останнє підзавдання буде зроблено, ваша гра готова. Вона буде використовувати дуже простий ігровий рушій JavaRush . Працювати з ним не складніше, ніж із консоллю. Опис ігрового рушія та приклади роботи з ним ви знайдете в цьому документі .2. Можливості ігрового рушія
Ігрове поле ділиться ігровим рушієм на клітини. Мінімальний розмір – 3x3, максимальний – 100x100. Кожну клітинку можна розфарбувати у певний колір і написати у ній якийсь текст. Також для кожної клітини задаються розмір та колір тексту. Рушій дозволяє писати методи-обробники для таких подій як "натискання кнопок мишки" та "натискання клавіш на клавіатурі". Ще з цікавого можна відзначити можливість роботи із таймером. Детальніше про це ви дізнаєтесь із розділу «Робота з таймером». Такий «очевидний рушій» дозволяє створювати дуже цікаві ігри, у чому ви переконаєтесь самі. Бажаєте перевірити? Тоді читайте наступний пункт і починайте написання ігор.3. Отримання доступу до гри
Щоб отримати доступ до написання ігор, вам потрібно зайти в розділ «Ігри» на сайті JavaRush, вибрати і перейти на її сторінку.4. Публікація ігор у каталозі додатків
Коли ви закінчите писати гру, зможете опублікувати її в каталозі Ігор-і-Додатків на JavaRush. Просто натисніть кнопку «Опублікувати», і через півхвабони ваша гра додасться в розділ «Опубліковані Ігри» .5. Кастомізація ігор
Після того, як ви закінчабо писати гру, ви можете її модифікувати. Бажаєте 2048 на полі 5x5? Будь ласка. Ви ж програміст вам і клавіатуру в руки. Змінюйте гру як захочете. Ви можете додати щось нове. Наприклад, у грі Змійка змія може уповільнюватися, якщо з'їсть яблуко, поки воно ще свіже (протягом перших 5 секунд після його появи). Яблуко при цьому може змінювати колір із червоного на зелений, або ставати грушею. Або раптом ваша змія любить кроликів більше, ніж яблука. Але пам'ятайте: якщо ви додасте в гру роботу з файлуми або графікою не через ігровий рушій, вона може не опублікуватися в каталозі додатків. Не все можна запустити у браузері, чи знаєте.6. Корисна документація
Щоб ви могли познайомитися з роботою ігрового движка JavaRush (ініціалізація гри, створення ігрового поля та робота з графікою), обробкою подій (робота з мишкою, клавіатурою та таймером), а також освіжити або дізнатися базову теорію з Java, яка стане в нагоді в написанні завдань- Ігор (перший-другий квест JavaRush) ми підготували кілька докладних документів:- Розділ "Ігри" на JavaRush: Опис ігрового рушія
- Розділ "Ігри" на JavaRush: Обробка подій
- Розділ "Ігри" на JavaRush: Корисна теорія
7. Поширені проблеми
У мене є Linux і я використовую OpenJDK. При запуску гри компілятор видає помилку:Error:(6, 8) java: cannot access javafx.application.Application
class file for javafx.application.Application not foundЩо робити? Наш ігровий движок використовує JavaFX, а OpenJDK вона не встановлена за замовчуванням. Це потрібно виправити:
-
У командному рядку введіть команду:
sudo apt-get install openjfx -
Після цього зайдіть в налаштування проекту (alt+ctrl+shift+s) -> SDK's -> Classpath і натиснути праворуч на плюс. Виберіть файл jfxrt.jar. Він знаходиться у встановленій JDK шляхом: <JDK_PATH>/jre/lib/ext/jfxrt.jar
-
Натисніть кнопку ОК.
-
Завантажте JavaFX Windows SDK за посиланням https://gluonhq.com/products/javafx/ .
-
Розпакуйте завантажений архів у будь-яку папку (бажано в папку lib проекту Games).
-
Відкрийте IDEA.
-
У IDEA зайдіть у меню File -> Project Structure (Файл -> Структура проекту).
-
Виберіть вкладку Libraries (Бібліотеки) та натисніть + -> Java.
-
Вкажіть шлях до розпакованої папки javafx-sdk та виберіть папку lib
-
Далі натисніть OK і в новому вікні додайте JavaFX до модуля Games.
-
Тепер має з'явитися нова бібліотека, натисніть кнопку Застосувати -> ОК.
-
Для коректного запуску відкрийте меню Run-> Edit Configuration і пропишіть у полі VM options команду:
--module-path ./lib/javafx-sdk-16/lib --add-modules=javafx.controls,javafx.fxml,javafx.base -
Далі в цій вкладці потрібно додати Application. Для цього натисніть + -> Application
-
- Виберіть модуль Games
- Пропишіть шлях до головного класу (в даному випадку -
SnakeGame) - Додати поле VM options
- Пропишіть VM options так само, як у пункті 9.
Натискайте Застосувати -> ОК
-
Запускайте гру.