better placing
This commit is contained in:
parent
1952708e9f
commit
164c39e079
2 changed files with 24 additions and 25 deletions
31
js/index.js
31
js/index.js
|
@ -74,11 +74,14 @@ function Game(inSize, exp, cs) {
|
|||
this.dead = false;
|
||||
}
|
||||
|
||||
Game.prototype.placeBlock = function (block, get = false) {
|
||||
Game.prototype.placeBlock = function (block, get = false, xI = false, yI = false) {
|
||||
let { camera, base, fac, exp, inSize } = this;
|
||||
|
||||
let x = Math.round(camera[0] / tileSize);
|
||||
let y = Math.round(camera[1] / tileSize);
|
||||
if (xI === false) xI = camera[0];
|
||||
if (yI === false) yI = camera[1];
|
||||
|
||||
let x = Math.round(xI / tileSize);
|
||||
let y = Math.round(yI / tileSize);
|
||||
|
||||
let bx = x % chunkSize;
|
||||
let by = y % chunkSize;
|
||||
|
@ -90,15 +93,14 @@ Game.prototype.placeBlock = function (block, get = false) {
|
|||
let g = chunk[by * chunkSize + bx];
|
||||
if (g != 0) return g - 1;
|
||||
|
||||
let isMask = toPoint(camera[0], camera[1], base, fac, exp, inSize);
|
||||
let isMask = toPoint(xI, yI, base, fac, exp, inSize);
|
||||
|
||||
let assetI = (x - y % 2) == 0 ? 0 : 1;
|
||||
let assetI = ((x & y) % 3) == 0 ? 0 : 1;
|
||||
|
||||
if (isMask < 0.5) return 5;
|
||||
if (isMask < 0.501) return 4;
|
||||
if (isMask < 0.51) return 3;
|
||||
|
||||
|
||||
return assetI;
|
||||
}
|
||||
|
||||
|
@ -165,22 +167,7 @@ Game.prototype.main = function () {
|
|||
let bx = Math.round(x / tileSize) % chunkSize;
|
||||
let by = Math.round(y / tileSize) % chunkSize;
|
||||
|
||||
if (chunk && chunk[by * chunkSize + bx] != 0) {
|
||||
ctx.drawImage(this.assets[chunk[by * chunkSize + bx] - 1], x2, y2, tileSize, tileSize);
|
||||
continue;
|
||||
}
|
||||
|
||||
let isMask = toPoint(x, y, base, this.fac, exp, inSize);
|
||||
if (x < 0 || y < 0) {
|
||||
continue;
|
||||
}
|
||||
|
||||
let assetI = ((Math.round(x / tileSize) - Math.round(y / tileSize)) % 2) == 0 ? 0 : 1;
|
||||
|
||||
if (isMask < 0.51) assetI = 3;
|
||||
if (isMask < 0.501) assetI = 4;
|
||||
|
||||
if (isMask < 0.5) continue;
|
||||
let assetI = this.placeBlock(0,true,x,y);
|
||||
|
||||
ctx.drawImage(this.assets[assetI], x2, y2, tileSize, tileSize);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue