SlideShare a Scribd company logo
2019/11/29
プレイヤー位置情報の取得・変更
ブロックの設置と情報の取得
プレイヤーの位置を取得する
1
メソッド名:mc.player.getTilePos()
プレイヤーの位置情報は3次元の
x,y,z座標の数値によって管理されている
その数値を取得するのが上記メソッド
x
y
z
北 東
西 南
プレイヤーの位置情報を取得する
2
pos1.pyを参照
前回教えた方法を基にプログラムを
書いて動かしてみよう
プレイヤーの位置情報を取得する
3
pos1.pyを参照
前回教えた方法を基にプログラムを
書いて動かしてみよう
「Vec3(x座標,y座標,z座標)」と表示されればOK
Vec3ってなに?→3次元のベクトル(高校数学で習います)
という意味(難しいので説明は省略)
プレイヤーの位置情報を取得する
4
pos1.pyを参照
前回教えた方法を基にプログラムを
書いて動かしてみよう
「Vec3(x座標,y座標,z座標)」と表示されればOK
Vec3ってなに?→3次元のベクトル(高校数学で習います)
という意味(難しいので説明は省略)
x,y,z座標をそれぞれ別の変数で取得してみよう
pos2.pyを参照
プレイヤーの位置を変更する
5
メソッド名:mc.player.setTilePos(x,y,z)
プレイヤーの位置を指定したx,y,z座標に
移動させるメソッド
小課題①:プレイヤーを今いる場所から南へ10
西へ3ブロック分移動させてみよう
(ヒントはpos3.pyに書いてあります)
2019/11/29
プレイヤー位置情報の取得・変更
ブロックの設置と情報の取得
ブロックの設置
7
プログラムからブロックを設置する方法
①ひとつだけ置く
②まとめて置く
メソッド名:mc.setblock(x,y,z,
ブロック名もしくはブロックID)
メソッド名:mc.setblocks(x,y,z,x’,y’,z’,
ブロック名もしくはブロックID)
開始位置 終了位置
ブロックの設置
8
プログラムからブロックを設置する方法
①ひとつだけ置く
②まとめて置く
その前に…
メソッド名:mc.setblock(x,y,z,
ブロック名もしくはブロックID)
メソッド名:mc.setblocks(x,y,z,x’,y’,z’,
ブロック名もしくはブロックID)
開始位置 終了位置
新しいモジュールの呼び出し
from mcpi.block import *
というおまじないを追加する必要アリ
ブロック名とブロックIDの一覧
9
ブロックの設置
10
小課題②:プレイヤーの頭上に原木を
ひとつ設置してみよう
(ヒントはset-block1.pyに書いてあります)
小課題③:プレイヤーの目の前に
x(幅):5,z(奥行き)10,y(高さ)3
の石ブロックの塊を置いてみよう
(ヒントはset-block3.pyに書いてあります)
ブロック情報の取得
11
任意の場所になんのブロックがあるのか知る方法
メソッド名:mc.getblock(x,y,z)
(出力はブロックID)
小課題④:プレイヤーの真下にあるブロック
が何なのか調べてみよう
(ヒントはgetblock.pyに書いてあります
※0と表示される場合は間違っています)
課題
12
宿題:プレイヤーのいる場所を基準にして
指定したところにワープできる
+ワープした場所の真下のブロックを
木材に置き換えるプログラムを
作ってみよう
ヒント:プログラムを呼び出すときに引数を
つけて呼び出すことが出来る
Python: コマンドライン引数とは?(超基礎)
引数にワープしたい距離を指定すれば…?
ヒントになりそうなプログラム

More Related Content

PDF
Random partionerのデータモデリング
 
PPTX
as-1. アセンブラ入門
PPTX
巨大な表を高速に扱うData.table について
PDF
Boost.B-tree introduction
PDF
Deep Learningと他の分類器をRで比べてみよう in Japan.R 2014
PDF
PPTX
ラビットチャレンジレポート 深層学習Day3
PDF
RでGISハンズオンセッション
Random partionerのデータモデリング
 
as-1. アセンブラ入門
巨大な表を高速に扱うData.table について
Boost.B-tree introduction
Deep Learningと他の分類器をRで比べてみよう in Japan.R 2014
ラビットチャレンジレポート 深層学習Day3
RでGISハンズオンセッション

More from Masato Nakajima (11)

PPTX
Programming school 11
PPTX
Programming school 10
PPTX
Programming school 09
PPTX
Programming school 07
PPTX
Programming school 06
PPTX
Programming school 05
PPTX
Programming school 04
PPTX
Programming school 03
PPTX
Programming school 02
PPTX
Programming school 01
PPTX
卒業研究詳細
Programming school 11
Programming school 10
Programming school 09
Programming school 07
Programming school 06
Programming school 05
Programming school 04
Programming school 03
Programming school 02
Programming school 01
卒業研究詳細
Ad

Programming school 08

Editor's Notes

  • #2: *日付は自動のため,変更の必要はありません.
  • #8: *日付は自動のため,変更の必要はありません.