ページ 11

(解決済み)【RGSS3】能力値はそのままで任意の数だけレベルを下げるアイテム

Posted: 2016年4月20日(水) 05:00
by mao
こちらは初めて利用させていただきます。
表題の件ですが、
能力値はそのまま、若しくは指定の変数に値を一時的に逃し、指定した数の分だけレベルのみ下げる
といった効果を持つアイテムが欲しいと思い投稿させていただきました。

職業の変更で同上の効果を持つスクリプトはありましたが、それぞれのキャラクターに該当した職業で固定させているのとアクターの指定が出来なかった為、そちらの使用は断念しました。

使用ツールは【RPGツクールVX Ace】です。

もし作成して頂ける方がいらっしゃいましたら是非ともよろしくお願い致します。

Re: 【RGSS3】能力値はそのままで任意の数だけレベルを下げるアイテム

Posted: 2016年4月20日(水) 06:35
by TOMO
こんな感じですか?

コード: 全て選択

class Game_Actor
  attr_accessor   :temp_level
  #--------------------------------------------------------------------------
  # ● 一時保存レベルの取得
  #--------------------------------------------------------------------------
  def temp_level
    @temp_level = [] unless @temp_level
    @temp_level[@class_id] = @level unless @temp_level[@class_id]
    @temp_level[@class_id] = @level if @temp_level[@class_id] < @level
    @temp_level[@class_id]
  end
  #--------------------------------------------------------------------------
  # ● 通常能力値の基本値取得
  #--------------------------------------------------------------------------
  alias tomo_temp_level_param_base param_base
  def param_base(param_id)
    if @level < temp_level
      self.class.params[param_id, [@level, temp_level].max]
    else
      tomo_temp_level_param_base(param_id)
    end
  end
end
※アクターの指定について
アイテムの使用効果に「コモンイベント」を追加し、
そのコモンイベントで

コード: 全て選択

$game_variables[1] = $game_party.target_actor.id
とすればアクターIDが変数ID:1に入るので、
あとの処理はイベントコマンドで作って下さい

Re: 【RGSS3】能力値はそのままで任意の数だけレベルを下げるアイテム

Posted: 2016年4月20日(水) 10:38
by mao
>>TOMOさん
ありがとうございます!
思っていた通りのものが出来ました。
是非使わせていただきます。