Войти на сайт

Авторизация, ждите ...
×

ТЕМА: Установка Европейской раскладки геймпада на MV

Установка Европейской раскладки геймпада на MV 5 года 9 мес. назад #104560

  • vilka
  • vilka аватар
  • Вне сайта
  • Бывалый
  • Сообщений: 96
  • Спасибо получено: 42
Когда то я экспериментировал на движке и заметил, что он читает геймпад, но там стоит Азиатская раскладка геймпада, мне же захотелось установить более привычную Европейскую. Их разница не большая, разве что в Азиатской X-отмена, а О-действие, тогда как в Европейской наоборот. Я решил залезть в первый попавшихся .JS файл, Rpg_core.js (открываем с помощью текстового редактора) и не сразу разобрался как там менять всё, но я решил зажать кнопки Ctrl+F и забил запрос Gamepad. Вам же проще будет забить запрос:
Input.gamepadMapper = {
Разработчики движка нам всё подписали, так что я быстро всё переделал, всё что вам надо сделать это заменить это:
Input.gamepadMapper = {
0: 'ok', // A
1: 'cancel', // B
2: 'shift', // X
3: 'menu', // Y
4: 'pageup', // LB
5: 'pagedown', // RB
12: 'up', // D-pad up
13: 'down', // D-pad down
14: 'left', // D-pad left
15: 'right', // D-pad right
};
На это:
Input.gamepadMapper = {
0: 'menu', // A
1: 'cancel', // B
2: 'ok', // X
3: 'shift', // Y
4: 'pageup', // LB
5: 'pagedown', // RB
12: 'up', // D-pad up
13: 'down', // D-pad down
14: 'left', // D-pad left
15: 'right', // D-pad right
};
Если же вам ещё и хочется изменить управление на клавиатуре, то чуть выше можно увидеть строчку:
Input.keyMapper = {
[bg=black][h1]Сейчас в разработке:[/h1][/bg]
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Dmy, Kouta555, Aiaz Marx

Установка Европейской раскладки геймпада на MV 5 года 9 мес. назад #104561

  • Dmy
  • Dmy аватар
  • Вне сайта
  • Заблокирован
  • Сообщений: 1142
  • Спасибо получено: 2477
  • 2 место ОраторВетеранПоддержка ФондаДаритель СтимкеяПроект месяца 3 местоПрограммист RubyПаладинРазработчикЗа 2 место на конкурсе маппинга
Спасибо за то, что поделились кодом.

Обычно рекомендуют не редактировать файл движка — в будущих версиях RPG Maker может автоматически его заменить (как случилось при недавнем обновлении), а создать плагин. В вашем случае можно просто разместить вот этот Ваш код в плагине:
vilka пишет:
Input.gamepadMapper = {
0: 'menu', // A
1: 'cancel', // B
2: 'ok', // X
3: 'shift', // Y
4: 'pageup', // LB
5: 'pagedown', // RB
12: 'up', // D-pad up
13: 'down', // D-pad down
14: 'left', // D-pad left
15: 'right', // D-pad right
};

Просто сохранить это в текстовый файл с расширением .js в папке plugins, и подключить как подключаются все плагины. Тогда изменения не сотрутся при будущих обновлениях RPG Maker’а MV.
Последнее редактирование: 5 года 9 мес. назад от Dmy.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: vilka

Установка Европейской раскладки геймпада на MV 5 года 9 мес. назад #104567

  • vilka
  • vilka аватар
  • Вне сайта
  • Бывалый
  • Сообщений: 96
  • Спасибо получено: 42
Умно
[bg=black][h1]Сейчас в разработке:[/h1][/bg]
Администратор запретил публиковать записи гостям.

Установка Европейской раскладки геймпада на MV 5 года 9 мес. назад #104569

  • yuryol
  • yuryol аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1704
  • Спасибо получено: 2729
  • ОраторПобедитель конкурсаОрганизатор конкурсов1 место в ГотвУчитель2 место Композитор3 место Готв
раз уж зашла речь, то держите все клавиши клавиатуры :mad:

Input.keyMapper = {
	8: 'backspace',	// backspace
	9: 'tab',		// tab
	13: 'ok',		// enter
	16: 'shift',	// shift
	17: 'control',	// control
	18: 'alt',  	// alt
	19: 'pause',	// pause
	20: 'capslock',	// capslock
	27: 'escape',   // escape
	32: 'space',	// space
	33: 'pageup',   // pageup
	34: 'pagedown', // pagedown
	35: 'end',		// end
	36: 'home',		// home
	37: 'left',       // left arrow
	38: 'up',       // up arrow
	39: 'right',    // right arrow
	40: 'down',     // down arrow
	44: 'printscreen',	// printscreen
	45: 'insert',   // insert
	46: 'delete',	// delete
	48: '0',		// 0
	49: '1',		// 1
	50: '2',		// 2
	51: '3',		// 3
	52: '4',		// 4
	53: '5',		// 5
	54: '6',		// 6
	55: '7',		// 7
	56: '8',		// 8
	57: '9',		// 9
	65: 'a',		// A ф
	66: 'b',		// B и
	67: 'c',		// C с
	68: 'd',		// D в
	69: 'e',		// E у
	70: 'f',		// F а
	71: 'g',		// G п
	72: 'h',		// H р
	73: 'i',		// I ш
	74: 'j',		// J о
	75: 'k',		// K л
	76: 'l',		// L д
	77: 'm',		// M ь
	78: 'n',		// N т
	79: 'o',		// O щ
	80: 'p',		// P з
	81: 'q',		// Q й
	82: 'r',		// R к
	83: 's',		// S ы
	84: 't',		// T е
	85: 'u',		// U г
	86: 'v',		// V м
	87: 'w',		// W ц
	88: 'x',		// X ч
	89: 'y',		// Y н
	90: 'z',		// Z я
	96: 'escape',   // numpad 0
	97: 'numpad1',	// numpad 1
	98: 'down',     // numpad 2
	99: 'numpad3',	// numpad 3
	100: 'left',    // numpad 4
	101: 'numpad5',	// numpad 5
	102: 'right',   // numpad 6
	103: 'numpad7',	// numpad 7
	104: 'up',      // numpad 8
	105: 'numpad9', // numpad 9
	106: '*',		// *
	107: '+',		// +
	109: '-',		// -
	110: '.',		// .
	111: '/',		// /
	112: 'f1',		// F1
	113: 'f2',		// F2
	114: 'f3',		// F3
	115: 'f4',		// F4
	116: 'f5',		// F5
	117: 'f6',		// F6
	118: 'f7',		// F7
	119: 'f8',		// F8
	120: 'debug',   // F9
	121: 'f10',		// F10
	122: 'f11',		// F11
	123: 'f12',		// F12
	144: 'numlock',	// numlock
	145: 'scrolllock',	// scrolllock
	186: ';',		// :;ж
	187: '=',		// +=
	188: '<',		// <,Б
	189: '-',		// -_
	190: '>',		// >.Ю
	191: '?',		// /?,/.
	192: '`',		// ~`ё
	219: '[',		// {[х
	220: '|',		// |
	221: ']',		// }]ъ
	222: '"'		// "'э   
}
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: vilka

Установка Европейской раскладки геймпада на MV 5 года 9 мес. назад #104573

  • Kouta555
  • Kouta555 аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 576
  • Спасибо получено: 835
  • Победитель конкурсаПроект месяца 2 место2 место Проект месяца 1 местоРазработчикОраторВетеранПроект месяца 3 место
Раз затронули эту тему, то спрошу здесь. У меня не работает крестовина геймпада в титульнике, с чем это может быть связанно? И параллельно ещё вопрос можно ли привязать к геймпада другие клавиши клавиатуры?
Администратор запретил публиковать записи гостям.

Установка Европейской раскладки геймпада на MV 5 года 9 мес. назад #104574

  • yuryol
  • yuryol аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1704
  • Спасибо получено: 2729
  • ОраторПобедитель конкурсаОрганизатор конкурсов1 место в ГотвУчитель2 место Композитор3 место Готв
Kouta555 пишет:
Раз затронули эту тему, то спрошу здесь. У меня не работает крестовина геймпада в титульнике, с чем это может быть связанно? И параллельно ещё вопрос можно ли привязать к геймпада другие клавиши клавиатуры?

если геймпад со стиками, то возможно по умолчанию напарвление управляется стиком. если есть рычажок для смены DirectInput, то переключи его.

для смены управления в gamepadMapper просто измени нужную кнопку. например вместо
0: 'menu', // A
1: 'cancel', // B
2: 'ok', // X
3: 'shift', // Y
напиши
0: 'ok', // A
1: 'shift', // B
2: 'menu', // A
3: 'cancel', // B
Последнее редактирование: 5 года 9 мес. назад от yuryol.
Администратор запретил публиковать записи гостям.

Установка Европейской раскладки геймпада на MV 5 года 9 мес. назад #104582

  • Kouta555
  • Kouta555 аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 576
  • Спасибо получено: 835
  • Победитель конкурсаПроект месяца 2 место2 место Проект месяца 1 местоРазработчикОраторВетеранПроект месяца 3 место
Я имел ввиду добавить, а не поменять. Надо ещё добавить три кнопки с Клавы a s d.
Администратор запретил публиковать записи гостям.

Установка Европейской раскладки геймпада на MV 5 года 9 мес. назад #104589

  • yuryol
  • yuryol аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1704
  • Спасибо получено: 2729
  • ОраторПобедитель конкурсаОрганизатор конкурсов1 место в ГотвУчитель2 место Композитор3 место Готв
Kouta555 пишет:
Я имел ввиду добавить, а не поменять. Надо ещё добавить три кнопки с Клавы a s d.

Корректной формулируй вопрос а не как обычно пишешь в чатике.

Ты хочешь добавить ещё двух курка геймпада,старт,селект,стики и привязать к ним кнопки?
Если да то добавь в gamepadMapper строчки с номерами 6-11. 6 и 7 если не изменяет память куртки геймпада, 8 - старт, 9 - селект, 10 - левый стик, 11 - правый. И напиши после двоеточия наименования клавиши. Оно должно быть такое же,как у клавиатуры в keyMapper. А так как в keyMapper нет s и других клавиш то для их поддержки вставь тот код который я публиковал выше с поддержкой всех клавиш клавиатуры

Как домой приеду напишу подробнее если сам не разберешься
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Kouta555

Установка Европейской раскладки геймпада на MV 5 года 9 мес. назад #104593

  • Kouta555
  • Kouta555 аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 576
  • Спасибо получено: 835
  • Победитель конкурсаПроект месяца 2 место2 место Проект месяца 1 местоРазработчикОраторВетеранПроект месяца 3 место
yuryol пишет:
если геймпад со стиками, то возможно по умолчанию напарвление управляется стиком. если есть рычажок для смены DirectInput, то переключи его.

Ну ты прям убил, считаешь я совсем идиота кусок? Естественно я проверил уже это.

yuryol пишет:
Корректной формулируй вопрос а не как обычно пишешь в чатике.

А я как сказал?

вопрос можно ли привязать к геймпаду другие клавиши клавиатуры?

То есть я понимаю так вот эти цифры в начале кода, это не просто порядковый номер, а именно клавиша?

Окей, благодарю, попробую прописать, не хочется сторонние плагины для этого использовать, вечно какие-то конфликты с ними вылазиют.
Администратор запретил публиковать записи гостям.

Установка Европейской раскладки геймпада на MV 5 года 9 мес. назад #104596

  • DK
  • DK аватар
  • Вне сайта
  • Светлый дракон
  • DKPlugins
  • Сообщений: 946
  • Спасибо получено: 1129
  • Проект месяца 1 местоВетеранПрограммист RubyПрограммист JavaScript 2 место Проект месяца 2 местоПаладинДаритель СтимкеяУчительРазработчик
yuryol пишет:
раз уж зашла речь, то держите все клавиши клавиатуры :mad:

Input.keyMapper = {
	8: 'backspace',	// backspace
	9: 'tab',		// tab
	13: 'ok',		// enter
	16: 'shift',	// shift
	17: 'control',	// control
	18: 'alt',  	// alt
	19: 'pause',	// pause
	20: 'capslock',	// capslock
	27: 'escape',   // escape
	32: 'space',	// space
	33: 'pageup',   // pageup
	34: 'pagedown', // pagedown
	35: 'end',		// end
	36: 'home',		// home
	37: 'left',       // left arrow
	38: 'up',       // up arrow
	39: 'right',    // right arrow
	40: 'down',     // down arrow
	44: 'printscreen',	// printscreen
	45: 'insert',   // insert
	46: 'delete',	// delete
	48: '0',		// 0
	49: '1',		// 1
	50: '2',		// 2
	51: '3',		// 3
	52: '4',		// 4
	53: '5',		// 5
	54: '6',		// 6
	55: '7',		// 7
	56: '8',		// 8
	57: '9',		// 9
	65: 'a',		// A ф
	66: 'b',		// B и
	67: 'c',		// C с
	68: 'd',		// D в
	69: 'e',		// E у
	70: 'f',		// F а
	71: 'g',		// G п
	72: 'h',		// H р
	73: 'i',		// I ш
	74: 'j',		// J о
	75: 'k',		// K л
	76: 'l',		// L д
	77: 'm',		// M ь
	78: 'n',		// N т
	79: 'o',		// O щ
	80: 'p',		// P з
	81: 'q',		// Q й
	82: 'r',		// R к
	83: 's',		// S ы
	84: 't',		// T е
	85: 'u',		// U г
	86: 'v',		// V м
	87: 'w',		// W ц
	88: 'x',		// X ч
	89: 'y',		// Y н
	90: 'z',		// Z я
	96: 'escape',   // numpad 0
	97: 'numpad1',	// numpad 1
	98: 'down',     // numpad 2
	99: 'numpad3',	// numpad 3
	100: 'left',    // numpad 4
	101: 'numpad5',	// numpad 5
	102: 'right',   // numpad 6
	103: 'numpad7',	// numpad 7
	104: 'up',      // numpad 8
	105: 'numpad9', // numpad 9
	106: '*',		// *
	107: '+',		// +
	109: '-',		// -
	110: '.',		// .
	111: '/',		// /
	112: 'f1',		// F1
	113: 'f2',		// F2
	114: 'f3',		// F3
	115: 'f4',		// F4
	116: 'f5',		// F5
	117: 'f6',		// F6
	118: 'f7',		// F7
	119: 'f8',		// F8
	120: 'debug',   // F9
	121: 'f10',		// F10
	122: 'f11',		// F11
	123: 'f12',		// F12
	144: 'numlock',	// numlock
	145: 'scrolllock',	// scrolllock
	186: ';',		// :;ж
	187: '=',		// +=
	188: '<',		// <,Б
	189: '-',		// -_
	190: '>',		// >.Ю
	191: '?',		// /?,/.
	192: '`',		// ~`ё
	219: '[',		// {[х
	220: '|',		// |
	221: ']',		// }]ъ
	222: '"'		// "'э   
}

У меня что ли спер ? :laugh:
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: yuryol

Установка Европейской раскладки геймпада на MV 5 года 9 мес. назад #104598

  • yuryol
  • yuryol аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1704
  • Спасибо получено: 2729
  • ОраторПобедитель конкурсаОрганизатор конкурсов1 место в ГотвУчитель2 место Композитор3 место Готв
ДК, ты ж сам мне как-то их скидывал :blush:
Kouta555 пишет:
То есть я понимаю так вот эти цифры в начале кода, это не просто порядковый номер, а именно клавиша?

Да, каждая клавиша соответствует определенной цифре.
Затем после двоеточия ты указываешь как ты будешь обращаться к данной клавише. можешь написать любую букву или слово как тебе удобно, хоть на английском, хоть на русском, хоть на любом другом языке.
Input.keyMapper = {
  8: 'йоу',	// backspace	
}
Потом ты можешь отследить нажатие обращаясь к этому имени в кавычках, например
if (Input.isTriggered('йоу')) console.log('И тебе йоу')

Точно также и с геймпадом. только номера кнопок у него свои.
Input.keyMapper = {
  9: 'йоу',	// select
}

Главное не забывай, что у мейкера есть проверки на нажатия кнопок 'ok', 'cancel' и прочие, а потому эти названия лучше не переименовывать, если не хочешь всё поломать.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Kouta555, VarVarKa, vilka
Модераторы: NeKotZima
Время создания страницы: 0.518 секунд