# import random
#
# class student:
# def init(self, name, height, weight, kor, eng, math):
# self.name = name
# self.height = height
# self.weight = weight
# self.kor = kor
# self.eng = eng
# self.math = math
# self.avg = (self.kor + self.eng + self.math) / 3
# def viewAvg(self):
# print(self.name + ' is ' + str(self.avg))
#
# class classroom:
# def init(self):
# self.members = []
#
# def insertMember(self, member):
# self.members.append(member)
#
# def findFirstMembers(self):
# max=-1
# fName = None
# for i in range(len(first.members)) :
# if max < self.members[i].avg:
# max = self.members[i].avg
# fName = self.members[i].name
# print('first is ',(fName))
#
# def findLastMembers(self):
# min=101
# lName = None
# for i in range(len(first.members)) :
# if min> self.members[i].avg:
# min= self.members[i].avg
# lName = self.members[i].name
# print('last is ',(lName))
#
# def subfirst(self):
# k=-1
# e=-1
# m=-1
# kName = None
# eName = None
# mName = None
# for i in range(len(first.members)) :
# if k< self.members[i].kor :
# k=self.members[i].kor
# kName = self.members[i].name
# print('first korean is ',(kName))
# for i in range(len(first.members)) :
# if e<self.members[i].eng :
# e=self.members[i].eng
# eName = self.members[i].name
# print('first english is',(eName))
# for i in range(len(first.members)) :
# if m<self.members[i].math :
# m= self.members[i].math
# mName = self.members[i].name
# print('first math is ',(mName))
#
#
#
#
# name=['Anne','Becky','Chris','Daisy','Ian','James','Simon','David','Daniel','Olivia']
#
# first = classroom()
# for i in range(10):
# pickName = random.choice(name)
# height = random.randint(150, 200)
# weight = random.randint(50, 150)
# kor = random.randint(0, 101)
# eng = random.randint(0, 101)
# math = random.randint(0, 101)
#
# x = student(pickName, height, weight, kor, eng, math)
# first.insertMember(x)
#
# for i in range(len(first.members)):
# first.members[i].viewAvg()
#
# first.findFirstMembers()
# first.findLastMembers()
# first.subfirst()
# 1000 ms = 1 s
# 1000 / 30 = 33.3333
# Frame
# Monitor: Frame(60)
'''
1초에 100칸만큼 가는 캐릭터가 이씀
1/60 > 100/60
1frame: 1.66 * 60 = 100
pygame wikidocs
'''
import random
import pygame #파이 게임 모듈 임포트
pygame.init() #파이 게임 초기화
SCREEN_WIDTH = 600
SCREEN_HEIGHT = 800
screen = pygame.display.set_mode((SCREEN_WIDTH, SCREEN_HEIGHT)) #화면 크기 설정
clock = pygame.time.Clock()
small_font = pygame.font.SysFont('malgungothic', 36)
score = 0
bomb_image = pygame.image.load('bomb.png')
bombs = []
for i in range(3):
bomb = bomb_image.get_rect(left=random.randint(0, 600 - bomb_image.get_width()), top=-100)
bombs.append(bomb)
BLACK = (0, 0, 0)
myIdol_img = pygame.image.load('player.png')
myIdol = myIdol_img.get_rect(centerx=300, bottom=800)
while True: #게임 루프
screen.fill(BLACK) #단색으로 채워 화면 지우기
#변수 업데이트
event = pygame.event.poll() #이벤트 처리
if event.type == pygame.QUIT:
break
elif event.type == pygame.KEYDOWN:
if event.key == pygame.K_LEFT:
myIdol.left -= 10
elif event.key == pygame.K_RIGHT:
myIdol.left += 10
for bomb in bombs:
bomb.top += 5
if bomb.top > 800:
bombs.remove(bomb)
bomb = bomb_image.get_rect(left=random.randint(0, 600 - bomb.width), top=-100)
bombs.append(bomb)
score += 1
if myIdol.left < 0:
myIdol.left = 0
elif myIdol.right > 600:
myIdol.right = 600
for bomb in bombs:
screen.blit(bomb_image, bomb)
screen.blit(myIdol_img, myIdol)
score_image = small_font.render('점수 {}'.format(score), True, (255 ,255, 0))
screen.blit(score_image, (10, 10))
#화면 그리기
pygame.display.update() #모든 화면 그리기 업데이트
clock.tick(30) #30 FPS (초당 프레임 수) 를 위한 딜레이 추가, 딜레이 시간이 아닌 목표로 하는 FPS 값
pygame.quit()