Войти на сайт

Авторизация, ждите ...
×

ТЕМА: [MV] GRB_Non Battler Actors (убрать героев из боя)

[MV] GRB_Non Battler Actors (убрать героев из боя) 1 мес. 4 нед. назад #105851

  • Dmy
  • Dmy аватар
  • Вне сайта
  • Бог Светлого
  • Сообщений: 549
  • Спасибо получено: 1067
  • УчительОраторДаритель СтимкеяПоддержка ФондаРазработчикПроект месяца 3 местоВетеран
Плагин GRB_NonBattlerActors для RPG Maker MV позволяет исключить некоторых персонажей из битвы.

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


Герои будут ходить с партией по карте, но в битве участвовать не будут.

Чтобы отметить героя или героиню как недоступного в битве, добавьте в его заметки один из таких кодов:

<не в битве>

Доступны также коды на других языках: <non-battler>, <не ў бітве>, <не в битві>

Например, если сделать так, то Гарольд будет ходить по карте, но не будет участвовать в битве:

garold-non-battler.png


Кроме того, плагин позволяет включать/выключать персонажей из битвы переключателем. Если переключатель включён — персонаж будет доступен в битве, если выключен — недоступен:

<боевой переключатель: 1>

Или на других языках: <battler switch: 1>, <баявы пераключальнік: 1>, <бойовий перемикач: 1>

Вместо 1 укажите номер переключателя. Когда этот переключатель включён, герой будет появляться в битве. Когда выключен — не будет.


Идею плагина я взял из поста какого-то Сергея ВКонтакте — спасибо ему!
«я в чате, значит жив» (PanzerCat)
«Всё то, что важно, уязвимо — это главный закон» (из песни «Невесомый человек» группы Ясвена)
Последнее редактирование: 1 мес. 4 нед. назад от Dmy.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Leprikon01, DK, Cabbit, Varvararara, Aiaz Marx, SeaWolf, Maximka68

[MV] GRB_Non Battler Actors (убрать героев из боя) 1 мес. 4 нед. назад #105862

  • Doctor_Bug
  • Doctor_Bug аватар
  • Вне сайта
  • Мастер
  • Из горизонта события! ▪_■
  • Сообщений: 224
  • Спасибо получено: 339
  • 3 место в КодировкеПрограммист RubyПроект месяца 3 место3 место
Интересный плагин. А что будет если в пати все будут выключены? Выдаст ошибку?
Bug
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Dmy

[MV] GRB_Non Battler Actors (убрать героев из боя) 1 мес. 4 нед. назад #105865

  • Dmy
  • Dmy аватар
  • Вне сайта
  • Бог Светлого
  • Сообщений: 549
  • Спасибо получено: 1067
  • УчительОраторДаритель СтимкеяПоддержка ФондаРазработчикПроект месяца 3 местоВетеран
Doctor_Bug пишет:
А что будет если в пати все будут выключены? Выдаст ошибку?
Битва начнётся и сразу же закончится. Это стандартное поведение MV, я это не менял.
«я в чате, значит жив» (PanzerCat)
«Всё то, что важно, уязвимо — это главный закон» (из песни «Невесомый человек» группы Ясвена)
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Doctor_Bug

[MV] GRB_Non Battler Actors (убрать героев из боя) 1 мес. 4 нед. назад #105866

  • Фред Канниг
  • Фред Канниг аватар
  • Вне сайта
  • Мастер
  • Сообщений: 221
  • Спасибо получено: 80
Dmy пишет:
Битва начнётся и сразу же закончится.
В чью пользу?
Администратор запретил публиковать записи гостям.

[MV] GRB_Non Battler Actors (убрать героев из боя) 1 мес. 4 нед. назад #105867

  • Dmy
  • Dmy аватар
  • Вне сайта
  • Бог Светлого
  • Сообщений: 549
  • Спасибо получено: 1067
  • УчительОраторДаритель СтимкеяПоддержка ФондаРазработчикПроект месяца 3 местоВетеран
Фред Канниг пишет:
В чью пользу?
Ни в чью. Это будет считаться побегом (по крайней мере если в переменную записывать «Счёт побегов», то он после такой битвы увеличится на 1), но текста о побеге не будет, просто битва закончится.

Если надо, можно это поменять на проигрыш, это можно сделать вот таким скриптом:
(function () {
 
    var BattleManager_checkBattleEnd = BattleManager.checkBattleEnd;
    BattleManager.checkBattleEnd = function() {
        if (this._phase && $gameParty.isEmpty()) {
            this.processDefeat();
            return true;
        }
        return BattleManager_checkBattleEnd.call(this);
    }
 
    var Game_Party_name = Game_Party.prototype.name;
    Game_Party.prototype.name = function () {
        var numBattleMembers = this.allMembers().length;
        if (numBattleMembers === 0) {
            return '';
        } else if (numBattleMembers === 1) {
            return this.leader().name();
        } else {
            return TextManager.partyName.format(this.leader().name());
        }
    };
 
})();

[Как и сам плагин, этот код передан в общественное достояние согласно CC0.]
«я в чате, значит жив» (PanzerCat)
«Всё то, что важно, уязвимо — это главный закон» (из песни «Невесомый человек» группы Ясвена)
Последнее редактирование: 1 мес. 4 нед. назад от Dmy.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Cabbit, Doctor_Bug, Фред Канниг
Время создания страницы: 0.265 секунд