From 2d57f3b44c661bc43d0d725893deabe287d3691a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=93=D0=BB=D0=B0=D0=B2=D1=80=D0=B5=D0=B4=20=7C=20Glavred?= Date: Wed, 30 Sep 2020 14:32:32 +0300 Subject: [PATCH] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B5=D0=BD?= =?UTF-8?q?=D0=B8=D1=8F=20=D0=BE=D1=82=20=D0=93=D0=BB=D0=B0=D0=B2=D1=80?= =?UTF-8?q?=D0=B5=D0=B4=D0=B0=20=D0=93=D0=B8=D1=82=D0=96=D0=A1=20|=20Chang?= =?UTF-8?q?es=20of=20GitJS=20Glavred?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 0000 | 11 +- окончание|ending.js | 147 ++++++++++++++ окончание|ending.череда | 10 + привет|hello.js | 7 - привет|hello.череда | 2 - приветствие|welcome.js | 209 ++++++++++++++++++++ приветствие|welcome.череда | 17 ++ пуск|run.js | 11 ++ пуск|run.череда | 2 + управление|controls.js | 100 ++++++++++ управление|controls.череда | 11 ++ 11 files changed, 516 insertions(+), 11 deletions(-) create mode 100644 окончание|ending.js create mode 100644 окончание|ending.череда delete mode 100644 привет|hello.js delete mode 100644 привет|hello.череда create mode 100644 приветствие|welcome.js create mode 100644 приветствие|welcome.череда create mode 100644 пуск|run.js create mode 100644 пуск|run.череда create mode 100644 управление|controls.js create mode 100644 управление|controls.череда diff --git a/0000 b/0000 index fbb4dca..603a892 100644 --- a/0000 +++ b/0000 @@ -1,5 +1,12 @@ ПИМ | MUI 1.0.0 +https://git.opengamestudio.org/mahjong/mahjong-ui -/привет|hello.череда -x /привет|hello.js +x /окончание|ending.js +/окончание|ending.череда +x /приветствие|welcome.js +/приветствие|welcome.череда +x /пуск|run.js +/пуск|run.череда +x /управление|controls.js +/управление|controls.череда \ No newline at end of file diff --git a/окончание|ending.js b/окончание|ending.js new file mode 100644 index 0000000..0b3a25c --- /dev/null +++ b/окончание|ending.js @@ -0,0 +1,147 @@ + + +// // // // + + +ЗадатьПораженческоеСодержимоеОкнуОкончания = мир => +{ + $(`#${мир.окна.окончание.указатель}-содержимое`).html(` + +Поражение +⚬ 失败 ⚬ +Defeat + + `); +}; + + +// // // // + + +ЗадатьПобедноеСодержимоеОкнуОкончания = мир => +{ + $(`#${мир.окна.окончание.указатель}-содержимое`).html(` + +Победа +⚬ 胜利 ⚬ +Victory + + `); +}; + + +// // // // + + +ПлавноПоказатьОкноОкончания = мир => +{ + const css = ` + +#${мир.окна.окончание.указатель} +{ + opacity: 0; + animation: ${мир.окна.окончание.указатель}ПлавноПоказать 0.5s ease; + animation-fill-mode: forwards; +} + + `; + мир.окна.окончание.анимация.innerHTML = css; + мир.окна.окончание.элемент.style.display = "block"; +}; + + +// // // // + + +ПодготовитьАнимациюОкнаОкончания = мир => +{ + мир.окна.окончание.анимация = document.createElement("style"); + document.head.appendChild(мир.окна.окончание.анимация); +}; + + +// // // // + + +ЗадатьВидИАнимациюОкнаОкончания = мир => +{ + 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; +} + +@keyframes ${мир.окна.окончание.указатель}ПлавноСкрыть +{ + 0% + { + opacity: 1; + } + 100% + { + opacity: 0; + } +} + +@keyframes ${мир.окна.окончание.указатель}ПлавноПоказать +{ + 0% + { + opacity: 0; + } + 100% + { + opacity: 1; + } +} + + `; + var вид = document.createElement("style"); + вид.innerHTML = css; + document.head.appendChild(вид); +}; + + +// // // // + + +СоздатьОкноОкончания = мир => +{ + мир.окна.окончание = { + "указатель": "окно-окончания", + }; + const html = ` + +
+
+ + +
+

+ +

+
+
+ + `; + + var окно = document.createElement("div"); + окно.id = мир.окна.окончание.указатель; + окно.innerHTML = html; + document.body.appendChild(окно); + окно.style.display = "none"; + мир.окна.окончание.элемент = окно; +}; \ No newline at end of file diff --git a/окончание|ending.череда b/окончание|ending.череда new file mode 100644 index 0000000..968f80d --- /dev/null +++ b/окончание|ending.череда @@ -0,0 +1,10 @@ +надо создать окно окончания + создать окно окончания + задать вид и анимацию окна окончания + подготовить анимацию окна окончания +победа + задать победное содержимое окну окончания + плавно показать окно окончания +поражение + задать пораженческое содержимое окну окончания + плавно показать окно окончания \ No newline at end of file diff --git a/привет|hello.js b/привет|hello.js deleted file mode 100644 index 14b90ca..0000000 --- a/привет|hello.js +++ /dev/null @@ -1,7 +0,0 @@ -ПоприветствоватьМир = function() -{ - console.log("Привет, мир!"); - console.log("Hello, world!"); - document.body.innerHTML += "

Привет, мир!

"; - document.body.innerHTML += "

Hello, world!

"; -}; diff --git a/привет|hello.череда b/привет|hello.череда deleted file mode 100644 index 278573b..0000000 --- a/привет|hello.череда +++ /dev/null @@ -1,2 +0,0 @@ -пуск - поприветствовать мир diff --git a/приветствие|welcome.js b/приветствие|welcome.js new file mode 100644 index 0000000..c212c5f --- /dev/null +++ b/приветствие|welcome.js @@ -0,0 +1,209 @@ + + +// // // // + + +ВыбратьРаскладкуПровальную = мир => +{ + мир.выбраннаяРаскладка = "😭"; + мир.уведомить("выбрали раскладку"); +}; + + +// // // // + + +ВыбратьРаскладкуУспешную = мир => +{ + мир.выбраннаяРаскладка = "😀"; + мир.уведомить("выбрали раскладку"); +}; + + +// // // // + + +ВыбратьРаскладкуX = мир => +{ + мир.выбраннаяРаскладка = "X"; + мир.уведомить("выбрали раскладку"); +}; + + +// // // // + + +ОтключитьОкноПриветствия = мир => +{ + мир.окна.приветствие.элемент.style.display = "none"; +}; + + +// // // // + + +ПлавноСкрытьОкноПриветствия = мир => +{ + const css = ` + +#${мир.окна.приветствие.указатель} +{ + opacity: 1; + animation: ${мир.окна.приветствие.указатель}ПлавноСкрыть 0.5s ease; + animation-fill-mode: forwards; + animation-delay: 0.1s; +} + + `; + мир.окна.приветствие.анимация.innerHTML = css; + мир.окна.приветствие.показываем = false; +}; + + +// // // // + + +ПлавноПоказатьОкноПриветствия = мир => +{ + const css = ` + +#${мир.окна.приветствие.указатель} +{ + opacity: 0; + animation: ${мир.окна.приветствие.указатель}ПлавноПоказать 1s ease; + animation-fill-mode: forwards; +} + + `; + мир.окна.приветствие.анимация.innerHTML = css; + мир.окна.приветствие.показываем = true; + мир.окна.приветствие.элемент.style.display = "block"; +}; + + +// // // // + + +ПодготовитьАнимациюОкнаПриветствия = мир => +{ + мир.окна.приветствие.анимация = document.createElement("style"); + document.head.appendChild(мир.окна.приветствие.анимация); + мир.окна.приветствие.показываем = true; + мир.окна.приветствие.элемент.addEventListener( + "animationend", + function() + { + if (мир.окна.приветствие.показываем) + { + мир.уведомить("плавно показали окно приветствия"); + } + else { + мир.уведомить("плавно скрыли окно приветствия"); + } + } + ); +}; + + +// // // // + + +ЗадатьВидИАнимациюОкнаПриветствия = мир => +{ + 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; +} + +@keyframes ${мир.окна.приветствие.указатель}ПлавноСкрыть +{ + 0% + { + opacity: 1; + } + 100% + { + opacity: 0; + } +} + +@keyframes ${мир.окна.приветствие.указатель}ПлавноПоказать +{ + 0% + { + opacity: 0; + } + 100% + { + opacity: 1; + } +} + + `; + var вид = document.createElement("style"); + вид.innerHTML = css; + document.head.appendChild(вид); +}; + + +// // // // + + +СоздатьОкноПриветствия = мир => +{ + мир.окна.приветствие = { + "указатель": "окно-приветствия", + }; + const html = ` + +
+
+

+ Маджонг + ⚬ 麻将 ⚬ + Mahjong +

+ ${мир.версия} +
+

+

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

+ + + +

+
+
+ + `; + + var окно = document.createElement("div"); + окно.id = мир.окна.приветствие.указатель; + окно.innerHTML = html; + document.body.appendChild(окно); + окно.style.display = "none"; + мир.окна.приветствие.элемент = окно; + + $(`#${мир.окна.приветствие.указатель}-X`).click(function() { + мир.уведомить("кнопка раскладки X"); + }); + $(`#${мир.окна.приветствие.указатель}-😀`).click(function() { + мир.уведомить("кнопка раскладки 😀"); + }); + $(`#${мир.окна.приветствие.указатель}-😭`).click(function() { + мир.уведомить("кнопка раскладки 😭"); + }); +}; \ No newline at end of file diff --git a/приветствие|welcome.череда b/приветствие|welcome.череда new file mode 100644 index 0000000..ea2491b --- /dev/null +++ b/приветствие|welcome.череда @@ -0,0 +1,17 @@ +надо создать окно приветствия + создать окно приветствия + задать вид и анимацию окна приветствия + подготовить анимацию окна приветствия + плавно показать окно приветствия + +кнопка раскладки X + выбрать раскладку X +кнопка раскладки 😀 + выбрать раскладку успешную +кнопка раскладки 😭 + выбрать раскладку провальную + +выбрали раскладку + плавно скрыть окно приветствия +плавно скрыли окно приветствия + отключить окно приветствия \ No newline at end of file diff --git a/пуск|run.js b/пуск|run.js new file mode 100644 index 0000000..a5eac5d --- /dev/null +++ b/пуск|run.js @@ -0,0 +1,11 @@ + + +// // // // + + +СоздатьОкнаМаджонга = мир => +{ + мир.уведомить("надо создать окно управления"); + мир.уведомить("надо создать окно приветствия"); + мир.уведомить("надо создать окно окончания"); +}; \ No newline at end of file diff --git a/пуск|run.череда b/пуск|run.череда new file mode 100644 index 0000000..3113ad4 --- /dev/null +++ b/пуск|run.череда @@ -0,0 +1,2 @@ +пуск модулей маджонга + создать окна маджонга \ No newline at end of file diff --git a/управление|controls.js b/управление|controls.js new file mode 100644 index 0000000..b18bfbb --- /dev/null +++ b/управление|controls.js @@ -0,0 +1,100 @@ + + +// // // // + + +СообщитьТекущееЗначениеМасштаба = мир => +{ + var масштаб = мир.масштаб * 100; + var сообщение = `🔍 ${масштаб}%`; + UIkit.notification({ + message: сообщение, + timeout: 500 + }); +}; + + +// // // // + + +УменьшитьМасштаб = мир => +{ + мир.масштаб -= 0.5; + if (мир.масштаб < 1) + { + мир.масштаб = 1; + } + мир.уведомить("изменили масштаб"); +}; + + +// // // // + + +УвеличитьМасштаб = мир => +{ + мир.масштаб += 0.5; + мир.уведомить("изменили масштаб"); +}; + + +// // // // + + +СоздатьЭлементыУправленияМасштабом = мир => +{ + var элементы = document.createElement("div"); + элементы.innerHTML = ` + + `; + элементы.style = ` +position: fixed; +right: 0; +top: 50%; +transform: translateX(-50%) translateY(-50%); + `; + мир.окна.управление.элемент.appendChild(элементы); + + $(`#увеличить-масштаб`).click(function() { + мир.уведомить("кнопка увеличения масштаба"); + }); + $(`#уменьшить-масштаб`).click(function() { + мир.уведомить("кнопка уменьшения масштаба"); + }); +}; + + +// // // // + + +ПоказатьОкноУправления = мир => +{ + мир.окна.управление.элемент.style.display = "block"; +}; + + +// // // // + + +СоздатьОкноУправления = мир => +{ + мир.окна.управление = { + "указатель": "окно-управления", + }; + + var окно = document.createElement("div"); + окно.id = мир.окна.управление.указатель; + document.body.appendChild(окно); + окно.style = ` +position: absolute; +left: 0; +top: 0; +right: 0; +bottom: 0; + `; + окно.style.display = "none"; + мир.окна.управление.элемент = окно; +}; \ No newline at end of file diff --git a/управление|controls.череда b/управление|controls.череда new file mode 100644 index 0000000..5fc8022 --- /dev/null +++ b/управление|controls.череда @@ -0,0 +1,11 @@ +надо создать окно управления + создать окно управления + создать элементы управления масштабом +выбрали раскладку + показать окно управления +кнопка увеличения масштаба + увеличить масштаб +кнопка уменьшения масштаба + уменьшить масштаб +изменили масштаб + сообщить текущее значение масштаба \ No newline at end of file