Python講座|第1回 【Pygame】サンプルゲーム|クリックで画像をランダム表示
Pythonをこれから学ばれる初心者の方には、Pygameを使った学習から始める事を推奨したいと思います。
私の講座はYouTubeと一緒に学べるよう作成しております。こちらのブログでは、動画で紹介できなかったところの補足説明、さらにソースコードを貼りつけておりますので、コピーして実際の動きを確認していただければと考えております。
まずは画面にキャラクターを配置
エディタソフトで下記を記述し、ファイルの拡張子は「py」で保存して下さい。
fox = Actor("fox") #Actor で画像ファイル名を宣言し、変数foxに代入 def draw(): #画面に絵を描く(表示)draw()という関数を定義 screen.clear() #画面表示をきれいに 今はこういうものがある程度で fox.draw() #変数foxに入れられたファイル画像を呼び出し表示 def replace_fox(): #絵の位置を置き換える関数 replace_foxという関数を定義 fox.x = 400 #x座標の位置 fox.y = 500 #y座標の位置 replace_fox()
ターミナルソフトに pgzrun と入力した後、作成したファイルのパスの入力を行い、実行しましょう。これで画像が表示されます。YouTubeで紹介したものはこちらになります。
画像のランダム表示
それではここからゲーム性を持たせて学んでいきましょう。画像がクリックされたら、また別の箇所に画像がランダムに配置されるものを作ります。
#狐がクリックされたら「ナイスですね!」 #間違えてクリックしたら「惜しい!また挑戦してね!」と表示 #クリックするたび、狐が移動してゲーム再開 from random import randint #randomモジュールからimportしてくる fox = Actor("fox") #Actor で画像ファイル名を宣言し、変数foxに代入 def draw(): #画面に絵を描く(表示)draw()という関数を定義 screen.clear() #画面表示をきれいに 今はこういうものがある程度で fox.draw() #変数foxに入れられたファイル画像を呼び出し表示 def replace_fox(): #絵の位置を置き換える関数 replace_foxという関数を定義 #fox.x = 400 #x座標の位置 #fox.y = 500 #y座標の位置 fox.x = randint(10, 500) fox.y = randint(10, 500) def on_mouse_down(pos): #クリックされたら → on_mouse_down() ビルトイン関数 #pos → ボタンが押されたときのマウス・ポインタの位置を示す if fox.collidepoint(pos): print("ナイスですね!") replace_fox() else: print("惜しい!また挑戦してね!") replace_fox() replace_fox() #replace_fox()で呼び出し、表示させる
別ファイルで作ってもいいですし、初めに画像の配置を記述したソースコードのファイルに上書きしてもらっても構いません。ターミナルソフトから上記のようにコマンド実行してみましょう。クリックする度に、ターミナルソフトに文字が表示されます。