2016-07-21 3 views
0

Я внедряю игру GMStudio в браузере. Мне нужно отправить некоторые данные в игру из интерфейса сайта в JSON и получить некоторые данные из игры в интерфейсе, чтобы сделать последующие действия.Game Maker Studio HTML5 localStorage issue

Итак, моя идея состояла в том, чтобы сохранить данные в файлах cookie/localStorage и каким-то образом получить их в игре, используя функциональность HTTP или DLL. Кроме того, я хотел бы передавать сообщения из игры, используя window.parent.postMessage, и получать их в интерфейсе правильно.

Увы, я не нашел способ реализовать это. Надеюсь, что есть некоторые последовательные подходы к этой проблеме, о которых я не знаю.

Резервный план состоит в том, чтобы использовать Game Maker http_post_string и веб-сокеты, чтобы получить данные пользователя до начала игры, и сделать внешний интерфейс чем-то после окончания игры. Однако это неуклюже и небезопасно.

ответ

1

Стандартным подходом является создание расширения JavaScript.

Это делается путем создания пустого расширения, добавляя к нему пустой JS-файл, определяя функции через контекстное меню на нем, а затем добавляя реализации в файл JS. Тогда вы сможете называть их со стороны GML, как обычно.

Таким образом, вы можете получить доступ к LocalStorage \ Cookies, передавать \ получать данные из JS-бэкендов и, в общем, беспорядок со временем выполнения (с разной степенью понимания, необходимой для доступа к внутренним данным).