@@ -1,5 +1,5 @@ | |||||
МАОН | МАОН | ||||
0.2.0 | |||||
0.2.1 | |||||
https://git.opengamestudio.org/KH/MAOH | https://git.opengamestudio.org/KH/MAOH | ||||
x /⨐.js | x /⨐.js | ||||
@@ -3,24 +3,38 @@ | |||||
// // // // | // // // // | ||||
ВывестиНеобходимостьПродолженияЗагрузки = мир => | |||||
ОкончитьЗагрузкуМаджонга = мир => | |||||
{ | { | ||||
console.debug("ВывестиНеобходимостьПродолженияЗагрузки"); | |||||
мир.уведомить("надо окончить загрузку маджонга"); | |||||
}; | }; | ||||
// // // // | // // // // | ||||
ПроверитьНаличиеОбновленийМаджонга = мир => | |||||
ЗагрузитьЧередуОкончания = мир => | |||||
{ | { | ||||
var событие = "надо обновить маджонг при наличии обновлений"; | |||||
var м = мир.модули.модульПоУказателю(УКАЗАТЕЛЬ_ЭТОГО_МОДУЛЯ); | |||||
var содержимое = м.содержимое["/🏁.js"]; | |||||
eval(содержимое); | |||||
м.исполнитьЧереду(мир, "/🏁.череда"); | |||||
}; | |||||
// // // // | |||||
ПроверитьНаличиеОбновленийПриложения = мир => | |||||
{ | |||||
// Эта функция находится вне "/🔄.js", т.к. "/🔄.js" отключаем, | |||||
// отчего этой функции просто не будет в пространстве имён. | |||||
var событие = "надо обновить приложение при наличии обновлений"; | |||||
if (событие in мир.события) | if (событие in мир.события) | ||||
{ | { | ||||
мир.уведомить(событие); | мир.уведомить(событие); | ||||
} | } | ||||
else | else | ||||
{ | { | ||||
мир.уведомить("обновления маджонга отсутствуют"); | |||||
мир.уведомить("обновления приложения отсутствуют"); | |||||
} | } | ||||
}; | }; |
@@ -1,10 +1,9 @@ | |||||
пуск | пуск | ||||
задать заголовок | задать заголовок | ||||
отобразить страницу загрузки маджонга | отобразить страницу загрузки маджонга | ||||
проверить наличие обновлений маджонга | |||||
обновления маджонга отсутствуют | |||||
вывести необходимость продолжения загрузки | |||||
# загрузить библиотеки маджонга | |||||
#загрузили библиотеки маджонга | |||||
# загрузить череду окончания | |||||
проверить наличие обновлений приложения | |||||
обновления приложения отсутствуют | |||||
загрузить библиотеки приложения | |||||
загрузили библиотеки приложения | |||||
загрузить череду окончания | |||||
# окончить загрузку маджонга | # окончить загрузку маджонга |
@@ -3,16 +3,77 @@ | |||||
// // // // | // // // // | ||||
УведомитьОбОтсутствииОбновленийМаджонга = мир => | |||||
ПерезагрузитьПриложениеПослеОбновления = мир => | |||||
{ | { | ||||
мир.уведомить("обновления маджонга отсутствуют"); | |||||
window.location.reload(false); | |||||
}; | }; | ||||
// // // // | // // // // | ||||
ЗагрузитьОписаниеВсехМодулейМаджонга = мир => | |||||
УдалитьМодулиПриложенияПередОбновлением = мир => | |||||
{ | |||||
var список = мир.списокМодулейПриложенияДляОбновления; | |||||
for (var номер in список) | |||||
{ | |||||
var указатель = список[номер]; | |||||
localStorage.removeItem(указатель); | |||||
} | |||||
}; | |||||
// // // // | |||||
ПроверитьНаличиеМодулейПриложенияДляОбновления = мир => | |||||
{ | |||||
if (мир.списокМодулейПриложенияДляОбновления.length) | |||||
{ | |||||
мир.уведомить("присутствуют модули приложения для обновления"); | |||||
} | |||||
else | |||||
{ | |||||
мир.уведомить("отсутствуют модули приложения для обновления"); | |||||
} | |||||
} | |||||
// // // // | |||||
СоставитьСписокМодулейПриложенияДляОбновления = мир => | |||||
{ | |||||
var список = []; | |||||
var описания = мир.описанияМодулейПриложения; | |||||
for (var указатель in описания) | |||||
{ | |||||
var описание = описания[указатель]; | |||||
var модуль = мир.модули.модульПоУказателю(указатель); | |||||
if ( | |||||
модуль && | |||||
модуль.версия != описание.версия | |||||
) { | |||||
список.push(указатель); | |||||
} | |||||
} | |||||
мир.списокМодулейПриложенияДляОбновления = список; | |||||
}; | |||||
// // // // | |||||
УведомитьОбОтсутствииОбновленийПриложения = мир => | |||||
{ | |||||
мир.уведомить("обновления приложения отсутствуют"); | |||||
}; | |||||
// // // // | |||||
ЗагрузитьОписаниеВсехМодулейПриложения = мир => | |||||
{ | { | ||||
var указатели = [УКАЗАТЕЛЬ_ЭТОГО_МОДУЛЯ]; | var указатели = [УКАЗАТЕЛЬ_ЭТОГО_МОДУЛЯ]; | ||||
var м = мир.модули.модульПоУказателю(УКАЗАТЕЛЬ_ЭТОГО_МОДУЛЯ); | var м = мир.модули.модульПоУказателю(УКАЗАТЕЛЬ_ЭТОГО_МОДУЛЯ); | ||||
@@ -27,7 +88,7 @@ | |||||
} | } | ||||
} | } | ||||
мир.описанияМодулейМаджонга = []; | |||||
мир.описанияМодулейПриложения = []; | |||||
function загрузитьОписание(мир, список, номер, успех, провал) | function загрузитьОписание(мир, список, номер, успех, провал) | ||||
{ | { | ||||
@@ -35,7 +96,8 @@ | |||||
мир.взять( | мир.взять( | ||||
указатель, | указатель, | ||||
function(содержимое) { | function(содержимое) { | ||||
мир.описанияМодулейМаджонга[указатель] = содержимое; | |||||
var описание = мир.разобрать0000(содержимое); | |||||
мир.описанияМодулейПриложения[указатель] = описание; | |||||
успех(); | успех(); | ||||
}, | }, | ||||
function(ошибка) { | function(ошибка) { | ||||
@@ -49,10 +111,10 @@ | |||||
указатели, | указатели, | ||||
загрузитьОписание, | загрузитьОписание, | ||||
function() { | function() { | ||||
мир.уведомить("загрузили описание всех модулей маджонга"); | |||||
мир.уведомить("загрузили описание всех модулей приложения"); | |||||
}, | }, | ||||
function() { | function() { | ||||
мир.уведомить("не загрузили описание всех модулей маджонга"); | |||||
мир.уведомить("не загрузили описание всех модулей приложения"); | |||||
} | } | ||||
); | ); | ||||
}; | }; |
@@ -1,5 +1,12 @@ | |||||
надо обновить маджонг при наличии обновлений | |||||
загрузить описание всех модулей маджонга | |||||
не загрузили описание всех модулей маджонга | |||||
уведомить об отсутствии обновлений маджонга | |||||
загрузили описание всех модулей маджонга | |||||
надо обновить приложение при наличии обновлений | |||||
загрузить описание всех модулей приложения | |||||
не загрузили описание всех модулей приложения | |||||
уведомить об отсутствии обновлений приложения | |||||
загрузили описание всех модулей приложения | |||||
составить список модулей приложения для обновления | |||||
проверить наличие модулей приложения для обновления | |||||
отсутствуют модули приложения для обновления | |||||
уведомить об отсутствии обновлений приложения | |||||
присутствуют модули приложения для обновления | |||||
удалить модули приложения перед обновлением | |||||
перезагрузить приложение после обновления |
@@ -1,30 +1,4 @@ | |||||
// // // // | |||||
ОкончитьЗагрузкуМаджонга = мир => | |||||
{ | |||||
мир.уведомить("надо окончить загрузку маджонга"); | |||||
}; | |||||
// // // // | |||||
ЗагрузитьЧередуОкончания = мир => | |||||
{ | |||||
var м = мир.модули.модульПоУказателю(УКАЗАТЕЛЬ_ЭТОГО_МОДУЛЯ); | |||||
var содержимое = м.содержимое["/🏁.js"]; | |||||
eval(содержимое); | |||||
м.исполнитьЧереду(мир, "/🏁.череда"); | |||||
}; | |||||
// // // // | |||||
ЗагрузитьБиблиотекиМаджонга = мир => | |||||
ЗагрузитьБиблиотекиПриложения = мир => | |||||
{ | { | ||||
var указатели = []; | var указатели = []; | ||||
var м = мир.модули.модульПоУказателю(УКАЗАТЕЛЬ_ЭТОГО_МОДУЛЯ); | var м = мир.модули.модульПоУказателю(УКАЗАТЕЛЬ_ЭТОГО_МОДУЛЯ); | ||||
@@ -44,7 +18,7 @@ | |||||
мир.модули.использовали.подписатьРаз(function() { | мир.модули.использовали.подписатьРаз(function() { | ||||
мир.уведомить("ручной пуск"); | мир.уведомить("ручной пуск"); | ||||
мир.уведомить("загрузили библиотеки маджонга"); | |||||
мир.уведомить("загрузили библиотеки приложения"); | |||||
}); | }); | ||||
мир.модули.использовать(указатели); | мир.модули.использовать(указатели); | ||||
}; | }; |