// // 戦闘中装備変更 ver1.00 // // ------------------------------------------------------ // Copyright (c) 2016 Yana // Released under the MIT license // http://opensource.org/licenses/mit-license.php // ------------------------------------------------------ // // author Yana // var Imported = Imported || {}; Imported['ChangeEquipBattle'] = 1.00; /*: * @plugindesc ver1.00/戦闘中に装備を変更するコマンドを追加します。 * @author Yana * * @param AddBattleEquip * @desc アクターコマンドに装備コマンドを追加するかの設定です。 * true/falseで指定してください。 * @default true * * @param EquipSkillTypeId * @desc 装備変更と同期させるスキルタイプで、この名称が使用されます。 * このスキルタイプが封印されていると装備変更ができません。 * @default 6 * * @param BattleChangeableEquipTypes * @desc 戦闘中に装備変更可能な部位です。 * 装備タイプを,で区切って指定してください。 * @default 1,2 * * @help ------------------------------------------------------ * プラグインコマンド * ------------------------------------------------------ * このプラグインには、プラグインコマンドはありません。 * ------------------------------------------------------ * 使い方 * ------------------------------------------------------ * * プラグインを導入し、プラグインパラメータでAddBattleEquipをtrueに設定すると動作します。 * * ※注意 * BattleLayout-SaGaと併用する場合は、こちらを上に配置してください。 * EquipAndShopStatusRと併用する場合は、こちらを下に配置してください。 * * ・メモを使った設定 * 特徴を持ったオブジェクトのメモに * <戦闘中装備変更可能:○,○,○…> * * のいずれかを記述すると、その特徴を持っているアクターは○,○,○…の装備タイプの * 装備を装備変更可能になります。 * この際、プラグインパラメータ―の設定よりも、こちらの設定が優先されます。 * * 同じように、 * <戦闘中装備変更不可:○,○,○…> * * のいずれかを記述すると、その特徴を持っているアクターは○,○,○…の装備タイプの * 装備を装備変更不可になります。 * この際、プラグインパラメータの設定よりも、こちらの設定が優先されます。 * * ------------------------------------------------------ * 利用規約 * ------------------------------------------------------ * 当プラグインはMITライセンスで公開されています。 * 使用に制限はありません。商用、アダルト、いずれにも使用できます。 * 二次配布も制限はしませんが、サポートは行いません。 * 著作表示は任意です。行わなくても利用できます。 * 要するに、特に規約はありません。 * バグ報告や使用方法等のお問合せはネ実ツクールスレ、または、Twitterにお願いします。 * https://twitter.com/yanatsuki_ * 素材利用は自己責任でお願いします。 * ------------------------------------------------------ * 更新履歴: * ver1.00: * 公開 */ (function() { //////////////////////////////////////////////////////////////////////////////////// var parameters = PluginManager.parameters('ChangeEquipBattle'); var addBattleEquip = parameters['AddBattleEquip'] === 'true'; var equipSkillTypeId = Number(parameters['EquipSkillTypeId']); var battleChangeableEquipTypes = parameters['BattleChangeableEquipTypes'].split(',').map(function(a){return Number(a)}); //////////////////////////////////////////////////////////////////////////////////// DataManager.battleEquippableTrait = function(item) { if (item._battleEquippableEtype) return item._battleEquippableEtype; item._battleEquippableEtype = []; if (item.meta['戦闘中装備変更可能']){ item._battleEquippableEtype = item.meta['戦闘中装備変更可能'].split(',').map(function(n){return Number(n)}); } else if (item.meta['ChangeableBattleEquip']){ item._battleEquippableEtype = item.meta['ChangeableBattleEquip'].split(',').map(function(n){return Number(n)}); } return item._battleEquippableEtype; }; DataManager.battleUnequippableTrait = function(item) { if (item._battleUnequippableEtype) return item._battleUnequippableEtype; item._battleUnequippableEtype = []; if (item.meta['戦闘中装備変更不可']){ item._battleUnequippableEtype = item.meta['戦闘中装備変更不可'].split(',').map(function(n){return Number(n)}); } else if ( item.meta['UnchangeableBattleEquip']) { item._battleUnequippableEtype = item.meta['UnchangeableBattleEquip'].split(',').map(function(n){return Number(n)}); } return item._battleUnequippableEtype; }; //////////////////////////////////////////////////////////////////////////////////// Game_Actor.prototype.isAddEquipCommand = function() { return addBattleEquip && !this.isSkillTypeSealed(equipSkillTypeId); }; Game_Actor.prototype.isBattleEquippable = function(index) { var etype = this.equipSlots()[index]; var result = battleChangeableEquipTypes.contains(etype); var tos = this.traitObjects(); for (var i=0,max=tos.length;i