/* 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();
}
}
Gratulerar!
Din lösning fungerar, men du kan göra det bättre. Använd 'scan' för att tala om för kanonen hur långt den ska skjuta.
Den här motståndaren rör sig fram och tillbaka vilket gör det svårt att träffa. Kommandot 'scan' returnerar det exakta avståndet till en motståndare i den angivna riktningen.
scan(0)
Denna räckvidd är vad kommandot 'cannon' precis behöver för att skjuta träffsäkert.