Изменения от Главреда ГитЖС | Changes of GitJS Glavred
This commit is contained in:
139
фишки|tiles.js
139
фишки|tiles.js
@@ -3,6 +3,106 @@
|
||||
// // // //
|
||||
|
||||
|
||||
ВывестиПобеду = мир =>
|
||||
{
|
||||
console.debug("ПОБЕДА");
|
||||
};
|
||||
|
||||
|
||||
// // // //
|
||||
|
||||
|
||||
ВывестиПоражение = мир =>
|
||||
{
|
||||
console.debug("ПОРАЖЕНИЕ");
|
||||
};
|
||||
|
||||
|
||||
// // // //
|
||||
|
||||
|
||||
ПроверитьНаличиеФишекНаИгровомПоле = мир =>
|
||||
{
|
||||
if (Object.keys(мир.индексыФишек).length > 0)
|
||||
{
|
||||
мир.уведомить("фишки на игровом поле присутствуют");
|
||||
}
|
||||
else {
|
||||
мир.уведомить("фишки на игровом поле отсутствуют");
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
// // // //
|
||||
|
||||
|
||||
ВывестиПрисутствиеХодов = мир =>
|
||||
{
|
||||
console.debug("ходы есть");
|
||||
};
|
||||
|
||||
|
||||
// // // //
|
||||
|
||||
|
||||
ВывестиОтсутствиеХодов = мир =>
|
||||
{
|
||||
console.debug("ходов нет");
|
||||
};
|
||||
|
||||
|
||||
// // // //
|
||||
|
||||
|
||||
ПроверитьНаличиеХодов = мир =>
|
||||
{
|
||||
var номера = мир.доступныеДляВыбораНомераФишек;
|
||||
for (var н0 in номера)
|
||||
{
|
||||
for (var н1 in номера)
|
||||
{
|
||||
// Пропускаем одну и ту же фишку.
|
||||
if (н0 == н1)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
var номер0 = номера[н0];
|
||||
var номер1 = номера[н1];
|
||||
var группа0 = мир.группыФишек[номер0];
|
||||
var группа1 = мир.группыФишек[номер1];
|
||||
if (группа0 == группа1)
|
||||
{
|
||||
мир.уведомить("ходы присутствуют");
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
мир.уведомить("ходы отсутствуют");
|
||||
};
|
||||
|
||||
|
||||
// // // //
|
||||
|
||||
|
||||
СобратьДоступныеДляВыбораНомераФишек = мир =>
|
||||
{
|
||||
мир.доступныеДляВыбораНомераФишек = [];
|
||||
for (индекс in мир.индексыФишек)
|
||||
{
|
||||
if (фишкуМожноВыбрать(мир.индексыФишек, индекс))
|
||||
{
|
||||
var фишка = мир.индексыФишек[индекс];
|
||||
var номер = номерФишки(мир.фишки, фишка.id);
|
||||
мир.доступныеДляВыбораНомераФишек.push(номер);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
// // // //
|
||||
|
||||
|
||||
ЗапуститьПлавноеСкрытиеФишек = мир =>
|
||||
{
|
||||
var шаг = 10;
|
||||
@@ -11,7 +111,6 @@
|
||||
var дельтаПрозрачности = шаг / длительность;
|
||||
const анимация = setInterval(
|
||||
function() {
|
||||
const позиции = мир.раскладкаKMahjongg.позиции;
|
||||
прозрачность -= дельтаПрозрачности;
|
||||
// Возвращаем прозрачность материалам перед последующим скрытием фишек.
|
||||
// И планируем выход из этой анимации.
|
||||
@@ -214,25 +313,6 @@
|
||||
|
||||
ОкраситьНайденнуюФишку = мир =>
|
||||
{
|
||||
/*
|
||||
// Очищаем цвета всех фишек.
|
||||
for (var номер in мир.фишки)
|
||||
{
|
||||
var фишка = мир.фишки[номер];
|
||||
var группа = мир.группыФишек[номер];
|
||||
var материал = мир.материалыФишек[группа];
|
||||
фишка.material = материал;
|
||||
}
|
||||
// Окрашиваем выбранные фишки.
|
||||
for (var id in мир.номераВыбранныхФишек)
|
||||
{
|
||||
var номер = мир.номераВыбранныхФишек[id];
|
||||
var фишка = мир.фишки[номер];
|
||||
var группа = мир.группыФишек[номер];
|
||||
var материал = мир.материалыВыбранныхФишек[группа];
|
||||
фишка.material = материал;
|
||||
}
|
||||
*/
|
||||
var номер = мир.номерНайденнойФишки;
|
||||
var фишка = мир.фишки[номер];
|
||||
var группа = мир.группыФишек[номер];
|
||||
@@ -266,25 +346,12 @@
|
||||
|
||||
ПроверитьДоступностьФишкиДляВыбора = мир =>
|
||||
{
|
||||
// Проверяем заблокированность фишки одновременно с обеих сторон.
|
||||
var позиция = мир.раскладкаKMahjongg.позиции[мир.номерНайденнойФишки];
|
||||
var слева = уФишкиЕстьСоседи(мир.индексыФишек, позиция, 0, -2);
|
||||
var справа = уФишкиЕстьСоседи(мир.индексыФишек, позиция, 0, 2);
|
||||
if (слева && справа)
|
||||
var индекс = индексПозицииФишки(позиция);
|
||||
if (фишкуМожноВыбрать(мир.индексыФишек, индекс))
|
||||
{
|
||||
return;
|
||||
мир.уведомить("фишка доступна для выбора");
|
||||
}
|
||||
|
||||
// Проверяем заблокированность сверху.
|
||||
for (var смещениеСтолбца = -1; смещениеСтолбца < 2; ++смещениеСтолбца)
|
||||
{
|
||||
if (уФишкиЕстьСоседи(мир.индексыФишек, позиция, 1, смещениеСтолбца))
|
||||
{
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
мир.уведомить("фишка доступна для выбора");
|
||||
};
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user