#============================================================================== # ひきも記SRPG改:バグフィクス01 経験値のバグの修正 # # ひきも記さんのSRPGのバグを修正するスクリプトです。 # 撃破時の経験値が、パーティで5人目以降のキャラに # 出撃していても付与されないバグを修正しました。 # # ▼注意! # データベース、システム、オプションの「控えメンバー # も経験値を獲得」に必ずチェックを入れてください。 # ここのチェックが外れていると、本スクリプトを導入 # しても、経験値が正常に付与されません。 # # # ▼導入位置 # ひきも記さんのSRPGスクリプトより下に導入してください。 #  # # 利用規約 #  連絡不要 #  商用可 # 改造可 # 再配布可(無改造の場合はクレジットを消さないでください) # アダルト可 #  利用された際、クレジットはあると喜びます  # GYM # http://gymaterials.jp/ # #============================================================================== # ■ Game_SrpgEvent #------------------------------------------------------------------------------ #  イベントを扱うクラスです。条件判定によるイベントページ切り替えや、並列処理 # イベント実行などの機能を持っており、Game_SrpgMap クラスの内部で使用されます。 #============================================================================== class Game_SrpgEvent < Game_SrpgCharacter #-------------------------------------------------------------------------- # ● 撃破時のリワード獲得 #-------------------------------------------------------------------------- def gain_reward(attacker = nil) exp = battler.exp $game_party.all_members.each do |actor| if attacker && attacker.actor? && actor.id == attacker.battler.id actor.gain_exp((exp * TMSRPG::EXP_ATTACKER_RATE).to_i) elsif $game_srpgmap.actor_in_battle?(actor.id) actor.gain_exp((exp * TMSRPG::EXP_BATTLER_RATE).to_i) else actor.gain_exp((exp * TMSRPG::EXP_PARTY_RATE).to_i) end end $game_party.gain_gold(battler.gold) x = @real_x + 0.5 y = @real_y battler.make_drop_items.each do |item| $game_party.gain_item(item, 1) $game_srpgmap.add_popup(x, y, "+" + item.name, 17, :reward) y -= 0.5 end end end