コマンド/entityEffect

Last-modified: 2022-02-02 (水) 23:55:43

What is This?

Entityに対して特殊効果を与えるコマンド。

How to Use?

基本的に以下のような文法でコマンドを記載する。

/entityEffect <操作> <対象(entitySelector)> <引数1> <引数2....> [パラメータ]

引数とパラメータは操作によって指定するものが変わる。
パラメータは以下の通りの形式で指定する。

-name value
または
-name

entityを指定方向に移動させる

構文/entityEffect vector <entitySelector> <方向> <強さ> [パラメータ]
説明Entityを指定方向に移動させる。
■<entitySelector>:selectorでEntityを指定する。@は省略する。
■<方向>:下表参照。
■<強さ>:移動する強さを指定する。マイナスを指定すると逆方向に移動する。少数で指定する。
■<パラメータ>:下表参照。
備考

■方向について

構文説明
entity:<selector>指定したEntityがいる方向を与える。<selector>は@を省略する。entity:p[r=20,entityTag=test]。半径20マス以内でtestというタグが付いたプレイヤーの方向に移動するような方向を与える。
pos:<w:x,y,z>指定した座標へ向かうような方向を与える。相対座標も指定可能。pos:dungeon:200,10,30。座標(200,10,30)へ向かうような方向を与える
vector:<x,y,z>指定した方向を与える。jumpboostを同じような動きをする。vector:1,2,1。(1,2,1)方向を与える。
direction:selector指定したEntityが向いている方向を与える。<selector>は@を省略する。direction:e[r=200,boss=testBoss]。testBossが向いている方向を与える。

■パラメータについて

パラメータ名説明設定値デフォルト値
noSlow一定時間減速しなくなる。なしなし
yaw指定した方向に対してXZ方向の角度を与える。例えば90を指定した場合、指定方向から90°回転した方向に移動する。-360~360の整数。0
recalc方向を再計算して与え続ける。例えば指定したEntityがいる方向を与えこのパラメータを付与した場合、指定したEntityを追尾するようになる。なしなし
time効果適応時間を指定する。指定しない場合、そのEntityが存在する限り効果を適用させ続ける。効果適用時間を秒で指定。なし
tag効果を与えたEntityにtagを付ける。複数指定する場合は「,」で区切るタグ名なし
lifespanEntityが何秒後に死ぬかを設定する。コマンド実行後、この秒数が経過したらEntityは削除される。Entityの寿命永年

■例
ゾンビを指定したプレイヤーのもとに少しづつ引き寄せ続ける

/entityEffect vector e[type=Zombie,r=20] r[r=30] 0.1 -recalc
※recalcを指定しているため、2チックごとに現在のプレイヤーの方向に移動する

Entityにあたり判定を付ける

構文/entityEffect collision <entitySelector> <ダメージ> [パラメータ]
説明entityにプレイヤーへのあたり判定を付ける。
■<entitySelector>:selectorでEntityを指定する。@は省略する。
■<ダメージ>:衝突時のダメージを指定する。
備考

■パラメータについて

パラメータ名説明設定値デフォルト値
mobspell衝突時にmagicSpellIdを発動する場合はmagicSpellIdを指定する。mobSpellIdなし
rangeあたり判定の半径。半径を少数で指定する。1.5
removeIfHitあたり判定を検出した場合、Entityを削除する。なしなし
time効果適応時間を指定する。指定しない場合、そのEntityが存在する限り効果を適用させ続ける。効果適用時間を秒で指定。なし
cooltimeプレイヤーごとのダメージをあたえる間隔(秒)を設定する。0.5秒の無敵時間があるため0.5以下を指定できない。ダメージ間隔(秒)0.6
tag効果を与えたEntityにtagを付ける。複数指定する場合は「,」で区切るタグ名なし
lifespanEntityが何秒後に死ぬかを設定する。コマンド実行後、この秒数が経過したらEntityは削除される。Entityの寿命永年

Entityが発射物を発射する

構文/entityEffect shotEntity <entitySelector> <発射物> [パラメータ]
説明Entityがものを発射する。
■<entitySelector>:selectorでEntityを指定する。@は省略する。
■<発射物>:下表参照。
■<パラメータ>:下表参照。
備考

■発射物
以下のいずれかを指定する。

指定物説明ダメージ判定
Arrowあり
Eggあり
EnderPearlエンダーパールなし
LargeFireball大きい火の玉。ガストの攻撃あり
SmallFireball小さい火の玉。ファイヤーチャージあり
WitherSkullウィザーの頭あり
Snowball雪玉あり
ThrownExpBottle経験値瓶なし
ThrownPotionポーション。効果はなし。EntityDataコマンドで頑張れば効果つけられる?なし

■パラメータについて

パラメータ名説明設定値デフォルト値
yaw指定した方向に対してXZ方向の角度を与える。例えば90を指定した場合、指定方向から90°回転した方向に移動する。-360~360の整数。0
power発射速度を指定する数値1
vector発射物が飛ぶ方向を指定する「entityEffect vector 」の「■方向について」を参照発射者が向いている方向
loc発射開始位置を指定する。相対座標を指定した場合は起点は発射者になる。giコマンドの座標の指定方法を参照発射者の座標
damage命中した際に与えるダメージ。防具貫通ではなく、防具の効果でダメージが軽減される。このパラメータを指定しない場合はmobの通常攻撃同様のダメージを与える。少数発射mobの攻撃力
mobspell命中した際に発動するmagicSpell。カンマ区切りで複数指定可能。mobSpellIdなし
executeMobskill発射物の発射を通常攻撃判定にして、通常攻撃同様にmobに登録されているmobskillを実行する。このパラメータが指定されていない場合はmobskillは発動しないなしなし
tag発射した発射物にtagを付ける。複数指定する場合は「,」で区切るタグ名なし

■例文

/entityeffect shotEntity e[r=100,type=Zombie] Arrow -vector vector:-1,0,0 -loc dungeon:~,~1,~
/entityeffect shotEntity e[r=100,type=Zombie] Egg -tag egg123 -power 2