|
@@ -363,6 +363,17 @@ |
|
|
|
|
|
|
|
|
ПроверитьДоступностьФишкиДляВыбора = мир => |
|
|
ПроверитьДоступностьФишкиДляВыбора = мир => |
|
|
{ |
|
|
{ |
|
|
|
|
|
// Удостоверимся, что это не одна и та же фишка, выбранная дважды. |
|
|
|
|
|
if (мир.номераВыбранныхФишек.length) |
|
|
|
|
|
{ |
|
|
|
|
|
var номер = мир.номераВыбранныхФишек[0]; |
|
|
|
|
|
if (номер == мир.номерНайденнойФишки) |
|
|
|
|
|
{ |
|
|
|
|
|
return; |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// Проверяем доступность с точки зрения правил Маджонга. |
|
|
var позиция = мир.раскладкаKMahjongg.позиции[мир.номерНайденнойФишки]; |
|
|
var позиция = мир.раскладкаKMahjongg.позиции[мир.номерНайденнойФишки]; |
|
|
var индекс = индексПозицииФишки(позиция); |
|
|
var индекс = индексПозицииФишки(позиция); |
|
|
if (фишкуМожноВыбрать(мир.индексыФишек, индекс)) |
|
|
if (фишкуМожноВыбрать(мир.индексыФишек, индекс)) |
|
@@ -511,7 +522,11 @@ |
|
|
var размеры = [ |
|
|
var размеры = [ |
|
|
(границы.max.x - границы.min.x) / 2, |
|
|
(границы.max.x - границы.min.x) / 2, |
|
|
(границы.max.z - границы.min.z) / 2, |
|
|
(границы.max.z - границы.min.z) / 2, |
|
|
границы.max.y - границы.min.y, |
|
|
|
|
|
|
|
|
//границы.max.y - границы.min.y, |
|
|
|
|
|
]; |
|
|
|
|
|
var отступы = [ |
|
|
|
|
|
0.02, |
|
|
|
|
|
0.02, |
|
|
]; |
|
|
]; |
|
|
|
|
|
|
|
|
const позиции = мир.раскладкаKMahjongg.позиции; |
|
|
const позиции = мир.раскладкаKMahjongg.позиции; |
|
@@ -527,8 +542,8 @@ |
|
|
var слой = позиция[0]; |
|
|
var слой = позиция[0]; |
|
|
var ряд = позиция[1]; |
|
|
var ряд = позиция[1]; |
|
|
var столбец = позиция[2]; |
|
|
var столбец = позиция[2]; |
|
|
фишка.position.x = столбец * размеры[0]; |
|
|
|
|
|
фишка.position.z = ряд * размеры[1]; |
|
|
|
|
|
|
|
|
фишка.position.x = столбец * (размеры[0] + отступы[0]); |
|
|
|
|
|
фишка.position.z = ряд * (размеры[1] + отступы[1]); |
|
|
фишка.position.y = слой; |
|
|
фишка.position.y = слой; |
|
|
} |
|
|
} |
|
|
}; |
|
|
}; |
|
|