https://pastein.ru/t/prX

  скопируйте уникальную ссылку для отправки


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)