障害物を回避しながら飛び続ける、というよくある入門ゲームをProcessingで作ってみました。
飛行機を避けながら飛び続けてください。
- とんだ距離をスコアとして表示する
- 画面から消えた飛行機をリストから削除する
- 飛行機の出現間隔やスピードを調整する(徐々に難易度をあげる)
などいろいろと改良してください。
bird, back = None, None
scroll = 0
ypos, speed = 200, 0
planes = []
gameOver = False
class Plane:
def __init__(self):
self.x = 600
self.y = random(height)
self.speed = random(-20, -10)
self.img = loadImage("plane.png")
def paint(self):
self.x += self.speed
image(self.img, self.x, self.y)
def setup():
global bird, back
size(600, 600)
bird = loadImage("bird.png")
back = loadImage("back.png")
textSize(50)
textAlign(CENTER)
def draw():
global scroll, ypos, speed, gameOver
imageMode(CORNER)
image(back, scroll, 0)
imageMode(CENTER)
image(bird, 50, ypos)
if gameOver:
text("GAME OVER", 300, 300)
return
scroll -= 2
if scroll < -1065:
scroll = 0
speed += 0.1
ypos += speed
if mousePressed or keyPressed:
speed -= 0.4
if frameCount % 100 == 0:
planes.append(Plane())
if ypos < 0 or ypos > height:
gameOver = True
for p in planes:
p.paint()
if dist(50, ypos, p.x, p.y) < 100:
gameOver = True