add basic ship movement and tracking
This commit is contained in:
parent
fcfe1e8790
commit
05ad81ed8d
10 changed files with 65 additions and 27 deletions
|
@ -8,37 +8,48 @@ function Renderer() {
|
|||
this.canvas = canvas;
|
||||
|
||||
this.render = function(state) {
|
||||
var ship = game.world.playerShip || { x: 0, y: 0 };
|
||||
var cx = ship.x;
|
||||
var cy = ship.y;
|
||||
var cw = canvas.width;
|
||||
var ch = canvas.height;
|
||||
|
||||
if (state == 'connecting' || state == 'disconnected') {
|
||||
pallet.clear();
|
||||
pallet.fill('#111');
|
||||
var str = state == 'connecting' ? 'Connecting' : 'Shit\'s ' +
|
||||
'diconnected, yo!';
|
||||
pallet.text(str, canvas.width / 2, canvas.height / 2, '#fff', 'FreePixel', 16, 'center', 'middle');
|
||||
'diconnected, yo!';
|
||||
pallet.text(str, canvas.width / 2, canvas.height / 2, '#fff',
|
||||
'FreePixel', 16, 'center', 'middle');
|
||||
return;
|
||||
}
|
||||
|
||||
pallet.clear();
|
||||
pallet.fill('#000');
|
||||
|
||||
this.renderGrid();
|
||||
context.save();
|
||||
|
||||
context.translate(-cx + cw / 2, -cy + ch / 2);
|
||||
|
||||
// Grid
|
||||
var gridx = ((cx / 50) | 0) * 50;
|
||||
var gridy = ((cy / 50) | 0) * 50;
|
||||
for (var x = gridx - cw / 2 - 50; x < cx + cw + 50; x += 50) {
|
||||
for (var y = gridy - ch / 2 - 50; y < cy + ch + 50; y += 50) {
|
||||
pallet.outline('#0a0a0a', x, y, 51, 51, 1);
|
||||
}
|
||||
}
|
||||
|
||||
for (var id in game.world.bodies) {
|
||||
var body = game.world.bodies[id];
|
||||
|
||||
pallet.rect('#338', body.x, body.y, 10, 10);
|
||||
}
|
||||
|
||||
context.restore();
|
||||
}
|
||||
|
||||
this.renderGrid = function() {
|
||||
var ox = (game.world.playerShip.x || 0) % 50;
|
||||
var oy = (game.world.playerShip.y || 0) % 50;
|
||||
|
||||
|
||||
for (var x = -50 + ox; x < canvas.width + 50; x += 50) {
|
||||
for (var y = -50 + oy; y < canvas.height + 50; y += 50) {
|
||||
pallet.outline('#0a0a0a', x, y, 51, 51, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
pallet.fillScreen();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue