座標とその指定の仕方
座標 とは世界の位置を3つの数字で表したものです。
コマンドでテレポートしたいときには、行き先を決める必要があります。 しかし「そこ」とか「あの辺」ではプログラムにはうまく伝わりません。 もっとはっきりとした言葉で伝えてあげる必要があります。
ここでは「あなたが言っている場所は、どこのことなのか」を正しく伝えるための方法である「座標」について学びます。
座標の指定方法
コマンドでの座標の指定の仕方には次の3種類あります。
- 世界の中心から数える「絶対 座標」
- 自分を中心にして数える「相対 座標」
- 自分の向きを基準に数える「ローカル座標」
絶対座標(ワールド座標)
絶対座標はそのワールドの中心から数え、同じ座標は必ず同じ場所を指し示します。
座標はそのまま数字で指定します。
# 世界の中心に移動(yはブロックに埋まらない程度の値)
/tp @s 0 80 0
用語 | 説明 |
---|---|
/tp |
移動するコマンド |
@s |
誰を移動させるのか。この場合は自分 |
0 80 0 |
どこに移動させるのか。この場合は座標 |
このコマンドはどこで使っても、必ず同じ場所にテレポートします。
@s
については次で詳しく学びます。今は自分のことだと思ってください。
相対座標(チルダ記法)
相対座標は自分を中心に決定する座標です。 つまり自分のいる場所によって移動先が異なります。
座標は数字の前に~
を付けて指定します。
# 今の位置から東に5ブロック、南に5ブロック進んだ場所に移動
/tp @s ~5 ~0 ~5
記号が付くと0は省略できます。
# 上のコマンドと同じ
/tp @s ~5 ~ ~5
また、半角スペースを開けずにくっつけて書くことができます。
# 上のコマンドと同じ
/tp @s ~5~~5
ローカル座標(キャレット記法)
ローカル座標は対象者の顔の向きを基準にして決定する座標です。 自分のいる場所と顔の向きによって移動先が異なります。
座標は数字の前に^
を付けて指定します。
ローカル座標は単純な(x, y, z)
ではなく、(左, 上, 前)
方向に移動します。
真南を向いている場合は相対座標と同じになります。
# 今の位置から左に3ブロック、上に2ブロック、前に5ブロック進んだ場所に移動
/tp @s ~3 ~2 ~5
向きは平面方向だけでなく上下方向にも影響を与えます。 真上を向いていた場合には前方向に10ブロックを指定すると上に10ブロックの位置になります。 次のコマンドを同じ位置からいろんな方向を見ながら使ってみましょう。
# 向いている方向の10ブロック先に金ブロックを置く
/setblock ^ ^ ^10 gold_block
混合記法
絶対座標と相対座標はそれぞれを組み合わせて指定できます。
# x方向に5ブロック、y座標は80、z方向に10ブロック移動
/tp @s ~5 80 ~10
ローカル座標は組み合わせることができないので、必ずすべてに^
をつける必要があります。
# 前方向に5ブロック分移動
/tp @s ^ ^ ^5
マイナス方向
数字に-
がつくと座標の場合は反対方向を表します。
- 「東」の反対は「西」
- 「上」の反対は「下」
- 「南」の反対は「北」
# 世界の中心から北西にそれぞれ5ブロック進んだ場所に移動(高さは80)
/tp @s -5 80 -5
相対座標の場合は、チルダをマイナスよりも先に付けます。 似たような記号なので紛らわしいですが、間違えないように注意してください。
# 今の位置から北西にそれぞれ5ブロック進んだ場所に移動(高さは同じ)
/tp @s ~-5 ~0 ~-5
「0」と「-0」は同じ数を表します。
(0の読みは「レイ」または「ゼロ」です。どちらでも構いません)東に0ブロック進むのと、西に0ブロック進むのでは同じですね。
# これらは同じ座標
/tp @s 0 80 0
/tp @s -0 80 -0