Skip to content

Instantly share code, notes, and snippets.

@Brilliand
Last active October 28, 2019 19:51
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
Star You must be signed in to star a gist
Save Brilliand/294c357b051e6e165d18657748d02cfe to your computer and use it in GitHub Desktop.
"Galeforce" bot for Grid Game KotH
const turn = api.turn();
if (turn === 0) {
this.generator = (function* () {
yield* [[1, 24], [0], [1], [2], [1, 3]];
for (let i = 0; i < 9; ++i) {
yield* [[0], [3], [1]];
}
yield [0, 3];
for (let i = 0; i < 10; ++i) {
yield* [[2], [0, 2]];
}
for (let i = 0; i < 20; ++i) {
yield* [[3], [2, 2]];
}
while (true) {
for (let i = 0; i < 20; ++i) {
yield* [[3, 2], [2]];
}
for (let i = 0; i < 20; ++i) {
yield* [[3, 2], [0]];
}
for (let i = 0; i < 20; ++i) {
yield* [[2, 2], [1]];
}
for (let i = 0; i < 20; ++i) {
yield* [[2, 2], [3]];
}
for (let i = 0; i < 20; ++i) {
yield* [[1, 2], [0]];
}
for (let i = 0; i < 20; ++i) {
yield* [[1, 2], [2]];
}
for (let i = 0; i < 20; ++i) {
yield* [[0, 2], [3]];
}
for (let i = 0; i < 20; ++i) {
yield* [[0, 2], [1]];
}
}
})();
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