Решил написать игру на питоне, пошаговую стратегию. Хочется реализовать гексогональную сетку по которой будут ходить фигуры. Суть проблемы заключается в том что я вовсе не знаком с гексогональними картами и не представляю как это можно осуществить. Можете что нибудь посоветовать, подкинуть идей. Желательно с использованием csv файлов поскольку у меня уже есть опыт работы с ними. Вот пример моего кода для квадратичной тайловой сетки:
import pygame
from csv import reader
from settings import tile_width, tile_height
from os import walk
def import_folder(path):
surface_list = []
for folder_name, sub_folders, image_files in walk(path):
for image in image_files:
full_path = path + '/' + image
image_surf = pygame.image.load(full_path).convert_alpha()
surface_list.append(image_surf)
return surface_list
def import_csv_layout(path):
terrain_map = []
with open(path) as map:
level = reader(map, delimiter = ',')
for row in level:
terrain_map.append(list(row))
return terrain_map
def import_cut_graphics(path):
surface = pygame.image.load(path).convert_alpha()
tile_num_x = int(surface.get_size()[0] / tile_width)
tile_num_y = int(surface.get_size()[1] / tile_height)
cut_tiles = []
for row in range(tile_num_y):
for col in range(tile_num_x):
x = col * tile_width
y = row * tile_height
new_surf = pygame.Surface((tile_width, tile_height))
new_surf.blit(surface, (0,0), pygame.Rect(x, y, tile_width, tile_height))
cut_tiles.append(new_surf)
return cut_tiles
В целом результат должен быть похож на етот: