Browse Source

Изменения от Главреда ГитЖС | Changes of GitJS Glavred

M-0.1.0
Главред | Glavred 4 years ago
parent
commit
804aa6dc8d
3 changed files with 152 additions and 2 deletions
  1. +2
    -1
      загрузка|loading.js
  2. +135
    -0
      фишки|tiles.js
  3. +15
    -1
      фишки|tiles.череда

+ 2
- 1
загрузка|loading.js View File

@@ -25,7 +25,8 @@ const ИМЯ_ОТЛ_РАСКЛАДКИ = "Отладочные раскладк
ЗагрузитьОтладочнуюРаскладку = мир =>
{
var модуль = мир.модули.модульПоИмени(ИМЯ_ОТЛ_РАСКЛАДКИ);
var ресурс = "/успех|success.layout";
//var ресурс = "/успех|success.layout";
var ресурс = "/провал|failure.layout";
var содержимое = модуль.содержимое[ресурс];
мир.раскладкаKMahjongg = {
"содержимое": содержимое,


+ 135
- 0
фишки|tiles.js View File

@@ -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();


+ 15
- 1
фишки|tiles.череда View File

@@ -7,8 +7,11 @@
создать индексы фишек
подготовить фишки к выбору
уведомить о создании фишек в сцене
включить возможность поиска фишки

нажали
проверить возможность поиска фишки
можно искать фишку
найти фишку в координатах нажатия
нашли фишку в координатах нажатия
вывести найденную фишку
@@ -20,10 +23,21 @@
окрасить найденную фишку
проверить наличие двух выбранных фишек
выбраны две фишки
отключить возможность поиска фишки
сравнить выбранные фишки
фишки совпадают
вывести совпадение фишек
плавно скрыть фишки
фишки не совпадают
вывести различие фишек
очистить окрашивание первой найденной фишки
очистить выбор первой найденной фишки
очистить выбор первой найденной фишки
включить возможность поиска фишки
надо плавно скрыть фишки
# просто обождать пару секунд
запустить плавное скрытие фишек
плавно скрыли фишки
скрыть совпадающие фишки
очистить индексы выбранных фишек
очистить выбор фишек
включить возможность поиска фишки

Loading…
Cancel
Save