/* Slowly moves east and west. Does not fire. */
var west = false;
while (true) {
if (west) {
if (getX() > 25) {
swim(180, 25);
} else {
west = false;
swim(0, 0);
}
} else {
if (getX() < 75) {
swim(0, 25);
} else {
west = true;
swim(0, 0);
}
}
}
/* Moves south-west when hit. Does not fire. */
var d = damage();
while (true) {
if (d != damage()) {
swim(45, 100);
var t = 0;
for (var t = 0; t < 100; t++) {}
d = damage();
stop();
}
}
Glückwunsch!
Deine Lösung funktioniert, aber du kannst es besser. Verwende „scan“, um der Kanone zu sagen, wie weit sie schießen soll.
Dieser Gegner bewegt sich zurück und vor, was es schwer macht, ihn zu treffen. Der Ausdruck „scan“ gibt den exakten Bereich des Gegners in der angegebenen Richtung zurück.
Dieser Bereich ist genau das, was der Befehl „cannon“ braucht, um exakt abzufeuern.