Задать вопрос
@nevro
не пойми кто

Деление игры на GameState'ы: как?

В основном сталкиваюсь с примерами, что GameState - меню, сплешскрин, выбор персонажа и т.п. То есть окна (получается, окно=экран). А сама игра? Например, игра поделенная на уровни. Уровень может быть GameState (все переменные-объекты и прочие переменные уровня)? Или вся игра - это один GameState?

ps. Тут на Phaser.js кто-нибудь пишет, есть смысл вопросы по нему задавать?
  • Вопрос задан
  • 422 просмотра
Подписаться 3 Оценить Комментировать
Решения вопроса 1
@MarkusD
все время мелю чепуху :)
ps. Тут на Phaser.js кто-нибудь пишет, есть смысл вопросы по нему задавать?

Это не форум, тут формат общения - вопрос-ответ. Один вопрос от тебя и много ответов от других.
Пиши с тегом javascript или phaser-js и тебе наверное ответят.

По поводу организации: как душе будет угодно. Но лучше все таки подойти к вопросу аналитически.
Как у тебя сменяются уровни? Ширма между сценами есть?
Если есть, то геймплей удобнее сделать двумя стадиями - стадией сцены игры и стадией ширмы. Если ширмы нет и геймплей не прерывается между уровнями, то лучше его оформить одной стадией.

Вот мой ответ: Подходи к вопросу аналитически, пойми что для твоей структуры геймплея будет удобнее. Информации ты никакой по своему вопросу не дал, так что и ответов внятных вряд ли можно ждать. Асам вопрос очень прост.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
@localghost
Мне кажется, что само слово state/состояние хорошо отражает суть абстракции. Конечно, получается, что разные окна - это обычно разные состояния, потому что в разных окнах (и разных состояниях) игра делает разные вещи и ждет от пользователя разных действий.
Я не думаю, что в обычной игре каждый уровень стоит делать отдельным состоянием. Попробуйте исходить из принципа "не повторяться". Обычно на каждом уровне происходит одно и то же: игра ждет пользовательского ввода; в ответ на один и тот же ввод на разных уровнях игра реагирует одинаково, и т. п. - зачем вам разный код на разные уровни? Код состояния (или окна) уровня может вообще ничем не отличаться. Меняется значение переменной - загружаются другие данные. А алгоритмы все те же.

Хотя, конечно, в итоге делайте так, как вам удобно и понятно.
Ответ написан
Комментировать
Я так понимаю все зависит от тебя, можешь любой уровень абстракции задать
Ответ написан
Комментировать
Dit81
@Dit81
Security researcher, pentester, internet-marketer
Тоже интересен этот вопрос! Делаю анимацию с помощью Pixi.js Хотел добавить меню с выбором и сделал отдельным объектом с реакцией на клавиши. Получилось 3 окна: меню, цикл с анимацией и окно когда цикл останавливается и опять переход на меню...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы