pygame 파이게임에서 텍스트를 사라지게 하고싶어요

조회수 2011회

파이게임을 만들고 있어요. 게임을 하면서 점수를 얻으면 다음 게임으로 넘어가는데, 띄워놓은 점수 텍스트가 계속 있어요. 찾아봐도 텍스트를 띄우는 것만 나오고 다시 내려가는건 안 나와서 질문 드립니다.

  • (•́ ✖ •̀)
    알 수 없는 사용자

1 답변

  • 텍스트는 어떤 방식으로 띄우고 있나요?

    pygame의 간단한 샘플을 확인해보니 화면 출력때마다 특정 색(white)으로 지우고 다시 그리는 방식으로 구현하고 있어서 다시 그리는 시점에 플레그(isTextView)를 사용하여 숨길 수 있을 것 같습니다.

    아래 예제는 클릭할 때마다 텍스트 표시/숨기기 동작을 하는 예제입니다.

    import pygame
    
    pygame.init()
    WHITE = (255, 255, 255)
    RED = (255, 0, 0)
    screen = pygame.display.set_mode([200, 100])
    done = False
    clock = pygame.time.Clock()
    isTextView = True;
    font = pygame.font.Font(None, 32) # 폰트설정
    txt_surface = font.render("This is Text", True, RED) # 텍스트
    
    while not done:
        clock.tick(10)
    
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                done = True
            if event.type == pygame.MOUSEBUTTONDOWN: # 마우스 클릭 이벤트
                isTextView = not isTextView;
    
        screen.fill(WHITE) # 화면 체우기
        if isTextView: # 텍스트 표시 여부
            screen.blit(txt_surface, (10, 10)) # 텍스트 출력
    
        pygame.display.flip()
    pygame.quit()
    

    구현방식이 달라서 위 내용으로 해결이 안되는 경우 간단한 코드를 첨부해주시기 바랍니다.

    감사합니다.

    • (•́ ✖ •̀)
      알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)