使用方法
スクリプトに丸ごと貼り付けていただければ使用できます.
装備修理画面を呼び出すことで,装備の修理を行うことができます.
装備修理画面を呼び出すにはマップ画面でイベントのスクリプトから以下の式を実行します.
ED.call_repair_equipment
デフォルトでは修理にお金を消費しますが,引数に整数を渡すことでそのIDに対応する変数の値を消費して修理することができます.
例・変数001を消費して装備を修理する
ED.call_repair_equipment(1)
また,耐久度を変化させた武器,防具の入手についてはそれぞれイベントのスクリプトから以下の式を実行します.
ED.gain_durability_weapon(id, durability, amount)
ED.gain_durability_armor(id, durability, amount)
上記メソッドの引数は装備のID,設定耐久度,入手個数を引数に指定します.
詳細設定にて装備耐久度の設定を行うことができます.
- ENABLE_DURABILITY
- 装備の耐久度が有効かどうかのデフォルトの設定です
以下の設定では耐久度によるアイテムの性能を求めるための式を設定します.
evalで評価されるためRubyの通常の式を描くことができます.
このとき,対象の装備のパラメータを参照することができます.
各種評価式中で使える特殊な変数
変数 |
説明 |
dur |
アイテムの現在の耐久度 |
mdur |
アイテムの最大耐久度 |
price |
オリジナルのアイテムの価格 |
atk |
オリジナルのアイテムの攻撃力の上昇値 |
_def |
オリジナルのアイテムの防御力の上昇値 |
mat |
オリジナルのアイテムの魔法力の上昇値 |
mdf |
オリジナルのアイテムの魔法防御力の上昇値 |
agi |
オリジナルのアイテムの敏捷性の上昇値 |
luk |
オリジナルのアイテムの運の上昇値 |
mhp |
オリジナルのアイテムの最大HPの上昇値 |
mmp |
オリジナルのアイテムの最大MPの上昇値 |
etype_id |
アイテムの装備タイプID |
id |
アイテムのid |
- REPAIR_PRICE
- 装備修理にかかる費用の式(お金の時)
- REPAIR_POINT
- 装備修理にかかる費用の式(変数の時)
- PRICE
- 装備の価格の式
- SUC
- 強化成功率の式
- ATK
- 攻撃力上昇値の式
- DEF
- 防御力上昇値の式
- MAT
- 魔法力上昇値の式
- MDF
- 魔法防御力上昇値の式
- AGI
- 敏捷性上昇値の式
- LUK
- 運上昇値の式
- MHP
- 最大HP上昇値の式
- MMP
- 最大MP上昇値の式
- DEFAULT_DURABILITY
- 耐久度の初期値
- MAX_DURABILITY
- 最大耐久度
- REPAIR_DURABILITY
- 修理後の耐久度
- DESTROY
- trueのとき耐久度が0になると装備が破棄されます
- PENALTY
-
修理に失敗したときのペナルティを設定します.
ペナルティには以下の種類から選択します.
- :none
- ペナルティなし
- :break
- 装備の破壊
- (自然数)
- 耐久度が(自然数)になる
- DISPLAY_SUCCESS
- 装備強化画面で強化成功率を表示するか
- DISPLAY_PENALTY
- 装備強化画面でペナルティを表示するか
- POINT_UNIT
-
変数を消費して修理する時の通貨単位?です.
キー:defaultにはデフォルトの単位を指定します.
自然数をキーにして単位を設定すると,そのIDの変数を利用する時その単位が表示されます.
- BROKEN_MESSAGE
- trueのとき戦闘中装備が壊れた旨を表示します
- MESSAGE_FMT
-
装備破壊時に表示されるメッセージです.
アクターの名前,装備名が置換されます
- DEGRADE_EXPS
-
後述するダメージイベントを利用して耐久度を変動させる場合に使用する耐久度減少式です.
任意のキーに対して式を文字列で設定し,装備耐久度イベント内で設定したキーを指定します.
このとき,対象の装備のパラメータおよび各種ダメージイベントで参照可能な情報を参照することができます.
耐久度減少式中で使える特殊な変数
変数 |
説明 |
dur |
アイテムの現在の耐久度 |
mdur |
アイテムの最大耐久度 |
price |
オリジナルのアイテムの価格 |
atk |
オリジナルのアイテムの攻撃力の上昇値 |
_def |
オリジナルのアイテムの防御力の上昇値 |
mat |
オリジナルのアイテムの魔法力の上昇値 |
mdf |
オリジナルのアイテムの魔法防御力の上昇値 |
agi |
オリジナルのアイテムの敏捷性の上昇値 |
luk |
オリジナルのアイテムの運の上昇値 |
mhp |
オリジナルのアイテムの最大HPの上昇値 |
mmp |
オリジナルのアイテムの最大MPの上昇値 |
etype_id |
アイテムの装備タイプID |
id |
アイテムのid |
ダメージイベントの各種変数 |
subject, target などタイプによる |
- DRAW_GAUGE
- trueの時装備アイコンに耐久度ゲージを描画します
- GAUGE_MAX_DURABILITY
-
ゲージが最大になる耐久度です.
装備の最大耐久度より小さくすることで例えば耐久度120%の装備などを表現することができます.
- GAUGE_EDGECOLOR
- ゲージの縁の色(nilで描画しません)
- GAUGE_BACKCOLOR
- ゲージの背景色(nilで描画しません)
- GAUGE_COLOR
- ゲージの色
- GAUGE_MAXCOLOR
- ゲージ最大時の色
- GAUGE_OVERCOLOR
- ゲージ限界突破時の色
- BROKENCOLOR
- 耐久度が0のときの装備名の文字色(nilで変更しません)
以下の設定では装備修理画面で鳴らす効果音を指定できます.
- REPAIR_SOUND
- 修理実行時効果音のファイル名
- REPAIR_VOLUME
- 修理実行時効果音のボリューム
- REPAIR_PITCH
- 修理実行時効果音のピッチ
- SUCCESS_SOUND
- 修理成功時効果音のファイル名
- SUCCESS_VOLUME
- 修理成功時効果音のボリューム
- SUCCESS_PITCH
- 修理成功時効果音のピッチ
- MISS_SOUND
- 修理失敗時効果音のファイル名
- MISS_VOLUME
- 修理失敗時効果音のボリューム
- MISS_PITCH
- 修理失敗時効果音のピッチ
また,アイテムのメモ欄にてアイテムごとに耐久度の設定を行うことができます.
==装備耐久度EnableDurability:xxx==
xxxにtrueかfalseを指定して,耐久度のあるアイテムかどうか設定します.
==装備耐久度RepairPrice:xxx==
お金による修理費用の式を設定します.
==装備耐久度RepairPoint:xxx==
変数による修理費用の式を設定します.
==装備耐久度Price:xxx==
価格の式を設定します.
==装備耐久度Success:xxx==
修理成功率の式を設定します.
==装備耐久度Atk:xxx==
攻撃力の式を設定します.
==装備耐久度Def:xxx==
防御力の式を設定します.
==装備耐久度Mat:xxx==
魔法力の式を設定します.
==装備耐久度Mdf:xxx==
魔法防御力の式を設定します.
==装備耐久度Agi:xxx==
敏捷性の式を設定します.
==装備耐久度Luk:xxx==
運の式を設定します.
==装備耐久度MaxHP:xxx==
最大HPの式を設定します.
==装備耐久度MaxMP:xxx==
最大MPの式を設定します.
==装備耐久度DefaultDurability:xxx==
初期耐久度を設定します.
==装備耐久度MaxDurability:xxx==
最大耐久度を設定します.
==装備耐久度RepairDurability:xxx==
修理成功時の耐久度を設定します.
==装備耐久度GaugeMax:xxx==
ゲージの最大耐久度を設定します.
==装備耐久度Destroy:xxx==
xxxにtrueかfalseを指定して耐久度が0になったとき装備が破棄されるか設定します.
==装備強化Penalty:xxx==
ペナルティを設定します.
xxxにはbreak,none,(自然数)のいずれかを指定します.
ダメージイベントを利用した耐久度の減少
基本的にはダメージイベントのコモンイベントの作り方と同様ですが,以下の点が異なります.
- 一行目の注釈
- ==装備耐久度イベント:%types%:%timing%==
- 条件注釈の最後に耐久度変動注釈を追加
-
耐久度変動#%args%
%args%は以下のフォーマットで置き換えます.
:actor => xxx, :exp => xxx, %オプション% => xxx, ...
- :actor
-
耐久度の影響を受けるアクター,もしくはアクターの配列を指定します.
- :exp
-
DEGRADE_EXPSのキーを指定します.
この式の評価結果の分だけ耐久度が減少します.
%オプション%は無くても構いませんが,設定するとより影響を受ける装備についてより細かい設定を行うことができます.
%オプション%には以下の項目があります.
- :slot_id
-
装備のスロットIDもしくはスロットIDの配列で指定します.
ここで指定したスロットIDの装備のみ耐久度が変動します.
省略すると全てのスロットIDの装備耐久度が減少します.
- :equip_type
-
装備タイプIDもしくは装備タイプIDの配列で指定します.
ここで指定した装備タイプIDの装備のみ耐久度が変動します.
省略すると全ての装備タイプIDの装備耐久度が減少します.
- :id
-
装備のアイテムIDもしくはアイテムIDの配列で指定します.
ここで設定したアイテムIDの装備の耐久度が変動します.
省略すると全てのアイテムIDの装備耐久度が変動します.
耐久度変動注釈は%args%の途中に改行が入っても構いません.
これらの違い以外はダメージイベントと同じ挙動をするので,ダメージイベントの条件注釈および耐久度変動注釈でうまく条件を設定し,装備の耐久度を減少させます.
また,装備耐久度イベントのイベント内容自体も実行されます.
例・ID001のスキルを使用されたアクターの防具(装備タイプ1,2,3,4)に対して,耐久度減少式:armorを適用する
注釈:==装備耐久度イベント:HP:表示前==
注釈:action.id == 1
注釈:耐久度変動#:actor => target, :exp => :armor,
:equip_type => [1,2,3,4]