Skip to content

Instantly share code, notes, and snippets.

@kmyk
Created August 14, 2016 11:17
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kmyk/be5385e37ea6685d67bb110253e4a0e2 to your computer and use it in GitHub Desktop.
Save kmyk/be5385e37ea6685d67bb110253e4a0e2 to your computer and use it in GitHub Desktop.
setInterval(function() {
if (Object.keys(player).length === 0) {
console.log('register');
socket.emit('register', Math.random().toString());
} else if (player.level == 30) {
console.log('done');
console.log(getUuid());
player = undefined;
} else if (player.nextExp <= player.exp) {
console.log('levelup');
socket.emit('levelUp');
} else if (Object.keys(map).length !== 0) {
var eid = -1;
var dist = 1e9+7;
for (var i = 0; i < map.enemies.length; ++ i) {
var e = map.enemies[i];
var d = Math.abs(e.pos_x - player.x) + Math.abs(e.pos_y - player.y);
if (d < dist) {
dist = d;
eid = i;
}
}
if (eid != -1) {
var e = map.enemies[eid];
var nx = player.x;
var ny = player.y;
if (e.pos_x < player.x) {
nx -= 1;
} else if (e.pos_x > player.x) {
nx += 1;
} else if (e.pos_y < player.y) {
ny -= 1;
} else if (e.pos_y > player.y) {
ny += 1;
}
if (nx == e.pos_x && ny == e.pos_y) {
console.log('capturefrog');
socket.emit('captureFrog', {id: e.id});
map.enemies.splice(eid, 1)
} else {
console.log('playermove');
socket.emit('playerMove', {x: nx, y: ny});
}
}
}
}, 100);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment