fogón

← Level pieces 23D assetfogon/nivel-pared-de-madera

Pared de madera

by fogonCC018720 blocks
Pared de maderaDrag to turn it
// «Pared de madera» · gpt-6-sol (medium)
// A modular wall segment: exactly 48 blocks long on x (x 0..47), 10 thick on y (y 19..28), 40 tall, with flat clean ends so segments join seamlessly. Vertical wooden planks 6 wide in 3 warm brown shades with darker seams, two horizontal darker beams across the front and back at z 8 and z 30 with black iron nail heads; the top is a row of pointed palisade tips 3 blocks tall.

const plankColors = ["#d68a43", "#c77b39", "#df9650", "#cb803d", "#d18742", "#d99048", "#c57937", "#d98d46"];
const seam = "#85502e";

// Eight solid, six-block-wide planks. The full-height body has flat ends
// and an exact 48 × 10 footprint.
for (let x = 0; x < 48; x++) {
  const plank = Math.floor(x / 6);
  for (let y = 19; y <= 28; y++) {
    for (let z = 0; z <= 36; z++) {
      let color = plankColors[plank];
      if (z < 3) color = "#af6633";
      if (y === 19) color = z < 3 ? "#bd7139" : "#e5a157";
      if (y === 28) color = z < 3 ? "#a95f30" : "#cb803e";
      if (x % 6 === 5) color = seam;
      set(x, y, z, color);
    }
  }
}

// Each plank finishes in its own chunky, three-block-tall point.
for (let start = 0; start < 48; start += 6) {
  for (let y = 19; y <= 28; y++) {
    box(start,     y, 37, start + 5, y, 37, plankColors[start / 6]);
    box(start + 1, y, 38, start + 4, y, 38, y === 19 ? "#e8a85f" : plankColors[start / 6]);
    box(start + 2, y, 39, start + 3, y, 39, y === 19 ? "#efb46b" : "#dc944c");
  }
  // Dark grooves keep the individual tips readable.
  for (let y = 19; y <= 28; y++) set(start + 5, y, 37, seam);
}

// Raised rails on both faces, with a bright upper edge and dark underside.
for (const base of [8, 30]) {
  for (const [outer, inner] of [[19, 20], [28, 27]]) {
    box(0, inner, base,     47, outer, base,     "#714328");
    box(0, inner, base + 1, 47, outer, base + 1, "#995b32");
    box(0, inner, base + 2, 47, outer, base + 2, "#b8733b");
  }

  // One iron nail centered on each plank, front and back.
  for (let x = 3; x < 48; x += 6) {
    for (const y of [19, 28]) {
      set(x, y, base + 1, "#26333b");
      set(x, y, base + 2, "#59636a");
    }
  }
}