Больше

Создание устойчивой игры с использованием Flutter и Back4app

15min

Введение

В этом учебном пособии мы пройдем через процесс создания устойчивой игры с использованием Flutter и Back4app. Эта игра будет обучать пользователей экологически чистым действиям и вознаграждать их за положительные действия в отношении окружающей среды. Мы будем использовать Back4app для бэкенд-сервисов, таких как отслеживание прогресса пользователей и вознаграждение их цифровыми предметами.

Концепция игры: EcoWarrior

Игра будет называться EcoWarrior, где пользователи выполняют небольшие экологические задачи, такие как переработка, экономия воды и снижение потребления энергии. Пользователи будут зарабатывать очки и цифровые награды по мере выполнения задач. Мы сосредоточимся на:

  • Регистрация задач и отслеживание прогресса: Пользователи регистрируют экологически чистые действия, которые они предпринимают.
  • Система вознаграждений: Игроки зарабатывают очки и значки за свои вклады.
  • Интеграция бэкенда: Все данные пользователей и прогресс будут храниться в Back4app.

Предварительные требования

  • Настройка разработки Flutter: Следуйте за руководством по установке Flutter.
  • Аккаунт Back4app: Зарегистрируйтесь для бесплатного аккаунта на Back4app.
  • Базовые знания о виджетах Flutter и о том, как работать с бэкендом.

Шаг 1: Настройка Back4app

1.1 Создание проекта Back4app

  1. Войдите в Back4app и создайте новый проект бэкенда под названием EcoWarriorGame.
  2. Создайте класс Parse под названием EcoActions с следующими полями:
    • имя пользователя (String): Имя пользователя игрока.
    • тип действия (String): Тип действия (например, "Переработка", "Сохранение воды").
    • очки (Number): Очки, присуждаемые за действие.
    • временная метка (DateTime): Время, когда действие было зарегистрировано.

1.2 Настройка ваших учетных данных Back4app

Перейдите в настройки вашего проекта Back4app и получите ваш ID приложения и Ключ клиента. Эти данные будут использоваться для инициализации Back4app в Flutter.

Шаг 2: Настройка вашего проекта Flutter

2.1 Создание нового проекта Flutter

Bash


2.2 Добавление зависимостей

Откройте pubspec.yaml и добавьте следующие зависимости для Parse SDK и Flutter:

YAML


Запустите flutter pub get для установки зависимостей.

2.3 Инициализация Parse SDK в Flutter

В lib/main.dart, инициализируйте Parse, добавив ваши учетные данные Back4app:

Dart


Замените YOUR_BACK4APP_APP_ID и YOUR_BACK4APP_CLIENT_KEY на ваши фактические учетные данные Back4app.

Шаг 3: Интерфейс и функциональность игры

Теперь мы создадим интерфейс игры EcoWarrior и интегрируем его с Back4app.

3.1 Создание экрана игры

В lib/game_screen.dart, создайте базовый интерфейс игры, где игроки могут регистрировать экологические задачи и просматривать свой счет.

Dart


Шаг 4: Получение данных пользователя из Back4app

Мы получим и отобразим общий счет и действия, которые пользователь зарегистрировал.

4.1 Получение счета игрока из бэкенда

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

В lib/game_screen.dart, обновите _GameScreenState чтобы включить логику получения:

Dart


Вызовите _fetchScore() при инициализации экрана:

Dart


Шаг 5: Запуск игры

  1. Запустите приложение на вашем устройстве или эмуляторе:
  2. Игрок выберет действие из выпадающего списка, зафиксирует его, и их очки будут сохранены в Back4app.
  3. Общая сумма очков будет получена из Back4app и отображена на экране.

Шаг 6: Расширение игры

Вы можете расширить игру EcoWarrior следующим образом:

  • Добавление большего количества экологических задач и действий.
  • Реализация таблицы лидеров для отображения лучших экологически чистых игроков.
  • Добавление достижений за выполнение определенного количества задач.

Заключение

В этом учебном пособии мы создали устойчивую игру с использованием Flutter и Back4app. Игра позволяет игрокам фиксировать экологически чистые действия, отслеживает их прогресс с помощью бэкенда и вознаграждает их очками. С богатым UI-фреймворком Flutter и масштабируемым бэкендом Back4app вы можете легко расширить эту концепцию, чтобы создать более сложные и интерактивные устойчивые игры.

Для получения дополнительной информации: