汎用条件

Last-modified: 2023-11-02 (木) 11:02:18

汎用的な条件を指定可能です。

例えば、メインレベルが40以上かつ、クエストXXをクリアしているなど複数の条件を組み合わせることができます。
この条件は以下で利用可能です。
・アイテム利用有無
・クエストを受ける時の条件
・ifコマンド
※今後需要があれば、セレクターでも指定可能とします。

構文

例:totalreinc>50&mainlevel<=20

これは「合計転生回数が50よりも大きいかつ、メインレベルが20以下」という意味になります。
上記のように

(キー名)(演算子)(値)

を「&」区切りで指定することで複数条件を指定可能です。(複数条件はAND条件になります。)
カンマ区切りではないので注意してください

利用できるキー名と演算子について

キー名意味演算子値の設定値
totalreinc合計転生回数演算子1参照数値を記載
swordreinc剣転生回数
bowreinc弓転生回数
magicreinc魔法転生回数
mainlevelメインレベル
swordlevel剣レベル
bowlevel弓レベル
magiclevel魔法レベル
clearquestクリア済みクエスト演算子2参照クエストをIDを記載。複数指定する場合は、+でつなげる。
例:quest1+quest2
doingquest実行中クエスト
tagタグタグ名を記載。複数指定する場合は、+でつなげる。
例:tag1+tag2
achievement取得済み実績実績IDを記載。複数指定する場合は、+でつなげる。
例:a1+a2
effectポーションエフェクトポーションエフェクトIDを記載。複数指定する場合は、+でつなげる。
IDについてはwikiの数値IDを参照。
例:1+3 -> 移動速度上昇かつ採掘速度上昇

演算子1

値の設定値が数値の場合は、以下の演算子が利用可能です。

演算子意味
=指定された値と等しい場合swordreinc=20 -> 剣の転生回数が20の場合
!=指定された値と等しくない場合mainlevel!=20 -> メインレベルが20でない場合
>指定された値よりも大きい場合bowlevel>20 -> 弓レベルが20よりも大きい場合
<指定された値よりも小さい場合magiclevel>10 -> 魔法レベルが10よりも小さい場合
>=指定された値以上の場合totalreinc>=100 -> 合計転生回数が100以上の場合
<=指定された値以下の場合magicreinc>10 -> 魔法転生回数が10以下の場合

演算子2

値の設定値が複数の文字列場合は、以下の演算子が利用可能です。

演算子意味補足
=指定されたリストを全て満たす場合clearquest=q1+q2 -> クエストq1とq2どちらもクリアしている場合
!=指定されたリストをいずれか満たさない場合tag!=tag1+tag2 -> タグtag1またはtag2のどちらかはまたは両方が未設定の場合。=の否定系が!=になります
:指定されたリストのうちいずれか満たす場合achievement:a1+a2 -> 実績a1またはa2を保持している場合
!:指定されたリストのうち全て満たさない場合doingquest!:q1+q2 -> クエストq1とq2どちらもクリアしていない場合。
クエストq1とq2のうち1つでもクリアしていたら、条件に当てはまらないものとする。
:の否定系が!:になります

利用方法

1. 指定した汎用条件をチャット欄に日本語で表示する。

/if show 汎用条件 <プレイヤー名>

例:/if show mainlevel>20&clearquest=q1+q2+q3 Namiken

2. アイテムの利用条件に設定する。
item系シート(item,food,food2,armor,weapon)のplugin値にif:汎用条件を設定する。
例: if:achievement:a1+a2&mainlevel>50

  • > 実績a1またはa2を保持しているかつ、メインレベルが50以上の場合だけ利用可能。
    plugin値で指定した場合、アイテムの説明欄には記載されないため必要に応じて自分で記載してください。

3. クエストを受ける時の条件
クエストシートのcondition列に汎用条件のみ記載する。

4. ifコマンドで利用する
 /if text 汎用条件 <プレイヤー名> command
例:/if text clearquest=q1 @p[r=5] tp 100 20 100

使用例

やりたいこと実績「浮世の砂海1回目」と「厄災1回目」をどちらも取得済みのプレイヤーのみが利用できるクエストを作成したい
やり方questシートのcondition列に以下を記載。
achievement=浮世の砂海1回目+厄災1回目


やりたいこと実績「浮世の砂海1回目」と「厄災1回目」をいずれかを取得かつ、メインレベルが50以上の場合に利用できるクエストを作成したい。
やり方questシートのcondition列に以下を記載。
achievement:浮世の砂海1回目+厄災1回目&mainlevel>=50


やりたいこと実績「Vambrila1回目」を取得している場合に利用できる剣を作成したい。
やり方weaponシートのplugin列に以下を記載。
if:achievement=Vambrila1回目