Конечно! Давайте создадим основу для игры в стиле "двух башен", где ваши гномы защищают башни от нападающих гномов противника. Я предложу пример кода на Python с использованием библиотеки Pygame. Этот код будет базовой версией, и вы сможете его доработать.
import pygame
import random
# Настройки
SCREEN_WIDTH = 800
SCREEN_HEIGHT = 600
GNOME_COST = 25
SUN_FALL_TIME = 6000 # миллисекунд
GNOME_SPAWN_TIME = 3000 # миллисекунд
# Инициализация Pygame
pygame.init()
screen = pygame.display.set_mode((SCREEN_WIDTH, SCREEN_HEIGHT))
pygame.display.set_caption('Защита башен')
# Цвета
WHITE = (255, 255, 255)
GREEN = (0, 255, 0)
# Класс для солнца
class Sun:
def __init__(self):
self.value = random.choice([25, 50, 75])
self.x = random.randint(0, SCREEN_WIDTH)
self.y = 0
def fall(self):
self.y += 5 # Скорость падения
def draw(self):
pygame.draw.circle(screen, WHITE, (self.x, self.y), 10)
# Основной цикл игры
def main():
clock = pygame.time.Clock()
running = True
suns = []
gnomes = []
points = 0
pygame.time.set_timer(pygame.USEREVENT, SUN_FALL_TIME)
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
if event.type == pygame.USEREVENT:
suns.append(Sun())
# Обработка движения солнца
for sun in suns:
sun.fall()
if sun.y > SCREEN_HEIGHT:
suns.remove(sun)
if sun.y > SCREEN_HEIGHT - 10: # Сбор солнца
points += sun.value
suns.remove(sun)
# Отрисовка
screen.fill(GREEN)
for sun in suns:
sun.draw()
# Показ очков
font = pygame.font.Font(None, 36)
text = font.render(f'Очки: {points}', True, WHITE)
screen.blit(text, (10, 10))
pygame.display.flip()
clock.tick(60)
pygame.quit()
if __name__ == "__main__":
main()
Объяснение кода:
- Код начинается с настройки экрана и инициализации Pygame.
- Определяются базовые цвета и класс
Sun, который отвечает за солнца, падающие с неба. - В главном цикле игры происходит обновление положения солнц и обработка событий, таких как сбор солнца.
- Каждые 6 секунд появляется новое солнце.
- Появление гномов и действия на поле для их установки можно добавить в дальнейшем.
Это лишь основа, и в коде можно добавить логику для гномов, их стрельбы и получения очков. Надеюсь, это поможет вам в создании своей игры!
