>> BACK


装備武器によってスキルの使用を制限させる(武器属性の設定)
 RPGツクール2000や2003では、特定の武器を装備した時のみ使用できるスキルを設定するために、「武器属性」というのがありましたが、RPGツクールXPには、これがありません。
 ですので、RPGツクールXPで武器属性を用意する方法を紹介します。


1. 属性の設定

 まず、データベースの属性欄にて、武器属性にしたい属性を設定します。
 このとき、「火」「水」などの一般的な属性(RPGツクール2000、2003における魔法属性)とは離しておくと、後日、属性を追加したい時の修正作業が楽になります。

 また、武器属性、一般属性ともに、それぞれひとまとめにしておくと設定が楽です。

 例として、以下のように設定してみます。

    



2. 武器とスキルに属性を設定する

 データベースの武器欄、スキル欄にて、武器とスキルを設定していきます。一般的な属性と同様に、必要に応じて武器属性用の属性にチェックをいれてください。




3. スクリプトで武器属性の設定をする

 ※事前に、必ずスクリプトのバックアップを!!

 このままですと武器属性用の属性は、その他の属性と何の違いもありませんので、スクリプトで、武器属性として認識するように設定します。

 まず、スクリプトエディタを開き、武器属性設定用のセクションを追加します。
 場所は、「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に修正してください。

 ちなみに、スクリプトエディタにコピーすると、こんな感じになります。

    



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



当ページに掲載されている文章、画像の無断掲載を固く禁じます。
"Alestian Story"および"RPGツクールXP"の仕様に関するご質問には、一切お答えできませんので、ご了承ください。

Alestian Story(C)2004 Shine Garden / ENTERBRAIN
(C)2004 ENTERBRAIN / YOJI OJIMA (C)2004 Xiph.Org Foundation Ruby(C)1993-2003 Yukihiro Matsumoto All Rights Reserved
License for SciTE(C)1998-2003 Neil Hodgson All Rights Reserved