디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

[🔎질문] 아니 시발 대체 왜 안되는건지 알려주실 큰형님 구합니다앱에서 작성

ㅇㅇ(114.207) 2022.03.27 20:07:38
조회 181 추천 0 댓글 11
														

import pygame

pygame.init()

WIDTH = 900
HEIGHT = 1100
size = (WIDTH, HEIGHT)
screen = pygame.display.set_mode(size)
pygame.display.set_caption("Breakout")
FPS = 60

WHITE = (257, 255, 255)
GREY = (213, 210, 212)
BLACK = (0, 0, 0)
BLUE = (0, 97, 148)

RED = (163, 8, 0)
ORANGE = (184, 119, 0)
GREEN = (0, 127, 33)
YELLOW = (198, 199, 37)

balls = 1
velocity = 3.5

paddle_width = 54
paddle_height = 20

all_sprites_list = pygame.sprite.Group()

class Brick(pygame.sprite.Sprite):

def __init__(self, color, width, height):
super().__init__()
self.image = pygame.Surface([width, height])
pygame.draw.rect(self.image, color, [0, 0, width, height])
self.rect = self.image.get_rect()


class Paddle(pygame.sprite.Sprite):

def __init__(self, color, width, height):
super().__init__()
self.image = pygame.Surface([width, height])
pygame.draw.rect(self.image, color, [0, 0, width, height])
self.rect = self.image.get_rect()

def moveRight(self, pixels):
self.rect.x += pixels
if self.rect.x > WIDTH - wall_width - paddle_width:
self.rect.x = WIDTH - wall_width - paddle_width

def moveLeft(self, pixels):
self.rect.x -= pixels
if self.rect.x < wall_width:
self.rect.x = wall_width


class Ball(pygame.sprite.Sprite):

def __init__(self, color, width, height):
super().__init__()
self.image = pygame.Surface([width, height])
pygame.draw.rect(self.image, color, [0, 0, width, height])
self.rect = self.image.get_rect()
self.velocity = [velocity, velocity]

def update(self):
self.rect.x += self.velocity[0]
self.rect.y += self.velocity[1]

def bounce(self):
self.velocity[0] = self.velocity[0]
self.velocity[1] = -self.velocity[1]


paddle = Paddle(BLUE, paddle_width, paddle_height)
paddle.rect.x = WIDTH // 2 - paddle_width // 2
paddle.rect.y = HEIGHT - 65

ball = Ball(RED, 10, 10)
ball.rect.x = WIDTH // 2 - 5
ball.rect.y = HEIGHT // 2 - 5

all_bricks = pygame.sprite.Group()

brick_width = 55
brick_height = 16
x_gap = 7
y_gap = 5
wall_width = 16


def bricks():
for j in range(8):
for i in range(14):
if j < 2:
if i == 0:
brick = Brick(RED, brick_width, brick_height)
brick.rect.x = wall_width
brick.rect.y = 215 + j * (y_gap + brick_height)
all_sprites_list.add(brick)
all_bricks.add(brick)
else:
brick = Brick(RED, brick_width, brick_height)
brick.rect.x = wall_width + brick_width + x_gap + (i - 1) * (brick_width + x_gap)
brick.rect.y = 215 + j * (y_gap + brick_height)
all_sprites_list.add(brick)
all_bricks.add(brick)
if 1 < j < 4:
if i == 0:
brick = Brick(ORANGE, brick_width, brick_height)
brick.rect.x = wall_width
brick.rect.y = 215 + j * (y_gap + brick_height)
all_sprites_list.add(brick)
all_bricks.add(brick)
else:
brick = Brick(ORANGE, brick_width, brick_height)
brick.rect.x = wall_width + brick_width + x_gap + (i - 1) * (brick_width + x_gap)
brick.rect.y = 215 + j * (y_gap + brick_height)
all_sprites_list.add(brick)
all_bricks.add(brick)
if 3 < j < 6:
if i == 0:
brick = Brick(GREEN, brick_width, brick_height)
brick.rect.x = wall_width
brick.rect.y = 215 + j * (y_gap + brick_height)
all_sprites_list.add(brick)
all_bricks.add(brick)
else:
brick = Brick(GREEN, brick_width, brick_height)
brick.rect.x = wall_width + brick_width + x_gap + (i - 1) * (brick_width + x_gap)
brick.rect.y = 215 + j * (y_gap + brick_height)
all_sprites_list.add(brick)
all_bricks.add(brick)
if 5 < j < 8:
if i == 0:
brick = Brick(YELLOW, brick_width, brick_height)
brick.rect.x = wall_width
brick.rect.y = 215 + j * (y_gap + brick_height)
all_sprites_list.add(brick)
all_bricks.add(brick)
else:
brick = Brick(YELLOW, brick_width, brick_height)
brick.rect.x = wall_width + brick_width + x_gap + (i - 1) * (brick_width + x_gap)
brick.rect.y = 215 + j * (y_gap + brick_height)
all_sprites_list.add(brick)
all_bricks.add(brick)


brick_wall = bricks()

all_sprites_list.add(paddle)
all_sprites_list.add(ball)


def main(score, balls):

step = 0

run = True
while run:

for event in pygame.event.get():
if event.type == pygame.QUIT:
run = False

keys = pygame.key.get_pressed()
if keys[pygame.K_LEFT]:
paddle.moveLeft(10)
if keys[pygame.K_RIGHT]:
paddle.moveRight(10)

all_sprites_list.update()

if ball.rect.y < 40:
ball.velocity[1] = -ball.velocity[1]


if ball.rect.x >= WIDTH - wall_width - 10:
ball.velocity[0] = -ball.velocity[0]


if ball.rect.x <= wall_width:
ball.velocity[0] = -ball.velocity[0]

if ball.rect.y > HEIGHT:
ball.rect.x = WIDTH // 2 - 5
ball.rect.y = HEIGHT // 2 - 5
ball.velocity[1] = ball.velocity[1]
balls += 1
if balls == 4:
run = False

if pygame.sprite.collide_mask(ball, paddle):
ball.rect.x += ball.velocity[0]
ball.rect.y -= ball.velocity[1]
ball.bounce()


brick_collision_list = pygame.sprite.spritecollide(ball, all_bricks, False)
for brick in brick_collision_list:
ball.bounce()

if len(brick_collision_list) > 0:
step += 1
for i in range(0, 448, 28):
if step == i:
ball.velocity[0] += 1
ball.velocity[1] += 1
if 380.5 > brick.rect.y > 338.5:
score += 1
brick.kill()
elif 338.5 > brick.rect.y > 294:
score += 3
brick.kill()
elif 294 > brick.rect.y > 254.5:
score += 5
brick.kill()
else:
score += 7
brick.kill()
if len(all_bricks) == 0:


run = False

screen.fill(BLACK)

pygame.draw.line(screen, GREY, [0, 19], [WIDTH, 19], 40)
pygame.draw.line(screen, GREY, [(wall_width / 2) - 1, 0], [(wall_width / 2) - 1, HEIGHT], wall_width)
pygame.draw.line(screen, GREY, [(WIDTH - wall_width / 2) - 1, 0], [(WIDTH - wall_width / 2) - 1, HEIGHT], wall_width)

pygame.draw.line(screen, BLUE, [(wall_width / 2) - 1, HEIGHT - 65 + paddle_height / 2 - 54 / 2], [(wall_width / 2) - 1, HEIGHT - 65 + paddle_height / 2 - 54 / 2 + 54], wall_width)
pygame.draw.line(screen, BLUE, [(WIDTH - wall_width / 2) - 1, HEIGHT - 65 + paddle_height / 2 - 54 / 2], [(WIDTH - wall_width / 2) - 1, HEIGHT - 65 + paddle_height / 2 - 54 / 2 + 54], wall_width)

pygame.draw.line(screen, RED, [(wall_width / 2) - 1, 212.5], [(wall_width / 2) - 1, 212.5 + 2 * brick_height + 2 * y_gap], wall_width)
pygame.draw.line(screen, RED, [(WIDTH - wall_width / 2) - 1, 212.5], [(WIDTH - wall_width / 2) - 1, 212.5 + 2 * brick_height + 2 * y_gap], wall_width)

pygame.draw.line(screen, ORANGE, [(wall_width / 2) - 1, 212.5 + 2 * brick_height + 2 * y_gap], [(wall_width / 2) - 1, 212.5 + 4 * brick_height + 4 * y_gap], wall_width)
pygame.draw.line(screen, ORANGE, [(WIDTH - wall_width / 2) - 1, 212.5 + 2 * brick_height + 2 * y_gap], [(WIDTH - wall_width / 2) - 1, 212.5 + 4 * brick_height + 4 * y_gap], wall_width)

pygame.draw.line(screen, GREEN, [(wall_width / 2) - 1, 212.5 + 4 * brick_height + 4 * y_gap], [(wall_width / 2) - 1, 212.5 + 6 * brick_height + 6 * y_gap], wall_width)
pygame.draw.line(screen, GREEN, [(WIDTH - wall_width / 2) - 1, 212.5 + 4 * brick_height + 4 * y_gap], [(WIDTH - wall_width / 2) - 1, 212.5 + 6 * brick_height + 6 * y_gap], wall_width)

pygame.draw.line(screen, YELLOW, [(wall_width / 2) - 1, 212.5 + 6 * brick_height + 6 * y_gap], [(wall_width / 2) - 1, 212.5 + 8 * brick_height + 8 * y_gap], wall_width)
pygame.draw.line(screen, YELLOW, [(WIDTH - wall_width / 2) - 1, 212.5 + 6 * brick_height + 6 * y_gap], [(WIDTH - wall_width / 2) - 1, 212.5 + 8 * brick_height + 8 * y_gap], wall_width)


all_sprites_list.draw(screen)

pygame.display.update()



pygame.quit()


파이게임 사용해서 만드는건데
process finished with exit code 0 나옴 근데 왜 안되냐
내 컴퓨터만 안되는건가 그냥 들갔다가 튕겨버림 제발 ㅜ


- dc official App

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
등록순정렬 기준선택
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 말머리 제목 글쓴이 작성일 조회 추천
2863 설문 시세차익 부러워 부동산 보는 눈 배우고 싶은 스타는? 운영자 24/05/27 - -
635 공지 가독성 좋은 f-string 을 쓰자 [9] 주넹갤로그로 이동합니다. 21.10.02 3117 10
1056 공지 (공지 요청)[질문지 양식] 복붙해 쓰시오. [4] 203.121.116.11갤로그로 이동합니다. 21.12.14 2292 3
634 공지 질문 올릴때 [2] 주넹갤로그로 이동합니다. 21.10.02 2432 5
178 공지 파이썬 공부할 때 참고할만한 것들 [6] 주넹갤로그로 이동합니다. 21.04.21 6199 6
1 공지 파이썬 미니 갤러리입니다. [9] 주넹갤로그로 이동합니다. 20.12.14 3124 7
2533 일반 순서도 도와주세요 ㅇㅇ(121.141) 05.26 17 0
2532 일반 렘 메모리 누수에 대해서 아는 게이 있노 [2] ㅇㅇ(115.23) 05.25 37 0
2530 일반 EXE 만들때 질문ㄴE 로 만들었는데 [2] 리우(121.133) 05.23 28 0
2529 🔎질문 파이썬 캐리지 리턴 질문! [9] Lok0348(121.133) 05.21 64 0
2528 일반 파이썬 윈도우 인스톨러 오류… [3] ㅇㅇ(106.101) 05.21 32 0
2526 🔎질문 형님들 도와주십쇼 [1] ㅇㅇ(39.127) 05.18 36 0
2525 🔎질문 matplotlib 다운해서 과제좀 하려는데 시작부터 막혀요.. 도와주요 [2] ㅇㅇ(218.48) 05.13 59 0
2524 🔎질문 파이썬 멀티쓰레드 질문. [3] ㅇㅇ(59.19) 05.07 63 0
2523 🔎질문 도와주세요 [3] ㅇㅇ(119.82) 05.01 96 0
2521 🔎질문 작동 되던게 갑자기 안되는 경우? [4] ㅇㅇ(119.207) 04.26 63 0
2520 🔎질문 과제인데 해결책 던져주실분 [5] ㅇㅇ(211.243) 04.25 86 0
2519 🔎질문 질문 하나만 해도 되겠습니까 [3] ㅇㅇ(1.227) 04.25 69 0
2518 🔎질문 오류가 이렇게 나는데 혹시 해결방법 있을까요 ㅇㅇ(222.112) 04.24 55 0
2515 🔎질문 형들 질문좀 [3] ㅇㅇ(220.77) 04.22 62 0
2513 🔎질문 auto gpt 사용하려하는데 [1] ㅇㅇ(14.7) 04.20 79 0
2511 🔎질문 파이썬 pyinstall 질문 [1] ㅇㅇ(121.171) 04.18 80 0
2509 🔎질문 selenium으로 이런 것도 가능할까요? [11] ㅇㅇ(122.40) 04.10 167 0
2508 🔎질문 파이썬 질문입니다 제발 도와주세요 [4] ㅇㅇ(218.154) 04.09 143 0
2507 🔎질문 코드 질문입니다 [2] ㅇㅇ(175.192) 04.09 85 0
2506 일반 엡실론값 찾는거 도와줄사람... [2] ㅇㅇ(61.72) 04.08 53 0
2505 🔎질문 파이썬 과제 질문드립니다.... [2] ㅇㅇ(211.114) 04.07 146 0
2503 🔎질문 GCE으로 디시 접속하는게 막혀있는건가요? [3] ㅇㅇ(222.119) 04.02 45 0
2502 🔎질문 혼자공부파이썬 vs 점프투파이썬 [1] ㅇㅇ(218.237) 04.02 156 0
2501 🔎질문 같은 파일 안에있는 모듈을 import하면 오류나는데 어캐함 [1] ㅇㅇ(211.111) 04.02 46 0
2500 🔎질문 input 함수에서 숫자랑 문자 동시에 쓰려면 어떻게 해야 돼? [4] ㅇㅇ(119.192) 03.31 62 0
2499 🔎질문 파이썬 질문이요.. ㅠㅠ ㅇㅇ(39.123) 03.29 80 0
2498 🔎질문 str 내가 제대로 이해한게 맞아 형들? [4] ㅇㅇ(182.210) 03.27 89 0
2496 🔎질문 pyaudio로 usb 헤드셋 출력 장치 녹음 가능한가요? ㅇㅇ(180.233) 03.26 50 0
2495 🔎질문 잘못된거 고쳐줘용 failed 하나 떠요 [3] ㅇㅇ(121.180) 03.26 52 0
2494 🔎질문 잘못된 부분 고쳐줘용 [1] ㅇㅇ(121.180) 03.26 40 0
2493 🔎질문 간만에 웹크롤링 관련 질문 드릴 게 있어서 왔습니다. (유튜브 댓글) ㅁㅁ(14.39) 03.26 79 0
2492 🔎질문 파이썬 list 질문 [5] ㅇㅇ(112.163) 03.26 83 0
2491 🔎질문 형님들 질문 있습니다. [1] ㅇㅇ(211.185) 03.25 54 0
2490 🔎질문 파이썬 gc.collect() 결과값이 0이면 메모리 정리되었다는거임? [1] ㅇㅇ(112.163) 03.24 50 0
2488 🔎질문 파이썬 컴퓨터에서 나오는 오디오 출력 장치 녹음 방법 [3] ㅇㅇ(121.171) 03.22 175 0
2487 🔎질문 파이썬으로 만든 프로그램 계속 돌리면 램 쌓여? [3] ㅇㅇ(112.163) 03.20 102 0
2485 🔎질문 파이썬 실행 시간 측정 질문 ㅇㅇ(220.86) 03.17 94 0
2483 🔎질문 助けて, 助けて, 助けて, 助けて ㅇㅇ(210.95) 03.14 53 0
2482 🔎질문 html 파일 주피터 노트북에서 ipynb로 여는 방법이 있을까요? ㅇㅇ(121.171) 03.12 74 0
2481 🔎질문 파이썬 파일 읽기 질문 드립니다. [5] ㅇㅇ(121.140) 03.12 219 0
2477 🔎질문 제외할 조합 추가하면 에러 뜨는데 어떻게 해야할까요 [6] 시스템파괴갤로그로 이동합니다. 03.04 70 1
2475 🔎질문 파이썬 독학 및 데이터분석 하고싶어서 아나콘다 깔았는데 [2] ㅇㅇ갤로그로 이동합니다. 02.28 131 0
2474 일반 chrome driver [1] ㅇㅇ(121.125) 02.26 66 0
2473 🔎질문 win32gui 설치가 안되는 도움좀... [1] ㅇㅇ(59.19) 02.26 117 0
2471 🔎질문 고1 입문하려는데 질문있습니다 [3] ㅇㅇ(220.76) 02.25 144 0
2469 🔎질문 파이썬 연습중인 개초보입니다. [2] ㅇㅇ(125.138) 02.22 116 0
2467 🔎질문 크롤링 공부중인데 주제 추천점 아무거나 만들어봄 [6] ㅇㅇ(221.158) 02.13 125 0
2465 🔎질문 json date 날짜 변환 질문입니다. [2] ㅇㅇ(175.194) 02.08 75 0
2464 🔎질문 멀티프로세싱 질문 [1] ㅇㅇ(112.163) 02.07 94 0
2463 🔎질문 파이썬 - 하나의 텍스트 파일에 있는 내용을 다른 텍스트 파일에 이어넣기 [2] ㅇㅇ(14.32) 02.07 64 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2