Below is an instruction that describes a task, paired with an input that provides further context. Write a response that appropriately completes the request.
Input:
Write a code to create the snake game
Output:
Here is a simple implementation of the classic Snake game in Python using the Pygame library. This code will create a window with a snake that moves in a grid, eating apples and growing in length.
import pygame
import random
import time
# Initialize Pygame
pygame.init()
# Set the dimensions of the game window
width, height = 600, 600
screen = pygame.display.set_mode((width, height))
pygame.display.set_caption('Snake Game')
# Define colors
white = (255, 255, 255)
black = (0, 0, 0)
red = (255, 0, 0)
green = (0, 255, 0)
# Define the snake
snake_pos = [[100, 50], [90, 50], [80, 50]]
snake_dir = [0, -1]
# Define the apple
apple_pos = [random.randint(50, width-50), random.randint(50, height-50)]
# Define the score
score = 0
# Define the clock
clock = pygame.time.Clock()
# Game loop
running = True
while running:
# Handle events
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# Move the snake
new_head = [snake_pos[0][0] + snake_dir[0], snake_pos[0][1] + snake_dir[1]]
# Check if the snake eats the apple
if new_head[0] == apple_pos[0] and new_head[1] == apple_pos[1]:
score += 1
apple_pos = [random.randint(50, width-50), random.randint(50, height-50)]
snake_pos.insert(0, new_head)
if len(snake_pos) > 10:
snake_pos.pop()
else:
snake_pos.insert(0, new_head)
snake_pos.pop()
# Check if the snake hits the wall
if new_head[0] < 0 or new_head[0] > width-100 or new_head[1] < 0 or new_head[1] > height-100:
running = False
# Draw the game
screen.fill(white)
for pos in snake_pos:
pygame.draw.rect(screen, black, pygame.Rect(pos[0], pos[1], 10, 10))
pygame.draw.rect(screen, red, pygame.Rect(apple_pos[0], apple_pos[1], 10, 10))
pygame.display.flip()
# Set the frame rate
clock.tick(10)
# Print the score
print(f'Score: {score}')
pygame.quit()
This code will create a window with a snake that moves in a grid, eating apples and growing in length. The score will be printed to the console.
Note that this is a very basic implementation and can be improved in many ways, such as adding a start screen, better collision detection, and more features.<|endoftext|>
Uploaded model
- Developed by: Ramikan-BR
- License: apache-2.0
- Finetuned from model : unsloth/Phi-3-mini-4k-instruct-bnb-4bit
This mistral model was trained 2x faster with Unsloth and Huggingface's TRL library.
- Downloads last month
- 20
This model does not have enough activity to be deployed to Inference API (serverless) yet. Increase its social
visibility and check back later, or deploy to Inference Endpoints (dedicated)
instead.
Model tree for Ramikan-BR/P3-mini-v1
Base model
unsloth/Phi-3-mini-4k-instruct-bnb-4bit