МЕХаника МАджонга
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

37 lines
1.5KB

  1. СоздатьИндексыФишекМаджонга = мир =>
  2. {
  3. мир.индексыФишекМаджонга = {};
  4. for (var н in мир.фишкиМаджонга)
  5. {
  6. var позиция = мир.фишкиМаджонга[н]["📍"];
  7. var индекс = индексПозицииФишкиМаджонга(позиция);
  8. мир.индексыФишекМаджонга[индекс] = н;
  9. };
  10. };
  11. // // // //
  12. ВыбратьФишкуМаджонга = мир =>
  13. {
  14. var номер = мир.фишкаМаджонгаДляВыбора;
  15. // Отсекаем выбор одной и той же фишки.
  16. if (
  17. мир.выбраннаяФишкаМаджонга &&
  18. мир.выбраннаяФишкаМаджонга == номер
  19. ) {
  20. return;
  21. }
  22. // Проверяем доступность с точки зрения правил Маджонга.
  23. var позиция = мир.фишкиМаджонга[номер]["📍"];
  24. var индекс = индексПозицииФишкиМаджонга(позиция);
  25. if (!фишкуМаджонгаМожноВыбрать(мир.индексыФишекМаджонга, индекс))
  26. {
  27. return;
  28. }
  29. мир.выбраннаяФишкаМаджонга = номер;
  30. мир.выбранныеФишкиМаджонга.push(номер);
  31. мир.уведомить("изменили выбранные фишки маджонга");
  32. };