나: 갤러그 게임과 비슷한 코드를 알려줘
chatGPT: 물론입니다! 갤러그와 비슷한 슈팅 게임을 만들기 위한 간단한 코드 예시를 드리겠습니다.
예를 들어, Python과 Pygame을 사용하여 간단한 2D 슈팅 게임을 만들 수 있습니다. 아래는 우주선과 적의 이동 및 충돌 감지 코드 예시입니다.
import pygame
import random
# 게임 초기화
pygame.init()
screen = pygame.display.set_mode((800, 600))
pygame.display.set_caption(“Space Shooter”)
# 이미지 불러오기
player_img = pygame.image.load(“player.png”)
enemy_img = pygame.image.load(“enemy.png”)
# 적 생성
enemies = []
for i in range(10):
enemy = {
“img”: enemy_img,
“x”: random.randint(0, 800),
“y”: random.randint(50, 200),
“speed”: 2
}
enemies.append(enemy)
# 우주선 생성
player = {
“img”: player_img,
“x”: 400,
“y”: 500,
“speed”: 5
}
# 이동 함수
def move_player(x, y):
player[“x”] += x
player[“y”] += y
if player[“x”] < 0:
player[“x”] = 0
elif player[“x”] > 736:
player[“x”] = 736
if player[“y”] < 0:
player[“y”] = 0
elif player[“y”] > 536:
player[“y”] = 536
def move_enemy(enemy):
enemy[“y”] += enemy[“speed”]
if enemy[“y”] > 600:
enemy[“x”] = random.randint(0, 800)
enemy[“y”] = random.randint(50, 200)
# 충돌 함수
def is_collision(enemy, player):
distance = ((enemy[“x”] – player[“x”]) ** 2 + (enemy[“y”] – player[“y”]) ** 2) ** 0.5
if distance < 27:
return True
else:
return False
# 게임 루프
running = True
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]:
move_player(-player[“speed”], 0)
elif keys[pygame.K_RIGHT]:
move_player(player[“speed”], 0)
elif keys[pygame.K_UP]:
move_player(0, -player[“speed”])
elif keys[pygame.K_DOWN]:
move_player(0, player[“speed”])
# 이동 처리
for enemy in enemies:
move_enemy(enemy)
# 충돌 처리
for enemy in enemies:
if is_collision(enemy, player):
running = False
# 그리기
screen.fill((0, 0, 0))
for enemy in enemies:
screen.blit(enemy[“img”], (enemy[“x”], enemy[“y”]))
screen.blit(player[“img”], (player[“x”], player[“y”]))
pygame.display.update()
# 게임 종료
pygame.quit()
더 자세한 내용은 아래 링크를 눌러주세요
https://deer.cafe24.com/?p=239