Fix overlap in the "tower placement restriction visualization" by drawing it for each tile, instead of for each tower

This commit is contained in:
Taizo 'Tsa6' Simpson 2017-08-21 16:12:20 -04:00
parent 038a287e96
commit 3233331722
1 changed files with 6 additions and 23 deletions

View File

@ -575,7 +575,7 @@ window.onload = function () {
let index = parseInt(i)
let y = Math.floor(index / Maps.width)
let x = Math.floor(index % Maps.height)
if (tile === 1) {
ctx.fillStyle = '#fdd'
} else if (tile === 2) {
@ -587,6 +587,11 @@ window.onload = function () {
}
ctx.fillRect(x * mt, y * mt, mt, mt)
if(tile != 1 && !getTowerAt(x, y) && !canPlaceTowerAt(x, y)) {
ctx.fillStyle = 'rgba(255, 0, 0, 0.45)'
ctx.fillRect(x * mt, y * mt, mt, mt)
}
}
/*
for (let i in Game.map.pathgen) {
@ -599,28 +604,6 @@ window.onload = function () {
let tower = Game.towers[i]
ctx.fillStyle = tower.icon
ctx.fillRect(tower.x * mt + 2, tower.y * mt + 2, 28, 28)
if (Game.state === 2 && Game.tower) {
// tower placement restriction visualization
for (let i = 0; i < 4; i++) {
let ax = tower.x
let ay = tower.y
if (i == 0) {
ax -= 1
} else if (i == 1) {
ax += 1
} else if (i == 2) {
ay -= 1
} else if (i == 3) {
ay += 1
}
if (ax < 0 || ay < 0 || ay > Maps.height || ax > Maps.width) continue
if (getTileIn(Game.map.tiles, ax, ay) !== 0) continue
ctx.fillStyle = 'rgba(255, 0, 0, 0.45)'
ctx.fillRect(ax * mt, ay * mt, mt, mt)
}
}
}
for (let i in Game.enemies) {