Войти на сайт

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

ТЕМА: Как дать герою резист?

Как дать герою резист? 3 года 11 мес. назад #116910

  • Alx_Yago
  • Alx_Yago аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1137
  • Спасибо получено: 2156
  • 3 место в Обучающем конкурсеПаладин1 место в Обучающем конкурсеУчительРазработчикОратор3 местоПроект года 1 местоПроект месяца 1 местоПроект года 3 место
Как в процессе игры дать герою постоянный резист к какому-либо виду урона или состоянию?

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

Как дать герою резист? 3 года 11 мес. назад #116913

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

Подозреваю, что это делается элементарной строчкой скрипта, однако я, к сожалению, не знаю синтаксиса для этих характеристик.
(Прошу прощения за первый ответ [я его уже удалил], был невнимателен и не прочитал «в процессе игры».)

Можно сделать скрытое состояние с низким рейтингом и пустой иконкой «Сопротивление», и в этом состоянии добавить нужные особенности («Коэффициент стихии/Element rate = 0%» или «Сопротивление состоянию/State Resist»). Правда, надо проверить, чтобы это состояние не снималось в гостиницах и т.п.
Последнее редактирование: 3 года 11 мес. назад от Dmy.
Администратор запретил публиковать записи гостям.

Как дать герою резист? 3 года 11 мес. назад #116914

  • Alx_Yago
  • Alx_Yago аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1137
  • Спасибо получено: 2156
  • 3 место в Обучающем конкурсеПаладин1 место в Обучающем конкурсеУчительРазработчикОратор3 местоПроект года 1 местоПроект месяца 1 местоПроект года 3 место
Можно сделать скрытое состояние
Именно к этому я пока и пришёл, однако необходимость заново накладывать состояния после смерти или гостиницы несколько раздражает. Вот я и подумал, что должен быть способ менять это в характеристиках персонажа.
Администратор запретил публиковать записи гостям.

Как дать герою резист? 3 года 11 мес. назад #116915

  • Dmy
  • Dmy аватар
  • Вне сайта
  • Заблокирован
  • Сообщений: 1142
  • Спасибо получено: 2477
  • 2 место ПаладинПроект месяца 3 местоДаритель СтимкеяРазработчикЗа 2 место на конкурсе маппингаОраторПрограммист RubyПоддержка ФондаВетеран
Alx_Yago пишет:
Именно к этому я пока и пришёл, однако необходимость заново накладывать состояния после смерти или гостиницы несколько раздражает.
В крайнем случае можно сделать параллельное событие, которое постоянно накладывает состояние при наличии какого-то переключателя. (Только в него лучше в конце добавить паузу в пару десятков или в сотню кадров, чтобы оно не тормозило игру.)

А, да, со смертью это вопрос не решит. :wall:
Alx_Yago пишет:
Вот я и подумал, что должен быть способ менять это в характеристиках персонажа.
Я такого не знаю.

Если писать плагин, это будет не пара строчек, а больше. Т.к. особенности героя — постоянная штука, они не сохраняются в сохранениях. (Т.е. если их поменять скриптом, то они будут сбиваться при загрузке игры.)
Последнее редактирование: 3 года 11 мес. назад от Dmy.
Администратор запретил публиковать записи гостям.

Как дать герою резист? 3 года 11 мес. назад #116938

  • VarVarKa
  • VarVarKa аватар
  • Вне сайта
  • Мастер
  • Сообщений: 230
  • Спасибо получено: 678
  • Проект месяца 1 местоПроект месяца 3 местоОрганизатор конкурсовВетеранТестерПроект месяца 2 место
По поводу состояний: есть плагин, который добавляет состояние при определённых условиях, правда условия работают только в заметках брони.
Если интересно, можно взять плагин из моего проекта Светлое будущее.
Администратор запретил публиковать записи гостям.

Как дать герою резист? 3 года 11 мес. назад #116940

  • Alx_Yago
  • Alx_Yago аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1137
  • Спасибо получено: 2156
  • 3 место в Обучающем конкурсеПаладин1 место в Обучающем конкурсеУчительРазработчикОратор3 местоПроект года 1 местоПроект месяца 1 местоПроект года 3 место
Блин, а я-то думал, существует простая строчка, типа:
$gameActors.actor(actorId).addParam(paramId, n)
только с параметром типа changeEelementRate
Не? Ну наверняка же есть что-то такое?
Если интересно, можно взять плагин из моего проекта Светлое будущее.
А это даже просто так, наверное, стоит посмотреть. Судя по отзывам, там есть что-то удивительное.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: VarVarKa

Как дать герою резист? 3 года 11 мес. назад #116943

  • Dmy
  • Dmy аватар
  • Вне сайта
  • Заблокирован
  • Сообщений: 1142
  • Спасибо получено: 2477
  • 2 место ПаладинПроект месяца 3 местоДаритель СтимкеяРазработчикЗа 2 место на конкурсе маппингаОраторПрограммист RubyПоддержка ФондаВетеран
Alx_Yago пишет:
Блин, а я-то думал, существует простая строчка, типа:
$gameActors.actor(actorId).addParam(paramId, n)
только с параметром типа changeEelementRate
Не? Ну наверняка же есть что-то такое?
Нет такой возможности. По умолчанию движок исходит из предположения, что особенности неизменны и не добавляются по ходу игры.

Чтобы добавлять их по ходу игры, нужно написать плагин.

Собственно, я взял и написал, вот: GRB_AdditionalActorTraits.js
На всякий случай, вот полный код плагина [ Нажмите, чтобы развернуть ]


Если его подключить, можно будет снизить коэффициент элемента до нуля таким скриптом:
$gameActors.actor(1).grbAddTrait(Game_BattlerBase.TRAIT_ELEMENT_RATE, 2, 0.0)
  //вместо 1 напишите № героя
  //вместо 2 напишите № элемента

И можно будет добавить сопротивление состоянию таким скриптом:
$gameActors.actor(1).grbAddTrait(Game_BattlerBase.TRAIT_STATE_RESIST, 4)
  //вместо 1 напишите № героя
  //вместо 4 напишите № состояния

Чтобы убрать особенность, замените в коде grbAddTrait на grbRemoveTrait. Убрать можно только те особенности, которые добавлены через этот плагин. Убрать особенности, установленные в БД, таким образом нельзя.

Ещё можно убрать все параметры, добавленные через этот плагин (сбросить к состоянию из БД) таким скриптом:
$gameActors.actor(1).grbClearTraits()
  //вместо 1 напишите № героя


Если будут баги — пишите, исправлю.
Последнее редактирование: 3 года 3 нед. назад от Dmy. Причина: поменял предупреждение про Блокнот, т.к. Блокнот наконец-то стал поддерживать UTF-8 без BOM
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Cabbit, Alx_Yago
Время создания страницы: 0.224 секунд