Hello, can you help me to find out, why it does not work. Please
die Position bestimmen möchtest.
def findSoldierOffset(soldiers, i):
soldier = soldiers[i]
angle = i * 360 / len(soldiers)
return radialToCartesian(5, angle)
# Diese Funktion führt die Berechnung des Offset für die neue Position des Soldaten durch.
def radialToCartesian(radius, degrees):
radians = Math.PI / 180 * degrees
xOffset = radius * Math.cos(radians)
yOffset = radius * Math.sin(radians)
return {"x": xOffset, "y": yOffset}
peasant = hero.findByType("peasant")[0]
soldiers = hero.findByType("soldier")
# Benutze findByType, um einen Array mit deinen Sodaten zu erhalten.
while True:
# Benutze eine for-Schliefe um über range(len(soldiers)) zu iterieren.
for i in range (len(soldiers)):
# Bestimme den Offset für einen Soldaten.
soldier = soldiers[i]
hero.say(i)
Offset = findSoldierOffset(soldiers, i)
# Addiere offset.x und offset.y zu pos.x und pos.y des Bauern.
x = peasant.pos.x + Offset.x,
y = peasant.pos.y + Offset.y
pos ={"x": x , "y": y }
# Befiehl den Soldaten, zur neuen Offset-Position zu gehen.
hero.command(soldier, "move", pos)
# Der Held sollte mit dem Bauern mithalten!
hero.move({"x": hero.pos.x + 0.2, "y": hero.pos.y})