Изменения от Главреда ГитЖС | Changes of GitJS Glavred
This commit is contained in:
5
0000
5
0000
@@ -1,5 +1,6 @@
|
|||||||
Раскладка Маджонга | Mahjong layout
|
Раскладка Маджонга | Mahjong layout
|
||||||
1.0.0
|
1.0.0
|
||||||
|
https://git.opengamestudio.org/kornerr/mahjong-raskladka-layout
|
||||||
|
|
||||||
/привет|hello.череда
|
x /раскладка|layout.js
|
||||||
x /привет|hello.js
|
/раскладка|layout.череда
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
ПоприветствоватьМир = function()
|
|
||||||
{
|
|
||||||
console.log("Привет, мир!");
|
|
||||||
console.log("Hello, world!");
|
|
||||||
document.body.innerHTML += "<h1>Привет, мир!</h1>";
|
|
||||||
document.body.innerHTML += "<h1>Hello, world!</h1>";
|
|
||||||
};
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
пуск
|
|
||||||
поприветствовать мир
|
|
||||||
154
раскладка|layout.js
Normal file
154
раскладка|layout.js
Normal file
@@ -0,0 +1,154 @@
|
|||||||
|
|
||||||
|
|
||||||
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
|
ВывестиПозицииРаскладкиKMahjongg = мир =>
|
||||||
|
{
|
||||||
|
console.debug("Позиции раскладки KMahjongg НАЧАЛО");
|
||||||
|
const позиции = мир.раскладкаKMahjongg.позиции;
|
||||||
|
for (var номер in позиции) {
|
||||||
|
const позиция = позиции[номер];
|
||||||
|
console.debug(позиция);
|
||||||
|
}
|
||||||
|
console.debug("Позиции раскладки KMahjongg КОНЕЦ");
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
|
РазобратьПозицииЭлементовРаскладкиKMahjongg = мир =>
|
||||||
|
{
|
||||||
|
const параметры = мир.раскладкаKMahjongg.параметры;
|
||||||
|
const строки = мир.раскладкаKMahjongg.строки;
|
||||||
|
var позиции = [];
|
||||||
|
for (var номерСлоя = 0; номерСлоя < параметры.глубина; ++номерСлоя)
|
||||||
|
{
|
||||||
|
for (var ряд = 0; ряд < параметры.высота - 1; ++ряд)
|
||||||
|
{
|
||||||
|
for (var столбец = 0; столбец < параметры.ширина - 1; ++столбец)
|
||||||
|
{
|
||||||
|
const рядСлоя = ряд + (номерСлоя * параметры.высота);
|
||||||
|
if (
|
||||||
|
(строки[рядСлоя][столбец] == '1') &&
|
||||||
|
(строки[рядСлоя][столбец + 1] == '2') &&
|
||||||
|
(строки[рядСлоя + 1][столбец] == '4') &&
|
||||||
|
(строки[рядСлоя + 1][столбец + 1] == '3')
|
||||||
|
) {
|
||||||
|
позиции.push([номерСлоя, ряд, столбец]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
мир.раскладкаKMahjongg.позиции = позиции;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
|
ВывестиПараметрыРаскладкиKMahjongg = мир =>
|
||||||
|
{
|
||||||
|
console.debug("Параметры раскладки KMahjongg", JSON.stringify(мир.раскладкаKMahjongg.параметры));
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
|
РазобратьПараметрыРаскладкиKMahjongg = мир =>
|
||||||
|
{
|
||||||
|
var параметры = {
|
||||||
|
"ширина": 32,
|
||||||
|
"высота": 16,
|
||||||
|
"глубина": 0,
|
||||||
|
"версия": "1.0",
|
||||||
|
};
|
||||||
|
|
||||||
|
var префиксы = {
|
||||||
|
"версия": "kmahjongg-layout-v",
|
||||||
|
"глубина": "d",
|
||||||
|
"ширина": "w",
|
||||||
|
"высота": "h",
|
||||||
|
};
|
||||||
|
|
||||||
|
var удалитьЭлементов = 0;
|
||||||
|
var строки = мир.раскладкаKMahjongg.строки;
|
||||||
|
for (var номер in строки)
|
||||||
|
{
|
||||||
|
var строка = строки[номер];
|
||||||
|
// Версия.
|
||||||
|
if (строка.startsWith(префиксы.версия))
|
||||||
|
{
|
||||||
|
параметры.версия = строка.substring(префиксы.версия.length);
|
||||||
|
}
|
||||||
|
// Глубина.
|
||||||
|
else if (строка.startsWith(префиксы.глубина))
|
||||||
|
{
|
||||||
|
параметры.глубина = строка.substring(префиксы.глубина.length);
|
||||||
|
}
|
||||||
|
// Ширина.
|
||||||
|
else if (строка.startsWith(префиксы.ширина))
|
||||||
|
{
|
||||||
|
параметры.ширина = строка.substring(префиксы.ширина.length);
|
||||||
|
}
|
||||||
|
// Высота.
|
||||||
|
else if (строка.startsWith(префиксы.высота))
|
||||||
|
{
|
||||||
|
параметры.высота = строка.substring(префиксы.высота.length);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
удалитьЭлементов = номер;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
мир.раскладкаKMahjongg.строки.splice(0, удалитьЭлементов);
|
||||||
|
if (параметры.глубина == 0)
|
||||||
|
{
|
||||||
|
параметры.глубина = мир.раскладкаKMahjongg.строки.length / параметры.высота;
|
||||||
|
}
|
||||||
|
мир.раскладкаKMahjongg.параметры = параметры;
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
|
ПодготовитьРаскладкуKMahjonggКРазбору = мир =>
|
||||||
|
{
|
||||||
|
var строки = мир.раскладкаKMahjongg.содержимое.split(/\n/);
|
||||||
|
мир.раскладкаKMahjongg.строки = [];
|
||||||
|
for (var номер in строки)
|
||||||
|
{
|
||||||
|
var строка = строки[номер].trim();
|
||||||
|
// Пропускаем комментарии и пустые строки.
|
||||||
|
if (строка.startsWith("#") || !строка.length)
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
мир.раскладкаKMahjongg.строки.push(строка);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
|
УведомитьОбОкончанииРазбораРаскладкиKMahjongg = мир =>
|
||||||
|
{
|
||||||
|
мир.уведомить("разобрали раскладку KMahjongg");
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
|
РазобратьРаскладкуKMahjongg = мир =>
|
||||||
|
{
|
||||||
|
мир.уведомить("надо разобрать раскладку KMahjongg");
|
||||||
|
};
|
||||||
|
|
||||||
7
раскладка|layout.череда
Normal file
7
раскладка|layout.череда
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
надо разобрать раскладку KMahjongg
|
||||||
|
подготовить раскладку KMahjongg к разбору
|
||||||
|
разобрать параметры раскладки KMahjongg
|
||||||
|
# вывести параметры раскладки KMahjongg
|
||||||
|
разобрать позиции элементов раскладки KMahjongg
|
||||||
|
# вывести позиции раскладки KMahjongg
|
||||||
|
уведомить об окончании разбора раскладки KMahjongg
|
||||||
Reference in New Issue
Block a user