アフィリエイト広告を利用しています

広告

posted by fanblog

2020年03月28日

pygameで画面表示

開発環境(root環境)
・Ubuntu 18.04
・python 3.7.6
・pygame 1.9.6


自分のコピー人形にビデオゲームを遊ばせられたらと思いました。

まずは、簡易なゲームを作ります。
#coding:utf-8

import pygame
import sys
import os

pygame.init()

# 画面の作成
SCREEN_SIZE=(640,480)
screen=pygame.display.set_mode(SCREEN_SIZE)
caption=pygame.display.set_caption("pingball")

barImg_A=pygame.image.load("./char_img/bar_A.png").convert_alpha()
barImg_B=pygame.image.load("./char_img/bar_B.png").convert_alpha()
ballImg=pygame.image.load("./char_img/ball.png").convert_alpha()
barImg_A_rect=barImg_A.get_rect()
barImg_A_rect.center=(50,220)
barImg_B_rect=barImg_B.get_rect()
barImg_B_rect.center=(590,0)
colorkey=ballImg.get_at((0,0))
ballImg_rect=ballImg.get_rect()


vx=vy=3
bx=by=3
ax=ay=3
clock = pygame.time.Clock()

#フォントの作成
sysfont=pygame.font.SysFont(None,24)
#テキスト(点数表示)
i=0
j=0
score=sysfont.render(str(i),True,(255,255,255))

# タイトル画面
while j==0:
title=sysfont.render("PUSH ENTER BOTTON",True,(255,255,255))

screen.fill((0,0,0))
screen.blit(title,(240,340))

pygame.display.update()

clock.tick(600)
for event in pygame.event.get():
if event.type==pygame.QUIT:
sys.exit()
if event.type==pygame.KEYUP and event.key==pygame.K_RETURN:
j=1

while j==1:

while ballImg_rect.right>0:

clock.tick(120) #一秒間に描くフレームの数を120コマに設定

barImg_A_rect.clamp_ip(0,0,640,480)

score=sysfont.render(str(i),True,(255,255,255))

pressed_keys=pygame.key.get_pressed()
if pressed_keys[pygame.K_UP]:
barImg_A_rect.move_ip(0,-ay)
if pressed_keys[pygame.K_DOWN]:
barImg_A_rect.move_ip(0,ay)

ballImg_rect.move_ip(vx,vy)
barImg_B_rect.move_ip(0,vy)


if barImg_B_rect.top <0 or barImg_B_rect.bottom>480:
by= -by
if ballImg_rect.right>590:
vx= -vx
if ballImg_rect.colliderect(barImg_A_rect) >0:
vx= -vx
i=i+1
if ballImg_rect.top < 0 or ballImg_rect.bottom >480:
vy= -vy

if ballImg_rect.right<=0:
sys.exit()


screen.fill((0,0,0))
screen.blit(score,(20,20))
screen.blit(barImg_A,barImg_A_rect)
screen.blit(barImg_B,barImg_B_rect)
screen.blit(ballImg,ballImg_rect)

pygame.display.update()

for event in pygame.event.get():
if event.type==pygame.QUIT:
sys.exit()

if ballImg_rect.right<=0:
sys.exit()


Screenshot from 2020-04-03 21-22-04.png
posted by もう一人の自分 at 17:59| pygame
検索

私が見た動画紹介コーナー

素敵です

プロフィール
もう一人の自分さんの画像
もう一人の自分
好きなことを仕事にしなかった
プロフィール
最新記事
カテゴリーアーカイブ
ファン
写真ギャラリー
×

この広告は30日以上新しい記事の更新がないブログに表示されております。