Editor 1
Editor 1
import sys
import json
import os
# Constants
WIDTH, HEIGHT = 800, 600
TILE_SIZE = 64
TILE_PALETTE_HEIGHT = TILE_SIZE
# Initialize Pygame
pygame.init()
screen = pygame.display.set_mode((WIDTH, HEIGHT))
pygame.display.set_caption("Sprite Game Editor")
# Load sprites
sprite_folder = "sprites" # Folder where sprites are located
sprites = []
sprite_names = []
selected_sprite = 0
# Create a grid
grid_width = WIDTH // TILE_SIZE
grid_height = (HEIGHT - TILE_PALETTE_HEIGHT) // TILE_SIZE
grid = [[-1 for _ in range(grid_width)] for _ in range(grid_height)]
# Main loop
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
elif event.type == pygame.MOUSEBUTTONDOWN:
if event.button == 1: # Left mouse button
x, y = event.pos
if y < TILE_PALETTE_HEIGHT: # Clicked in the palette
selected_sprite = x // TILE_SIZE
else: # Clicked on the grid
grid[(y - TILE_PALETTE_HEIGHT) // TILE_SIZE][x // TILE_SIZE] =
selected_sprite
elif event.type == pygame.KEYDOWN:
if event.key == pygame.K_s: # Save level on 'S' key press
save_level('level.json')
elif event.key == pygame.K_l: # Load level on 'L' key press
load_level('level.json')