?

Log in

Жизнь прекрасна и удивительна
Hello mvel! 
23-сент-2016 05:55 pm
Робот. Книжку вот чтает...

В проект добавлен функционал аскольдокарт. Карты программируются на скриптовом языке Mvel.


Примитивная карта болезни с временным принципом работы будет выглядеть примерно так:

player.post("katar","У вас начались проблемы со зрением"); // Показать статус игроку.
player.postDelay("katar","У вас серьезные проблемы со зрением, вы теряете возможность читать",60*60*1000); // через час
player.postDelay("katar","Вы перестали видеть",2*60*60*1000); // через 2 часа
QrReader.subscribe( // Подписываемся на сканер QR кодов
def (qrString) { // Если отсканирован QR код
if (qrString == "hill_katar")
 player.removeAllPosts("katar"); // и он содержит строку "hill_katar" вылечиваем болезнь.
});





Этот код не совсем верен (не учтена возможность перезагрузки устройства), но показывает принцип.


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

Также есть возможность работы с сетью (через подписку ретрофита). Можно, например, по QR коду получить дополнительную скрытую вводную с сайта, и показать ее пользователю.

Код скриптов содержится, пишется и исправляется на сайте. Для изменения скриптов (или добавления новых), нет необходимости пересобирать или перезаливать приложение. Достаточно просто иметь доступ в сеть.

Comments 
24-сент-2016 01:07 pm
Heal.
Hill - это "холм" :)
28-сент-2016 08:44 am
Есть кстати способ хорошо проектировать такую логику, лучше чем постить отложенные события, которые потом могут не пригодиться. Если интересно, можем сконтактироваться.

28-сент-2016 08:58 am
Интересно. Можно писать сюда, или на почту bi-tz@ya.ru.

Я постарался воспроизвести в урезаном варианте RX-java в интерфейсах. Здесь этого не видно но основа в виде обсерверов и подписок вынесена в скриптовый язык.

Кстати давно хотел тебя спросить. У тебя вроде был какойто модуль для связи лазертага с телефоном? Блютус?
28-сент-2016 09:03 am
Напишу

С телефоном есть варианты, есть и блютус, да.
28-сент-2016 09:05 am
Хорошо. Скинь если не сложно протокол.

Интегрирую его в приложение.
28-сент-2016 09:21 am
Как такового протокола нет, UART мессаги сыпятся некоторые да и всё. Это нужно конкретно под конкретные задачи обсуждать.
28-сент-2016 09:30 am
угу. Тогда стукнусь, когда (если) оформится техническое задание по лазертагу.
This page was loaded фев 26 2017, 2:42 pm GMT.