Войти на сайт

Авторизация, ждите ...
×
Правила раздела:
1 Задавайте конкретные вопросы. Для болтовни есть свободный раздел.
2 По возможности давайте конкретные ответы.
3 Один вопрос=одна тема. Если хотите задать ещё вопрос, то начинайте новую тему.
4 Название темы должно составлять сам вопрос, и быть максимально конкретным. Рекомендуется начинать тему словами "Как", "Что", "Почему". А первый пост повторяет вопрос и даёт расширенные сведения.
5 Рекомендуется указывать версию мейкера (2000, 2003, RMXP, RMVX, ACE, IGM, и.т.д.. Это важно, и всё равно ведь спросят.
6 Темы "Пара вопросов", "Помогите", и подобные им - самый лёгкий путь к бану.
7 Поиск находится вверху справа.
А. Названия подразделов этого раздела уточняются. Советы принимаются.

ТЕМА: Как сделать зацикленный выбор в MV

Как сделать зацикленный выбор в MV 6 года 4 мес. назад #100790

  • Leprikon01
  • Leprikon01 аватар
  • Вне сайта
  • Мастер
  • Сообщений: 227
  • Спасибо получено: 143
Здравствуйте. Мне нужно сделать несколько вариантов ответа и чтобы после диалога опять показывался этот же выбор.
Администратор запретил публиковать записи гостям.

Как сделать зацикленный выбор в MV 6 года 4 мес. назад #100791

  • AnnTenna
  • AnnTenna аватар
  • Вне сайта
  • Администратор
  • ловлю волны настроения
  • Сообщений: 4540
  • Спасибо получено: 4688
  • РазработчикУчитель3 место в КодировкеДаритель СтимкеяПобедитель конкурса2 место Победитель Сбитой кодировкиОрганизатор конкурсов3 местоПроект месяца 2 место
Привет! Так легко же вроде - просто используй цикл :whistle:

civ.png

Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Dmy, ZX_Lost_Soul, Leprikon01

Как сделать зацикленный выбор в MV 6 года 4 мес. назад #100793

  • Mur
  • Mur аватар
  • Вне сайта
  • Светлый дракон
  • Мур? Мур! Мур.
  • Сообщений: 574
  • Спасибо получено: 1448
  • ОраторОрганизатор конкурсов2 место Программист JavaScript УчительДаритель Стимкея
Я всё-таки посоветую, лучше сделать через метку (label):


Label.png
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Leprikon01

Как сделать зацикленный выбор в MV 6 года 4 мес. назад #100794

  • Leprikon01
  • Leprikon01 аватар
  • Вне сайта
  • Мастер
  • Сообщений: 227
  • Спасибо получено: 143
Спасибо! Мне подошел первый вариант.
Администратор запретил публиковать записи гостям.

Как сделать зацикленный выбор в MV 6 года 4 мес. назад #100796

  • ZX_Lost_Soul
  • ZX_Lost_Soul аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 546
  • Спасибо получено: 945
  • Даритель СтимкеяПроект месяца 3 местоУчительОраторПроект года 3 местоРазработчикПобедитель Сбитой кодировкиПобедитель конкурсаПроект месяца 1 местоВетеран
Mur, а чем лучше? Действий больше, да и использование переходов по метке даже в событиях мейкера визуально нарушает их структуру. Плюс я думаю, что освоение событий в мейкере помогает человеку понять основы программирования, а goto в любом языке является дурным тоном :)
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Dmy, yuryol

Как сделать зацикленный выбор в MV 6 года 4 мес. назад #100798

  • Mur
  • Mur аватар
  • Вне сайта
  • Светлый дракон
  • Мур? Мур! Мур.
  • Сообщений: 574
  • Спасибо получено: 1448
  • ОраторОрганизатор конкурсов2 место Программист JavaScript УчительДаритель Стимкея
ZX_Lost_Soul пишет:
Mur, а чем лучше?

Как в анекдоте:
— Эти лучше, чем другие!
— Леонид Ильич, чем лучше?
— Чем другие!

:laugh:

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

ZX_Lost_Soul пишет:
Действий больше, да и использование переходов по метке даже в событиях мейкера визуально нарушает их структуру.

Это каких же действий больше, нажать 1 раз кнопку или два раза?

Вариант с Loop:
1-4.png


Вариант с метками:
2-3.png


В моём случае, как раз-таки визуально понятнее, что происходит «зацикливание» с места «Jump to Label» к метке «Loop».

ZX_Lost_Soul пишет:
Плюс я думаю, что освоение событий в мейкере помогает человеку понять основы программирования, а goto в любом языке является дурным тоном :)

Ну это ты расскажи ruby-программистам :) которые любят так прыгать по коду и выскакивать из середины функции по return.

А вообще если по сути разобраться, любой цикл и есть go to с условием, чего не скажешь о команде «цикл» в ивентах. Так что технически они ничем не отличаются.

В моём же примере просто ещё сделан выход из «вечного цикла», то есть по сути задано условие.
Последнее редактирование: 6 года 4 мес. назад от Mur.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Dmy, ZX_Lost_Soul

Как сделать зацикленный выбор в MV 6 года 4 мес. назад #100799

  • ZX_Lost_Soul
  • ZX_Lost_Soul аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 546
  • Спасибо получено: 945
  • Даритель СтимкеяПроект месяца 3 местоУчительОраторПроект года 3 местоРазработчикПобедитель Сбитой кодировкиПобедитель конкурсаПроект месяца 1 местоВетеран
Mur, для выхода из цикла тоже два действия нужно (метка и переход к ней), а не одно (Завершить цикл).

Ну, в маленьком примере может и понятнее, а вот в реальной игре там будут ещё действия на каждый вариант + действия до и после цикла, и метка может затеряться. А в случае с циклом мейкер сместит все действия внутри цикла вправо и будут чётко видны его границы.

А так, конечно, всё на вкус и цвет :)
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Dmy, Mur

Как сделать зацикленный выбор в MV 6 года 4 мес. назад #100800

  • Lekste
  • Lekste аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 911
  • Спасибо получено: 565
  • Программист RubyДаритель СтимкеяВетеранОраторПрограммист JavaScript
+ GoTo плох соблазном прыгнуть совсем далеко и не всегда в одно место, отчего последовательность действий превращается в паутину. А при использовании 'break' и ему подобных, всегда знаешь, куда выходишь.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Dmy, ZX_Lost_Soul

Как сделать зацикленный выбор в MV 6 года 4 мес. назад #100843

  • Leprikon01
  • Leprikon01 аватар
  • Вне сайта
  • Мастер
  • Сообщений: 227
  • Спасибо получено: 143
Второй вариант хорош если надо не все строки выбора зациклить, а одну или если надо сделать выбор в в выборе эдакую матрешку :laugh: с возможностью вернуться на первый пункт. А первый вариант хорош для простого выбора.
Последнее редактирование: 6 года 4 мес. назад от Leprikon01.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: ZX_Lost_Soul

Как сделать зацикленный выбор в MV 6 года 4 мес. назад #100847

  • Green-Leo
  • Green-Leo аватар
  • Вне сайта
  • Архитектор Миров
  • Зелёный
  • Сообщений: 1178
  • Спасибо получено: 1161
  • Проект месяца 2 местоОраторВетеран
А что мешает "повтор цикла" засунуть именно в выбор?
И вообще, если весь выбор повторять, то событие получится зацикленным, не?

Не совсем понял, что хотел сказать Леприкон и почему в одном случае один из вариантов не должен работать

АБДЕЙТ: я понял, что мешает, забыл что функция "повтор цикла" добавляется автоматом, когда ставишь цикл и её нельзя переставить... Ну в таком случае, при желании можно добавить "прервать цикл" в те выборы, после которых этот кусок повторяться не должен)


Последнее редактирование: 6 года 4 мес. назад от Green-Leo.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Dmy

Как сделать зацикленный выбор в MV 6 года 4 мес. назад #100848

  • Leprikon01
  • Leprikon01 аватар
  • Вне сайта
  • Мастер
  • Сообщений: 227
  • Спасибо получено: 143
Вот смотри, чел сиди за компом в инете
ВНИМАНИЕ: Спойлер! [ Нажмите, чтобы развернуть ]

у него 5 вариантов выбора и только 1 продолжает игру. В этой ситуации проще сделать цикл и в последнем выборе выход из него.
Последнее редактирование: 6 года 4 мес. назад от Leprikon01.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Dmy, Green-Leo

Как сделать зацикленный выбор в MV 6 года 4 мес. назад #100849

  • Mur
  • Mur аватар
  • Вне сайта
  • Светлый дракон
  • Мур? Мур! Мур.
  • Сообщений: 574
  • Спасибо получено: 1448
  • ОраторОрганизатор конкурсов2 место Программист JavaScript УчительДаритель Стимкея
Leprikon01 пишет:
у него 5 вариантов выбора и только 1 продолжает игру.

А теперь включаем лазер логику :cheer:

Ну предположим «посмотреть новости», «почитать журнал» ещё худо бедно можно бесконечно делать, хотя по сути это тоже конечные действия, гг можно просто замутить от пересыщения информацией.

А вот пункты с заказами, извините, но они должны быть либо одноразовые (исчезать после выбора), либо дать возможность указать количество заказов.

ну как-то так… :blush:
Администратор запретил публиковать записи гостям.

Как сделать зацикленный выбор в MV 6 года 4 мес. назад #100851

  • Leprikon01
  • Leprikon01 аватар
  • Вне сайта
  • Мастер
  • Сообщений: 227
  • Спасибо получено: 143
Да конечно вы правы. Я только учусь. И еще не додумался как сделать чтобы заказы исчезали из выбора. И нужно чтобы оба заказа были сделаны.
Администратор запретил публиковать записи гостям.

Как сделать зацикленный выбор в MV 6 года 4 мес. назад #100853

  • Mur
  • Mur аватар
  • Вне сайта
  • Светлый дракон
  • Мур? Мур! Мур.
  • Сообщений: 574
  • Спасибо получено: 1448
  • ОраторОрганизатор конкурсов2 место Программист JavaScript УчительДаритель Стимкея
Leprikon01 пишет:
И еще не додумался как сделать чтобы заказы исчезали из выбора. И нужно чтобы оба заказа были сделаны.

Ну как вариант, можно завести какую-нибудь переменную, или переключатель и внутри пункта уже спрашивать состояние. Если она не установлена (заказ не делали), показать диалог, текст или что там должно произойти и в конце установить эту переменную или переключатель. Если же переключатель уже установлен, показать например фразу, что «я уже заказал бла… бла… бла… второй раз не буду».

Например так, используя 80й переключатель как условие:


1-5.png
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Leprikon01

Как сделать зацикленный выбор в MV 6 года 4 мес. назад #100855

  • Leprikon01
  • Leprikon01 аватар
  • Вне сайта
  • Мастер
  • Сообщений: 227
  • Спасибо получено: 143
А можно пошагово? Для очень трудных... А не, все разобрался! Все получилось, спасибо.
Последнее редактирование: 6 года 4 мес. назад от Leprikon01.
Администратор запретил публиковать записи гостям.
Время создания страницы: 0.203 секунд