Scripts
Ambersprite a une petite console JavaScript pour le travail répétitif sur les pixels. Ouvrez-la avec Édition ▸ Scripts.

Saisissez un script, touchez Exécuter. Il peint dans le calque + frame actif et se valide comme une seule étape d'annulation nommée « Script ». Effacer vide l'éditeur.
API#
| Fonction | Description |
|---|---|
setPixel(x, y, r, g, b, a) | Définir le pixel en (x, y) sur une couleur RVBA (0–255 chacun). |
getPixel(x, y) | Renvoie [r, g, b, a] du pixel. |
fill(x, y) | Remplissage par diffusion depuis (x, y) avec la couleur de premier plan actuelle, en respectant les réglages contigu / tolérance / tramage de l'outil. |
fg(r, g, b, a) | Définir la couleur de premier plan. |
setLayer(index) | Changer le calque actif. |
setFrame(index) | Changer le frame actif. |
newLayer() | Ajouter un calque. |
command("name") | Exécuter une commande de raccourci clavier par nom ("undo", "flipH", "play", …). |
log(message) | Écrire dans la zone de sortie. |
| Valeur | Description |
|---|---|
width, height | Taille de la toile. |
layerCount, frameCount | Nombres. |
layerIndex, frameIndex | Index actifs. |
layerName | Nom du calque actif. |
setPixel et fill ciblent toujours le calque + frame qui était actif quand « Exécuter » a été pressé — appeler setLayer() / setFrame() en cours de script change la sélection active pour l'exécution suivante, pas la cible de peinture actuelle. Pour remplir plusieurs calques, sélectionnez chacun dans la frise et exécutez son propre script.
Exemples#
Dessiner un damier :
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);
Remplir une région délimitée avec la couleur de premier plan :
fg(230, 120, 60, 255);
fill(width / 2, height / 2);
log("done");
Fonction d'aide pour les rectangles pleins :
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);