Udemyでもプログラミングを教えていますUdemy

PygameZeroでゲームづくり

  • URLをコピーしました!

Pygame Zero はプログラミングの教育目的で設計されたPython のゲーム開発用ライブラリです。色々な手続きをバックグラウンドで処理してくれるので、短いコードでゲームを作れるようになっています。

実際、ある程度 Python のコードを書ける人であれば、Pygame Zero の習得は決して難しくないはずです。今回は「ナイツクエスト」というアクションゲームをつくっていきます。プレイヤーは敵を避けながら、鍵を集めゴールを目指すゲームです。

YouTubeの動画をご視聴をいただくと、さらに理解を深められます。

サンプルファイルは下のボタンよりダウンロードしていただけます。

目次

ファイルとフォルダの準備

プロジェクトを開始するにあたり、 すべてのファイルを入れておくフォルダの作成が必要になります。
フォルダ作成が済んだら、 背景を表示しキャラクタを画面に登場させるためのコードを書いていきます。

ファイルの作成
まず適当なところに 「KnightsQuest」というフォルダを作成する。このファイルをKnightsQuest フォルダに 「quest.
py」 という名前で保存。

プロジェクトで使う画像を入れるためのフォルダも必要です。 KnightsQuest フォルダを開き、 中に 「images」 と
いう新しいフォルダを作ります。

ここで使用する画像ファイルは、サンプルファイル内の、Python/Knight’s Quest/images フォルダに入っているので、それを使います。 もちろん、自分で用意した画像を使っても構わないです。
ゲームウィンドウの大きさを指定します

先ほど作ったquery.py次のようにコードを入力します。Pyame Zarの機能を使い、タイルとフィールドの大きさを指定していいます。

行すると、在は黒いウィンドウが表示されます。

HEIGHT = GRID_HEIGHT * GRID_SIZE
def screen.coords (x, y) :
    return (x * GRID_SIZE, y
def draw background():
    for y in range (GRID_HEIGHT):
         for x in range (GRID_WIDTH):
               screen.blit("floor1", screen_coords (x,y))
def draw:()
    draw_background()
pgzrun()

アジャイルソフトウェア開発
このプロジェクトではステップごとに関数を定義し、徐々にプログラムが便利に(あるいは面白く)なってい
く。同時に、さらに改善するためにはどのようなコードが必要なのかが判明する。 各ステップが終わると実行
可能なプログラムができておりテストを実施できる。このように、次に必要な機能を明確にし (要求分析と設
計)、開発し、テストして段階的にプログラムを作っていく方法は、 アジャイルソフトウェア開発のやり方に習
ったものになっている

背景を描く

このステップではタイルでウィンドウを埋め尽くし、ダンジョンの床を構築
する。下のコードをファイルにき入れよう。

import pgzrun
import random
GRID_WIDTH=16
GRID_HEIGHT=12
GRID_SIZE=50
WIDTH=GRID_WIDTH*GRID_SIZE
HEIGHT=GRID_HEIGHT*GRID_SIZE
def screen_coords(x,y):
        return(x*GRID_SIZE,y*GRID_SIZE)
def draw_background():
         random.seed(BACKGROUND_SEED)
        for y in range(GRID_HEIGHT):
                for x in range(GRID_WIDTH):
                        screen.blit("floor1",screen_coords(x,y))
def draw():
        draw_background()
pgzrun.go()
続きは徐々に書き足していきます。
動画では全て公開しているので、サンプルファイルをダウンロードして
つくってみてくださいね。

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次