//=============================================================================
// RPG Maker MZ - NPC Actor
//=============================================================================
var Imported = Imported || {};
Imported.KN_NpcActor = true;
var Kanna = Kanna || {};
Kanna.NpcActor = Kanna.NpcActor || {};
Kanna.NpcActor.version = 1.11;
//=============================================================================
/*:
* @target MZ
* @plugindesc 指定角色不参与战斗。
* @author 康娜酱
*
* @help
* ============================================================================
* Introduction
* ============================================================================
*
* 指定角色不参与战斗。
*
* ============================================================================
* Changelog
* ============================================================================
*
* Version 1.00:
* - Finished Plugin!
*
* Version 1.10:
* - 被指定的角色不跟随队伍 => 被指定的角色会跟随队伍
* Version 1.11:
* - 变更插件参数的设置方式
*
* ============================================================================
* End of Helpfile
* ============================================================================
*
* @param actorId
* @text 角色编号
* @desc 指定编号的角色不参与战斗。
* @default ["2", "3", "5", "8"]
* @type actor[]
*/
//=============================================================================
(() => {
'use strict';
const pluginName = document.currentScript.src.split("/").pop().replace(/\.js$/, "");
const parameters = PluginManager.parameters(pluginName);
const npcActor = parameters.actorId.match(/\d+/g).map(Number);
//=============================================================================
// Game_Party
//=============================================================================
Kanna.NpcActor.Game_Party_allBattleMembers = Game_Party.prototype.allBattleMembers;
Game_Party.prototype.allBattleMembers = function () {
const allBattleMembers = Kanna.NpcActor.Game_Party_allBattleMembers.apply(this, arguments);
if ($gameParty.inBattle()) {
const allBattleMembersExceptNPC = allBattleMembers.filter(function (actor) {
return !npcActor.includes(actor.actorId());
});
return allBattleMembersExceptNPC;
} else {
return allBattleMembers;
}
};
})();
//=============================================================================
// End of File
//=============================================================================
收起