SlideShare una empresa de Scribd logo
1 de 8
2019/12/10
条件分岐を使ったマインクラフト
のプログラム
条件分岐のおさらい
1
書き方:
if 条件式: #条件に当てはまる場合の処理
実行する処理①
実行する処理②
elif 条件式: #もうひとつの条件
実行する処理
else: #条件に当てはまらない場合の処理
実行する処理
If文の外の処理…
If
文
の
か
た
ま
り
条件分岐の基本
2
真下のブロックが草ブロックなら
金ブロックに変更してみよう
(mc-if1.pyを実行)
条件分岐の基本
3
周辺の20x20の範囲にある水ブロックを
氷ブロックに変更してみよう
(mc-if2.pyを実行)
チートコマンドを有効にして
普通の地形が生成されるワールドを作る
①
②
周辺の10x10の範囲にある木を
木材ブロックに変更してみよう
(mc-if3.pyを実行)
③
応用編=コマンドを自作する=
4
プログラムが無限に実行されている間に
コマンドを入力すると処理を実行する
プログラムをつくろう
→チャットに入力されたイベントを
取得するメソッド
events.pollChatPosts()
戻り値
書き方
• 投稿のみのチャットイベントの種類
• エンティティのID(マイクラ内で動くオブジェクトのこと)
• 投稿したメッセージの内容
応用編=コマンドを自作する=
5
土台となるプログラムをつくろう
(mc-if4.pyを実行)
→無限に実行しつつ「&exit」と
入力すればプログラム自体を終了させる
「&wood」と入力すると目の前に
木材を置くプログラムをつくろう
(mc-if5.pyを実行)
①
②
応用編=コマンドを自作する=
6
剣で叩いた場所をダイヤモンドブロックに
変更するプログラムをつくろう
(mc-if6.pyを実行)
→剣を持ちながらブロックを叩くと破壊せずに
ブロック情報を取得できる
剣で叩いたイベントを取得する
events.pollBlockHits()
戻り値
• type イベントのタイプ
• pos vec3(x,y,z)→位置
• face 叩いた面
• entityId エンティティID
宿題
7
!!!難易度超難!!!
風車式ブランチマイニングを自動化しよう
・やり方
・ダイヤモンド,金,鉄,石炭鉱石に当たったら
そこは掘らないようにする
(それ以外のブロックなら掘る)

Más contenido relacionado

La actualidad más candente

6.2 reconciling amortization and persistence
6.2 reconciling amortization and persistence6.2 reconciling amortization and persistence
6.2 reconciling amortization and persistence
Hironobu Kinugawa
 
Visualize terms network in Lucene index
Visualize terms network in Lucene indexVisualize terms network in Lucene index
Visualize terms network in Lucene index
Koji Sekiguchi
 
Grass ライトニングトーク 120630_hokkaido
Grass ライトニングトーク 120630_hokkaidoGrass ライトニングトーク 120630_hokkaido
Grass ライトニングトーク 120630_hokkaido
masarunarazaki
 

La actualidad más candente (15)

Rubyでつくるスレッド
RubyでつくるスレッドRubyでつくるスレッド
Rubyでつくるスレッド
 
6.2 reconciling amortization and persistence
6.2 reconciling amortization and persistence6.2 reconciling amortization and persistence
6.2 reconciling amortization and persistence
 
CloudStackユーザ会 in 大阪: 池原治
CloudStackユーザ会 in 大阪: 池原治CloudStackユーザ会 in 大阪: 池原治
CloudStackユーザ会 in 大阪: 池原治
 
Visualize terms network in Lucene index
Visualize terms network in Lucene indexVisualize terms network in Lucene index
Visualize terms network in Lucene index
 
[ Grasshopper ] interpolate curve basic #02 j
[ Grasshopper ] interpolate curve basic #02 j[ Grasshopper ] interpolate curve basic #02 j
[ Grasshopper ] interpolate curve basic #02 j
 
Iceberg 2018 (Japanese translation)
Iceberg 2018 (Japanese translation)Iceberg 2018 (Japanese translation)
Iceberg 2018 (Japanese translation)
 
カウチなやつら CouchDB in the room
カウチなやつら CouchDB in the roomカウチなやつら CouchDB in the room
カウチなやつら CouchDB in the room
 
[DL輪読会]Clebsch–Gordan Nets: a Fully Fourier Space Spherical Convolutional Neu...
[DL輪読会]Clebsch–Gordan Nets: a Fully Fourier Space Spherical Convolutional Neu...[DL輪読会]Clebsch–Gordan Nets: a Fully Fourier Space Spherical Convolutional Neu...
[DL輪読会]Clebsch–Gordan Nets: a Fully Fourier Space Spherical Convolutional Neu...
 
リトライでtime.Sleepを使ったら積んだ話
リトライでtime.Sleepを使ったら積んだ話リトライでtime.Sleepを使ったら積んだ話
リトライでtime.Sleepを使ったら積んだ話
 
20181214 clebsch gordan_mizuta
20181214 clebsch gordan_mizuta20181214 clebsch gordan_mizuta
20181214 clebsch gordan_mizuta
 
Programming school 09
Programming school 09Programming school 09
Programming school 09
 
Grass ライトニングトーク 120630_hokkaido
Grass ライトニングトーク 120630_hokkaidoGrass ライトニングトーク 120630_hokkaido
Grass ライトニングトーク 120630_hokkaido
 
Brookよもやま話
Brookよもやま話Brookよもやま話
Brookよもやま話
 
Spannerに関する技術メモ
Spannerに関する技術メモSpannerに関する技術メモ
Spannerに関する技術メモ
 
GeoCSVのススメ
GeoCSVのススメGeoCSVのススメ
GeoCSVのススメ
 

Más de Masato Nakajima

卒業研究詳細
卒業研究詳細卒業研究詳細
卒業研究詳細
Masato Nakajima
 

Más de Masato Nakajima (10)

Programming school 11
Programming school 11Programming school 11
Programming school 11
 
Programming school 08
Programming school 08Programming school 08
Programming school 08
 
Programming school 07
Programming school 07Programming school 07
Programming school 07
 
Programming school 06
Programming school 06Programming school 06
Programming school 06
 
Programming school 05
Programming school 05Programming school 05
Programming school 05
 
Programming school 04
Programming school 04Programming school 04
Programming school 04
 
Programming school 03
Programming school 03Programming school 03
Programming school 03
 
Programming school 02
Programming school 02Programming school 02
Programming school 02
 
Programming school 01
Programming school 01Programming school 01
Programming school 01
 
卒業研究詳細
卒業研究詳細卒業研究詳細
卒業研究詳細
 

Programming school 10

Notas del editor

  1. *日付は自動のため,変更の必要はありません.