この記事は古い可能性があります
ブロック等にコマンドを埋め込んで、様々なことができる「ScriptBlock」プラグイン。
今回は、そんな便利な「ScriptBlock」について解説します。
ScriptBlockとは
このプラグインは、ブロック等にコマンドをあらかじめ埋め込んで置き、そのブロックを叩いたり踏んだりした際にコマンドを実行することができるプラグインです。
例えば、アイテムを付与するコマンドを埋め込んでおくことで、イベントなどの運営を円滑に行ったりすることができます。
導入
ScriptBlockは単体では動作せず、下記2種のプラグインが必須となっています。
基本コマンド
ScriptBlockは、下記2つの発動条件があります。
コマンド | 条件 |
sbinteract | ブロックがたたかれたとき |
sbwalk | ブロックの上を通過したとき |
上記2条件に加えて、下記4つの基本コマンドを使用します
コマンド | 動作 |
create | コマンドの埋め込み作成 |
add | コマンドを追加 |
remove | コマンドを削除 |
view | 埋め込まれているコマンドを確認 |
Permissionsについて
ScriptBlockのコマンドを実行するには下記2つの権限がないと実行できないので注意しましょう。
コマンド | Permissions |
sbinteract | scriptblock.interact.use |
sbwalk | scriptblock.walk.use |
コマンドを埋め込んでみる
では実際にコマンドを埋め込んでみましょう。
コマンドを埋め込む場合は、「@command」を使用します。
下記は、ブロックがたたかれた時に「time set」コマンドを実行する例です。
/sbinteract create @command /time set 0
さらにコマンドを追加する場合は、「add」で追加します。
/sbinteract add @command [コマンド]
OPコマンドを埋め込む際の注意
OPコマンドに限りませんが、埋め込んだコマンドのパーミッションがなければ基本的に実行に失敗します。
しかしながら、OPコマンドは「@command」の代わりに「@bypass」を使用することで実行が可能となります。
ただし、埋め込みはOP権限を持っている人のみなので注意しましょう。
その他オプション
ScriptBlockでは、ただコマンドを埋め込むだけでなく、クールタイムを設定したり自動でコマンドを削除したりと様々なオプションコマンドも用意されています。
コマンド | 効果 |
@say [text] | コマンド実行者が[text]を発言します |
@player [text] | コマンド実行者にのみ[text]を表示します |
$cost:[cost] | [cost]分のお金を消費します ※iConomyなどのお金の概念プラグイン必須 |
$item:[itemId] | [itemId]のアイテムを消費します |
@group:[group] | [group]に所属している人のみ使用が可能 |
@cooldown:[time] | [time]分間使用不可にします |
@delay:[time] | [time]秒間使用不可にします。 後続にコマンドを追加すると x秒後に発動という使い方ができます。 |
@amount:[n] | [n]回使用後に自動削除 |
<player> | 実行したプレイヤー名を取得 |
使用例
下記は、コマンド実行者が「Hi」といったのちに自分の名前を発言するコマンドです。
/sbinteract create @say Good
/sbinteract add @say:<player>
下記は、お金を10消費して「Hi」と発言し、クールタイム5分を設定するコマンドです。
/sbinteract create [&cost:10] [@say Hi!] [@cooldown:5]
コメント