装備武器によってスキルの使用を制限させる(武器属性の設定) |
|
RPGツクール2000や2003では、特定の武器を装備した時のみ使用できるスキルを設定するために、「武器属性」というのがありましたが、RPGツクールXPには、これがありません。
ですので、RPGツクールXPで武器属性を用意する方法を紹介します。
|
まず、データベースの属性欄にて、武器属性にしたい属性を設定します。
このとき、「火」「水」などの一般的な属性(RPGツクール2000、2003における魔法属性)とは離しておくと、後日、属性を追加したい時の修正作業が楽になります。
また、武器属性、一般属性ともに、それぞれひとまとめにしておくと設定が楽です。
例として、以下のように設定してみます。

データベースの武器欄、スキル欄にて、武器とスキルを設定していきます。一般的な属性と同様に、必要に応じて武器属性用の属性にチェックをいれてください。
※事前に、必ずスクリプトのバックアップを!!
このままですと武器属性用の属性は、その他の属性と何の違いもありませんので、スクリプトで、武器属性として認識するように設定します。
まず、スクリプトエディタを開き、武器属性設定用のセクションを追加します。
場所は、「Main」セクションの前あたりがいいでしょう。セクションの追加は、「右クリック→挿入」で行えます。セクション名は何でもいいですので、自分が分かりやすい名前をつけてください。
例では、「Weapon_Elements」という名前にしてあります。

次に、セクション内にスクリプトを記述します。
以下のスクリプトを、そのままコピーしてください。
# 属性 1〜10 を武器属性として扱う
class Game_Actor < Game_Battler
def skill_can_use?(skill_id)
if not skill_learn?(skill_id)
return false
end
set = $data_skills[skill_id].element_set & [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
if set != [] and self.element_set & set == []
return false
end
return super
end
end |
属性のうち、ID:001〜ID:010を武器属性として認識させるスクリプトです。
認識させたいIDを変えたい場合は、赤字の部分をそのIDに修正してください。
ちなみに、スクリプトエディタにコピーすると、こんな感じになります。

以上の設定で、武器属性が用意できます。
なお、紹介したのは、あくまでも基本的な設定方法ですので、スクリプトの知識がある方は、より使いやすいように改造してお使いください。 |
|