まるちゃん 2019/12/12 09:16

装備のアップグレードを修正

装備アップグレード.txt (装備アップグレード.txt) ダウンロード | VXace スクリプト 【 作成者:まるちゃん 】 | uploader.jp
https://ux.getuploader.com/Rpg_Maker_VXace_Maruchan_Uploard/download/55

SceneManager.call(Scene_Upgrade) で強化画面を呼び出す

能力値自由設定.txt (能力値自由設定.txt) ダウンロード | VXace スクリプト 【 作成者:まるちゃん 】 | uploader.jp
https://ux.getuploader.com/Rpg_Maker_VXace_Maruchan_Uploard/download/59


能力値自由設定に致命的なバグ?が発見されました
バグじゃないと言い切って仕様ですと言うこともできました
それは装備の指す level とアクターの level が競合するという問題です
このレベルはプログラム上アクターの level として判別してました
なので最初区別するために <GrowATK 2.5> のようにして解決を図りました
こうすると EquipItems の params を変更するだけにとどまります
すべての能力値を装備の level で設定することができません
なので割り切って考えて装備の場合は level は装備を指すこととしました
装備アップグレードを導入しない場合はその限りではありません

最初は eval を Game_BattlerBase ではなくて
EquipItems で評価をしてほしかったのですができませんでした
eval は最初の引数に文字列を2つ目の引数に binding を指定します
これがよくわからないのですが binding コマンドがあるみたいです
なので EquipItems に以下のメゾットを追加しました

class RPG::EquipItem
  def bind
    binding
  end
end

以下のページが参考になりました
Ruby における Binding オブジェクトとは | UX MILK
https://uxmilk.jp/33886

評価するときに
f.respond_to?(:bind) で bind メゾットがある場合は2つめに引数を設定しました

eval に無限の可能性を感じます


装備アップグレードにシーンを作りたくなかったので
最初公開したときかなり使いづらい仕様になっていました
僕自身はこれでいいと思っていました
選択肢と新たなウィンドウを少し作って解決できると考えていたからです

それができなくて仕方なくシーンを作ったのですがやはり時間がかかりました
UI は才能がないとうまく作れない…
これが限界です


(2019/12/19)
保存したレベルアップのデータをロードできていないみたいだ
毎回データを作成すると面倒だからこれは早く治そう

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

月別アーカイブ

限定特典から探す

記事を検索