- Сообщений: 3
- Спасибо получено: 3
Правила раздела:
1 Задавайте конкретные вопросы. Для болтовни есть свободный раздел.
2 По возможности давайте конкретные ответы.
3 Один вопрос=одна тема. Если хотите задать ещё вопрос, то начинайте новую тему.
4 Название темы должно составлять сам вопрос, и быть максимально конкретным. Рекомендуется начинать тему словами "Как", "Что", "Почему". А первый пост повторяет вопрос и даёт расширенные сведения.
5 Рекомендуется указывать версию мейкера (2000, 2003, RMXP, RMVX, ACE, IGM, и.т.д.. Это важно, и всё равно ведь спросят.
6 Темы "Пара вопросов", "Помогите", и подобные им - самый лёгкий путь к бану.
7 Поиск находится вверху справа.
А. Названия подразделов этого раздела уточняются. Советы принимаются.
1 Задавайте конкретные вопросы. Для болтовни есть свободный раздел.
2 По возможности давайте конкретные ответы.
3 Один вопрос=одна тема. Если хотите задать ещё вопрос, то начинайте новую тему.
4 Название темы должно составлять сам вопрос, и быть максимально конкретным. Рекомендуется начинать тему словами "Как", "Что", "Почему". А первый пост повторяет вопрос и даёт расширенные сведения.
5 Рекомендуется указывать версию мейкера (2000, 2003, RMXP, RMVX, ACE, IGM, и.т.д.. Это важно, и всё равно ведь спросят.
6 Темы "Пара вопросов", "Помогите", и подобные им - самый лёгкий путь к бану.
7 Поиск находится вверху справа.
А. Названия подразделов этого раздела уточняются. Советы принимаются.
Условие при разных значениях переменной
7 года 4 мес. назад #107734
от Ridden
Ridden создал тему: Условие при разных значениях переменной
Всех приветствую, только начал изучать RPG Maker MV и интересует такой вопрос:
Можно ли сделать выполнение условия при разных значениях переменной?
К примеру:
"Если а=5 или а=7 или а=10 (и т.д.)
Тогда б=1"
Я конечно пробовал делать несколько веток условий типа:
"Если а=5 тогда б=1
Если а=7 тогда б=1
Если а=10 тогда б=1 и т.д."
и это работает, но получается очень громоздко и затратно по времени.
Можно ли сделать выполнение условия при разных значениях переменной?
К примеру:
"Если а=5 или а=7 или а=10 (и т.д.)
Тогда б=1"
Я конечно пробовал делать несколько веток условий типа:
"Если а=5 тогда б=1
Если а=7 тогда б=1
Если а=10 тогда б=1 и т.д."
и это работает, но получается очень громоздко и затратно по времени.
Спасибо сказали: Dmy
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
7 года 4 мес. назад - 7 года 4 мес. назад #107735
от Dmy
Dmy ответил в теме Условие при разных значениях переменной
Я в таких случаях использую переключатель (или локальный переключатель). Например, так:
◆ Переключатель : #0007 Значение a допустимо = ВЫКЛ
◆ Если : a = 5
◆ Переключатель : #0007 Значение a допустимо = ВКЛ
◆
: Конец
◆ Если : a = 7
◆ Переключатель : #0007 Значение a допустимо = ВКЛ
◆
: Конец
◆ Если : a = 10
◆ Переключатель : #0007 Значение a допустимо = ВКЛ
◆
: Конец
◆ Если : Значение a допустимо теперь ВКЛ
◆ Переменная : #0002 b = 1
◆
: Конец
Как вариант, можно объединить все условия в скрипте. Для MV проверка делается так (для VX Ace скрипт будет другой, см. спойлер в конце ответа):
То есть в команде «Ветвление условий» выберите страницу 4, пункт «Скрипт» (последний), и введите такой скрипт:
[5,7,10].indexOf($gameVariables.value(1)) != -1
(Вместо подчёркнутой единицы 1 поставьте номер своей переменной, которая проверяется. Вместо подчёркнутых 5,7,10 поставьте свои допустимые числа через запятую. -1 оставьте, там и должна быть -1.)
Результат будет таким:
◆ Если : Скрипт : [5,7,10].indexOf($gameVariables.value(1)) != -1
◆ Переменная : #0002 b = 1
◆
: Конец
Я в таких случаях использую переключатель (или локальный переключатель). Например, так:
@> Переключатель: [0007:Значение а допустимо] = ВЫКЛ
@> УСЛОВИЕ: Переменная [0001:a] == 5
@> Переключатель: [0007:Значение а допустимо] = ВКЛ
@>
: КОНЕЦ
@> УСЛОВИЕ: Переменная [0001:a] == 7
@> Переключатель: [0007:Значение а допустимо] = ВКЛ
@>
: КОНЕЦ
@> УСЛОВИЕ: Переменная [0001:a] == 10
@> Переключатель: [0007:Значение а допустимо] = ВКЛ
@>
: КОНЕЦ
@> УСЛОВИЕ: Переключатель [0007:Значение а допустимо] == ВКЛ
@> Переменная: [0002:b] = 1
@>
: КОНЕЦ
@>
Как вариант, можно объединить все условия в скрипте. Для VX Ace проверка делается так (для MV скрипт будет другой):
То есть в команде «Ветвление условий» выберите страницу 4, пункт «Скрипт» (последний), и введите такой скрипт:
[5, 7, 10].include? $game_variables[1]
(Вместо 1 поставьте номер своей переменной, которая проверяется. Вместо 5, 7, 10 — свои числа через запятую.)
Результат будет таким:
@> УСЛОВИЕ: Скрипт: [5, 7, 10].include? $game_variables[1]
@> Переменная: [0002:b] = 1
@>
: КОНЕЦ
@>
◆ Переключатель : #0007 Значение a допустимо = ВЫКЛ
◆ Если : a = 5
◆ Переключатель : #0007 Значение a допустимо = ВКЛ
◆
: Конец
◆ Если : a = 7
◆ Переключатель : #0007 Значение a допустимо = ВКЛ
◆
: Конец
◆ Если : a = 10
◆ Переключатель : #0007 Значение a допустимо = ВКЛ
◆
: Конец
◆ Если : Значение a допустимо теперь ВКЛ
◆ Переменная : #0002 b = 1
◆
: Конец
Как вариант, можно объединить все условия в скрипте. Для MV проверка делается так (для VX Ace скрипт будет другой, см. спойлер в конце ответа):
То есть в команде «Ветвление условий» выберите страницу 4, пункт «Скрипт» (последний), и введите такой скрипт:
[5,7,10].indexOf($gameVariables.value(1)) != -1
(Вместо подчёркнутой единицы 1 поставьте номер своей переменной, которая проверяется. Вместо подчёркнутых 5,7,10 поставьте свои допустимые числа через запятую. -1 оставьте, там и должна быть -1.)
Результат будет таким:
◆ Если : Скрипт : [5,7,10].indexOf($gameVariables.value(1)) != -1
◆ Переменная : #0002 b = 1
◆
: Конец
Ответ для VX Ace (я сначала не заметил указание версии мейкера)
Я в таких случаях использую переключатель (или локальный переключатель). Например, так:
@> Переключатель: [0007:Значение а допустимо] = ВЫКЛ
@> УСЛОВИЕ: Переменная [0001:a] == 5
@> Переключатель: [0007:Значение а допустимо] = ВКЛ
@>
: КОНЕЦ
@> УСЛОВИЕ: Переменная [0001:a] == 7
@> Переключатель: [0007:Значение а допустимо] = ВКЛ
@>
: КОНЕЦ
@> УСЛОВИЕ: Переменная [0001:a] == 10
@> Переключатель: [0007:Значение а допустимо] = ВКЛ
@>
: КОНЕЦ
@> УСЛОВИЕ: Переключатель [0007:Значение а допустимо] == ВКЛ
@> Переменная: [0002:b] = 1
@>
: КОНЕЦ
@>
Как вариант, можно объединить все условия в скрипте. Для VX Ace проверка делается так (для MV скрипт будет другой):
То есть в команде «Ветвление условий» выберите страницу 4, пункт «Скрипт» (последний), и введите такой скрипт:
[5, 7, 10].include? $game_variables[1]
(Вместо 1 поставьте номер своей переменной, которая проверяется. Вместо 5, 7, 10 — свои числа через запятую.)
Результат будет таким:
@> УСЛОВИЕ: Скрипт: [5, 7, 10].include? $game_variables[1]
@> Переменная: [0002:b] = 1
@>
: КОНЕЦ
@>
Последнее редактирование: 7 года 4 мес. назад пользователем Dmy.
Спасибо сказали: Ridden
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
7 года 4 мес. назад #107736
от Ridden
Ridden ответил в теме Условие при разных значениях переменной
Спасибо. Жаль в скриптах я не силён, написал пока громоздким способом.
Просто делал календарь для пошаговой игры и хочу что бы в месяце было по 30 и 31 дню в зависимости от месяца. А то в готовых скриптах это почему то не делают, а я умею только через условия...
Просто делал календарь для пошаговой игры и хочу что бы в месяце было по 30 и 31 дню в зависимости от месяца. А то в готовых скриптах это почему то не делают, а я умею только через условия...
Спасибо сказали: Dmy
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
7 года 4 мес. назад - 7 года 4 мес. назад #107737
от Dmy
[5,7,10].indexOf($gameVariables.value(1)) != -1
Вместо подчёркнутой единицы нужно поставить номер переменной, которая проверяется. Вместо 5,7,10 — свои числа через запятую.
Это скрипт для MV. Я сначала невнимательно прочитал вопрос и написал ответ для VX Ace (сейчас я переписал для MV).
Dmy ответил в теме Условие при разных значениях переменной
Вы можете просто скопировать мой скрипт условия, если что:Ridden пишет: Спасибо. Жаль в скриптах я не силён, написал пока громоздким способом.
Просто делал календарь для пошаговой игры и хочу что бы в месяце было по 30 и 31 дню в зависимости от месяца. А то в готовых скриптах это почему то не делают, а я умею только через условия...
[5,7,10].indexOf($gameVariables.value(1)) != -1
Вместо подчёркнутой единицы нужно поставить номер переменной, которая проверяется. Вместо 5,7,10 — свои числа через запятую.
Это скрипт для MV. Я сначала невнимательно прочитал вопрос и написал ответ для VX Ace (сейчас я переписал для MV).
Последнее редактирование: 7 года 4 мес. назад пользователем Dmy.
Спасибо сказали: Ridden
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
7 года 4 мес. назад #107738
от Ridden
Ridden ответил в теме Условие при разных значениях переменной
Ещё раз спасибо огромнейшее
Спасибо сказали: Dmy
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Время создания страницы: 0.099 секунд
