Scripts
Ambersprite tiene una pequeña consola JavaScript para el trabajo repetitivo con píxeles. Ábrela con Edición ▸ Scripts.

Escribe un script, toca Ejecutar. Pinta en la capa + fotograma activo y se confirma como un solo paso de deshacer llamado «Script». Borrar vacía el editor.
API#
| Función | Descripción |
|---|---|
setPixel(x, y, r, g, b, a) | Definir el píxel en (x, y) a un color RGBA (0–255 cada uno). |
getPixel(x, y) | Devuelve [r, g, b, a] del píxel. |
fill(x, y) | Relleno por difusión desde (x, y) con el color de primer plano actual, respetando los ajustes contiguo / tolerancia / tramado de la herramienta. |
fg(r, g, b, a) | Definir el color de primer plano. |
setLayer(index) | Cambiar la capa activa. |
setFrame(index) | Cambiar el fotograma activo. |
newLayer() | Añadir una capa. |
command("name") | Ejecutar un comando de atajo de teclado por nombre ("undo", "flipH", "play", …). |
log(message) | Escribir en el área de salida. |
| Valor | Descripción |
|---|---|
width, height | Tamaño del lienzo. |
layerCount, frameCount | Recuentos. |
layerIndex, frameIndex | Índices activos. |
layerName | Nombre de la capa activa. |
setPixel y fill siempre apuntan a la capa + fotograma que estaba activo cuando se pulsó «Ejecutar»: llamar a setLayer() / setFrame() a mitad del script cambia la selección activa para la siguiente ejecución, no el objetivo de pintura actual. Para rellenar varias capas, selecciona cada una en la línea de tiempo y ejecuta su propio script.
Ejemplos#
Dibujar un damero:
for (var y = 0; y < height; y++)
for (var x = 0; x < width; x++)
if ((x + y) % 2 === 0) setPixel(x, y, 40, 40, 60, 255);
Rellenar una región delimitada con el color de primer plano:
fg(230, 120, 60, 255);
fill(width / 2, height / 2);
log("done");
Función auxiliar para rectángulos rellenos:
function rect(x0, y0, x1, y1, r, g, b) {
for (var y = y0; y <= y1; y++)
for (var x = x0; x <= x1; x++) setPixel(x, y, r, g, b, 255);
}
rect(4, 4, 12, 20, 60, 122, 204);