QLOOK ANALYTICS
サイトマップ :

特徴欄拡張(RGSS3)
Ver1.00(2013/10/25)

どういったものに需要があるかなど
スクリプト製作の参考にしたいので,
いいね!と思ったスクリプトにクリックお願いします.

web拍手

概要

特徴欄の効果をある条件を満たすときのみ有効にすることができます.
このスクリプトはそのためのベーススクリプトです.
条件を付加するためには条件セットスクリプトを別途追加する必要があります.

位置

特に指定はありません.

スクリプト

中身をすべてコピーして,ツクールのスクリプトに新たなセクションを作成し,貼り付けてください.

更新履歴

  1. 2013/10/25…公開

使用方法

スクリプトに丸ごと貼り付けていただければ使用できます.

詳細設定にてフラグステートIDを設定してください.
フラグステートとは条件特徴の種類を表すためのステートです.
条件特徴とは普通の特徴とは異なり,それ以降の特徴の有効無効を判定するための条件となる特徴です.
ステート名は==条件初期化==などわかりやすい名前が良いでしょう.

INIT
条件初期化 ステートのID
ALL
全体攻撃化 ステートのID

特徴欄の各特徴の有効無効の判定は次のように行います.

  1. 1.条件変数satを真に初期化する
  2. 2.特徴欄を上から順番に走査する
  3. 3.次の特徴を走査したとき,条件特徴であれば4へ,普通の特徴であれば5へ,条件初期化特徴であれば6へ
  4. 4.条件特徴が真であれば次の特徴を走査するため3へ,偽であればsatを偽にした上で3へ
  5. 5.satが真なら特徴を有効に,偽なら無効にして次の特徴を走査するため3へ
  6. 6.satを真にして次の特徴を走査するため3へ

ようするに条件特徴を書くたびにその条件がフィルターとして追加され,条件初期化特徴によってのみフィルターが初期化されるということです.

条件特徴の設定仕様は2種類あります.

「ステート無効化」にフラグステートIDを指定する
フラグステートの条件判定が真偽値の場合に用います.
たとえば「バトラーがアクターかどうか」などです.
「ステート有効度」にフラグステートIDと値を指定する
フラグステートの条件判定が値の場合に用います.
たとえば「バトラーのTPが20以上」などです.

例・TPが50以上の場合全体攻撃化.HPが50%以上かつMPが職業IDが1なら攻撃力上昇の特徴欄
(☆がついている特徴が条件特徴となります)

☆ステート有効度 [==TP以上==] * 50%
 ステート無効 [==範囲全体化==]
☆ステート無効 [==条件初期化==]
☆ステート有効度 [==HP%以上==] * 50%
☆ステート有効度 [==職業ID==] * 1%
 通常能力値 [攻撃力] * 150%
条件セット:ベースの条件特徴
フラグステート タイプ 説明
INIT ステート無効化 この条件特徴によりすべての条件が初期化されます.
ALL ステート無効化 おまけです.
この条件特徴のみ特別で,普通の特徴として振舞います.
この特徴が有効になる場合,そのバトラーの通常攻撃およびスキルの効果範囲が全体になります.

その他の条件特徴は別途条件セットを追加することで設定できます.
また,条件セットのスクリプトを見て頂ければわかると思いますがRubyの知識が多少あれば容易にオリジナルの条件セットを追加することが可能です.

注意

このスクリプトでは「Game_BattlerBase」「Game_Action」のメソッドを改変しています.

Valid XHTML 1.0 Transitional