# API di scripting Lua di pxstud.io — Comandi interni

> Parte del riferimento di scripting Lua di pxstud.io, la cui panoramica (https://pxstud.io/it/docs/scripting.md) ne spiega le convenzioni. I gruppi di opzioni e i tipi a cui rimanda sono in https://pxstud.io/it/docs/scripting/option-groups.md e https://pxstud.io/it/docs/scripting/types.md. Tutto in un unico file (in inglese): https://pxstud.io/llms-full.txt. L'indice dell'intero sito (in inglese): https://pxstud.io/llms.txt.

## Comandi interni
Il motore ha 173 comandi. Questi 25 non sono richiamabili dagli script, ciascuno per il motivo indicato; tutti gli altri fanno parte dell'API qui sopra.

- `addReferenceLayer` — il payload contiene un ReferenceSource grezzo (pixel dell'immagine a piena risoluzione decodificati da un file importato): non è qualcosa che uno script possa costruire
- `autoSlice` — un comando dell'editor (Sprite > Auto-slice); gli script trovano da sé le proprie regioni e chiamano app.addSlice
- `insertFrame` — infrastruttura di annulla/ripeti: il payload contiene un Frame grezzo più uno snapshot Map<CelKey, Cel>, non è qualcosa che uno script possa costruire
- `insertLayer` — infrastruttura di annulla/ripeti: il payload contiene oggetti Layer grezzi più snapshot Map<CelKey, Cel>/Map<CelKey, ReferenceTransform>, non è qualcosa che uno script possa costruire
- `insertSlice` — infrastruttura di annulla/ripeti: ripristina uno slice rimosso nella sua posizione originale; gli script usano app.addSlice
- `insertTag` — infrastruttura di annulla/ripeti: il payload contiene uno snapshot Tag grezzo, non è qualcosa che uno script possa costruire
- `insertTilemapTile` — il payload contiene buffer di pixel e liste di istanze acquisiti per l'annullamento: infrastruttura interna, l'inverso di removeTilemapTile
- `pasteCels` — il payload è uno snapshot degli appunti prodotto da extractCels (array RGBA tipizzati per ogni cel), non è qualcosa che uno script costruisce; gli script copiano con app.moveCels / app.linkCels o setPixel
- `replaceDocument` — infrastruttura di annulla/ripeti: il payload contiene uno snapshot di un intero Sprite, non è qualcosa che uno script possa costruire
- `replaceLayerContent` — infrastruttura di annulla/ripeti per convertToTilemap / convertToNormalLayer: il payload contiene uno snapshot dei cel e dei posizionamenti di un livello
- `restoreCel` — infrastruttura di annulla/ripeti: il payload contiene uno snapshot Cel grezzo (o null), non è qualcosa che uno script possa costruire
- `restoreCelRegion` — infrastruttura di annullamento: la parte di un cel sostituita da una scrittura di pixel, acquisita dal motore
- `restoreCels` — infrastruttura di annulla/ripeti: il payload contiene snapshot Cel grezzi (o eliminazioni), non è qualcosa che uno script possa costruire
- `restoreDocumentParts` — infrastruttura di annulla/ripeti per unioni, appiattimento, conversione dello sfondo, geometria della tela e rimappature della palette: il payload contiene livelli, cel e posizionamenti grezzi
- `restoreFrameDurations` — infrastruttura di annulla/ripeti per setAllFrameDurations: app.setAllFrameDurations / app.setFrameDuration coprono già i veri casi d'uso degli script
- `restoreLayerTree` — infrastruttura di annulla/ripeti per groupLayers / ungroupLayer: il payload è un intero ordine dei livelli più oggetti Layer di gruppo grezzi; gli script usano app.groupLayers, app.ungroupLayer e app.moveLayer
- `restoreMoveState` — infrastruttura di annullamento per movePixels: il payload contiene uno snapshot esatto di Cel + Selection che uno script non ha motivo di costruire
- `restorePalette` — infrastruttura di annulla/ripeti per le regolazioni dei colori di una palette: imposta la palette così com'è, senza rimappare i pixel (app.setPalette li rimappa)
- `restoreTilemapState` — infrastruttura di annulla/ripeti per paintTilemapPixels: il payload contiene buffer di tile acquisiti e una lista di istanze
- `setCelText` — l'editor disegna il testo con i propri font e invia con esso i pixel; uno script non ha font, quindi disegna il testo come pixel (app.pastePixels)
- `setColorCycles` — infrastruttura di annulla/ripeti: ripristina la lista dei cicli di colore; gli script usano app.addColorCycle e le funzioni affini
- `setGrid` — impostazione di vista dell'editor (la finestra Impostazioni griglia): posiziona una sovrapposizione e l'aggancio, non cambia l'opera prodotta da uno script
- `setGuides` — impostazione di vista dell'editor (Visualizza > Guide): le guide posizionano una sovrapposizione e l'aggancio, non cambiano l'opera prodotta da uno script
- `setPerspective` — impostazione di vista dell'editor (Visualizza > Griglia prospettica): posiziona una sovrapposizione, non cambia l'opera prodotta da uno script
- `setSlices` — infrastruttura di annulla/ripeti: ripristina la lista degli slice sostituita da autoSlice
