>

Berikut adalah implementasi dasar game Snake dengan Python menggunakan perpustakaan Pygame. Saya akan menguraikan setiap langkah dengan penjelasannya.

Langkah 1: Mengimpor perpustakaan yang diperlukan dan menginisialisasi Pygame

import pygame
import random

# Initialize Pygame
pygame.init()

# Set the screen dimensions
screen_width = 640
screen_height = 480
screen = pygame.display.set_mode((screen_width, screen_height))

# Set the title of the window
pygame.display.set_caption("Snake Game")

# Set the clock for the game loop
clock = pygame.time.Clock()

Langkah 2: Mendefinisikan konstanta dan variabel permainan

# Define some colors
black = (0, 0, 0)
white = (255, 255, 255)
red = (255, 0, 0)

# Set the snake's initial position and direction
snake_x = screen_width / 2
snake_y = screen_height / 2
snake_direction = 'right'

# Set the snake's initial length and speed
snake_length = 10
snake_speed = 15

# Set the food's initial position
food_x = random.randint(0, screen_width - 10)
food_y = random.randint(0, screen_height - 10)

Langkah 3: Mendefinisikan game loop

while True:
    # Handle events
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            pygame.quit()
            sys.exit()
        elif event.type == pygame.KEYDOWN:
            if event.key == pygame.K_UP and snake_direction!= 'down':
                snake_direction = 'up'
            elif event.key == pygame.K_DOWN and snake_direction!= 'up':
                snake_direction = 'down'
            elif event.key == pygame.K_LEFT and snake_direction!= 'right':
                snake_direction = 'left'
            elif event.key == pygame.K_RIGHT and snake_direction!= 'left':
                snake_direction = 'right'

    # Move the snake
    if snake_direction == 'up':
        snake_y -= snake_speed
    elif snake_direction == 'down':
        snake_y += snake_speed
    elif snake_direction == 'left':
        snake_x -= snake_speed
    elif snake_direction == 'right':
        snake_x += snake_speed

    # Check for collisions with the wall
    if snake_x < 0 or snake_x >= screen_width or snake_y < 0 or snake_y >= screen_height:
        print("Game Over!")
        pygame.quit()
        sys.exit()

    # Check for collisions with the food
    if snake_x == food_x and snake_y == food_y:
        snake_length += 1
        food_x = random.randint(0, screen_width - 10)
        food_y = random.randint(0, screen_height - 10)

    # Draw everything
    screen.fill(black)
    pygame.draw.rect(screen, white, (snake_x, snake_y, 10, 10))
    pygame.draw.rect(screen, red, (food_x, food_y, 10, 10))

    # Update the screen
    pygame.display.flip()
    clock.tick(60)

Penjelasan:

  1. Kami menginisialisasi Pygame dan mengatur dimensi layar, judul, dan jam.
  2. Kami mendefinisikan beberapa konstanta dan variabel permainan, seperti posisi dan arah awal ular, posisi awal makanan, serta kecepatan dan panjang ular.
  3. Game loop terdiri dari penanganan event (misalnya input keyboard), menggerakkan ular berdasarkan arah saat ini, memeriksa tabrakan dengan dinding dan makanan, dan menggambar segala sesuatu di layar.
  4. Saat ular bertabrakan dengan dinding, permainan berakhir. Ketika ular bertabrakan dengan makanan, panjang ular bertambah, dan posisi makanan baru dihasilkan.
  5. Terakhir, kami memperbarui layar dan membatasi kecepatan bingkai hingga 60 FPS menggunakan clock.tick(60) fungsi.

Ini adalah implementasi dasar dari game Snake dengan Python menggunakan Pygame. Anda dapat menyempurnakan permainan dengan menambahkan fitur seperti penilaian, desain level, dan animasi yang lebih halus.

Luncurkan toko Anda hanya dalam 4 detik dengan 
 
Top