メインコンテンツまでスキップ
バージョン: Canary

viewDirection

説明

プレイヤーの視線方向(見ている方向のベクトル)を毎ティック取得するイベントです。また、視線の先にあるブロック・エンティティ・プレイヤーの情報も取得できます。このページには、blockFromViewDirection と entityFromViewDirection も含まれています。


トリガータグ

毎ティック自動で更新されるタグです。

タグ名説明
view.block:{ブロックID}視線先にあるブロックのIDがタグとして付与されます。
view.entity:{エンティティID}視線先にあるエンティティのIDがタグとして付与されます。
view.player:{プレイヤー名}視線先にいるプレイヤーの名前がタグとして付与されます。

トリガースコア

毎ティック自動で更新されるスコアボードです。

スコアボード名説明
capi:direction_x視線方向のX成分です。(×100)
capi:direction_y視線方向のY成分です。(×100)
capi:direction_z視線方向のZ成分です。(×100)
capi:view.block_distance視線先のブロックまでの距離です。
capi:view.block_x視線先のブロックのX座標です。
capi:view.block_y視線先のブロックのY座標です。
capi:view.block_z視線先のブロックのZ座標です。
capi:view.entity_distance視線先のエンティティまでの距離です。
capi:view.entity_x視線先のエンティティのX座標です。
capi:view.entity_y視線先のエンティティのY座標です。
capi:view.entity_z視線先のエンティティのZ座標です。

注意事項

  • 視線方向の値は100倍されて保存されます。
  • 実際の値を取得するには、スコアの値を100で割る必要があります。
  • 視線の先に何もない場合、view.* タグは付与されず、capi:view.block_* / capi:view.entity_* スコアはリセットされます。
  • view.block:view.entity:view.player: のいずれか一方のみが付与されます。

使用例

上を向いているプレイヤーを検出

/execute as @a[scores={capi:direction_y=50..}] run say 上を向いています!

特定のブロックを見ているプレイヤーを検出

/execute as @a[tag=view.block:minecraft:diamond_ore] run say ダイヤモンド鉱石を見ています!

近くのエンティティを見ているプレイヤーを検出

/execute as @a[tag=view.entity:minecraft:creeper,scores={capi:view_entity_distance=..5}] run say クリーパーが近くにいます!

特定のプレイヤーを見ているプレイヤーを検出

/execute as @a[tag=view.player:Steve] run say Steveを見ています!