카테고리 없음

우리아이와즐거운시간

ptshlee 2024. 9. 26. 15:53


아이들과 함께 추억의 게임 만들기: 수왕기(Altered Beast)를 쉽게 만들어보자!

안녕하세요, 여러분! 오늘은 아이들과 함께 추억의 오락실 게임 **수왕기(Altered Beast)**를 따라 만들어볼 거예요. 게임을 직접 만드는 과정이 어렵게 느껴지겠지만, 차근차근 따라 하면 누구나 재미있게 만들 수 있답니다. 이 글에서는 아주 쉽게 설명할 테니, 우리 아이들도 즐겁게 게임을 만들고 함께 플레이할 수 있을 거예요! 자, 신나는 마음으로 시작해볼까요?


---

1. 게임을 만들기 위한 준비물

게임을 만들기 위해선 몇 가지 준비가 필요해요. 하지만 걱정하지 마세요! 준비물은 아주 간단합니다.

1. Python: 게임을 만들 때 사용할 프로그래밍 언어입니다. Python 다운로드 링크에서 최신 버전을 설치하세요.


2. Pygame: 파이썬으로 게임을 쉽게 만들 수 있게 도와주는 도구입니다. 설치는 간단해요. 명령어 창을 열고 아래 명령어를 입력해 설치하세요.

pip install pygame



이제 준비물이 끝났어요! 정말 간단하죠?


---

2. 기본 게임 화면 만들기

게임에서 가장 먼저 해야 할 일은 기본적인 화면을 만들어 보는 거예요. 여기서 설명하는 코드를 복사해서 실행하면, 검은색 화면이 나타날 거예요. 이 화면은 게임이 실행되고 있다는 신호예요!

다음 코드를 복사해 사용하세요:

import pygame
import sys

# Pygame 초기화
pygame.init()

# 화면 크기 설정 (800x600)
screen = pygame.display.set_mode((800, 600))
pygame.display.set_caption('수왕기 만들기!')

# 게임 루프
running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

    # 검정색 배경
    screen.fill((0, 0, 0))

    # 화면 업데이트
    pygame.display.flip()

# Pygame 종료
pygame.quit()
sys.exit()

이 코드를 실행하면 검정색 화면이 나옵니다. 화면을 닫기 전까지 계속 유지되며, 이것이 게임의 첫 단계예요!


---

3. 주인공 캐릭터 추가하기

이제 게임에 주인공이 필요해요. 수왕기에서 주인공은 나중에 늑대인간으로 변신하지만, 처음에는 사람이겠죠? 주인공의 이미지를 화면에 띄워볼게요.

1. 이미지 준비하기: player.png라는 이름으로 주인공 캐릭터 이미지를 준비하세요.


2. 준비된 이미지를 화면에 표시하는 방법은 다음과 같아요.



# 주인공 이미지 불러오기
player_image = pygame.image.load('player.png')
player_rect = player_image.get_rect()
player_rect.topleft = (50, 50)  # 주인공의 초기 위치

# 게임 루프 안에서 이미지 표시
screen.blit(player_image, player_rect)

이제 주인공이 화면에 나타났을 거예요!


---

4. 캐릭터 움직이기

게임을 더 재미있게 만들려면, 주인공이 가만히 있지 않고 움직일 수 있어야겠죠? 키보드의 화살표 키를 사용해 주인공을 움직이게 해볼게요.

player_speed = 5  # 주인공이 움직이는 속도 설정

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

    # 키보드 입력 처리
    keys = pygame.key.get_pressed()
    if keys[pygame.K_LEFT]:
        player_rect.x -= player_speed
    if keys[pygame.K_RIGHT]:
        player_rect.x += player_speed
    if keys[pygame.K_UP]:
        player_rect.y -= player_speed
    if keys[pygame.K_DOWN]:
        player_rect.y += player_speed

    # 화면 업데이트
    screen.fill((0, 0, 0))
    screen.blit(player_image, player_rect)
    pygame.display.flip()

이제 주인공이 화살표 키를 눌러서 자유롭게 움직일 수 있습니다!


---

5. 적 추가하기

게임에는 주인공만 있으면 심심하죠? 이제 적을 추가해보겠습니다. 적은 화면의 다른 위치에 나타나며, 주인공과 충돌하면 게임이 끝나는 기능을 추가할 수 있어요.

1. 적 이미지를 준비하세요. 예를 들어 enemy.png라는 이름으로 준비한 적 캐릭터를 추가할 수 있습니다.


2. 적을 화면에 표시하고 주인공과 충돌을 처리하는 코드는 다음과 같아요.



# 적 이미지 불러오기
enemy_image = pygame.image.load('enemy.png')
enemy_rect = enemy_image.get_rect()
enemy_rect.topleft = (400, 50)  # 적의 위치 설정

# 게임 루프에서 적 표시
screen.blit(enemy_image, enemy_rect)

# 주인공과 적이 충돌했는지 확인
if player_rect.colliderect(enemy_rect):
    print("충돌 발생!")
    running = False  # 게임 종료


---

6. 변신 시스템 추가하기

수왕기의 하이라이트! 바로 주인공이 늑대인간으로 변신하는 순간이죠. 일정 시간이 지나면 주인공이 늑대인간으로 변신하도록 코드를 작성해볼게요.

import time
start_time = time.time()  # 게임 시작 시간 기록
transform_time = 10  # 10초 후 변신

while running:
    elapsed_time = time.time() - start_time  # 경과 시간 계산

    if elapsed_time > transform_time:
        player_image = pygame.image.load('werewolf.png')  # 변신 후 이미지

    # 화면 업데이트
    screen.fill((0, 0, 0))
    screen.blit(player_image, player_rect)
    pygame.display.flip()

이제 주인공은 10초가 지나면 늑대인간으로 변신하게 되었어요! 정말 신나는 순간이죠?


---

7. 게임 종료 기능 추가하기

마지막으로 게임에 종료 기능을 추가해볼게요. 주인공이 적과 충돌하거나 게임에서 패배할 때, 게임을 종료하는 기능을 만들 수 있습니다.

# 적과 충돌 시 게임 종료
if player_rect.colliderect(enemy_rect):
    print("게임 오버!")
    running = False

이렇게 하면 적과 충돌 시 게임이 종료되며, 간단한 게임 완성입니다!


---

마무리하며

오늘은 아이들과 함께 추억의 게임 수왕기를 직접 만들어보았어요! 복잡해 보였던 게임 개발도 이렇게 쉽게 따라 할 수 있답니다. 우리 아이들과 함께 즐겁게 게임도 만들고, 그 과정을 통해 창의력도 키울 수 있는 좋은 시간이 되었길 바라요.

다음에는 게임에 더 많은 기능을 추가해 더 재미있고 완성도 높은 게임을 만들어볼게요. 함께 해주셔서 감사합니다!