Improve tank identification and add steel wall

agent/zcode/gameplay-issue-1
darcy 4 weeks ago
parent 1fb0a48a76
commit 39120cee0a

@ -106,6 +106,7 @@
...brickWall(280, 280, TILE, TILE * 3), ...brickWall(280, 280, TILE, TILE * 3),
...brickWall(400, 360, TILE * 4, TILE), ...brickWall(400, 360, TILE * 4, TILE),
...steelWall(640, 360, TILE, TILE * 3), ...steelWall(640, 360, TILE, TILE * 3),
...steelWall(560, 240, TILE * 2, TILE),
...brickWall(160, 480, TILE * 2, TILE), ...brickWall(160, 480, TILE * 2, TILE),
...brickWall(480, 500, TILE * 3, TILE), ...brickWall(480, 500, TILE * 3, TILE),
]; ];
@ -473,17 +474,40 @@
function drawTank(entity) { function drawTank(entity) {
const cx = entity.x + entity.w / 2; const cx = entity.x + entity.w / 2;
const cy = entity.y + entity.h / 2; const cy = entity.y + entity.h / 2;
const isPlayer = entity.team === "player";
ctx.save(); ctx.save();
ctx.translate(cx, cy); ctx.translate(cx, cy);
ctx.rotate(directionAngle(entity.dir)); ctx.rotate(directionAngle(entity.dir));
ctx.fillStyle = "#10140f"; if (isPlayer) {
ctx.fillRect(-17, -17, 34, 34); ctx.shadowColor = "rgba(132, 238, 212, 0.75)";
ctx.shadowBlur = 12;
}
ctx.fillStyle = isPlayer ? "#e8fff7" : "#2c0f0a";
ctx.fillRect(-18, -18, 36, 36);
ctx.shadowBlur = 0;
ctx.fillStyle = isPlayer ? "#102822" : "#10140f";
ctx.fillRect(-15, -15, 30, 30);
ctx.fillStyle = entity.color; ctx.fillStyle = entity.color;
ctx.fillRect(-13, -13, 26, 26); ctx.fillRect(-12, -12, 24, 24);
ctx.fillStyle = "rgba(255,255,255,0.18)"; ctx.fillStyle = "rgba(255,255,255,0.18)";
ctx.fillRect(-7, -8, 14, 16); ctx.fillRect(-7, -8, 14, 16);
ctx.fillStyle = "#15160f"; ctx.fillStyle = isPlayer ? "#f4fff8" : "#1b0805";
ctx.fillRect(-4, -25, 8, 19); ctx.fillRect(-4, -26, 8, 20);
if (isPlayer) {
ctx.fillStyle = "#f4fff8";
ctx.fillRect(-2, -10, 4, 20);
ctx.fillRect(-10, -2, 20, 4);
ctx.fillStyle = "#79e5c9";
ctx.fillRect(-5, -5, 10, 10);
} else {
ctx.fillStyle = "#ffd2c2";
ctx.beginPath();
ctx.moveTo(0, -9);
ctx.lineTo(8, 8);
ctx.lineTo(-8, 8);
ctx.closePath();
ctx.fill();
}
ctx.restore(); ctx.restore();
} }

Loading…
Cancel
Save