In Untrusted, how can I pass the many attack and defense droids?
I've tried going down, but they get stuck; I tried sending them right, but they cover the exit.
Arqade is a question and answer site for passionate videogamers on all platforms. It only takes a minute to sign up.
Sign up to join this communityIn Untrusted, how can I pass the many attack and defense droids?
I've tried going down, but they get stuck; I tried sending them right, but they cover the exit.
For the red drones, give the following:
if(me.getY()>11)
me.move('up');
else if(me.getX()>0)
me.move('left');
The yellow drones can be given this:
me.moveToward('block');
Give the green drones this code:
if(me.getY()>11)
me.move('up');
else if(me.getX()<map.getWidth()-1)
me.move('right');
Just move right and the red and green drones will line up and move towards the top corners.
Something easy and simple.
Red Drones
me.move('left');
map.placeObject(12, 12, 'block');
Yellow and Green Drones
me.move('left');
I solved this by simply giving every single drone a random chance to go either 'up' or 'right'.
var z = Math.floor(Math.random() * 2) + 1 switch(z){ case(1): me.move('up'); break; case(2): me.move('right'); break; }
Copy and paste to all three drones.
I found a cooler way, take a look: red:
moveToward(me, 'dummy1');
nothing at all in yellow
green:
moveToward(me, 'dummy2');
}
});
map.defineObject('dummy1', {
'type': 'dynamic',
'symbol': 'R',
'color': 'white',
'behavior': function (me) {
}
});
map.defineObject('dummy2', {
'type': 'dynamic',
'symbol': '+',
'color': 'white',
'behavior': function (me) {
}
});
map.placeObject(2, 13, 'dummy1');
map.placeObject(42, 11, 'dummy2');
map.defineObject('dummy3', {
'type': 'dynamic',
'symbol': '=',
'color': 'white',
'behavior': function (me) {`
I love my answer.
Red Drones - keep moving the drones left and move your guy up one to avoid them as they approach.
if (me.getY()>11) {
me.move('left');
}
Yellow Drones
Nothing, leave the yellow drones right where they are
Green Drones - keep moving the middle drone (y==12) to the right until it reaches (12,29) at which time you move it up one to get it out of way of the exit block
if (me.getY()==12) {
if (me.getX()==29) {
me.move('up');
} else {
me.move('right');
}
}
onCollision
so you can just walk right through the enemies. – user2357112 supports Monica Apr 10 '14 at 5:14