今日は「初期化」を学びます。
もくじ
今日書いたコード
結果:真っ黒の画面。初期化だけのコード
import pyxel
GAME_TITLE = "TAXI PICUP" #ゲームタイトル。定数を定義する
CAR_ACCEL_X = 0.06 #車の左右移動の加速度
CAR_ACCEL_UP = 0.04 #車の前移動の加速度
CAR_ACCEL_DOWN = 0.02 #車の後ろ移動の加速度
MAX_CAR_SPEED = 0.8 #車の最大速度
OBJECT_SPAWN_INTERVAL = 150 #オブジェクトの出現間隔
class OneKeyGame:
def __init__(self):
#pyxelを初期化する
pyxel.init(160, 120, title=GAME_TITLE)
#ゲームをリセットする
self.is_title = True
self.reset_game()
#アプリの実行を開始する
pyxel.run(self.update, self.draw)
#ゲームをリセットする
def reset_game(self): #ゲームで使う変数を一括で初期化
#得点を初期化する
self.score = 0
#出現タイマーを初期化する
self.timer = 0
#車を初期化する
self.car_x = (pyxel.width - 8) / 2 #X座標
self.car_y = pyxel.height / 4 #Y座標
self.car_vx = 0 #X移動の速度
self.car_vy = 0 #Y移動の速度
self.car_dir = 1 #車の左右の向き(-1:左, +1:右)
self.is_turbo = False #ターボ中かどうか
self.is_exploding = False #爆発中かどうか
#マップの配置を初期化する
self.survivors = [] #客の配置
self.rock = [] #岩の配置
#アプリを更新する
def update(self):
pass #処理が何もないことを表す
#アプリを描画する
def draw(self):
pass
OneKeyGame()
コードの要点
処理の流れ
classを定義(①~④をclassの中で定義)
①【def__init__(self):】画面サイズ、ゲームリセット、アプリ実行開始
②【def reset_game(self):】ゲームで使う変数の一括初期化(得点、タイマー、キャラ、マップ)
③【def update(self):】アプリを更新
④【def draw(self):】アプリを描画