#============================================================================== # □ 装備組み合わせボーナス (for VX Ace) #------------------------------------------------------------------------------ # Version : 1_20120112 # by サリサ・タイクーン # http://www.tycoon812.com/rgss/ #============================================================================== #============================================================================== # □ 素材スイッチ #============================================================================== $rgsslab = {} if $rgsslab == nil $rgsslab["装備組み合わせボーナス"] = true if $rgsslab["装備組み合わせボーナス"] #============================================================================== # □ カスタマイズポイント #============================================================================== module RGSSLAB end module RGSSLAB::Equip_Combination_Bonus #-------------------------------------------------------------------------- # ○ 組み合わせの設定 # ・ボーナス設定 # [[武器ID, …], [防具ID, …]] => [HP, MP, ATT, DEF, MAT, MDE, AGI, LUK, …], # (最後の設定のみ、後ろのカンマを省略する事ができます) # # HP : 上昇させるMHPの値 # MP : 上昇させるMMPの値 # ATT : 上昇させる攻撃力の値 # DEF : 上昇させる防御力の値 # MAT : 上昇させる魔法力の値 # MDE : 上昇させる魔法防御の値 # AGI : 上昇させる素早さの値 # LUK : 上昇させる運の値 # (これらの値に負の数字で指定すると、パラメータが低下します) # # パラメータの追加によって、パラメータを増やしている場合 # 増やしたパラメータに関しても操作する事ができます。 # # 増やしたパラメータの配置については # パラメータの追加のパラメータ番号によって割り当てられますので # その番号に合わせて要素番号に指定して下さい。 #-------------------------------------------------------------------------- IDS = { [[1], [46, 1]] => [100, 0, 0, 0, 0, 0, 0, 0] } end # カスタマイズポイントは、ここまで #============================================================================== # □ RGSSLAB::Equip_Combination_Bonus [module] #============================================================================== module RGSSLAB::Equip_Combination_Bonus #-------------------------------------------------------------------------- # ○ 素材設定用の定数定義 #-------------------------------------------------------------------------- MATERIAL_NAME = "装備組み合わせボーナス" VERSION = 1 RELEASE = 20120112 end #============================================================================== # ■ Game_Actor [class] #============================================================================== class Game_Actor < Game_Battler #-------------------------------------------------------------------------- # ○ モジュールの設定 #-------------------------------------------------------------------------- RGSSLAB_049 = RGSSLAB::Equip_Combination_Bonus #-------------------------------------------------------------------------- # ● セットアップ [エイリアス] # actor_id : アクターID #-------------------------------------------------------------------------- alias equip_combination_setup setup def setup(actor_id) equip_combination_setup(actor_id) setup_equip_combination end #-------------------------------------------------------------------------- # ○ もう1度装備の初期化を行う [プライベートメソッド] #-------------------------------------------------------------------------- def setup_equip_combination init_equips(actor.equips) recover_all end #-------------------------------------------------------------------------- # ● 通常能力値の加算値取得 [オーバーライド/再定義] # param_id : パラメータID #-------------------------------------------------------------------------- def param_plus(param_id) if param_id < 8 n = equips.compact.inject(super) {|r, item| r += item.params[param_id] } else n = super + get_equips_param(param_id) end n += equip_combination_bonus(param_id) if $rgsslab["装備組み合わせボーナス"] return n end #-------------------------------------------------------------------------- # ○ 装備組み合わせボーナス # param_id : パラメータID #-------------------------------------------------------------------------- def equip_combination_bonus(param_id) result = 0 equip_flag = [] for earray in RGSSLAB_049::IDS.keys equip_flag.clear for warray in earray[0] if weapons.include?($data_weapons[warray]) equip_flag.push(true) else equip_flag.push(false) end end for aarray in earray[1] if armors.include?($data_armors[aarray]) equip_flag.push(true) else equip_flag.push(false) end end next if equip_flag.include?(false) if RGSSLAB_049::IDS[earray][param_id] != nil result += RGSSLAB_049::IDS[earray][param_id] end end return result end private :setup_equip_combination end end