【プログラミング100日間学習チャレンジ】66日目:迷路ゲームの壁を作りました

プログラミング

どうも、塩ラーメンです。

これは昨日1月6日分の日記です。最近他のことが忙しくてPython学習にあまり時間がとれていません。昨日は夜遅くに勉強をして、ブログを書く余裕がなかったので、今日書きます。昨日やったのは、迷路ゲームの壁の作成です。

 

 

壁はfor文で作る

 

tkinterを使って、迷路の壁部分を作ります。壁の作り方と言っても単純です。まず、配列に「壁は1、床は0」として記述していきます。

その後、for文で、yとxにそれぞれrangeで数値で入れていき、maze[y][x]がイコール1なら、create_rectangle命令で四角を描画します。

すると、1の部分が塗りつぶされて壁になり、迷路ができあがります。

 

 

キャラクターを動かす

 

キャラクターの動かし方についても、勉強しました。tkinterでは、キーボードのどのキー(ボタン)を押したかを取得する命令が用意されています。bindという命令と、keycodeを使います。

 

bindは、イベントを受け取る命令です。bindでは「キーが押されたとき、何をする」という指示ができます。「キーが押されたとき」には、別のイベントも指定できます。「何をする」のところには、関数を入れます。

 

関数では、イベント(e)を引数で受け取り、内部で、e.keycodeとして押されたキーのコードを取得できます。keysymとすると、文字列で押されたキーを取得できます(Upなど)。

 

押されたキーが何かによって、キャラクター座標を計算するif文を使い、座標を更新します。そして最後に、リアルタイム処理を行って、移動後のキャラクターを描画します。リアルタイム処理はどうやって行うのかというと、after命令です。afterは、「何秒後に、何をする」という指示を出せます。関数の中で、「0.1秒後に、その関数を呼び出す」というafterを描けば、0.1秒ごとに関数が繰り返されます。その関数の中で、キャラクターの座標を描画させれば、更新された座標が即座に反映されるというわけです。

 

今回勉強している迷路ゲームの作成は、いよいよ本当にゲームっぽいので、とても面白いです。このあとが楽しみです。

 

 

参考書籍

 

 

Pythonでつくる ゲーム開発 入門講座

廣瀬豪 ソーテック社 2019年07月19日頃
売り上げランキング :

by ヨメレバ

 

 

 


最後までお読みいただき、ありがとうございました。

感想・意見・指摘などは、コメントに残していただけるとありがたいです。

ツイッターで、ブログの更新情報などお知らせしています。

https://twitter.com/saltramen_book

それでは、また別の記事でお会いしましょう。


 

 


最後までお読みいただき、ありがとうございました。

感想・意見・指摘などは、コメントに残していただけるとありがたいです。

ツイッターで、ブログの更新情報などお知らせしています。

https://twitter.com/saltramen_book

それでは、また別の記事でお会いしましょう。


 

スポンサーリンク

コメント

タイトルとURLをコピーしました