SlideShare a Scribd company logo
1 of 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
!!!難易度超難!!!
風車式ブランチマイニングを自動化しよう
・やり方
・ダイヤモンド,金,鉄,石炭鉱石に当たったら
そこは掘らないようにする
(それ以外のブロックなら掘る)

More Related Content

What's hot

Rubyでつくるスレッド
RubyでつくるスレッドRubyでつくるスレッド
RubyでつくるスレッドShugo Maeda
 
6.2 reconciling amortization and persistence
6.2 reconciling amortization and persistence6.2 reconciling amortization and persistence
6.2 reconciling amortization and persistenceHironobu Kinugawa
 
CloudStackユーザ会 in 大阪: 池原治
CloudStackユーザ会 in 大阪: 池原治CloudStackユーザ会 in 大阪: 池原治
CloudStackユーザ会 in 大阪: 池原治joeswebhosting
 
Visualize terms network in Lucene index
Visualize terms network in Lucene indexVisualize terms network in Lucene index
Visualize terms network in Lucene indexKoji Sekiguchi
 
[ Grasshopper ] interpolate curve basic #02 j
[ Grasshopper ] interpolate curve basic #02 j[ Grasshopper ] interpolate curve basic #02 j
[ Grasshopper ] interpolate curve basic #02 jonioncraft
 
Iceberg 2018 (Japanese translation)
Iceberg 2018 (Japanese translation)Iceberg 2018 (Japanese translation)
Iceberg 2018 (Japanese translation)Tomohiro Oda
 
カウチなやつら CouchDB in the room
カウチなやつら CouchDB in the roomカウチなやつら CouchDB in the room
カウチなやつら CouchDB in the roomMakoto Ohnami
 
[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...Deep Learning JP
 
リトライでtime.Sleepを使ったら積んだ話
リトライでtime.Sleepを使ったら積んだ話リトライでtime.Sleepを使ったら積んだ話
リトライでtime.Sleepを使ったら積んだ話ssuser329cba
 
20181214 clebsch gordan_mizuta
20181214 clebsch gordan_mizuta20181214 clebsch gordan_mizuta
20181214 clebsch gordan_mizutaRei Mizuta
 
Grass ライトニングトーク 120630_hokkaido
Grass ライトニングトーク 120630_hokkaidoGrass ライトニングトーク 120630_hokkaido
Grass ライトニングトーク 120630_hokkaidomasarunarazaki
 
Brookよもやま話
Brookよもやま話Brookよもやま話
Brookよもやま話Daichi Hiroki
 
Spannerに関する技術メモ
Spannerに関する技術メモSpannerに関する技術メモ
Spannerに関する技術メモEtsuji Nakai
 

What's hot (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のススメ
 

More from Masato Nakajima

More from 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
 
卒業研究詳細
卒業研究詳細卒業研究詳細
卒業研究詳細
 

Recently uploaded

【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slidessusere0a682
 
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライドリアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライドKen Fukui
 
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライドリアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライドKen Fukui
 
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライドリアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライドKen Fukui
 
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライドリアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライドKen Fukui
 
TEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdfTEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdfyukisuga3
 
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学ssusere0a682
 
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライドリアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライドKen Fukui
 

Recently uploaded (8)

【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
 
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライドリアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
 
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライドリアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
 
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライドリアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
 
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライドリアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
 
TEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdfTEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdf
 
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
 
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライドリアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
 

Programming school 10

Editor's Notes

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