// // // // ОкончательноСкрытьОкноПриветствияПослеСкрытия = мир => { if (мир.путьАнимацииОкнаПриветствия != "скрытие") { return; } мир.окноПриветствия.style.display = "none"; }; // // // // ВыбратьРаскладкуПровальную = мир => { мир.выбраннаяРаскладка = "😭"; мир.уведомить("выбрали раскладку"); }; // // // // ВыбратьРаскладкуУспешную = мир => { мир.выбраннаяРаскладка = "😀"; мир.уведомить("выбрали раскладку"); }; // // // // ВыбратьРаскладкуX = мир => { мир.выбраннаяРаскладка = "X"; мир.уведомить("выбрали раскладку"); }; // // // // ВывестиФактЗавершенияАнимацииОкнаПриветствия = мир => { console.debug("завершили анимацию окна приветствия"); }; // // // // ПлавноСкрытьОкноПриветствия = мир => { const указатель = "окно-приветствия"; const css = ` #${указатель} { opacity: 1; animation: ${указатель}FadeOut 1s ease; animation-fill-mode: forwards; animation-delay: 0.2s; } @keyframes ${указатель}FadeOut { 0% { opacity: 1; } 100% { opacity: 0; } } `; мир.анимацияОкнаПриветствия.innerHTML = css; мир.путьАнимацииОкнаПриветствия = "скрытие"; }; // // // // ПлавноПоказатьОкноПриветствия = мир => { const указатель = "окно-приветствия"; const css = ` #${указатель} { opacity: 0; animation: ${указатель}FadeIn 1s ease; animation-fill-mode: forwards; } @keyframes ${указатель}FadeIn { 0% { opacity: 0; } 100% { opacity: 1; } } `; мир.анимацияОкнаПриветствия.innerHTML = css; мир.путьАнимацииОкнаПриветствия = "отображение"; }; // // // // ПодготовитьАнимациюОкнаПриветствия = мир => { мир.анимацияОкнаПриветствия = document.createElement("style"); document.head.appendChild(мир.анимацияОкнаПриветствия); мир.окноПриветствия.addEventListener( "animationend", function() { мир.уведомить("завершили анимацию окна приветствия"); } ); }; // // // // ЗадатьВидОкнаПриветствия = мир => { const указатель = "окно-приветствия"; const css = ` #${указатель}-тело { position: absolute; left: 50%; top: 50%; transform: translateX(-50%) translateY(-50%); } #${указатель} { background-color: white; position: fixed; left: 0; top: 0; right: 0; bottom: 0; } `; var вид = document.createElement("style"); вид.innerHTML = css; document.head.appendChild(вид); }; // // // // СоздатьОкноПриветствия = мир => { const указатель = "окно-приветствия"; const html = `

Маджонг | 麻将 | Mahjong


Выберите раскладку | 选择布局 | Select layout

`; var окно = document.createElement("div"); окно.id = указатель; окно.innerHTML = html; document.body.appendChild(окно); мир.окноПриветствия = окно; $(`#${указатель}-X`).click(function() { мир.уведомить("кнопка раскладки X"); }); $(`#${указатель}-😀`).click(function() { мир.уведомить("кнопка раскладки 😀"); }); $(`#${указатель}-😭`).click(function() { мир.уведомить("кнопка раскладки 😭"); }); }; // // // // СоздатьОкноПоражения = мир => { var структура = `

Поражение


Перезапустить игру с раскладкой:

`; var вид = ` #окно-поражение-тело { position: absolute; left: 50%; top: 50%; transform: translateX(-50%) translateY(-50%); pointer-events: all; } #окно-победы { opacity: 0; background-color: white; animation: fadeInОкноПоражения 1s ease; animation-fill-mode: forwards; position: fixed; left: 0; top: 0; right: 0; bottom: 0; } @keyframes fadeInОкноПоражения { 0% { opacity: 0; } 100% { opacity: 1; } } `; }; // // // // СоздатьОкноПобеды = мир => { var структура = `

Победа


Перезапустить игру с раскладкой:

`; var вид = ` #окно-победы-тело { position: absolute; left: 50%; top: 50%; transform: translateX(-50%) translateY(-50%); pointer-events: all; } #окно-победы { opacity: 0; background-color: white; animation: fadeInОкноПобеды 1s ease; animation-fill-mode: forwards; position: fixed; left: 0; top: 0; right: 0; bottom: 0; } @keyframes fadeInОкноПобеды { 0% { opacity: 0; } 100% { opacity: 1; } } `; мир.окноПобеды = добавитьОкно("окно-победы", структура, вид); };