#85[파이썬 이지코딩] 게임만들기 No.13 총알 만들기

Поделиться
HTML-код
  • Опубликовано: 3 янв 2025
  • 어린이도 할 수 있는 파이썬 코딩 공부!
    #파이썬 #어린이파이썬 #초보파이썬 #어린이코딩 #코딩초보 #레토릭게임 #게임만들기 #충돌게임 #클래스 #멤버함수 #함수선언 #오브젝트
    변수, 리스트 추가
    spacedown = False
    bullet_list = []
    lost_bullet_list = []
    bulletnum = 1000
    메인 루프에 추가
    repeatflag = True
    repeatnum = 0
    while repeatflag:
    dt = clock.tick(60)
    for event in pygame.event.get():
    if event.type == pygame.QUIT:
    repeatflag = False
    elif event.type == pygame.KEYDOWN:
    if event.key == pygame.K_LEFT:
    ball.xmove -= ball.step
    elif event.key == pygame.K_RIGHT:
    ball.xmove += ball.step
    elif event.key == pygame.K_SPACE:
    spacedown = True
    elif event.type == pygame.KEYUP:
    if event.key == pygame.K_LEFT or event.key == pygame.K_RIGHT:
    ball.xmove = 0
    elif event.key == pygame.K_SPACE:
    spacedown = False
    총알 만들기(메인루프 안에)
    if spacedown == True and repeatnum % 20 == 0 and bulletnum 보다크다 0:
    bullet = Myobj()
    bullet.image("images/bullet.png")
    bullet.size(5,15)
    bullet.x = ball.x+ball.wd/2-bullet.wd/2
    bullet.y = 520
    bullet.step = 1.5
    bullet_list.append(bullet)
    bulletnum -= 1
    총알 이동, 소멸
    for i in range(len(bullet_list)):
    bul = bullet_list[i]
    bul.y -= bul.step*dt
    if bul.y 보다작다 -bul.ht:
    lost_bullet_list.append(bul)
    for bul in lost_bullet_list:
    try:
    bullet_list.remove(bul)
    lost_bullet_list.remove(bul)
    except:
    pass
    화면 출력 수정
    screen.fill("#000000")
    msg = f"born:{bornalien} land:{landalien} bullet:{bulletnum}"
    showmsg = font.render(msg, True, (0,255,255))
    screen.blit(showmsg,(50,10))
    ball.show()
    for ali in alien_list:
    ali.show()
    for bul in bullet_list:
    bul.show()
    pygame.display.update()

Комментарии •