"Line Drive" bot for Grid Game KotH
const turn = api.turn(); | |
if (turn === 0) { | |
this.generator = (function* () { | |
yield* [[0, 24], [1], [0], [3], [0, 3]]; | |
for (let i = 0; i < 9; ++i) { | |
yield* [[1], [2], [0]]; | |
} | |
yield [1, 3]; | |
for (let i = 0; i < 10; ++i) { | |
yield* [[3], [1, 2]]; | |
} | |
for (let i = 0; i < 4; ++i) { | |
yield* [[2], [0, 2]]; | |
} | |
yield* [[2], [3, 4], [0, 4]]; | |
for (let i = 0; i < 4; ++i) { | |
yield* [[2], [0, 2]]; | |
} | |
yield* [[2], [3, 2], [0], [3, 2], [0], [3, 2], [0, 3]]; | |
while (true) { | |
for (let i = 0; i < 60; ++i) { | |
yield* [[2, 2], [1]]; | |
} | |
for (let i = 0; i < 40; ++i) { | |
yield* [[3, 2], [2]]; | |
} | |
for (let i = 0; i < 60; ++i) { | |
yield* [[0, 2], [3]]; | |
} | |
for (let i = 0; i < 40; ++i) { | |
yield* [[1, 2], [0]]; | |
} | |
} | |
})(); | |
this.nextCall = 0; | |
} | |
if (turn === this.nextCall) { | |
const [dir, delay = 1] = this.generator.next().value; | |
[api.awayX, api.awayY, api.towardsX, api.towardsY][dir].bind(api)(); | |
this.nextCall += delay; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment