// You can find the Turtle API reference here: https://turtletoy.net/syntax
Canvas.setpenopacity(.7);
const edge = 11; //min=2, max=50, step=1
const rotation = 111; //min=0, max=360, step = 1
// Global code will be evaluated once.
const turtle = new Turtle();
const root2 = Math.sqrt(2);
let yInc = .8660254037844386 * edge; //Math.sin(60*Math.PI/180)*r;
let y = -100 * root2;
let rotationAngle = rotation * Math.PI / 180;
// The walk function will be called until it returns false.
function walk(i) {
let x = (-100 - (1.5*edge)) * root2;
turtle.jump(((x + (i % 2 == 0? 0: 1.5*edge)) * Math.cos(rotationAngle)) - (y * Math.sin(rotationAngle)), ((x + (i % 2 == 0? 0: 1.5*edge)) * Math.sin(rotationAngle)) + (y * Math.cos(rotationAngle)));
turtle.setheading((60 + rotation) % 360);
while(x < 100 * root2) {
for(let l = 0; l < 4; l++) {
l == 3? turtle.penup(): turtle.pendown();
turtle.forward(edge);
turtle.left(l<2?60:-60);
}
x+=edge*3;
}
y += yInc;
return y < 100 * root2;
}