From 9cdf7eba78532191948789e6b872a0ba24155e3c Mon Sep 17 00:00:00 2001 From: "Kacper Kostka (aider)" Date: Fri, 4 Apr 2025 11:59:29 +0200 Subject: [PATCH] feat: Set default world position to 0,0 and extend floor to 2 chunks deep --- script.js | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/script.js b/script.js index cbe7394..1970ac2 100644 --- a/script.js +++ b/script.js @@ -46,7 +46,7 @@ let currentMouseX, currentMouseY; let lastFrameTime = 0; let fps = 0; let worldOffsetX = 0; -let worldOffsetY = CHUNK_SIZE; // Start at Chunk: 0,-1 +let worldOffsetY = 0; // Start at Chunk: 0,0 let worldOffsetXBeforeDrag = 0; let worldOffsetYBeforeDrag = 0; let chunks = new Map(); // Map to store chunks with key "x,y" @@ -307,8 +307,8 @@ function getOrCreateChunk(chunkX, chunkY) { // Create a new chunk with empty pixels const chunkData = new Array(CHUNK_SIZE * CHUNK_SIZE).fill(EMPTY); - // Add floor at the bottom of the world (y = 0) - if (chunkY === 0) { + // Add floor at the bottom of the world (y = 0 and y = 1) + if (chunkY === 0 || chunkY === 1) { // Fill the bottom row with walls for (let x = 0; x < CHUNK_SIZE; x++) { chunkData[(CHUNK_SIZE - 1) * CHUNK_SIZE + x] = WALL; @@ -339,8 +339,9 @@ function setPixel(worldX, worldY, type) { } function getPixel(worldX, worldY) { - // Special case: floor at the bottom of the world - if (worldY === CHUNK_SIZE - 1 && Math.floor(worldY / CHUNK_SIZE) === 0) { + // Special case: floor at the bottom of the world (first two chunks) + const chunkY = Math.floor(worldY / CHUNK_SIZE); + if (worldY % CHUNK_SIZE === CHUNK_SIZE - 1 && (chunkY === 0 || chunkY === 1)) { return WALL; }