Tilemaps
Les calques tilemap placent sur une grille des tuiles issues de leur propre tileset. Les tuiles sont numérotées à partir de 1 (0 est la tuile vide). (19 fonctions)
app.addTilemapLayer(name?, tileWidth, tileHeight, parentId?, tilesetLayerId?) — modifie, annulable
Crée un nouveau calque tilemap avec un tileset vide de tuiles de tileWidth x tileHeight, au-dessus de tous les autres calques (ou des calques du groupe parentId), et l'active. Utilise app.addTilemapTile pour y ajouter des tuiles. Avec tilesetLayerId, le calque partage le tileset de ce calque : modifier, ajouter ou retirer des tuiles affecte les deux.
name(string, facultatif) — Nom du calque ; 'Tilemap N' par défaut.tileWidth(number)tileHeight(number)parentId(string, facultatif) — Un groupe où l'ajouter (au-dessus de ses calques) ; omis = le niveau supérieur.tilesetLayerId(string, facultatif) — Partage le tileset de ce calque tilemap existant au lieu d'en créer un (tileWidth et tileHeight sont alors ignorés).
Renvoie (string) : L'id du nouveau calque tilemap.
app.addTilemapTile(layerId, pixels?) — modifie, annulable
Ajoute une tuile à la fin du tileset d'un calque tilemap et renvoie son indice de tuile (en commençant à 1 ; 0 est la tuile vide implicite). Génère une erreur si layerId n'est pas un calque tilemap.
layerId(string)pixels(table, facultatif) — Tampon de pixels à plat (RGBA = 4 nombres par pixel, indexé = 1) à la taille de la tuile ; omets-le pour une tuile transparente.
Renvoie (number) : L'indice de la nouvelle tuile, en commençant à 1.
app.clearTilemapTile(layerId, tileIndex) — modifie, annulable, refusée sur un calque verrouillé
Rend une tuile entièrement transparente. Tous ses emplacements deviennent vides.
layerId(string)tileIndex(number) — Indice de tuile, en commençant à 1.
Ne renvoie rien.
app.convertToNormalLayer(layerId) — modifie, annulable, refusée sur un calque verrouillé
Convertit un calque tilemap en calque d'image, en rastérisant ses placements de tuiles dans un cel sur chaque image (Calque > Convertir en calque normal). Le calque garde son id. Une seule étape d'annulation.
layerId(string) — Un calque tilemap.
Ne renvoie rien.
app.convertToTilemap(layerId, tileWidth, tileHeight, opts?) — modifie, annulable, refusée sur un calque verrouillé
Convertit un calque d'image en calque tilemap avec un nouveau tileset de tuiles de tileWidth x tileHeight découpées dans ses cels sur chaque image (Calque > Convertir en tilemap). Le calque garde son id ; ses cels deviennent des placements de tuiles. Une seule étape d'annulation.
layerId(string) — Un calque d'image (pas l'arrière-plan).tileWidth(number)tileHeight(number)opts(table, facultatif)dedupe(boolean; par défaut true) — Partager les tuiles identiques.matchFlips(boolean; par défaut false) — Partager aussi les tuiles qui correspondent une fois retournées ou pivotées de 90 degrés (et activer les options de correspondance du tileset).
Ne renvoie rien.
app.duplicateTilemapTile(layerId, tileIndex) — modifie, annulable
Ajoute une copie d'une tuile à la fin du tileset d'un calque tilemap (son indice est l'ancien nombre de tuiles + 1).
layerId(string)tileIndex(number) — Indice, en commençant à 1, de la tuile à copier.
Renvoie (number) : L'indice de tuile de la copie, en commençant à 1.
app.fillTiles(layerId, frameId, col, row, opts?) — modifie, annulable, refusée sur un calque verrouillé
Pot de peinture de tuiles : remplit avec une tuile les cellules contenant la même tuile que la cellule (col, row) (une cellule vide est la tuile 0), exactement comme le pot de peinture de l'interface en mode Placer des tuiles. Le remplissage reste dans la grille de tuiles du canevas.
layerId(string) — Un calque tilemap.frameId(string)col(number) — La colonne de la grille de tuiles sur laquelle on a cliqué (pas un pixel du sprite).row(number) — La ligne de la grille de tuiles sur laquelle on a cliqué.opts(table, facultatif) Accepte aussi Options de placement (voir « Groupes d'options »), et :contiguous(boolean; par défaut context.bucketFillMode (true pour le mode contigu du contexte, false pour global)) — Seulement les cellules connectées (true), ou toutes les cellules contenant la tuile de la cellule cliquée (false).tileIndex(integer ≥ 1; par défaut context.tileIndex) — La tuile de remplissage, en commençant à 1.flipH(boolean; par défaut context.tileFlipH) — Retourne horizontalement les tuiles placées.flipV(boolean; par défaut context.tileFlipV) — Retourne verticalement les tuiles placées.rotate90(boolean; par défaut context.tileRotate90) — Fait pivoter les tuiles placées de 90° dans le sens horaire (tuiles carrées uniquement).
Ne renvoie rien.
app.getTilemap(layerId, frameId) — lit
Les placements de tuiles d'un calque tilemap sur une image, sous la forme { x, y (cellule de la grille de tuiles), tileIndex, flipH, flipV, rotate90 } : la forme qu'accepte app.setTilemapInstances. Les images liées renvoient leurs placements partagés.
layerId(string) — Un calque tilemap.frameId(string)
Renvoie (table) : Tableau de tables de placements.
app.getTilePixels(layerId, tileIndex) — lit
L'image d'une tuile sous forme de liste RGBA à plat (tileWidthtileHeight4, ligne par ligne ; les couleurs de la palette sont résolues pour les sprites indexés).
layerId(string) — Un calque tilemap.tileIndex(number) — Tuile, en commençant à 1.
Renvoie (table) : Liste RGBA à plat.
app.getTileset(layerId) — lit
Le tileset d'un calque tilemap sous la forme { tileWidth, tileHeight, tileCount, matchFlipH, matchFlipV, matchRotate, baseIndex, name?, id? } (les indicateurs de correspondance sont les options de peinture automatique, voir app.setTilesetMatch ; baseIndex est le numéro avec lequel la première tuile est affichée, voir app.setTilesetProperties ; id est présent quand des calques partagent le tileset, et des id égaux désignent le même tileset). Les tuiles sont numérotées de 1 à tileCount (0 = la tuile vide).
layerId(string) — Un calque tilemap.
Renvoie (table) : Table du tileset.
app.importTilesFromImage(layerId, width, height, pixels, opts?) — modifie, annulable, refusée sur un calque verrouillé
Découpe une image dans le tileset du calque en cellules de tileWidth x tileHeight (les cellules du bord sont complétées par de la transparence), en ajoutant les tuiles qu'il n'a pas déjà. Avec frameId, place aussi le résultat sur cette image. Une seule étape d'annulation.
layerId(string) — Un calque tilemap.width(number) — Largeur de l'image en pixels.height(number) — Hauteur de l'image en pixels.pixels(table) — Nombres RGBA à plat (4 par pixel, width*height pixels).opts(table, facultatif)dedupe(boolean; par défaut true) — Réutilise les tuiles identiques au lieu d'ajouter des doublons.matchFlips(boolean; par défaut false) — Avec dedupe : réutilise aussi une tuile qui correspond une fois retournée horizontalement/verticalement ou pivotée de 90 degrés (tuiles carrées), en la plaçant avec les indicateurs correspondants.skipEmpty(boolean; par défaut true) — Les cellules sans pixel visible ne créent pas de tuile.frameId(string) — Place aussi les cellules découpées sur cette image du calque, en remplaçant les cellules que couvre l'image.col(integer; par défaut 0) — Colonne de tuiles du bord gauche de l'image lors du placement.row(integer; par défaut 0) — Ligne de tuiles du bord supérieur de l'image lors du placement.
Renvoie (number) : Le nombre de tuiles ajoutées.
app.moveTilemapTile(layerId, from, to) — modifie, annulable
Déplace une tuile à une nouvelle position dans le tileset, en remappant tous les placements pour que rien ne change visuellement.
layerId(string)from(number) — Indice actuel de la tuile, en commençant à 1.to(number) — Indice de la tuile après le déplacement, en commençant à 1.
Ne renvoie rien.
app.paintTilemapPixels(layerId, frameId, x, y, width, height, pixels, mode) — modifie, annulable, refusée sur un calque verrouillé
Peint des pixels en coordonnées du canevas sur un calque tilemap, en écrivant à travers le retournement/la rotation de chaque placement de tuile. Une seule étape d'annulation.
layerId(string)frameId(string)x(number) — Bord gauche de la région écrite, en coordonnées du canevas.y(number) — Bord supérieur de la région écrite, en coordonnées du canevas.width(number)height(number)pixels(table) — Nombres RGBA à plat (4 par pixel, width*height pixels) ; un alpha de 0 efface.mode(TilePaintMode: "edit" | "auto") — "edit" modifie les tuiles que les cellules utilisent déjà (tous les placements sont mis à jour) ; "auto" travaille par cellule peinte comme Aseprite Auto : réutilise une tuile identique (ou retournée/pivotée, selon app.setTilesetMatch), sinon une copie sur écriture / une nouvelle tuile, puis retire les tuiles que la modification a laissées inutilisées.
Ne renvoie rien.
app.removeTilemapTile(layerId, tileIndex) — modifie, annulable, refusée sur un calque verrouillé
Supprime une tuile du tileset d'un calque tilemap. Ses placements sont effacés ; les placements des tuiles de numéro supérieur sont décalés d'un cran vers le bas pour continuer à afficher la même image (exactement le Supprimer du panneau Tileset).
layerId(string) — Un calque tilemap.tileIndex(number) — Tuile à supprimer, en commençant à 1.
Ne renvoie rien.
app.setTilemapInstances(layerId, frameId, instances) — modifie, annulable, refusée sur un calque verrouillé
Remplace les placements de tuiles d'un calque tilemap pour une image. x/y sont des coordonnées de la grille de tuiles. Génère une erreur si layerId n'est pas un calque tilemap.
layerId(string)frameId(string)instances(table) — Tableau de tables {x, y, tileIndex, flipH, flipV, rotate90} qui remplacent les placements de cette image ; vide, il les efface.
Ne renvoie rien.
app.setTilemapTilePixels(layerId, tileIndex, pixels) — modifie, annulable, refusée sur un calque verrouillé
Remplace les pixels d'une tuile d'un calque tilemap. Tous les placements de cette tuile (toutes les images, tout retournement/rotation) sont mis à jour instantanément. Génère une erreur si layerId, l'indice ou la longueur de pixels est incorrect.
layerId(string)tileIndex(number)pixels(table) — Tampon de pixels à plat (RGBA = 4 nombres par pixel, indexé = 1) à la taille de la tuile.
Ne renvoie rien.
app.setTilesetMatch(layerId, flipH, flipV, rotate) — modifie, annulable
Définit les options « correspondance des retournements » du tileset : en peinture tilemap "auto", de nouveaux pixels égaux à une tuile existante retournée/pivotée réutilisent cette tuile avec les indicateurs de placement activés, au lieu de créer une tuile.
layerId(string) — Un calque tilemap.flipH(boolean) — Fait correspondre les tuiles retournées horizontalement.flipV(boolean) — Fait correspondre les tuiles retournées verticalement.rotate(boolean) — Fait correspondre les tuiles pivotées de 90 degrés (tuiles carrées uniquement).
Ne renvoie rien.
app.setTilesetProperties(layerId, name?, baseIndex?) — modifie, annulable
Définit le nom et l'indice de base (Base Index) d'un tileset. L'indice de base ne change que la numérotation des tuiles dans le panneau Tileset et dans Aseprite ; les indices de tuiles dans les scripts restent numérotés à partir de 1. S'applique à tous les calques qui partagent le tileset.
layerId(string) — Un calque tilemap.name(string, facultatif) — Le nom du tileset ; "" l'efface ; nil le laisse tel quel.baseIndex(number, facultatif) — Le Base Index d'Aseprite : le numéro avec lequel la première tuile est affichée (1 par défaut), de -32768 à 32767 ; nil le laisse tel quel.
Ne renvoie rien.
app.stampTiles(layerId, frameId, cells, opts?) — modifie, annulable, refusée sur un calque verrouillé
Appose une tuile dans les cellules de la grille de tuiles indiquées d'un calque tilemap (ou, avec erase, les efface), exactement comme le tampon de tuiles de l'interface. Les cellules non touchées gardent leurs placements. Avec symmetry, les cellules symétriques reçoivent la tuile en miroir (les retournements se reflètent aussi) ; avec respectSelection, les cellules hors de la sélection sont ignorées.
layerId(string) — Un calque tilemap.frameId(string)cells(table) — Liste de cellules de la GRILLE DE TUILES { x = col, y = row } (ou { col, row }), pas de pixels du sprite.opts(table, facultatif) Accepte aussi Options de placement (voir « Groupes d'options »), et :tileIndex(integer ≥ 0; par défaut context.tileIndex) — La tuile à placer, en commençant à 1.flipH(boolean; par défaut context.tileFlipH) — Retourne horizontalement les tuiles placées.flipV(boolean; par défaut context.tileFlipV) — Retourne verticalement les tuiles placées.rotate90(boolean; par défaut context.tileRotate90) — Fait pivoter les tuiles placées de 90° dans le sens horaire (tuiles carrées uniquement).erase(boolean; par défaut false) — Retire les placements des cellules au lieu de placer une tuile.
Ne renvoie rien.
En Markdown : tilemaps.md.