Изменения от Главреда ГитЖС | Changes of GitJS Glavred
This commit is contained in:
@@ -25,7 +25,8 @@ const ИМЯ_ОТЛ_РАСКЛАДКИ = "Отладочные раскладк
|
||||
ЗагрузитьОтладочнуюРаскладку = мир =>
|
||||
{
|
||||
var модуль = мир.модули.модульПоИмени(ИМЯ_ОТЛ_РАСКЛАДКИ);
|
||||
var ресурс = "/успех|success.layout";
|
||||
//var ресурс = "/успех|success.layout";
|
||||
var ресурс = "/провал|failure.layout";
|
||||
var содержимое = модуль.содержимое[ресурс];
|
||||
мир.раскладкаKMahjongg = {
|
||||
"содержимое": содержимое,
|
||||
|
||||
135
фишки|tiles.js
135
фишки|tiles.js
@@ -3,6 +3,141 @@
|
||||
// // // //
|
||||
|
||||
|
||||
ЗапуститьПлавноеСкрытиеФишек = мир =>
|
||||
{
|
||||
var шаг = 10;
|
||||
var длительность = 200;
|
||||
var прозрачность = 1.0;
|
||||
var дельтаПрозрачности = шаг / длительность;
|
||||
const анимация = setInterval(
|
||||
function() {
|
||||
const позиции = мир.раскладкаKMahjongg.позиции;
|
||||
прозрачность -= дельтаПрозрачности;
|
||||
// Возвращаем прозрачность материалам перед последующим скрытием фишек.
|
||||
// И планируем выход из этой анимации.
|
||||
var выходим = false;
|
||||
if (прозрачность < 0)
|
||||
{
|
||||
прозрачность = 1;
|
||||
выходим = true;
|
||||
}
|
||||
// Выставляем нужную прозрачность.
|
||||
for (var id in мир.номераВыбранныхФишек)
|
||||
{
|
||||
var номер = мир.номераВыбранныхФишек[id];
|
||||
var фишка = мир.фишки[номер];
|
||||
фишка.material.opacity = прозрачность;
|
||||
// Указываем на необходимость учитывать прозрачность.
|
||||
фишка.material.transparent = true;
|
||||
}
|
||||
if (выходим)
|
||||
{
|
||||
clearInterval(анимация);
|
||||
мир.уведомить("плавно скрыли фишки");
|
||||
}
|
||||
},
|
||||
шаг
|
||||
);
|
||||
};
|
||||
|
||||
|
||||
// // // //
|
||||
|
||||
|
||||
ПроверитьВозможностьПоискаФишки = мир =>
|
||||
{
|
||||
if (мир.можноИскатьФишку)
|
||||
{
|
||||
мир.уведомить("можно искать фишку");
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
// // // //
|
||||
|
||||
|
||||
ОтключитьВозможностьПоискаФишки = мир =>
|
||||
{
|
||||
мир.можноИскатьФишку = false;
|
||||
};
|
||||
|
||||
|
||||
// // // //
|
||||
|
||||
|
||||
ВключитьВозможностьПоискаФишки = мир =>
|
||||
{
|
||||
мир.можноИскатьФишку = true;
|
||||
};
|
||||
|
||||
|
||||
// // // /
|
||||
|
||||
|
||||
ПростоОбождатьПаруСекунд = мир =>
|
||||
{
|
||||
setTimeout(
|
||||
function() {
|
||||
мир.уведомить("плавно скрыли фишки")
|
||||
},
|
||||
2000
|
||||
);
|
||||
};
|
||||
|
||||
|
||||
// // // //
|
||||
|
||||
|
||||
ПлавноСкрытьФишки = мир =>
|
||||
{
|
||||
мир.уведомить("надо плавно скрыть фишки");
|
||||
};
|
||||
|
||||
|
||||
// // // //
|
||||
|
||||
|
||||
ОчиститьВыборФишек = мир =>
|
||||
{
|
||||
мир.номераВыбранныхФишек = [];
|
||||
};
|
||||
|
||||
|
||||
// // // //
|
||||
|
||||
|
||||
ОчиститьИндексыВыбранныхФишек = мир =>
|
||||
{
|
||||
const позиции = мир.раскладкаKMahjongg.позиции;
|
||||
for (var id in мир.номераВыбранныхФишек)
|
||||
{
|
||||
var номер = мир.номераВыбранныхФишек[id];
|
||||
var позиция = позиции[номер];
|
||||
var индекс = индексПозицииФишки(позиция);
|
||||
delete мир.индексыФишек[индекс];
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
// // // //
|
||||
|
||||
|
||||
СкрытьСовпадающиеФишки = мир =>
|
||||
{
|
||||
for (var id in мир.номераВыбранныхФишек)
|
||||
{
|
||||
var номер = мир.номераВыбранныхФишек[id];
|
||||
// Перемещаем фишку на другой слой для исключения её из:
|
||||
// * цикла отрисовки;
|
||||
// * узлов для выбора нажатием.
|
||||
мир.фишки[номер].layers.set(1);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
// // // //
|
||||
|
||||
|
||||
ОчиститьВыборПервойНайденнойФишки = мир =>
|
||||
{
|
||||
мир.номераВыбранныхФишек.shift();
|
||||
|
||||
@@ -7,8 +7,11 @@
|
||||
создать индексы фишек
|
||||
подготовить фишки к выбору
|
||||
уведомить о создании фишек в сцене
|
||||
включить возможность поиска фишки
|
||||
|
||||
нажали
|
||||
проверить возможность поиска фишки
|
||||
можно искать фишку
|
||||
найти фишку в координатах нажатия
|
||||
нашли фишку в координатах нажатия
|
||||
вывести найденную фишку
|
||||
@@ -20,10 +23,21 @@
|
||||
окрасить найденную фишку
|
||||
проверить наличие двух выбранных фишек
|
||||
выбраны две фишки
|
||||
отключить возможность поиска фишки
|
||||
сравнить выбранные фишки
|
||||
фишки совпадают
|
||||
вывести совпадение фишек
|
||||
плавно скрыть фишки
|
||||
фишки не совпадают
|
||||
вывести различие фишек
|
||||
очистить окрашивание первой найденной фишки
|
||||
очистить выбор первой найденной фишки
|
||||
включить возможность поиска фишки
|
||||
надо плавно скрыть фишки
|
||||
# просто обождать пару секунд
|
||||
запустить плавное скрытие фишек
|
||||
плавно скрыли фишки
|
||||
скрыть совпадающие фишки
|
||||
очистить индексы выбранных фишек
|
||||
очистить выбор фишек
|
||||
включить возможность поиска фишки
|
||||
Reference in New Issue
Block a user