エリートスクリプトゾーン
ゾーンは形状によって定義された場所で、スクリプト作成者があらゆるアクションを実行するためのターゲットとして使用できます。
スクリプトごとに設定できるゾーンは1つだけです。
ゾーンをターゲットにするには、ターゲットタイプ ZONE_FULL または ZONE_BORDER を使用できます。
ゾーン自体も、どこに出現するかを定義するためにスクリプトターゲットを使用します。
shape
ゾーンの形状を設定します。有効な形状:
| 形状タイプ | 詳細 | アニメーション対応 | ボーダー |
|---|---|---|---|
CYLINDER | 円柱形 | ❌ | ✅ |
SPHERE | 球形 | ❌ | ✅ |
DOME | ドーム形(半球) | ❌ | ✅ |
CUBOID | 直方体形 | ❌ | ✅ |
STATIC_RAY | 2点間の固定線 | ❌ | ❌ |
ROTATING_RAY | 2点間の回転線 | ✅ | ❌ |
TRANSLATING_RAY | 2つの初期点から2つの終点へ移動する線 | ✅ | ❌ |
CONE | 円錐形 | ❌ | ✅ |
アニメーション対応
アニメーション付きゾーンはスクリプトが最初に呼び出されたときにゾーンアニメーションを開始します。
つまり、アクションに待機時間がある場合、そのアクションが始まる時点で、待機している間にもゾーンはすでに動き回っているということです。
ゾーンは常に毎ティックでアニメーションします。つまり SPAWN_PARTICLES アクションを使う場合、ゾーンが毎ティック動いているので毎ティック実行するように設定できます。1秒ごとに実行した場合は、パーティクルが生成されなかったティックの間もゾーンが動き続けているため、パーティクルが飛び飛びに見えます。
回転するゾーンのアクションを作りたいけれど、アクションを開始する前に一定のティック数だけ待機させたい場合は、それを別のスクリプトにして RUN_SCRIPT で呼び出してください。RUN_SCRIPT 側に希望の待機時間を設定するのを忘れないでください。
ゾーンはアニメーションが完了すると最終位置に留まります。
余分な動きがあるとスクリプト作成者にもプレイヤーにも理解しづらくなるため、アニメーション対応のゾーンはすべてスクリプトターゲットを追跡しない設定になっています。つまりこれらのゾーンはボスやプレイヤーを追いかけず、常に最初のスポーン地点を基準にして動きます。
ボーダー
一部のゾーンはボーダーを持てます。ボーダーがあるということは、そのゾーンのターゲットとして ZONE_BORDER を使えるということです。ボーダーは、大きい方の形状の内側に2つ目の小さい形状を作ることで定義されます。小さいゾーンと大きいゾーンの間の領域がボーダーです。
例
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Zone:
shape: CYLINDER
radius: 4
borderRadius: 3
height: 8
Target:
targetType: SELF
Actions:
- action: SPAWN_PARTICLE
particles:
- particle: SMOKE_LARGE
Target:
targetType: ZONE_BORDER
repeatEvery: 5
times: 20

このスクリプトは、5秒間(repeatEvery 5 × times 20 = 100ティック)ゾーンのボーダーにのみ現れる煙のパーティクルを生成します。
ZONE_BORDER オプションではなく ZONE_FULL オプションを使った場合は、次のようにゾーン全体が煙のパーティクルで覆われます。

SPHERE
| キー | 詳細 | 必須 |
|---|---|---|
shape | ゾーンの形状を設定します。SPHERE にします | ✅ |
target | 球の中心となる位置を設定します | ✅ |
filter | どの種類のエンティティを対象にするかを設定します | ❌ |
radius | 球の半径 | ✅ |
borderRadius | 内側の球の半径 | ❌ |
例
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Zone:
shape: SPHERE
radius: 4
borderRadius: 3
Target:
targetType: SELF
Actions:
- action: SPAWN_PARTICLE
particles:
- particle: CLOUD
Target:
targetType: ZONE_FULL
repeatEvery: 5
times: 20

このスクリプトは雲パーティクルを使用して球の形状を示しています。
DOME
| キー | 詳細 | 必須 |
|---|---|---|
shape | ゾーンの形状を設定します。DOME にします | ✅ |
target | ドームの中心となる位置を設定します | ✅ |
filter | どの種類のエンティティを対象にするかを設定します | ❌ |
radius | ドームの半径 | ✅ |
borderRadius | 内側のドームの半径 | ❌ |
例
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Zone:
shape: DOME
radius: 4
borderRadius: 3
Target:
targetType: SELF
Actions:
- action: SPAWN_PARTICLE
particles:
- particle: CLOUD
Target:
targetType: ZONE_FULL
repeatEvery: 5
times: 20

このスクリプトは雲パーティクルを使用してドームの形状を示しています。
CONE
| キー | 詳細 | 必須 |
|---|---|---|
shape | ゾーンの形状を設定します。CONE にします | ✅ |
target | 円錐の頂点(先端)となる位置を設定します | ✅ |
target2 | 円錐の底面の中心となる位置を設定します | ✅ |
filter | どの種類のエンティティを対象にするかを設定します | ❌ |
radius | 円錐の底面の半径 | ✅ |
borderRadius | 内側の円錐の半径 | ❌ |
例
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Zone:
shape: CONE
radius: 10
Target:
targetType: SELF
offset: 0,0,0
Target2:
targetType: SELF
offset: 0,10,0
Actions:
- action: SPAWN_PARTICLE
particles:
- particle: CLOUD
Target:
targetType: ZONE_FULL
coverage: 0.8
repeatEvery: 5
times: 20
このスクリプトは雲パーティクルを使用して円錐の形状を示しています。このゾーンは CONE 形状、つまり3Dの体積であることに注意してください。薙ぎ払い系のエフェクトを作ろうとしている場合は重要な点です。
CYLINDER
| キー | 詳細 | 必須 |
|---|---|---|
shape | ゾーンの形状を設定します。CYLINDER にします | ✅ |
target | 円柱の中心となる位置を設定します | ✅ |
filter | どの種類のエンティティを対象にするかを設定します | ❌ |
radius | 円柱の半径 | ✅ |
borderRadius | 内側の円柱の半径 | ❌ |
height | 円柱の高さ | ✅ |
例
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Zone:
shape: CYLINDER
radius: 4
borderRadius: 3
height: 8
Target:
targetType: SELF
Actions:
- action: SPAWN_PARTICLE
particles:
- particle: CLOUD
Target:
targetType: ZONE_FULL
repeatEvery: 5
times: 20

このスクリプトは雲パーティクルを使用して円柱の形状を示しています。
CUBOID
| キー | 詳細 | 必須 |
|---|---|---|
shape | ゾーンの形状を設定します。CUBOID にします | ✅ |
target | 直方体の中心となる位置を設定します | ✅ |
filter | どの種類のエンティティを対象にするかを設定します | ❌ |
x | 直方体の長さを設定します | ✅ |
y | 直方体の高さを設定します | ✅ |
z | 直方体の幅を設定します。デフォルトは x と同じです | ❌ |
xBorder | 内側の直方体の長さを設定します | ❌ |
yBorder | 内側の直方体の高さを設定します | ❌ |
zBorder | 内側の直方体の幅を設定します。デフォルトは x と同じです | ❌ |
例
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Zone:
shape: CUBOID
x: 4
y: 4
z: 4
xBorder: 3
yBorder: 3
zBorder: 3
Target:
targetType: SELF
Actions:
- action: SPAWN_PARTICLE
particles:
- particle: CLOUD
Target:
targetType: ZONE_FULL
repeatEvery: 5
times: 20

このスクリプトは雲パーティクルを使用して直方体の形状を示しています。
STATIC_RAY
| キー | 詳細 | 必須 |
|---|---|---|
shape | ゾーンの形状を設定します。STATIC_RAY にします | ✅ |
target | 線の始点となる位置を設定します | ✅ |
target2 | 線の終点となる位置を設定します | ✅ |
filter | どの種類のエンティティを対象にするかを設定します | ❌ |
ignoresSolidBlocks | レイが不透過ブロックを貫通するかどうかを設定します。デフォルトは true です | ❌ |
pointRadius | レイの太さを設定します。デフォルトは0.5ブロックです。 | ❌ |
例
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Zone:
shape: STATIC_RAY
Target2:
targetType: DIRECT_TARGET
offset: 0,1,0
Target:
targetType: SELF
offset: 0,1,0
Actions:
- action: SPAWN_PARTICLE
particles:
- particle: CLOUD
Target:
targetType: ZONE_FULL
repeatEvery: 5
times: 20

このスクリプトは雲パーティクルを使用して静的レイの形状を示しています。
ゾーンの両端に offset オプションを使って高さを調整し、レイがプレイヤーとボスの中央あたりから出るようにしています。そうしなければ、レイは足元に現れてしまいます。
ROTATING_RAY
| キー | 詳細 | 必須 |
|---|---|---|
shape | ゾーンの形状を設定します。ROTATING_RAY にします | ✅ |
filter | どの種類のエンティティを対象にするかを設定します | ❌ |
target | 線の始点となる位置を設定します | ✅ |
target2 | 線の終点となる位置を設定します | ✅ |
animationDuration | 回転にかける時間をティック単位で設定します | ✅ |
pitchPreRotation | アニメーション前にピッチへ初期回転を適用します | ❌ |
yawPreRotation | アニメーション前にヨーへ初期回転を適用します | ❌ |
pitchRotation | アニメーションのピッチ回転を設定します | ❌ |
yawRotation | アニメーションのヨー回転を設定します | ❌ |
ignoresSolidBlocks | レイが不透過ブロックを貫通するかどうかを設定します。デフォルトは true です | ❌ |
pointRadius | レイの太さを設定します。デフォルトは0.5ブロックです。 | ❌ |
例
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Zone:
shape: ROTATING_RAY
animationDuration: 100
pitchPrerotation: 0
yawPrerotation: 0
pitchRotation: 0
yawRotation: 360
ignoresSolidBlocks: true
Target:
targetType: SELF
offset: 0,1,0
Target2:
targetType: DIRECT_TARGET
offset: 0,1,0
Actions:
- action: SPAWN_PARTICLE
particles:
- particle: CLOUD
Target:
targetType: ZONE_FULL
repeatEvery: 1
times: 100

このスクリプトは雲パーティクルを使用した回転レイの見た目を示しています。
まず、雲パーティクルを使ってボスから自分を傷つけたプレイヤーへ向かうレイを作成します。次に offset を使って位置を1ブロック分だけ上へ調整します。
続いて、ターゲットになったプレイヤーを中心に、レイを一周させます。この回転が完了するまでには5秒(100ティック)かかります。
TRANSLATING_RAY
| キー | 詳細 | 必須 |
|---|---|---|
shape | ゾーンの形状を設定します。TRANSLATING_RAY にします | ✅ |
filter | どの種類のエンティティを対象にするかを設定します | ❌ |
animationDuration | 移動にかける時間をティック単位で設定します | ✅ |
target | 線の始点となる位置を設定します | ✅ |
finalTarget | 線の始点の移動先となる位置を設定します | ✅ |
target2 | 線の2点目となる位置を設定します | ✅ |
finalTarget2 | 線の2点目の移動先となる位置を設定します | ✅ |
ignoresSolidBlocks | レイが不透過ブロックを貫通するかどうかを設定します。デフォルトは true です | ❌ |
pointRadius | レイの太さを設定します。デフォルトは0.5ブロックです。 | ❌ |
例
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Zone:
shape: TRANSLATING_RAY
Target:
targetType: SELF
FinalTarget:
targetType: SELF
offset: 0,10,0
Target2:
targetType: DIRECT_TARGET
FinalTarget2:
targetType: DIRECT_TARGET
offset: 0,10,0
animationDuration: 100
ignoresSolidBlocks: true
Actions:
- action: SPAWN_PARTICLE
particles:
- particle: CLOUD
Target:
targetType: ZONE_FULL
repeatEvery: 1
times: 100

このスクリプトは雲パーティクルを使用した移動レイの見た目を示しています。
まず、雲パーティクルを使ってボスから自分を傷つけたプレイヤーへ向かうレイを作成します。
次に、FinalTarget1 と FinalTarget2 の offset を使って、両方のターゲットから10ブロック上へレイが動くようアニメーションさせます。
このアニメーションの完了には5秒(100ティック)かかります。
Z の offset を offset: 0,0,10 のように調整すれば、レイを簡単に横方向へ動かせます。

この挙動は、ゲーム内でどちらを向いているかによって変わることがあります。
GIF画像で示したスクリプトの X の offset を変更すると、自分の視点からはレイが一直線に遠ざかっていくように見えます。
filter
filter プロパティを使うと、ゾーン内の特定のエンティティだけを対象にできます。指定できるエンティティは次のとおりです。
| 値 | 詳細 |
|---|---|
PLAYER | ゾーン内のプレイヤーのみ(デフォルト) |
ELITE | ゾーン内のエリートのみ |
LIVING | ゾーン内のすべての生きているエンティティ |
例
eliteScript:
FilterExample:
Events:
- PlayerDamagedByEliteMobEvent
Zone:
shape: SPHERE
radius: 12
borderRadius: 11
filter: ELITE
Target:
targetType: SELF
track: false
このサンプルスクリプトは、filter を使ってゾーンがエリートだけを対象にするようにする方法を示しています。