Здравствуйте. Уже задовал вопрос на светлой но задам сюда.
Нужна система как в steam версии Mad Father по нажатию списка клавишь по таймеру.
Списка клавишь это не просто 100 клавишь на 1 таймер. Нет. Это например 10 клавишь в 1 списке и несколько списков. И все это за 1 таймер.
Я даже написал необходимые параметры которые мне необходимы.
Код:
//=============================================================================
// InputKeyTime.js
//=============================================================================
/*:
* @plugindesc InputKeyTime
* @author ***
*
* @param PSwitchs
* @text --- Переключатели ---
* @default ---------------------------------
*
* @param PVariables
* @text --- Variables ---
* @default ---------------------------------
*
* @param PSettings
* @text --- Настройки игры ---
* @default ---------------------------------
*
* @param Var Id Out Status Game
* @parent PVariables
* @desc Variable with the status of the end of the game. 1 - Victory. 2 - Losses.
* @type variable
* @default 1
*
* @param Var Id Count Key
* @parent PVariables
* @desc
* @type variable
* @default 2
*
* @param Var Id Count List Keys
* @parent PVariables
* @desc
* @type variable
* @default 3
*
* @param Var Id Count Attempts
* @parent PVariables
* @desc Variable with the number of attempts
* @type variable
* @default 4
*
* @param Var Id Key Press Error Behaviors
* @parent PVariables
* @desc Variable with a key code for a keystroke error.
* @type variable
* @default 5
*
* @param Keys
* @parent PSettings
* @desc
* @type string[]
* @default ["left","up","right","down"]
*
* @param Style Game
* @parent PSettings
* @desc Style Game
* @type struct<StyleGame>
*
* @param Sounds Game
* @parent PSettings
* @desc Sounds Game
* @type struct<SoundsGame>
*
* @param Time Game
* @parent PSettings
* @desc Time Game
* @type struct<TimeGame>
*
* @help
Описание параметров:
--- Переменные ---
Var Id Out Status Game - Переменная которой будет возвращен статукс игры
0 - В случае ошибки или других причин прекращзения игры
1 - Победа
2 - Поражение
Var Id Count Key - Переменная количества клавишь в 1 списке (те что отображаются на экране) (Минимум 4; Максимум 20)
Var Id Count List Keys - Переменная количества списков клавишь (Минимум 1; Максимум неограничен)
Var Id Count Attempts - Переменная количества попыток (Минимум 0; Максимум неограничен; -1 - Бесконечно)
Var Id Key Press Error Behaviors - Переменная поведения при ошибки если есть попытки (0 - Начнется заново с 1 списка; 1 - Начнется заново на остановившемся списке)
Keys - Массив доступных клавишь
--- Style Game - Стиль игры: ---
Background - Настройка фона игры:
---
Enabled Background - Будет ли выводится фон.
Background - Картинка фона
---
Background Progress Bar Timers - Картинка фона полоски таймера игры
Progress Bar Timers - Картинка полоски таймера игры
Progress Bar List Keys - Полоска процента выполненных списков клавиш:
---
Enabled Background Progress Bar List Keys - Будет ли отображаться данная полоска
Background Progress Bar List Keys - Картинка фона полоски процента выполненных списков клавиш
Progress Bar List Keys - Картинка полоски процента выполненных списков клавиш
---
Picture Type Keys - Картинки отображающие какую клавишу нужно нажатать:
---
Picture Left - Картинка не нажатой клавиши Влево
Picture Left Pressed - Картинка нажатой клавиши Влево
Picture Up - Картинка не нажатой клавиши Вверх
Picture Up Pressed - Картинка нажатой клавиши Вверх
Picture Right - Картинка не нажатой клавиши Вправо
Picture Right Pressed - Картинка нажатой клавиши Вправо
Picture Down - Картинка не нажатой клавиши Вниз
Picture Down Pressed - Картинка не нажатой клавиши Вниз
---
Select Picture Keys - Картинка выделения клавишь:
---
Enabled Select Picture Type Keys - Будет ли отображаться картинка
Picture Key - Картинка неактивной клавиши
Picture Select Key - Картинка активной клавиши
Примечание:
Картинки с клавишами отображать В внизу по центру.
Картинки выделенной и не выделенной клавиши отображать под картинками клавишь как фон
---
--- Sounds Game - Звуки игры ---
Success SFX - Звук правильно нажатой клавиши
Error SFX - Звук неправильно нажатой клавиши
--- Time Game - Тайминги игры ---
Delay next list keys - Задержка перед переходом к следующему списку или концом игры в кадрах
*/
/*~struct~StyleGame:
* @param Background
* @desc Background Game
* @type struct<StyleGameBackground>
*
* @param Background Progress Bar Timers
* @desc Background Progress Bar Timers
* @type file
* @dir img/IKTSystem/
*
* @param Progress Bar Timers
* @desc Progress Bar Timers
* @type file
* @dir img/IKTSystem/
*
* @param Progress Bar List Keys
* @desc Progress Bar
* @type struct<StyleGameBGProgressBarListKeys>
*
*
* @param Picture Type Keys
* @desc Picture Type Keys
* @type struct<StyleGamePictureTypeKeys>
*
* @param Select Picture Keys
* @desc Select Picture Keys
* @type struct<StyleGameSelectPictureKeys>
*
*/
/*~struct~StyleGameBackground:
* @param Enabled Background
* @desc Enabled Background
* @type boolean
* @default false
*
* @param Background
* @desc Background Game
* @type file
* @dir img/IKTSystem/
*/
/*~struct~StyleGameBGProgressBarListKeys:
* @param Enabled Background Progress Bar List Keys
* @desc Enabled Background Progress Bar List Keys
* @type boolean
* @default false
*
* @param Background Progress Bar List Keys
* @desc Background Progress Bar List Keys
* @type file
* @dir img/IKTSystem/
*
* @param Progress Bar List Keys
* @desc Progress Bar List Keys
* @type file
* @dir img/IKTSystem/
*/
/*~struct~StyleGamePictureTypeKeys:
* @param Picture Left
* @desc Picture Left
* @type file
* @dir img/IKTSystem/
* @require iconIKT_left
* @default "iconIKT_left"
*
* @param Picture Left Pressed
* @desc Picture Left Pressed
* @type file
* @dir img/IKTSystem/
* @require iconIKT_left_Pressed
* @default "iconIKT_left_Pressed"
*
* @param Picture Up
* @desc Picture Up
* @type file
* @dir img/IKTSystem/
* @require iconIKT_up
* @default "iconIKT_up"
*
* @param Picture Up Pressed
* @desc Picture Up Pressed
* @type file
* @dir img/IKTSystem/
* @require iconIKT_up_Pressed
* @default "iconIKT_up_Pressed"
*
* @param Picture Right
* @desc Picture Right
* @type file
* @dir img/IKTSystem/
* @require iconIKT_right
* @default "iconIKT_right"
*
* @param Picture Right Pressed
* @desc Picture Right Pressed
* @type file
* @dir img/IKTSystem/
* @require iconIKT_right_Pressed
* @default "iconIKT_right_Pressed"
*
* @param Picture Down
* @desc Picture Down
* @type file
* @dir img/IKTSystem/
* @require iconIKT_down
* @default "iconIKT_down"
*
* @param Picture Down Pressed
* @desc Picture Down Pressed
* @type file
* @dir img/IKTSystem/
* @require iconIKT_down_Pressed
* @default "iconIKT_down_Pressed"
*/
/*~struct~StyleGameSelectPictureKeys:
* @param Enabled Select Picture Type Keys
* @desc Enabled Background images for not keys
* @type boolean
* @default true
*
* @param Picture Key
* @desc Background images for not pressed keys
* @type file
* @dir img/IKTSystem/
* @default "BGIKT_NoSelect"
*
* @param Picture Select Key
* @desc Background images for pressed keys
* @type file
* @dir img/IKTSystem/
* @default "BGIKT_Select"
*/
/*~struct~SoundsGame:
* @param Success SFX
* @desc The sound to play when the sequence is complete.
* @type file
* @dir audio/se
* @default "Heal3"
*
* @param Error SFX
* @desc The sound to play when an incorrect button is pressed.
* @type file
* @dir audio/se
* @default "Blind"
*/
/*~struct~TimeGame:
* @param Delay next list keys
* @desc Delay before displaying the next list of keys or ending the game. 60 frames - 1 second.
* @type number
* @default 40
*/
var InputKeyTime = {};
InputKeyTime.JSONParse = function(string) {
try {
if (Number.isFinite(string) || typeof string === "boolean") {
return string;
}
return JSON.parse(string, (key, value) => {
if (Array.isArray(value)) {
return value.map(val => MemoryMiniGame.JSONParse(val));
} else {
try {
return MemoryMiniGame.JSONParse(value);
} catch (e) {
return value;
}
}
});
} catch (e) {
return string;
}
};
InputKeyTime.parameters = PluginManager.parameters("InputKeyTime");
Я знаю синтаксис JS. Но совершенно не знаю кода MV. Только слегка. Но это например я не знаю как заблокировать управления игрока на время игры и в каких функциях можно делать игровой процесс.
Самуже игру зная функции MV написать смогу.
Самаже структура плагина мини игры делиться на несколько этапов:
1. Создания. Это когда создаются все элементы.
2. Это анимация их появления. Ну по факту это просто движения картинок.
3. Это игровой процесс. Когда нужно отлавливать нажатия клавишь. Воспроизводить звуки. Делать задержки и прочие.
4. Это возврат значения после игры. Либо Победа Либо поражения.
Тема на светлой где подробно все описано:
https://rpgmaker.ru/forum/pomosh/635...ilnom-poryadke
И конечноже я могу объявить все переменные параметров и написать функции самой мини игры. Просто будет ли это удобно кому.
И да. Заплатить не смогу. Возможно в будущем но щас так сказать на мели иначе бы просто заказал работу а не просил как дурак помощи. К томуже на этом я не заработаю. Проект в котором это будет применяться на полностью бесплатной основе.
Конечно может кто скажет ну посмотри у других. В том то и дело что уроков особо нету. Тобишь сам копайся в JS модулях игры и ищи. Разбирапься в чужих плагинах ничем не легче.
А вообще как по мне такая система очень многим зайдет. Ибо делает массу возможностей.
Естественно количество клавиш на 1 список и списки клавишь неограниченное количество. В случае с 1 минимум 4. В случае 2 минимум 1.
В плагине с параметрами я подробно описал для чего нужен каждый параметр. Естественно систему можно немногор и пенресмотреть. Всеже я такую структуру делал отталкиваясь от своих возможностей. А как работать с командами плагинов я тоже не в курсе. Просто никогда этого не использовал и заменял переменными и переключателями.
Плагин Chain Commands мне не подходит. Только частично.
Социальные закладки