from minecraftstuff import MinecraftTurtle
from mcpi.minecraft import Minecraft
from mcpi import block
import math
from collections.abc import Iterable
import collections
collections.Iterable = Iterable
# Создание объекта Minecraft и установка позиции игрока
mc = Minecraft.create()
pos = mc.player.getPos()
# Создание черепахи для рисования
steve = MinecraftTurtle(mc, pos)
steve.speed(0)
# Функция для рисования одного кольца Олимпийской символики
def draw_olympic_ring(steve, color, radius):
steve.penblock(block.WOOL.id, color)
steve.penup()
steve.left(90)
steve.forward(radius)
steve.right(90)
steve.pendown()
draw_circle(steve, radius)
# Функция для рисования круга
def draw_circle(steve, radius):
circumference = 2 * math.pi * radius
side_length = circumference / 360
for i in range(360):
steve.forward(side_length)
steve.right(1)
# Радиус кругов для колец Олимпийской символики
radius = 10
# Позиция для первого кольца
pos_x = pos.x - 30 # Изменено на -30, чтобы кольца были на одинаковом расстоянии друг от друга
pos_y = pos.y
pos_z = pos.z
# Цвета кольцев Олимпийской символики (синий, черный, красный, желтый, зеленый)
colors = [
(block.WOOL.id, 11), # Синий
(block.WOOL.id, 15), # Черный
(block.WOOL.id, 14), # Красный
(block.WOOL.id, 4), # Желтый
(block.WOOL.id, 5) # Зеленый
]
# Расположение кольцев Олимпийской символики (как буква W)
ring_positions = [
(0, 0), # Центральное кольцо
(-20, 10), # Синее кольцо
(20, 10), # Красное кольцо
(-40, 0), # Черное кольцо
(40, 0) # Зеленое кольцо
]
# Рисуем каждое кольцо в цикле
for i, (block_id, data) in enumerate(colors):
x, y = ring_positions[i]
steve.setposition(pos_x + x, pos_y + y, pos_z)
draw_olympic_ring(steve, data, radius)