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

[MZ] Скрипт системы выносливости

Проект месяца 3 место Проект месяца 2 место Ветеран Учитель Проект месяца 1 место Проект года 3 место Разработчик
Больше
2 года 1 мес. назад - 2 года 1 мес. назад #130027 от Alexandr_7
Здравствуйте. Вот написал для своей игры скрипт на выносливость с уставанием игрока.
Code:
◆Если:Скрипт:$gamePlayer.isMoving() ◆Если:Скрипт:$gamePlayer.isDashing() ◆Общее событие:Get Player MP ◆Изменить MP:{ch_names.Ashley}, - 7 ◆Если:[Sys] Player MP > 0 ◆Общее событие:Get Player MP ◆Скрипт:var ProgBarMP = $AL7GlobalData.GetData(0).MP; :      :var dur = 15; :      :$gameScreen.movePicture(4,0,ProgBarMP.x,ProgBarMP.y,$gameVariables.value(12),100,255,0,dur); ◆Команда плагина:VisuMZ_1_MessageCore, Picture: Refresh Text ◆Ждать:15 кадры(ов) ◆ :Иначе ◆Общее событие:Get Player MP ◆Скрипт:var ProgBarMP = $AL7GlobalData.GetData(0).MP; :      :var dur = 15; :      :$gameScreen.movePicture(4,0,ProgBarMP.x,ProgBarMP.y,$gameVariables.value(12),100,255,0,dur); ◆Команда плагина:VisuMZ_1_MessageCore, Picture: Refresh Text ◆Команда плагина:YEP_DashToggle_MZ, Запретить / Разраешить быстрый бег :               :Запретить Быстрый бег = true ◆Если:[Sys] VR Zoom > [Sys] Min VR Zoom ◆Ждать:1 кадр ◆Переменная:#0001 [Sys] VR Zoom -= 4 ◆ :Иначе ◆Переменная:#0001 [Sys] VR Zoom = [Sys] Min VR Zoom ◆Завершить выполнение ◆ :Конец ◆ :Конец ◆ :Иначе ◆Завершить выполнение ◆ :Конец ◆ :Иначе ◆Если:Скрипт:$gamePlayer.isMoving() ◆Завершить выполнение ◆ :Иначе ◆Общее событие:Get Player MP ◆Изменить MP:{ch_names.Ashley}, + 5 ◆Если:[Sys] Player MP < [Sys] Player MMP ◆Общее событие:Get Player MP ◆Скрипт:var ProgBarMP = $AL7GlobalData.GetData(0).MP; :      :var dur = 15; :      :$gameScreen.movePicture(4,0,ProgBarMP.x,ProgBarMP.y,$gameVariables.value(12),100,255,0,dur); ◆Команда плагина:VisuMZ_1_MessageCore, Picture: Refresh Text ◆Ждать:15 кадры(ов) ◆ :Иначе ◆Команда плагина:YEP_DashToggle_MZ, Запретить / Разраешить быстрый бег :               :Запретить Быстрый бег = false ◆Общее событие:Get Player MP ◆Скрипт:var ProgBarMP = $AL7GlobalData.GetData(0).MP; :      :var dur = 15; :      :$gameScreen.movePicture(4,0,ProgBarMP.x,ProgBarMP.y,$gameVariables.value(12),100,255,0,dur); ◆Команда плагина:VisuMZ_1_MessageCore, Picture: Refresh Text ◆Если:[Sys] VR Zoom < [Sys] Max VR Zoom ◆Переменная:#0001 [Sys] VR Zoom += 4 ◆Ждать:1 кадр ◆ :Иначе ◆Переменная:#0001 [Sys] VR Zoom = [Sys] Max VR Zoom ◆Завершить выполнение ◆ :Конец ◆ :Конец ◆ :Конец ◆ :Конец
Плагин на отключения и включения быстрого бега янфлайский. В целом всё работает но шкала выносливости начинает заполняться как только закончилась. Тоесть такое чувство что скрипт $gamePlayer.isMoving() возращает истину именно при быстром беге. А мне необходим скрипт проверки двигается ли персонаж или стоит.

Похоже просто необновились скрипты в сейве. Но в любом случае работает не так как хотелось бы. Нужно иначе построить скрипт. Сначала необходимо уменьшать мп до 0 потом уменьшать видимость а если стоит то увеличивать мп и как только мп востановиться то увеличивать видимость до максимума.

Мой вк: vk.com/borisov_alexandr_5
Мой ютуб канал: www.youtube.com/@alexandr_5836
Мой бусти: boosty.to/alexandr-7
Последнее редактирование: 2 года 1 мес. назад пользователем Alexandr_7.

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

Проект месяца 3 место Проект месяца 2 место Ветеран Учитель Проект месяца 1 место Проект года 3 место Разработчик
Больше
2 года 1 мес. назад #130031 от Alexandr_7
Code:
◆Если:Скрипт:$gamePlayer.isMoving() ◆Если:Скрипт:$gamePlayer.isDashing() ◆Общее событие:Get Player MP ◆Изменить MP:{ch_names.Ashley}, - 7 ◆Если:[Sys] Player MP > 0 ◆Общее событие:Get Player MP ◆Скрипт:var ProgBarMP = $AL7GlobalData.GetData(0).MP; :      :var dur = 15; :      :$gameScreen.movePicture(4,0,ProgBarMP.x,ProgBarMP.y,$gameVariables.value(12),100,255,0,dur); ◆Команда плагина:VisuMZ_1_MessageCore, Picture: Refresh Text ◆Ждать:15 кадры(ов) ◆ :Иначе ◆Общее событие:Get Player MP ◆Скрипт:var ProgBarMP = $AL7GlobalData.GetData(0).MP; :      :var dur = 15; :      :$gameScreen.movePicture(4,0,ProgBarMP.x,ProgBarMP.y,$gameVariables.value(12),100,255,0,dur); ◆Команда плагина:VisuMZ_1_MessageCore, Picture: Refresh Text ◆Команда плагина:YEP_DashToggle_MZ, Запретить / Разраешить быстрый бег :               :Запретить Быстрый бег = true ◆Цикл ◆Если:[Sys] VR Zoom > [Sys] Min VR Zoom ◆Переменная:#0001 [Sys] VR Zoom -= 4 ◆Ждать:1 кадр ◆ :Иначе ◆Переменная:#0001 [Sys] VR Zoom = [Sys] Min VR Zoom ◆Прервать цикл ◆Завершить выполнение ◆ :Конец ◆ :Повторить цикл ◆ :Конец ◆ :Иначе ◆Завершить выполнение ◆ :Конец ◆ :Иначе ◆Общее событие:Get Player MP ◆Изменить MP:{ch_names.Ashley}, + 5 ◆Если:[Sys] Player MP < [Sys] Player MMP ◆Общее событие:Get Player MP ◆Скрипт:var ProgBarMP = $AL7GlobalData.GetData(0).MP; :      :var dur = 15; :      :$gameScreen.movePicture(4,0,ProgBarMP.x,ProgBarMP.y,$gameVariables.value(12),100,255,0,dur); ◆Команда плагина:VisuMZ_1_MessageCore, Picture: Refresh Text ◆Ждать:15 кадры(ов) ◆ :Иначе ◆Команда плагина:YEP_DashToggle_MZ, Запретить / Разраешить быстрый бег :               :Запретить Быстрый бег = false ◆Общее событие:Get Player MP ◆Скрипт:var ProgBarMP = $AL7GlobalData.GetData(0).MP; :      :var dur = 15; :      :$gameScreen.movePicture(4,0,ProgBarMP.x,ProgBarMP.y,$gameVariables.value(12),100,255,0,dur); ◆Команда плагина:VisuMZ_1_MessageCore, Picture: Refresh Text ◆Цикл ◆Если:[Sys] VR Zoom < [Sys] Max VR Zoom ◆Переменная:#0001 [Sys] VR Zoom += 4 ◆Ждать:1 кадр ◆ :Иначе ◆Переменная:#0001 [Sys] VR Zoom = [Sys] Max VR Zoom ◆Прервать цикл ◆Завершить выполнение ◆ :Конец ◆ :Повторить цикл ◆ :Конец ◆ :Конец
Я не понимаю. Восстановления выносливости начинается сразу как закончилась хотя не должна во время ходьбы игрока. Может пожалуйста ктонибудь помочь что не так.

Мой вк: vk.com/borisov_alexandr_5
Мой ютуб канал: www.youtube.com/@alexandr_5836
Мой бусти: boosty.to/alexandr-7

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

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