-- Drawing the map as isometric tiles self.tilesHovered = {} -- Reset the tilesHovered table every frame for i = 1, #self.map do -- Loop trough rows for j = 1, #self.map[i] do -- Loop through cols in the rows if self.map[i][j] ~= 0 then -- If there is a tile to draw local x = self.x + -- Starting point (j * ((self.tileWidth / 2) * self.scale)) - -- The width on rows (i * ((self.tileWidth / 2) * self.scale)) -- The width on cols local y = self.y + (i * ((self.tileHeight / 4) * self.scale)) + -- The height on rows (j * ((self.tileHeight / 4) * self.scale)) -- The width on cols -- Take the height map into account local y = y - self.mapheight[i][j] * 8 -- Draw the tiles love.graphics.draw(self.tilesheet, self.tiles[self.map[i][j]], x, y, 0, self.scale, self.scale ) if self.tmx > x and -- Hitbox between mouse and tile self.tmx < x + self.tileWidth * self.scale and self.tmy > y + self.tileHeight / 2 and self.tmy < y + self.tileHeight * self.scale then -- Add the tile to tiles hovered, if mouse is on top of it table.insert(self.tilesHovered, {i, j, x, y}) end end end end