function projectileHitBlockHook(projectile, blockX, blockY, blockZ, side){
}
投げられた雪玉や卵がブロックに当たった時に呼び出されるフック関数。projectileは発射体、ここでは投げられた物を意味する。
雪玉は81、卵は82である。
また、ver1.12.8 betaではItem.defineThrowableで追加されたアイテムがブロックに当たった時にも呼び出された。
ver1.12.8 beta現在、弓矢、釣り針、跳ね返したファイヤーチャージ、スプラッシュポーションは検出されない。
座標は整数値として与えられるので、当たった座標を正確に知るにはEntity.getX()などを使う必要がある。
| 型 | 引数 | 説明 |
|---|---|---|
| Number | projectile | 投げられたエンティティのUUID |
| int | blockX | 当たったブロックのX座標 |
| int | blockY | 当たったブロックのY座標 |
| int | blockZ | 当たったブロックのZ座標 |
| int | side | 当たったブロックの側面 BlockFace |
//
function projectileHitBlockHook(projectile, blockX, blockY, blockZ, side){
var projectileTypeId = Entity.getEntityTypeId(projectile);
var sideArray=["下", "上", "北", "南", "西", "東"];
if(projectileTypeId==81){
clientMessage("雪玉が座標[ x:"+blockX+", y:"+blockY+", z:"+blockZ+" ]にあるブロックの"+sideArray[side]+"側に当たりました");
//『雪玉が座標[ x:1, y:3, z:-5 ]にあるブロックの上側に当たりました』
}else if(projectileTypeId==82){
clientMessage("卵が座標[ x:"+blockX+", y:"+blockY+", z:"+blockZ+" ]にあるブロックの"+sideArray[side]+"側に当たりました");
//『卵が座標[ x:1, y:3, z:-5 ]にあるブロックの上側に当たりました』
}
}

このページへのコメント
引数のSideがDideになってます...