【解決済】能力値入れ替えスクリプト

アバター
alan
記事: 63
登録日時: 2015年12月29日(火) 21:41
お住まい: 神奈川

【解決済】能力値入れ替えスクリプト

投稿記事by alan » 2019年5月24日(金) 20:02

やたら、リクエストが多いようですみません。


今回は、能力値を入れ替えるスクリプトが
見付からない様なので、リクエストします。
最後に編集したユーザー alan on 2019年5月25日(土) 21:32 [ 編集 1 回目 ]

ツクール2000からの、ツクラーです。
アバター
ムノクラ
記事: 577
登録日時: 2018年2月23日(金) 11:41
連絡を取る:

Re: 能力値入れ替えスクリプト

投稿記事by ムノクラ » 2019年5月24日(金) 20:33

既存のスクリプトを探すにも、要件が全く予想できないので、検索できません。
要望をもう少し詳しく書いてください。

状況は
・戦闘中、移動中
・アクター、敵
・どの能力値をどう入れ替えるのか
まったく想像できません。
最後に編集したユーザー ムノクラ on 2019年5月25日(土) 08:58 [ 編集 1 回目 ]
***
:!: 質問前に、過去ログを検索しましょう! :!:
:!: プラグインのエラーが出たらトリアコンタン様の記事を読もう!
https://qiita.com/triacontane/items/2e2 ... e9503a2c30
:!: 質問が解決できたら、スレッドタイトルに【解決】を追加しましょう!
:!: 自己解決した方は、解決した方法を書きましょう ;)

:arrow: プラグイン投稿・検索
https://plugin.fungamemake.com

:arrow: プラグイン翻訳等
https://fungamemake.com
アバター
alan
記事: 63
登録日時: 2015年12月29日(火) 21:41
お住まい: 神奈川

Re: 能力値入れ替えスクリプト

投稿記事by alan » 2019年5月24日(金) 22:50

戦闘中限定で
アクターの一つ目の能力の数値と、二つ目の能力の数値を
入れ替える感じです。

Rgss2に有る、置換ステートが近いかもしれません。
ツクール2000からの、ツクラーです。
faida
記事: 236
登録日時: 2015年12月17日(木) 16:44

Re: 能力値入れ替えスクリプト

投稿記事by faida » 2019年5月25日(土) 16:46

多分もうあると思いますが作ってみました。

コード: 全て選択

=begin
◆概要
別の能力値を参照する特徴を作成します。

◆機能
・武具ステートのメモ欄に<能力入れ替え m, n>と記入すると、能力値mと能力値nの値が
入れ替わります。(m,nは0=HP,1=MP,2=攻撃力,...)
・武具ステートのメモ欄に<能力参照 m, n>と記入すると、能力値mの値が能力値nの値に
なります。

◆仕様
・<能力入れ替え m, n>は<能力参照 m, n><能力参照 n, m>と同じです。
・複数武具ステートだった時、優先順位はよくわかりません。

◆使用上の注意
・★……エイリアス ○……新規定義
・スクリプトの導入位置によっては上手く反映されない場合があるので、なるべく
下の方に置くといいと思います。

◆作者:faida @faida3983

◆更新履歴
ver1.0 : 作成

=end

class RPG::BaseItem
  #--------------------------------------------------------------------------
  # ○ メモ取得
  #--------------------------------------------------------------------------
  def refer_param
    return @refer_param if @refer_param
    @refer_param = []
    note.each_line {|line|
      if line =~ /<能力入れ替え\s(\d+)\s*\,\s*(\d+)\s*>/
        @refer_param << [$1.to_i, $2.to_i]
        @refer_param << [$2.to_i, $1.to_i]
      elsif line =~ /<能力参照\s(\d+)\s*\,\s*(\d+)\s*>/
        @refer_param << [$1.to_i, $2.to_i]
      end
    }
    @refer_param
  end
end

class Game_BattlerBase
  #--------------------------------------------------------------------------
  # ○ 参照能力IDの取得
  #--------------------------------------------------------------------------
  def refer_param(param_id)
    obj = feature_objects.find{|o|o.refer_param.any?{|a|a[0] == param_id}}
    obj ? obj.refer_param.find{|a|a[0] == param_id}[1] : nil
  end
  #--------------------------------------------------------------------------
  # ★ 通常能力値の取得
  #--------------------------------------------------------------------------
  alias fai_refparam_param param
  def param(param_id)
    return fai_refparam_param(refer_param(param_id)) if refer_param(param_id)
    fai_refparam_param(param_id)
  end
end
攻撃力と防御力を変えたい時は<能力入れ替え 2, 3>でできると思います。
---------------------------------------------
自作の(改造でない)スクリプト素材に
関しては、リードミーもしくは作中に
「faida」と記名していただければ
利用可能です。
アバター
alan
記事: 63
登録日時: 2015年12月29日(火) 21:41
お住まい: 神奈川

Re: 能力値入れ替えスクリプト

投稿記事by alan » 2019年5月25日(土) 21:31

イメージ通りです、有難う御座います!


入れ替え、転換、置換、reverse等
色々検索してみたのですが、中々見当たらなかったですね :shock:
ツクール2000からの、ツクラーです。

“VX / Ace:スクリプト素材のリクエスト” へ戻る