[RM VX ace] Дизейблеры клавиш.

Больше
9 года 3 нед. назад #97518 от Grivier
Доброго всем времени суток.
Подскажите пожалуйста. Разрабатываю игру на VX ace, и возник такой вопрос. Я использую скрипт Re weapon system II, и в некоторых заставках и диалогах если нажать кнопку атаки A, персонаж будет атаковать и издавать звук атаки во время допустим вставок с картинками и диалогами.
Есть ли какой-нибудь скрипт "дизейблер" клавиш клавиатуры, который по переключателю отключает некоторые (нужные) кнопки игроку? То есть, делает их неактивными.
Либо есть ли какой-нибудь другой способ решения данной проблемы?

Заранее спасибо.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Проект месяца 2 место Проект месяца 1 место Ветеран Разработчик Проект года 3 место Проект месяца 3 место Победитель конкурса Учитель Даритель Стимкея Победитель Сбитой кодировки За 3 место на конкурсе маппинга Оратор
Больше
9 года 3 нед. назад #97520 от ZX_Lost_Soul
Я с чем-то подобным сталкивался, когда Dolly's Afterlife делал.

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

Когда начинается заставка - присваиваю переменной true, когда заканчивается - false.

В итоге во время заставок никакие кнопки действий не работают, как и нужно.
Спасибо сказали: Grivier

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
9 года 3 нед. назад - 9 года 3 нед. назад #97524 от Grivier
По-скольку в Руби я не очень шарю, чтобы самолично что-либо написать, можете пожалуйста объяснить по-подробнее, как что, и где это делается? ^^

P.S. Если нужен скрипт RE Weapons System II, то прикладываю его во вложения.
Последнее редактирование: 9 года 3 нед. назад пользователем Grivier. Причина: Приложил скрипт Re Weapons System II

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

1 место в Готв 3 место Учитель Разработчик 3 место Готв Ветеран Писатель 2 место Тестер
Больше
9 года 3 нед. назад #97525 от Демий
Ну что ж, скрипт в студию и, возможно кто-то заморчится сделать его модификацию. Наверно только так.
Спасибо сказали: Grivier

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Проект месяца 2 место Проект месяца 1 место Ветеран Разработчик Проект года 3 место Проект месяца 3 место Победитель конкурса Учитель Даритель Стимкея Победитель Сбитой кодировки За 3 место на конкурсе маппинга Оратор
Больше
9 года 3 нед. назад - 9 года 3 нед. назад #97526 от ZX_Lost_Soul
Я сам руби не знаю ВООБЩЕ, делал просто по аналогии, глядя на другие функции.

В двух словах всё выглядит так:
1. Открываешь скрипт, в начале должно быть объявление класса, в данном случае его имя game_player.
Code:
class Game_Player < Game_Character
чуть ниже идут функции класса
Code:
def map_passable?(mode) ... end

Добавляешь к ним новую функцию:
Code:
def switchcontrols(snum) if snum==1 @noctrl = false else @noctrl = true end end

2. Находишь в скрипте проверки на нажатия клавиш, выглядят примерно так:
Code:
if Input.press?(Input::LEFT)
и дописываешь к ним доп. условие:
Code:
if Input.press?(Input::LEFT) && @noctrl == false

3. В событиях ивента, где нужно запретить управление, вставляешь "Выполнить скрипт..." и пишешь туда
Code:
$game_player.switchcontrols(0)
, а где нужно включить обратно
Code:
$game_player.switchcontrols(1)
Вместо game_player, естественно, должно быть имя твоего класса, которое ты узнал в начале.
Последнее редактирование: 9 года 3 нед. назад пользователем ZX_Lost_Soul.
Спасибо сказали: Paranoid, Grivier

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
9 года 3 нед. назад #97527 от Grivier
Огромнейшее Вам спасибо! B)

Пойду разбираться, и пробовать) логику построения я в принципе понял.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
9 года 3 нед. назад #97528 от Grivier
Ещё раз огромное спасибо, всё получилось! :whistle:
Настроил всё как надо, всё чудесно и прекрасно работает))

Благодарю!

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Время создания страницы: 0.102 секунд
Работает на Kunena форум