로그인

검색

MoA
조회 수 3923 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 게시글 수정 내역 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 게시글 수정 내역 댓글로 가기 인쇄 첨부

HUD.png

 

아직은 뭔가 허전하다. 기본적으로 에너지가 얼마나 남았는지, 시간은 얼마나 남았는지 정도는 표시해 줘야 한다. 이를 표시해 보자.

 

1. 시간 표시

 

적을 그린 후 시간을 그리자.

 

# 6.5 -시계를 그린다.
    font = pygame.font.Font(None, 24)
    survivedtext = font.render(str(
        int( (90000-pygame.time.get_ticks())/60000) ) + ":"
        +str( int((90000-pygame.time.get_ticks())/1000)%60).zfill(2),
        True, (0,0,0))
    textRect = survivedtext.get_rect()
    textRect.topright=[635,5]
    screen.blit(survivedtext, textRect)


폰트 크기는 24, 글자의 오른쪽 위 위치는 (635, 5) 인 것 정도만 알면 된다.

 

2. 체력 게이지 표시 

 

시계를 그린 후 체력 게이지도 그려보자.

먼저 이미지를 가져오자.

 

healthbar = pygame.image.load("resources/images/healthbar.png")
health = pygame.image.load("resources/images/health.png")

healthbar.png와 health.png를 열어보면 알겠지만 healthbar는 긴 빨간색 막대이고 health는 매우 짧은 녹색 막대이다. 처음에는 녹색 막대를 빨간색 막대에 가득 채울 것이지만 에너지가 깎이면 녹색 막대를 하나씩 지울 것이다.

체력 게이지 그리는 코드는 시계 그리는 코드 다음에 입력한다.

 

    # 6.6 - 체력 게이지를 그린다.
    screen.blit(healthbar, (5,5))
    for health1 in range(healthvalue):
        screen.blit(health, (health1+8,8))

healthvalue는 처음값이 194이다. range(194)는 0부터 193의 범위를 나타내므로 녹색 막대를 그리는 x 좌표의 범위는 8부터 201까지가 된다. 녹색 막대 이미지를 보면 알겠지만 가로 크기가 1픽셀이므로 녹색 막대 이미지 하나가 에너지 1에 해당하고 에너지가 깍이면 그만큼 녹색 막대 이미지가 없어진다.

 

3. 명중률 표시

 

우측 하단에 명중률도 표시해보자.

 

    # 6.7 - 명중률
    accuracytext = font.render(str(
        accuracy[0]) + "/" + str(accuracy[1]),
        True, (0,0,0))
    textRect = accuracytext.get_rect()
    textRect.bottomright=[635,475]
    screen.blit(accuracytext, textRect)

코드는 어렵지 않을 것이다.

?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 Tool/etc Programming 게시판 관련 2 MoA 2014.11.01 15452
278 서버 PM2를 활용한 Node.js 무중단 서비스하기 OBG 2023.03.09 2217
277 Deeplearning LSTM-AE를 이용한 시퀀스 데이터 이상 탐지 OBG 2023.08.14 2241
276 Web defer, async 스크립트 OBG 2023.01.10 2247
275 서버 Golang Tutorial for Node.js Developers, Part I.: Getting started OBG 2022.06.16 2251
274 LLM [번역]거대언어모델(LLM) 가이드 OBG 2023.07.20 2255
273 Web How to send dynamic charts with a Slack bot OBG 2022.05.31 2258
272 LLM Anthropic, LLM의 내부를 이해하는데 있어 상당한 진전을 보임 OBG 2024.06.03 2260
271 Tool/etc Synology: Top Best Apps For Docker OBG 2024.07.01 2274
270 Graphic ASCII 3D 렌더러 만들기 OBG 2024.06.03 2278
269 Web [Javascript] 비동기, Promise, async, await 확실하게 이해하기 OBG 2022.05.27 2295
268 Deeplearning [ifkakao] 추천 시스템: 맥락과 취향 사이 줄타 OBG 2024.01.10 2298
267 LLM [12월 1주] 떠오르는 '미스트랄 7B'...'라마 2' 이어 한국어 모델 세대교체 주도 OBG 2024.03.05 2324
266 Deeplearning 시계열 데이터 예측 모델 OBG 2022.11.08 2386
265 Tool/etc "Node.js를 떠나며" - express를 만든 TJ의 글 OBG 2022.06.23 2398
264 LLM Real-Time Stock News Sentiment Prediction with Python OBG 2024.04.11 2413
263 LLM Getting Started with Sentiment Analysis using Python OBG 2024.04.11 2418
262 API/MFC DoModal Dialog 기초 MoA 2013.07.28 2437
261 서버 Caching In Node.js Applications OBG 2023.03.03 2450
260 STL/Boost boost::shared_ptr 소개 Naya 2012.08.02 2451
259 Site 프로그래밍 관련 사이트 MoA 2012.08.02 2452
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 15 Next
/ 15