ページ 11

【解決済】成長に応じてパラメータが上がる装備を作りたい

Posted: 2020年1月24日(金) 22:25
by Rito
初めまして、Ritoと申します。
早速ですが、ひとつ質問させてください。

トリアコンタン様制作の「動的データベース構築プラグイン」を利用し、
アクターの能力値の成長に応じてパラメータが上昇する武器を作りたいと考えています。
とりあえずアクター1の攻撃力に応じて武器の攻撃力を上げようと思い、
武器のメモ欄に<DD攻撃力:$gameActors.actor(1).atk/3>を入力してテストプレイしたところ
武器を装備した際に「RangeError Maximum call stack size exceeded」のエラーが出てしまいました。
おそらく武器を装備したことで攻撃力の値が変わり、エラーが発生したと思うのですが
現状の対処法が武器を装備する前の能力値を取得する計算式を見つけることしか浮かびません。
この場合、メモ欄のどこをどう書き直すとよいのでしょうか。
また、武器や防具・アイテム等を装備する前の能力値(いわゆるアクターの素の能力値)を取得する方法はあるのでしょうか。
恐れ入りますが、ご教授いただけると幸いです。

Re: 成長に応じてパラメータが上がる装備を作りたい

Posted: 2020年1月24日(金) 22:39
by 剣崎 宗二
武器を装備した際に「RangeError Maximum call stack size exceeded」のエラーが出てしまいました。
おそらく武器を装備したことで攻撃力の値が変わり、エラーが発生したと思うのですが
ご推察の通り、このエラーはいわゆる「無限ループが発生している」エラーで、そのキャラクターの(最終)攻撃力を計算するのに(最終)攻撃力を参照して(式に入れて)いる、という事に由来します。
また、武器や防具・アイテム等を装備する前の能力値(いわゆるアクターの素の能力値)を取得する方法はあるのでしょうか。
$gameActors.actor(1).atk

$gameActors.actor(1).paramBase(2)
をお試しください。

Re: 成長に応じてパラメータが上がる装備を作りたい

Posted: 2020年1月24日(金) 22:56
by Rito
早速の返信、ありがとうございます。
教えていただいたとおりに計算式を設定したところ、正常に動作しました。
これで解決済みといたします。本当にありがとうございました!