Pyxelを使って簡単なゲームの作成を試してみたい!part2

pyxeleditorでキャラの動きやサウンド 前回pyxelのインストールからドット絵を描いて表示させるところまでやってみました。今回は実際にキャラクターを動かしたり、サウンドを作ったりしたいと思います。 pyxeleditorで作った部分 実際に動いた画面がこちら。 コードの中身_init 一旦各コードを簡単に見ていこうと思います。まずは__init__内ですね。前回も話したのでざっくりと見ます。 pyxel.init(128, 128, title='Scrolling Game') pyxel.load('assets/scroll_game.pyxres') self.char_x = 50 # キャラクターのX座標 self.char_y = 50 # キャラクターのY座標 initで画面サイズの設定、char_xとchar_yはキャラ座標を設定しています。loadでpixel editで作成したものをロードしています。ドット絵、タイルマップ、サウンドなど全て一旦ロードしています。 self.char_frame = 0 # 表示する画像のインデックス (0 または 1) self.frame_count = 0 # フレームカウンター self.is_moving = False # 移動中フラグを追加 self.last_input = False #直前のフレームでキー入力があったか pyxel.run(self.update, self.draw) 他のコードはコメントも記載していますが、キャラ画像の入れ替えやフラグの設定をしています。後はpyxelの起動ですね。 コードの中身_update 次はupdate関数ですね。 # ゲーム中断 if pyxel.btnp(pyxel.KEY_Q): pyxel.quit() # キー入力と移動処理 self.is_moving = False key_pressed = False # 今のフレームでキーが押されているか Qを押したらゲームを中断します。それからフラグとキー入力の初期設定をしています。 # キー入力処理とキャラクターの移動 if pyxel.btn(pyxel.KEY_LEFT): self.char_x -= 1 self.is_moving = True # 移動中フラグを立てる key_pressed = True if pyxel.btn(pyxel.KEY_RIGHT): self.char_x += 1 self.is_moving = True key_pressed = True if pyxel.btn(pyxel.KEY_UP): self.char_y -= 1 self.is_moving = True key_pressed = True if pyxel.btn(pyxel.KEY_DOWN): self.char_y += 1 self.is_moving = True key_pressed = True ここでは各方向キーを入力した時の設定をしています。上下左右分書いてるので記述は多いですが、内容はシンプルです。キャラクターの座標をずらして、フラグを書き換えています。というか関数化したほうがもっとシンプルになりますね… ...

2024年12月27日