Çoğumuzun bildiği gibi yılan oyunu genellikle oyuncunun yılanın kafasını yönlendirdiği bir oyun türüdür. Oyuncu yılanın yönünü belirleyerek yılanın kafasını hareket ettirir ve yılanın kafası nereye giderse yılan da o yönde hareket eder.
Yılanın amacı, yılanın kafasını yönlendirerek oyunda rastgele yerleştirilen yemleri yemek ve yılanın boyunu uzatmaktır. Yılanın kafası veya vücudu, oyun alanının kenarlarına veya kendisine dokunduğunda oyun biter.
Aşağıda sizlerle paylaştığım Python kodu, oyuncunun yılanın kafasını yöneltmesini sağlayacak klavye kontrollerini sağlar ve yılanın hareketini işler. Ayrıca yemek oluşturma, yılanın uzunluğunu kontrol etme ve oyunun bitişini kontrol etme gibi işlevleri de sağlar. Bu şekilde, oyuncu yılanı yönlendirerek oyunu oynar ve yılanın boyunu uzatırken, yılanın kendisine veya oyun alanının kenarlarına çarpmasını önlemeye çalışır.
Yılan oyununun Python kodunu aşağıda bulabilirsiniz. Bu kod, Pygame kütüphanesi kullanılarak yazılmıştır.
import pygame
import random
# Oyun ekranı boyutu
WIDTH = 500
HEIGHT = 500
# Renkler
BLACK = (0, 0, 0)
WHITE = (255, 255, 255)
GREEN = (0, 255, 0)
RED = (255, 0, 0)
# Yılanın boyutu
BLOCK_SIZE = 10
# Pygame başlatılır
pygame.init()
# Oyun ekranı oluşturulur
screen = pygame.display.set_mode((WIDTH, HEIGHT))
pygame.display.set_caption("Yılan Oyunu")
# Oyun hızı ayarlanır
clock = pygame.time.Clock()
# Yılanın hareket hızı
SPEED = 20
# Yılanın başlangıç konumu
x = WIDTH / 2
y = HEIGHT / 2
# Yılanın hareket yönü
dx = 0
dy = 0
# Yılanın uzunluğu
snake_list = []
snake_length = 1
# Yemek oluşturma fonksiyonu
def create_food():
foodx = round(random.randrange(0, WIDTH - BLOCK_SIZE) / 10.0) * 10.0
foody = round(random.randrange(0, HEIGHT - BLOCK_SIZE) / 10.0) * 10.0
return foodx, foody
# Yemek oluşturulur
foodx, foody = create_food()
# Oyun döngüsü
game_over = False
while not game_over:
# Olaylar kontrol edilir
for event in pygame.event.get():
if event.type == pygame.QUIT:
game_over = True
elif event.type == pygame.KEYDOWN:
if event.key == pygame.K_LEFT:
dx = -BLOCK_SIZE
dy = 0
elif event.key == pygame.K_RIGHT:
dx = BLOCK_SIZE
dy = 0
elif event.key == pygame.K_UP:
dx = 0
dy = -BLOCK_SIZE
elif event.key == pygame.K_DOWN:
dx = 0
dy = BLOCK_SIZE
# Yılanın hareketi
x += dx
y += dy
# Yılanın ekran dışına çıkması kontrol edilir
if x < 0 or x >= WIDTH or y < 0 or y >= HEIGHT:
game_over = True
# Yılanın yemeği yemesi kontrol edilir
if x == foodx and y == foody:
foodx, foody = create_food()
snake_length += 1
# Yılanın uzunluğu kontrol edilir
snake_head = []
snake_head.append(x)
snake_head.append(y)
snake_list.append(snake_head)
if len(snake_list) > snake_length:
del snake_list[0]
# Yılanın çizimi
screen.fill(BLACK)
for segment in snake_list:
pygame.draw.rect(screen, GREEN, [segment[0], segment[1], BLOCK_SIZE, BLOCK_SIZE])
# Yemek çizimi
pygame.draw.rect(screen, RED, [foodx, foody, BLOCK_SIZE, BLOCK_SIZE])
# Ekranı güncelleme
pygame.display.update()
# Oyun hızı ayarlanır
clock.tick(SPEED)
# Pygame kapatılır
pygame.quit()
python, 'python yılan oyunu', 'python ile oyun', 'python snake game', 'python yılan oyunu kodları'', python yılan oyunu kodu', 'python pygame', 'python pygame kütüphanesi', pygame, 'pygame kütüphanesi örnek', 'oyun kodlama örnekleri', 'örnek oyun kodu', 'python örnek oyun kodu'