# Référence API de Pyxel

Référence API de Pyxel, un moteur de jeux rétro pour Python.

Avancé
Aucune API correspondante trouvée.
Système

## Système

variable `width`

La largeur de l'écran.

Détails
Type
`int`
variable `height`

La hauteur de l'écran.

Détails
Type
`int`
variable `frame_count`

Le nombre de frames écoulées.

Détails
Type
`int`
function `init(width, height, title="Pyxel", fps=30, quit_key=KEY_ESCAPE, display_scale=None, capture_scale=2, capture_sec=10, headless=False)`

Initialise l'application Pyxel avec la taille d'écran (width, height).

Détails
Paramètres
`width` (int) — Largeur de l'écran
`height` (int) — Hauteur de l'écran
`title` (str) — Titre de la fenêtre. Par défaut : "Pyxel".
`fps` (int) — Fréquence d'images. Par défaut : 30.
`quit_key` (int) — Touche pour quitter. Par défaut : KEY_ESCAPE.
`display_scale` (int) — Facteur d'échelle d'affichage. Si omis, déterminé automatiquement.
`capture_scale` (int) — Facteur d'échelle de capture. Par défaut : 2.
`capture_sec` (int) — Durée maximale d'enregistrement vidéo. Par défaut : 10.
`headless` (bool) — Exécuter sans fenêtre. Par défaut : False.
Exemple

    pyxel.init(160, 120, title="My Pyxel App", fps=60, quit_key=pyxel.KEY_NONE, capture_scale=3, capture_sec=0)

function `run(update, draw)`

Démarre l'application Pyxel et appelle la fonction update pour la mise à jour des frames et la fonction draw pour le dessin.

Détails
Paramètres
`update` (callable) — Fonction de mise à jour de la logique de jeu par image
`draw` (callable) — Fonction de dessin de l'écran par image
function `show()`

Affiche l'écran et attend que la touche de fermeture soit pressée.

function `flip()`

Rafraîchit l'écran d'une frame. L'application se termine lorsque la touche de fermeture est pressée. Cette fonction n'est pas disponible dans la version web.

function `quit()`

Quitte l'application Pyxel.

function `reset()`

Redémarre l'application Pyxel depuis le début.

function `title(title)`ADV

Définit le titre de la fenêtre.

Détails
Paramètres
`title` (str) — Titre de la fenêtre
function `icon(data, scale, colkey=None)`ADV

Définit l'icône de l'application. Spécifie l'image de l'icône sous forme de liste de chaînes.

Détails
Paramètres
`data` (list[str]) — Image d'icône sous forme de liste de chaînes
`scale` (int) — Facteur d'échelle
`colkey` (int/None) — Couleur transparente. Si omis, pas de transparence.
function `fullscreen(enabled)`ADV

Définit le mode plein écran.

Détails
Paramètres
`enabled` (bool) — Activer le plein écran
function `resize(width, height)`ADV

Change la taille de l'écran à l'exécution.

Détails
Paramètres
`width` (int) — Nouvelle largeur d'écran en pixels
`height` (int) — Nouvelle hauteur d'écran en pixels
function `screen_mode(scr)`ADV

Définit le mode d'écran (0: crisp, 1: smooth, 2: retro).

Détails
Paramètres
`scr` (int) — Numéro de mode d'écran (0: crisp, 1: smooth, 2: retro)
function `perf_monitor(enabled)`ADV

Affiche ou masque le moniteur de performances.

Détails
Paramètres
`enabled` (bool) — Activer le moniteur de performances
function `integer_scale(enabled)`ADV

Active la mise à l'échelle entière pour l'affichage.

Détails
Paramètres
`enabled` (bool) — Activer la mise à l'échelle entière
Ressource

## Ressource

function `load(filename, exclude_images=False, exclude_tilemaps=False, exclude_sounds=False, exclude_musics=False)`

Charge le fichier de ressources (.pyxres). Si une option est définie sur True, la ressource correspondante ne sera pas chargée.

Détails
Paramètres
`filename` (str) — Nom du fichier de ressources
`exclude_images` (bool) — Exclure les banques d'images. Par défaut : False.
`exclude_tilemaps` (bool) — Exclure les tilemaps. Par défaut : False.
`exclude_sounds` (bool) — Exclure les sons. Par défaut : False.
`exclude_musics` (bool) — Exclure les pistes de musique. Par défaut : False.
Remarque

Si un fichier de palette (.pyxpal) portant le même nom existe, les couleurs d'affichage de la palette seront également mises à jour.

function `user_data_dir(vendor_name, app_name)`ADV

Renvoie le répertoire de données utilisateur créé à partir de vendor_name et app_name. Si le répertoire n'existe pas, il sera créé automatiquement.

Détails
Paramètres
`vendor_name` (str) — Nom du fournisseur
`app_name` (str) — Nom de l'application
Retour
`str` — Chemin du répertoire de données utilisateur
Exemple

    pyxel.user_data_dir("Takashi Kitao", "Pyxel Shooter")

function `save(filename, exclude_images=False, exclude_tilemaps=False, exclude_sounds=False, exclude_musics=False)`ADV

Enregistre le fichier de ressources (.pyxres). Si une option est définie sur True, la ressource correspondante sera exclue de la sauvegarde.

Détails
Paramètres
`filename` (str) — Nom du fichier de ressources
`exclude_images` (bool) — Exclure les banques d'images. Par défaut : False.
`exclude_tilemaps` (bool) — Exclure les tilemaps. Par défaut : False.
`exclude_sounds` (bool) — Exclure les sons. Par défaut : False.
`exclude_musics` (bool) — Exclure les pistes de musique. Par défaut : False.
function `screenshot(filename=None, scale=2)`ADV

Prend une capture d'écran.

Détails
Paramètres
`filename` (str/None) — Nom du fichier. Si omis, sauvegardé sur le bureau.
`scale` (int/None) — Facteur d'échelle. Par défaut : capture_scale.
function `screencast(filename=None, scale=2)`ADV

Enregistre la capture vidéo de l'écran au format GIF.

Détails
Paramètres
`filename` (str/None) — Nom du fichier. Si omis, sauvegardé sur le bureau.
`scale` (int/None) — Facteur d'échelle. Par défaut : capture_scale.
function `reset_screencast()`ADV

Réinitialise le tampon de capture vidéo de l'écran.

function `load_pal(filename)`ADV

Charge un fichier de palette (.pyxpal).

Détails
Paramètres
`filename` (str) — Nom du fichier de palette
function `save_pal(filename)`ADV

Enregistre un fichier de palette (.pyxpal).

Détails
Paramètres
`filename` (str) — Nom du fichier de palette
Entrée

## Entrée

variable `mouse_x`

La position X actuelle du curseur de la souris.

Détails
Type
`int`
variable `mouse_y`

La position Y actuelle du curseur de la souris.

Détails
Type
`int`
variable `mouse_wheel`

La valeur actuelle de la molette de la souris.

Détails
Type
`int`
variable `input_keys` ADV

Liste des touches saisies dans le frame actuel.

Détails
Type
`list[int]`
variable `input_text` ADV

Texte saisi dans le frame actuel.

Détails
Type
`str`
variable `dropped_files` ADV

Liste des fichiers déposés dans le frame actuel.

Détails
Type
`list[str]`
function `btn(key)`

Renvoie True si la touche est enfoncée, sinon False.

Détails
Paramètres
`key` (int) — Code de touche
Retour
`bool` — True si pressé
function `btnp(key, hold=0, repeat=0)`

Renvoie True si la touche est pressée dans ce frame. Lorsque hold et repeat sont spécifiés, après avoir maintenu la touche pendant hold frames, renvoie True tous les repeat frames.

Détails
Paramètres
`key` (int) — Code de touche
`hold` (int) — Frames de maintien avant le début de la répétition. Par défaut : 0.
`repeat` (int) — Intervalle de répétition en frames. Si 0, pas de répétition.
Retour
`bool` — True si pressé dans cette frame
function `btnr(key)`

Renvoie True si la touche est relâchée dans ce frame, sinon False.

Détails
Paramètres
`key` (int) — Code de touche
Retour
`bool` — True si relâché dans cette frame
function `mouse(visible)`

Affiche le curseur de la souris si visible est True, et le masque si False. La position du curseur continue d'être mise à jour même lorsqu'il est masqué.

Détails
Paramètres
`visible` (bool) — Afficher ou masquer le curseur
function `btnv(key)`ADV

Renvoie la valeur analogique de la touche spécifiée (ex. valeur de l'axe de la manette).

Détails
Paramètres
`key` (int) — Code de touche
Retour
`int` — Valeur analogique de la touche
function `set_btn(key, state)`ADV

Définit l'état d'appui/relâchement de la touche spécifiée. Principalement pour la simulation d'entrée en mode headless.

Détails
Paramètres
`key` (int) — Touche cible
`state` (bool) — True pour appuyer, False pour relâcher
function `set_btnv(key, val)`ADV

Définit la valeur analogique de la touche spécifiée. Principalement pour la simulation d'entrée en mode headless.

Détails
Paramètres
`key` (int) — Touche cible
`val` (int) — Valeur analogique à définir
function `set_mouse_pos(x, y)`ADV

Définit la position du curseur de la souris. Principalement pour la simulation d'entrée en mode headless.

Détails
Paramètres
`x` (float) — Coordonnée X
`y` (float) — Coordonnée Y
function `set_input_text(text)`ADV

Définit l'entrée de texte pour le frame actuel. Remplace le texte existant. Principalement pour la simulation d'entrée en mode headless.

Détails
Paramètres
`text` (str) — Entrée de texte
function `set_dropped_files(files)`ADV

Définit la liste des fichiers déposés pour le frame actuel. Remplace la liste existante. Principalement pour la simulation d'entrée en mode headless.

Détails
Paramètres
`files` (list[str]) — Liste des chemins de fichiers
Constantes de touches
Touches spéciales
`KEY_UNKNOWN` `KEY_RETURN` `KEY_ESCAPE` `KEY_BACKSPACE` `KEY_TAB` `KEY_SPACE` `KEY_NONE`
Lettres
`KEY_A` `KEY_B` `KEY_C` `KEY_D` `KEY_E` `KEY_F` `KEY_G` `KEY_H` `KEY_I` `KEY_J` `KEY_K` `KEY_L` `KEY_M` `KEY_N` `KEY_O` `KEY_P` `KEY_Q` `KEY_R` `KEY_S` `KEY_T` `KEY_U` `KEY_V` `KEY_W` `KEY_X` `KEY_Y` `KEY_Z`
Chiffres
`KEY_0` `KEY_1` `KEY_2` `KEY_3` `KEY_4` `KEY_5` `KEY_6` `KEY_7` `KEY_8` `KEY_9`
Symboles
`KEY_EXCLAIM` `KEY_QUOTEDBL` `KEY_HASH` `KEY_PERCENT` `KEY_DOLLAR` `KEY_AMPERSAND` `KEY_QUOTE` `KEY_LEFTPAREN` `KEY_RIGHTPAREN` `KEY_ASTERISK` `KEY_PLUS` `KEY_COMMA` `KEY_MINUS` `KEY_PERIOD` `KEY_SLASH` `KEY_COLON` `KEY_SEMICOLON` `KEY_LESS` `KEY_EQUALS` `KEY_GREATER` `KEY_QUESTION` `KEY_AT` `KEY_LEFTBRACKET` `KEY_BACKSLASH` `KEY_RIGHTBRACKET` `KEY_CARET` `KEY_UNDERSCORE` `KEY_BACKQUOTE`
Fonction
`KEY_F1` `KEY_F2` `KEY_F3` `KEY_F4` `KEY_F5` `KEY_F6` `KEY_F7` `KEY_F8` `KEY_F9` `KEY_F10` `KEY_F11` `KEY_F12` `KEY_F13` `KEY_F14` `KEY_F15` `KEY_F16` `KEY_F17` `KEY_F18` `KEY_F19` `KEY_F20` `KEY_F21` `KEY_F22` `KEY_F23` `KEY_F24`
Navigation
`KEY_INSERT` `KEY_HOME` `KEY_PAGEUP` `KEY_DELETE` `KEY_END` `KEY_PAGEDOWN` `KEY_RIGHT` `KEY_LEFT` `KEY_DOWN` `KEY_UP`
Modificateurs
`KEY_CAPSLOCK` `KEY_LCTRL` `KEY_LSHIFT` `KEY_LALT` `KEY_LGUI` `KEY_RCTRL` `KEY_RSHIFT` `KEY_RALT` `KEY_RGUI` `KEY_SHIFT` `KEY_CTRL` `KEY_ALT` `KEY_GUI`
Pavé numérique
`KEY_NUMLOCKCLEAR` `KEY_KP_DIVIDE` `KEY_KP_MULTIPLY` `KEY_KP_MINUS` `KEY_KP_PLUS` `KEY_KP_ENTER` `KEY_KP_1` `KEY_KP_2` `KEY_KP_3` `KEY_KP_4` `KEY_KP_5` `KEY_KP_6` `KEY_KP_7` `KEY_KP_8` `KEY_KP_9` `KEY_KP_0` `KEY_KP_PERIOD` `KEY_KP_EQUALS` `KEY_KP_COMMA` `KEY_KP_EQUALSAS400` `KEY_KP_00` `KEY_KP_000` `KEY_KP_LEFTPAREN` `KEY_KP_RIGHTPAREN` `KEY_KP_LEFTBRACE` `KEY_KP_RIGHTBRACE` `KEY_KP_TAB` `KEY_KP_BACKSPACE` `KEY_KP_A` `KEY_KP_B` `KEY_KP_C` `KEY_KP_D` `KEY_KP_E` `KEY_KP_F` `KEY_KP_XOR` `KEY_KP_POWER` `KEY_KP_PERCENT` `KEY_KP_LESS` `KEY_KP_GREATER` `KEY_KP_AMPERSAND` `KEY_KP_DBLAMPERSAND` `KEY_KP_VERTICALBAR` `KEY_KP_DBLVERTICALBAR` `KEY_KP_COLON` `KEY_KP_HASH` `KEY_KP_SPACE` `KEY_KP_AT` `KEY_KP_EXCLAM` `KEY_KP_MEMSTORE` `KEY_KP_MEMRECALL` `KEY_KP_MEMCLEAR` `KEY_KP_MEMADD` `KEY_KP_MEMSUBTRACT` `KEY_KP_MEMMULTIPLY` `KEY_KP_MEMDIVIDE` `KEY_KP_PLUSMINUS` `KEY_KP_CLEAR` `KEY_KP_CLEARENTRY` `KEY_KP_BINARY` `KEY_KP_OCTAL` `KEY_KP_DECIMAL` `KEY_KP_HEXADECIMAL`
Système et médias
`KEY_PRINTSCREEN` `KEY_SCROLLLOCK` `KEY_PAUSE` `KEY_APPLICATION` `KEY_POWER` `KEY_EXECUTE` `KEY_HELP` `KEY_MENU` `KEY_SELECT` `KEY_STOP` `KEY_AGAIN` `KEY_UNDO` `KEY_CUT` `KEY_COPY` `KEY_PASTE` `KEY_FIND` `KEY_MUTE` `KEY_VOLUMEUP` `KEY_VOLUMEDOWN` `KEY_ALTERASE` `KEY_SYSREQ` `KEY_CANCEL` `KEY_CLEAR` `KEY_PRIOR` `KEY_RETURN2` `KEY_SEPARATOR` `KEY_OUT` `KEY_OPER` `KEY_CLEARAGAIN` `KEY_CRSEL` `KEY_EXSEL` `KEY_THOUSANDSSEPARATOR` `KEY_DECIMALSEPARATOR` `KEY_CURRENCYUNIT` `KEY_CURRENCYSUBUNIT`
Constantes de souris
Curseur et molette
`MOUSE_POS_X` `MOUSE_POS_Y` `MOUSE_WHEEL_X` `MOUSE_WHEEL_Y`
Boutons
`MOUSE_BUTTON_LEFT` `MOUSE_BUTTON_MIDDLE` `MOUSE_BUTTON_RIGHT` `MOUSE_BUTTON_X1` `MOUSE_BUTTON_X2`
Constantes de manette
Manette 1
`GAMEPAD1_AXIS_LEFTX` `GAMEPAD1_AXIS_LEFTY` `GAMEPAD1_AXIS_RIGHTX` `GAMEPAD1_AXIS_RIGHTY` `GAMEPAD1_AXIS_TRIGGERLEFT` `GAMEPAD1_AXIS_TRIGGERRIGHT` `GAMEPAD1_BUTTON_A` `GAMEPAD1_BUTTON_B` `GAMEPAD1_BUTTON_X` `GAMEPAD1_BUTTON_Y` `GAMEPAD1_BUTTON_BACK` `GAMEPAD1_BUTTON_GUIDE` `GAMEPAD1_BUTTON_START` `GAMEPAD1_BUTTON_LEFTSTICK` `GAMEPAD1_BUTTON_RIGHTSTICK` `GAMEPAD1_BUTTON_LEFTSHOULDER` `GAMEPAD1_BUTTON_RIGHTSHOULDER` `GAMEPAD1_BUTTON_DPAD_UP` `GAMEPAD1_BUTTON_DPAD_DOWN` `GAMEPAD1_BUTTON_DPAD_LEFT` `GAMEPAD1_BUTTON_DPAD_RIGHT`
Manette 2
`GAMEPAD2_AXIS_LEFTX` `GAMEPAD2_AXIS_LEFTY` `GAMEPAD2_AXIS_RIGHTX` `GAMEPAD2_AXIS_RIGHTY` `GAMEPAD2_AXIS_TRIGGERLEFT` `GAMEPAD2_AXIS_TRIGGERRIGHT` `GAMEPAD2_BUTTON_A` `GAMEPAD2_BUTTON_B` `GAMEPAD2_BUTTON_X` `GAMEPAD2_BUTTON_Y` `GAMEPAD2_BUTTON_BACK` `GAMEPAD2_BUTTON_GUIDE` `GAMEPAD2_BUTTON_START` `GAMEPAD2_BUTTON_LEFTSTICK` `GAMEPAD2_BUTTON_RIGHTSTICK` `GAMEPAD2_BUTTON_LEFTSHOULDER` `GAMEPAD2_BUTTON_RIGHTSHOULDER` `GAMEPAD2_BUTTON_DPAD_UP` `GAMEPAD2_BUTTON_DPAD_DOWN` `GAMEPAD2_BUTTON_DPAD_LEFT` `GAMEPAD2_BUTTON_DPAD_RIGHT`
Manette 3
`GAMEPAD3_AXIS_LEFTX` `GAMEPAD3_AXIS_LEFTY` `GAMEPAD3_AXIS_RIGHTX` `GAMEPAD3_AXIS_RIGHTY` `GAMEPAD3_AXIS_TRIGGERLEFT` `GAMEPAD3_AXIS_TRIGGERRIGHT` `GAMEPAD3_BUTTON_A` `GAMEPAD3_BUTTON_B` `GAMEPAD3_BUTTON_X` `GAMEPAD3_BUTTON_Y` `GAMEPAD3_BUTTON_BACK` `GAMEPAD3_BUTTON_GUIDE` `GAMEPAD3_BUTTON_START` `GAMEPAD3_BUTTON_LEFTSTICK` `GAMEPAD3_BUTTON_RIGHTSTICK` `GAMEPAD3_BUTTON_LEFTSHOULDER` `GAMEPAD3_BUTTON_RIGHTSHOULDER` `GAMEPAD3_BUTTON_DPAD_UP` `GAMEPAD3_BUTTON_DPAD_DOWN` `GAMEPAD3_BUTTON_DPAD_LEFT` `GAMEPAD3_BUTTON_DPAD_RIGHT`
Manette 4
`GAMEPAD4_AXIS_LEFTX` `GAMEPAD4_AXIS_LEFTY` `GAMEPAD4_AXIS_RIGHTX` `GAMEPAD4_AXIS_RIGHTY` `GAMEPAD4_AXIS_TRIGGERLEFT` `GAMEPAD4_AXIS_TRIGGERRIGHT` `GAMEPAD4_BUTTON_A` `GAMEPAD4_BUTTON_B` `GAMEPAD4_BUTTON_X` `GAMEPAD4_BUTTON_Y` `GAMEPAD4_BUTTON_BACK` `GAMEPAD4_BUTTON_GUIDE` `GAMEPAD4_BUTTON_START` `GAMEPAD4_BUTTON_LEFTSTICK` `GAMEPAD4_BUTTON_RIGHTSTICK` `GAMEPAD4_BUTTON_LEFTSHOULDER` `GAMEPAD4_BUTTON_RIGHTSHOULDER` `GAMEPAD4_BUTTON_DPAD_UP` `GAMEPAD4_BUTTON_DPAD_DOWN` `GAMEPAD4_BUTTON_DPAD_LEFT` `GAMEPAD4_BUTTON_DPAD_RIGHT`
Graphiques

## Graphiques

variable `colors`

Liste des couleurs d'affichage de la palette. Spécifiées par une valeur numérique de 24 bits. Prend en charge les opérations de liste Python.

Détails
Type
`list[int]`
Exemple

    old_colors = list(pyxel.colors)
    pyxel.colors[15] = 0x112233

variable `images`

Liste des banques d'images (instances de la classe Image) (0-2).

Détails
Type
`list[Image]`
Exemple

    pyxel.images[0].load(0, 0, "title.png")

variable `tilemaps`

Liste des tilemaps (instances de la classe Tilemap) (0-7).

Détails
Type
`list[Tilemap]`
variable `screen` ADV

L'image de l'écran (instance de la classe Image).

Détails
Type
`Image`
variable `cursor` ADV

L'image du curseur (instance de la classe Image).

Détails
Type
`Image`
variable `font` ADV

L'image de la police (instance de la classe Image).

Détails
Type
`Image`
function `clip(x, y, w, h)`

Définit la zone de dessin de l'écran à partir de (x, y) avec une largeur w et une hauteur h. Appeler clip() pour réinitialiser en plein écran.

Détails
Paramètres
`x` (float) — Coordonnée X du coin supérieur gauche
`y` (float) — Coordonnée Y du coin supérieur gauche
`w` (float) — Largeur de la zone de découpe
`h` (float) — Hauteur de la zone de découpe
function `clip()`

Réinitialise la zone de dessin en plein écran.

function `camera(x, y)`

Définit le décalage de dessin à (x, y). Toutes les opérations de dessin suivantes seront décalées de (-x, -y).

Détails
Paramètres
`x` (float) — Coordonnée X
`y` (float) — Coordonnée Y
function `camera()`

Réinitialise le décalage de dessin à (0, 0).

function `pal(col1, col2)`

Remplace la couleur col1 par col2 lors du dessin.

Détails
Paramètres
`col1` (int) — Couleur à remplacer
`col2` (int) — Couleur de remplacement
function `pal()`

Réinitialise la palette à l'état initial.

function `dither(alpha)`

Applique le tramage (pseudo-transparence) lors du dessin. Définit alpha dans la plage 0.0-1.0.

Détails
Paramètres
`alpha` (float) — Opacité (0.0: transparent, 1.0: opaque)
function `cls(col)`

Efface l'écran avec la couleur col.

Détails
Paramètres
`col` (int) — Couleur
function `pget(x, y)`

Obtient la couleur du pixel en (x, y).

Détails
Paramètres
`x` (float) — Coordonnée X
`y` (float) — Coordonnée Y
Retour
`int` — Couleur du pixel
function `pset(x, y, col)`

Dessine un pixel de couleur col en (x, y).

Détails
Paramètres
`x` (float) — Coordonnée X
`y` (float) — Coordonnée Y
`col` (int) — Couleur
function `line(x1, y1, x2, y2, col)`

Dessine une ligne de couleur col de (x1, y1) à (x2, y2).

Détails
Paramètres
`x1` (float) — Coordonnée X de début
`y1` (float) — Coordonnée Y de début
`x2` (float) — Coordonnée X de fin
`y2` (float) — Coordonnée Y de fin
`col` (int) — Couleur
function `rect(x, y, w, h, col)`

Dessine un rectangle rempli de largeur w, hauteur h et couleur col en (x, y).

Détails
Paramètres
`x` (float) — Coordonnée X
`y` (float) — Coordonnée Y
`w` (float) — Largeur
`h` (float) — Hauteur
`col` (int) — Couleur
function `rectb(x, y, w, h, col)`

Dessine le contour d'un rectangle de largeur w, hauteur h et couleur col en (x, y).

Détails
Paramètres
`x` (float) — Coordonnée X
`y` (float) — Coordonnée Y
`w` (float) — Largeur
`h` (float) — Hauteur
`col` (int) — Couleur
function `circ(x, y, r, col)`

Dessine un cercle rempli de rayon r et couleur col en (x, y).

Détails
Paramètres
`x` (float) — Coordonnée X du centre
`y` (float) — Coordonnée Y du centre
`r` (float) — Rayon
`col` (int) — Couleur
function `circb(x, y, r, col)`

Dessine le contour d'un cercle de rayon r et couleur col en (x, y).

Détails
Paramètres
`x` (float) — Coordonnée X du centre
`y` (float) — Coordonnée Y du centre
`r` (float) — Rayon
`col` (int) — Couleur
function `elli(x, y, w, h, col)`

Dessine une ellipse remplie de largeur w, hauteur h et couleur col en (x, y).

Détails
Paramètres
`x` (float) — Coordonnée X
`y` (float) — Coordonnée Y
`w` (float) — Largeur
`h` (float) — Hauteur
`col` (int) — Couleur
function `ellib(x, y, w, h, col)`

Dessine le contour d'une ellipse de largeur w, hauteur h et couleur col en (x, y).

Détails
Paramètres
`x` (float) — Coordonnée X
`y` (float) — Coordonnée Y
`w` (float) — Largeur
`h` (float) — Hauteur
`col` (int) — Couleur
function `tri(x1, y1, x2, y2, x3, y3, col)`

Dessine un triangle rempli avec les sommets (x1, y1), (x2, y2), (x3, y3) et la couleur col.

Détails
Paramètres
`x1` (float) — X du sommet 1
`y1` (float) — Y du sommet 1
`x2` (float) — X du sommet 2
`y2` (float) — Y du sommet 2
`x3` (float) — X du sommet 3
`y3` (float) — Y du sommet 3
`col` (int) — Couleur
function `trib(x1, y1, x2, y2, x3, y3, col)`

Dessine le contour d'un triangle avec les sommets (x1, y1), (x2, y2), (x3, y3) et la couleur col.

Détails
Paramètres
`x1` (float) — X du sommet 1
`y1` (float) — Y du sommet 1
`x2` (float) — X du sommet 2
`y2` (float) — Y du sommet 2
`x3` (float) — X du sommet 3
`y3` (float) — Y du sommet 3
`col` (int) — Couleur
function `fill(x, y, col)`

Remplit la zone connectée de la même couleur que (x, y) avec la couleur col.

Détails
Paramètres
`x` (float) — Coordonnée X
`y` (float) — Coordonnée Y
`col` (int) — Couleur de remplissage
function `blt(x, y, img, u, v, w, h, colkey=None, rotate=0, scale=1)`

Copie la région de taille (w, h) depuis (u, v) de la banque d'images img (0-2 ou instance Image) vers (x, y). Des valeurs négatives de w/h retournent l'image. colkey définit la couleur transparente. rotate et scale appliquent des transformations.

Détails
Paramètres
`x` (float) — X de destination
`y` (float) — Y de destination
`img` (int/Image) — Numéro de banque d'images (0-2) ou instance Image
`u` (float) — X source dans la banque d'images
`v` (float) — Y source dans la banque d'images
`w` (float) — Largeur (négatif pour inverser)
`h` (float) — Hauteur (négatif pour inverser)
`colkey` (int/None) — Couleur transparente. Si omis, pas de transparence.
`rotate` (float) — Angle de rotation en degrés (centré sur la région de copie). Par défaut : 0.
`scale` (float) — Facteur d'échelle (centré sur la région de copie). Par défaut : 1.
function `bltm(x, y, tm, u, v, w, h, colkey=None, rotate=0, scale=1)`

Copie la région de taille (w, h) depuis (u, v) de la tilemap tm (0-7 ou instance Tilemap) vers (x, y). Chaque tuile fait 8x8 pixels, stockée en (image_tx, image_ty). Des valeurs négatives de w/h retournent l'image. colkey définit la couleur transparente. rotate et scale appliquent des transformations.

Détails
Paramètres
`x` (float) — X de destination
`y` (float) — Y de destination
`tm` (int/Tilemap) — Numéro de tilemap (0-7) ou instance Tilemap
`u` (float) — X source dans le tilemap
`v` (float) — Y source dans le tilemap
`w` (float) — Largeur (négatif pour inverser)
`h` (float) — Hauteur (négatif pour inverser)
`colkey` (int/None) — Couleur transparente. Si omis, pas de transparence.
`rotate` (float) — Angle de rotation en degrés (centré sur la région de copie). Par défaut : 0.
`scale` (float) — Facteur d'échelle (centré sur la région de copie). Par défaut : 1.
function `blt3d(x, y, w, h, img, pos, rot, fov=60, colkey=None)`ADV

Dessine la banque d'images img (0-2 ou instance Image) avec projection en perspective dans le rectangle (x, y, w, h). pos est la position de la caméra où x, y correspondent aux coordonnées 2D et z est l'altitude. rot est la rotation en degrés. fov définit le champ de vision. colkey définit la couleur transparente.

Détails
Paramètres
`x` (float) — X de destination
`y` (float) — Y de destination
`w` (float) — Largeur d'affichage
`h` (float) — Hauteur d'affichage
`img` (int/Image) — Numéro de banque d'images (0-2) ou instance Image
`pos` ((float, float, float)) — Position de la caméra (x, y, z). x, y correspondent aux coordonnées 2D, z est l'altitude
`rot` ((float, float, float)) — Rotation en degrés. rot_x est vertical, rot_y horizontal, rot_z est l'inclinaison
`fov` (float) — Champ de vision en degrés. Par défaut : 60.
`colkey` (int/None) — Couleur transparente. Si omis, pas de transparence.
function `bltm3d(x, y, w, h, tm, pos, rot, fov=60, colkey=None)`ADV

Dessine le tilemap tm (0-7 ou instance Tilemap) avec projection en perspective dans le rectangle (x, y, w, h). pos est la position de la caméra où x, y correspondent aux coordonnées 2D et z est l'altitude. rot est la rotation en degrés. fov définit le champ de vision. colkey définit la couleur transparente.

Détails
Paramètres
`x` (float) — X de destination
`y` (float) — Y de destination
`w` (float) — Largeur d'affichage
`h` (float) — Hauteur d'affichage
`tm` (int/Tilemap) — Numéro de tilemap (0-7) ou instance Tilemap
`pos` ((float, float, float)) — Position de la caméra (x, y, z). x, y correspondent aux coordonnées 2D, z est l'altitude
`rot` ((float, float, float)) — Rotation en degrés. rot_x est vertical, rot_y horizontal, rot_z est l'inclinaison
`fov` (float) — Champ de vision en degrés. Par défaut : 60.
`colkey` (int/None) — Couleur transparente. Si omis, pas de transparence.
function `text(x, y, s, col, font=None)`

Dessine une chaîne s en couleur col en (x, y).

Détails
Paramètres
`x` (float) — Coordonnée X
`y` (float) — Coordonnée Y
`s` (str) — Chaîne à dessiner
`col` (int) — Couleur
`font` (Font) — Police personnalisée. Si omis, la police standard est utilisée.
Constantes de couleurs
`COLOR_BLACK` `COLOR_NAVY` `COLOR_PURPLE` `COLOR_GREEN` `COLOR_BROWN` `COLOR_DARK_BLUE` `COLOR_LIGHT_BLUE` `COLOR_WHITE` `COLOR_RED` `COLOR_ORANGE` `COLOR_YELLOW` `COLOR_LIME` `COLOR_CYAN` `COLOR_GRAY` `COLOR_PINK` `COLOR_PEACH`
Détails
`COLOR_BLACK` — 0 — Noir (#000000)
`COLOR_NAVY` — 1 — Bleu marine (#2b335f)
`COLOR_PURPLE` — 2 — Violet (#7e2072)
`COLOR_GREEN` — 3 — Vert (#19959c)
`COLOR_BROWN` — 4 — Marron (#8b4852)
`COLOR_DARK_BLUE` — 5 — Bleu foncé (#395c98)
`COLOR_LIGHT_BLUE` — 6 — Bleu clair (#a9c1ff)
`COLOR_WHITE` — 7 — Blanc (#eeeeee)
`COLOR_RED` — 8 — Rouge (#d4186c)
`COLOR_ORANGE` — 9 — Orange (#d38441)
`COLOR_YELLOW` — 10 — Jaune (#e9c35b)
`COLOR_LIME` — 11 — Citron vert (#70c6a9)
`COLOR_CYAN` — 12 — Cyan (#7696de)
`COLOR_GRAY` — 13 — Gris (#a3a3a3)
`COLOR_PINK` — 14 — Rose (#ff9798)
`COLOR_PEACH` — 15 — Pêche (#edc7b0)
Constantes de ressources
`NUM_COLORS` `NUM_IMAGES` `IMAGE_SIZE` `NUM_TILEMAPS` `TILEMAP_SIZE` `TILE_SIZE` `FONT_WIDTH` `FONT_HEIGHT`
Détails
`NUM_COLORS` — 16 — Nombre de couleurs de palette
`NUM_IMAGES` — 3 — Nombre de banques d'images (0-2)
`IMAGE_SIZE` — 256 — Largeur et hauteur d'image
`NUM_TILEMAPS` — 8 — Nombre de tilemaps (0-7)
`TILEMAP_SIZE` — 256 — Largeur et hauteur de la tilemap
`TILE_SIZE` — 8 — Taille de tuile en pixels
`FONT_WIDTH` — 4 — Largeur de police intégrée
`FONT_HEIGHT` — 6 — Hauteur de police intégrée
Audio

## Audio

variable `channels` ADV

Liste des canaux (instances de la classe Channel) (0-3).

Détails
Type
`list[Channel]`
variable `tones` ADV

Liste des définitions de ton (instances de la classe Tone) (0-3).

Détails
Type
`list[Tone]`
variable `sounds`

Liste des sons (instances de la classe Sound) (0-63).

Détails
Type
`list[Sound]`
Exemple

    pyxel.sounds[0].speed = 60

variable `musics`

Liste des pistes musicales (instances de la classe Music) (0-7).

Détails
Type
`list[Music]`
function `play(ch, snd, sec=0, loop=False, resume=False)`

Joue le son snd sur le canal ch (0-3). snd peut être un numéro de son (0-63), une liste de numéros, une instance de Sound, une liste de Sounds ou une chaîne MML.

Détails
Paramètres
`ch` (int) — Numéro de canal (0-3)
`snd` (int/list/Sound/str) — Numéro de son (0-63), liste de numéros, instance Sound, liste de Sounds ou chaîne MML
`sec` (float) — Position de début de lecture en secondes. Par défaut : 0.
`loop` (bool) — Lecture en boucle. Par défaut : False.
`resume` (bool) — Reprendre le son précédent après la lecture. Par défaut : False.
function `playm(msc, sec=0, loop=False)`

Joue la musique msc (0-7).

Détails
Paramètres
`msc` (int) — Numéro de musique (0-7)
`sec` (float) — Position de début de lecture en secondes. Par défaut : 0.
`loop` (bool) — Lecture en boucle. Par défaut : False.
function `stop(ch)`

Arrête la lecture du canal spécifié ch (0-3).

Détails
Paramètres
`ch` (int) — Numéro de canal (0-3)
function `stop()`

Arrête la lecture de tous les canaux.

function `play_pos(ch)`

Obtient la position de lecture du son du canal ch (0-3) sous forme de tuple (sound_index, sec). Renvoie None lorsque la lecture est arrêtée.

Détails
Paramètres
`ch` (int) — Numéro de canal (0-3)
Retour
`tuple[int, float]/None` — (sound_index, sec) ou None
function `gen_bgm(preset, transp, instr, seed, play=False)`

Génère une liste MML de BGM à l'aide d'un algorithme. preset (0-7) sélectionne le preset, instr (0-3) sélectionne l'instrumentation.

Détails
Paramètres
`preset` (int) — Numéro de preset (0-7). 0-1: titre, départ (tempo moyen), 2-3: ville, paisible (tempo lent), 4-5: terrain, aventure (tempo moyen), 6-7: combat, crise (tempo rapide)
`transp` (int) — Transposition en demi-tons (-5 à +5).
`instr` (int) — Instrumentation (0-3). 0: mélodie+reverb+basse (3ch), 1: mélodie+basse+batterie (3ch), 2: mélodie+sub+basse (3ch), 3: mélodie+sub+basse+batterie (4ch).
`seed` (int) — Graine aléatoire
`play` (bool) — Lire le MML généré. Par défaut : False.
Retour
`list[str]` — Liste de chaînes MML
Constantes de tons et effets
Tons
`TONE_TRIANGLE` `TONE_SQUARE` `TONE_PULSE` `TONE_NOISE`
Détails
`TONE_TRIANGLE` — 0 — Onde triangulaire
`TONE_SQUARE` — 1 — Onde carrée
`TONE_PULSE` — 2 — Onde pulsée
`TONE_NOISE` — 3 — Bruit
Effets
`EFFECT_NONE` `EFFECT_SLIDE` `EFFECT_VIBRATO` `EFFECT_FADEOUT` `EFFECT_HALF_FADEOUT` `EFFECT_QUARTER_FADEOUT`
Détails
`EFFECT_NONE` — 0 — Aucun effet
`EFFECT_SLIDE` — 1 — Glissement
`EFFECT_VIBRATO` — 2 — Vibrato
`EFFECT_FADEOUT` — 3 — Fondu sortant
`EFFECT_HALF_FADEOUT` — 4 — Demi-fondu
`EFFECT_QUARTER_FADEOUT` — 5 — Quart de fondu
Constantes de ressources
`NUM_CHANNELS` `NUM_TONES` `NUM_SOUNDS` `NUM_MUSICS`
Détails
`NUM_CHANNELS` — 4 — Nombre de canaux audio (0-3)
`NUM_TONES` — 4 — Nombre de types de ton (0-3)
`NUM_SOUNDS` — 64 — Nombre de sons (0-63)
`NUM_MUSICS` — 8 — Nombre de pistes musicales (0-7)
Mathématiques

## Mathématiques

function `ceil(x)`

Renvoie le plus petit entier supérieur ou égal à x.

Détails
Paramètres
`x` (float) — Valeur
Retour
`int` — Plus petit entier >= x
function `floor(x)`

Renvoie le plus grand entier inférieur ou égal à x.

Détails
Paramètres
`x` (float) — Valeur
Retour
`int` — Plus grand entier <= x
function `clamp(x, lower, upper)`

Renvoie x limité entre lower et upper.

Détails
Paramètres
`x` (float) — Valeur à borner
`lower` (float) — Valeur minimale
`upper` (float) — Valeur maximale
Retour
`float` — Valeur bornée
function `sgn(x)`

Renvoie 1 lorsque x est positif, 0 lorsqu'il vaut 0 et -1 lorsqu'il est négatif.

Détails
Paramètres
`x` (int/float) — Valeur
Retour
`int/float` — Signe de la valeur (1, 0 ou -1)
function `sqrt(x)`

Renvoie la racine carrée de x.

Détails
Paramètres
`x` (float) — Valeur
Retour
`float` — Racine carrée de x
function `sin(deg)`

Renvoie le sinus de deg degrés.

Détails
Paramètres
`deg` (float) — Angle en degrés
Retour
`float` — Valeur du sinus
function `cos(deg)`

Renvoie le cosinus de deg degrés.

Détails
Paramètres
`deg` (float) — Angle en degrés
Retour
`float` — Valeur du cosinus
function `atan2(y, x)`

Renvoie l'arctangente de y/x en degrés.

Détails
Paramètres
`y` (float) — Valeur Y
`x` (float) — Valeur X
Retour
`float` — Angle en degrés
function `rseed(seed)`

Définit la graine du générateur de nombres aléatoires.

Détails
Paramètres
`seed` (int) — Valeur de graine (entier non négatif)
function `rndi(a, b)`

Renvoie un entier aléatoire de a à b (inclus).

Détails
Paramètres
`a` (int) — Valeur minimale (incluse)
`b` (int) — Valeur maximale (incluse)
Retour
`int` — Nombre entier aléatoire de a à b
function `rndf(a, b)`

Renvoie un nombre à virgule flottante aléatoire de a à b (inclus).

Détails
Paramètres
`a` (float) — Valeur minimale (incluse)
`b` (float) — Valeur maximale (incluse)
Retour
`float` — Nombre décimal aléatoire de a à b
function `nseed(seed)`

Définit la graine du bruit de Perlin.

Détails
Paramètres
`seed` (int) — Valeur de graine (entier non négatif)
function `noise(x, y=0, z=0)`

Renvoie la valeur du bruit de Perlin pour les coordonnées spécifiées.

Détails
Paramètres
`x` (float) — Coordonnée X
`y` (float) — Coordonnée Y. Par défaut : 0.
`z` (float) — Coordonnée Z. Par défaut : 0.
Retour
`float` — Valeur de bruit Perlin
Classe Font

## Classe Font

class `Font(filename, font_size=10.0)`ADV

Crée une instance Font à partir d'un fichier de police (BDF/OTF/TTF/TTC).

Détails
Paramètres
`filename` (str) — Nom du fichier de police (BDF/OTF/TTF/TTC)
`font_size` (float) — Taille de police. Par défaut : 10.0. Non utilisé pour BDF.
Retour
`Font` — Nouvelle instance Font
function `Font.text_width(s)`ADV

Renvoie la largeur d'affichage de la chaîne s dans cette police.

Détails
Paramètres
`s` (str) — Chaîne à mesurer
Retour
`int` — Largeur en pixels
Classe Image

## Classe Image

class `Image(width, height)`ADV

Crée une nouvelle instance Image avec la taille spécifiée.

Détails
Paramètres
`width` (int) — Largeur de l'image
`height` (int) — Hauteur de l'image
Retour
`Image` — Nouvelle instance Image
class `Image.from_image(filename, include_colors=False)`ADV

Crée une instance Image à partir d'un fichier image.

Détails
Paramètres
`filename` (str) — Nom du fichier image
`include_colors` (bool) — Inclure les couleurs de palette du fichier. Par défaut : False.
Retour
`Image` — Instance Image depuis un fichier
variable `Image.width`

La largeur de l'image.

Détails
Type
`int`
variable `Image.height`

La hauteur de l'image.

Détails
Type
`int`
function `Image.set(x, y, data)`

Définit l'image à (x, y) à l'aide d'une liste de chaînes hexadécimales. Chaque caractère représente un indice de couleur (0-f).

Détails
Paramètres
`x` (int) — Coordonnée X
`y` (int) — Coordonnée Y
`data` (list[str]) — Données d'image sous forme de liste de chaînes
Exemple

    pyxel.images[0].set(10, 10, ["0123", "4567", "89ab", "cdef"])

function `Image.load(x, y, filename, include_colors=False)`

Charge un fichier image (PNG/GIF/JPEG) en (x, y).

Détails
Paramètres
`x` (int) — Coordonnée X
`y` (int) — Coordonnée Y
`filename` (str) — Nom du fichier image (PNG/GIF/JPEG)
`include_colors` (bool) — Inclure les couleurs de palette du fichier. Par défaut : False.
function `Image.pget(x, y)`

Obtient la couleur du pixel en (x, y).

Détails
Paramètres
`x` (float) — Coordonnée X
`y` (float) — Coordonnée Y
Retour
`int` — Couleur du pixel
function `Image.pset(x, y, col)`

Dessine un pixel de couleur col en (x, y).

Détails
Paramètres
`x` (float) — Coordonnée X
`y` (float) — Coordonnée Y
`col` (int) — Couleur
function `Image.{cls, line, rect, rectb, circ, circb, elli, ellib, tri, trib, fill, blt, bltm, blt3d, bltm3d, text, clip, camera, pal, dither}`

Les instances d'Image prennent en charge toutes les fonctions de dessin de la section Graphiques. Elles fonctionnent de la même manière mais dessinent sur l'image au lieu de l'écran.

function `Image.data_ptr()`ADV

Renvoie le pointeur de données brutes de l'image sous forme de tableau ctypes c_uint8.

Détails
Retour
`Any` — Pointeur de données brutes
function `Image.save(filename, scale)`ADV

Enregistre l'image dans un fichier.

Détails
Paramètres
`filename` (str) — Nom du fichier de sortie
`scale` (int) — Facteur d'échelle
Classe Tilemap

## Classe Tilemap

class `Tilemap(width, height, img)`ADV

Crée une nouvelle instance Tilemap.

Détails
Paramètres
`width` (int) — Largeur du tilemap
`height` (int) — Hauteur du tilemap
`img` (int/Image) — Numéro de banque d'images (0-2) ou instance Image
Retour
`Tilemap` — Nouvelle instance Tilemap
class `Tilemap.from_tmx(filename, layer)`ADV

Crée une instance Tilemap à partir d'un fichier TMX.

Détails
Paramètres
`filename` (str) — Nom du fichier TMX
`layer` (int) — Numéro de couche (0-)
Retour
`Tilemap` — Instance Tilemap depuis un fichier TMX
variable `Tilemap.width`

La largeur de la tilemap.

Détails
Type
`int`
variable `Tilemap.height`

La hauteur de la tilemap.

Détails
Type
`int`
variable `Tilemap.imgsrc`

La banque d'images (0-2) ou l'instance Image référencée par la tilemap.

Détails
Type
`int/Image`
function `Tilemap.set(x, y, data)`

Définit la tilemap à (x, y) à l'aide d'une liste de chaînes. Chaque tuile est une valeur hexadécimale à 4 chiffres représentant (image_tx, image_ty), séparées par des espaces.

Détails
Paramètres
`x` (int) — Coordonnée X
`y` (int) — Coordonnée Y
`data` (list[str]) — Données de tilemap sous forme de liste de chaînes
Exemple

    pyxel.tilemaps[0].set(0, 0, ["0000 0100 a0b0", "0001 0101 a1b1"])

function `Tilemap.load(x, y, filename, layer)`

Charge le calque layer (0-) du fichier TMX en (x, y).

Détails
Paramètres
`x` (int) — Coordonnée X
`y` (int) — Coordonnée Y
`filename` (str) — Nom du fichier TMX
`layer` (int) — Numéro de couche (0-)
function `Tilemap.pget(x, y)`

Obtient le tile en (x, y). Un tile est un tuple de (image_tx, image_ty).

Détails
Paramètres
`x` (float) — Coordonnée X
`y` (float) — Coordonnée Y
Retour
`tuple[int, int]` — (image_tx, image_ty)
function `Tilemap.pset(x, y, tile)`

Définit un tile en (x, y). Un tile est un tuple de (image_tx, image_ty).

Détails
Paramètres
`x` (float) — Coordonnée X
`y` (float) — Coordonnée Y
`tile` (tuple[int, int]) — Tuile en (image_tx, image_ty)
function `Tilemap.{cls, line, rect, rectb, circ, circb, elli, ellib, tri, trib, fill, blt, clip, camera}`

Les instances de Tilemap prennent en charge les fonctions de dessin de la section Graphiques. Elles fonctionnent de la même manière mais dessinent des tiles sur la tilemap au lieu de pixels sur l'écran. Utilisez un tuple de tile (image_tx, image_ty) au lieu d'une valeur de couleur.

function `Tilemap.collide(x, y, w, h, dx, dy, walls)`

Résout les collisions après application du mouvement en pixels (dx, dy) au rectangle en pixels à (x, y) de taille (w, h), et renvoie le (dx, dy) ajusté. walls est une liste de coordonnées de tuiles faisant office d'obstacles.

Détails
Paramètres
`x` (float) — Position X du rectangle
`y` (float) — Position Y du rectangle
`w` (float) — Largeur du rectangle
`h` (float) — Hauteur du rectangle
`dx` (float) — Déplacement en X
`dy` (float) — Déplacement en Y
`walls` (list[tuple[int, int]]) — Liste de tuiles de mur (image_tx, image_ty)
Retour
`tuple[float, float]` — (dx, dy) ajusté
function `Tilemap.data_ptr()`ADV

Renvoie le pointeur de données brutes de la tilemap sous forme de tableau ctypes c_uint16 (4 octets par tuile : image_tx, image_ty).

Détails
Retour
`Any` — Pointeur de données brutes
Classe Sound

## Classe Sound

class `Sound()`ADV

Crée une nouvelle instance Sound.

Détails
Retour
`Sound` — Nouvelle instance Sound
variable `Sound.notes`

Liste des notes (0-59). Les valeurs plus élevées produisent des sons plus aigus. 33 = 'A2' (440 Hz). Les silences sont -1.

Détails
Type
`list[int]`
variable `Sound.tones`

Liste des timbres (0: Triangle, 1: Square, 2: Pulse, 3: Noise).

Détails
Type
`list[int]`
variable `Sound.volumes`

Liste des volumes (0-7).

Détails
Type
`list[int]`
variable `Sound.effects`

Liste des effets (0: None, 1: Slide, 2: Vibrato, 3: FadeOut, 4: Half-FadeOut, 5: Quarter-FadeOut).

Détails
Type
`list[int]`
variable `Sound.speed`

Vitesse de lecture. 1 est le plus rapide, et plus le nombre est grand, plus la lecture est lente. À 120, une note équivaut à 1 seconde.

Détails
Type
`int`
function `Sound.set(notes, tones, volumes, effects, speed)`

Définit les notes, les timbres, les volumes et les effets à l'aide de chaînes. Si la chaîne des timbres, des volumes ou des effets est plus courte que les notes, elle se répète depuis le début.

Détails
Paramètres
`notes` (str) — Chaîne de notes
`tones` (str) — Chaîne de timbres
`volumes` (str) — Chaîne de volumes
`effects` (str) — Chaîne d'effets
`speed` (int) — Vitesse de lecture
function `Sound.set_notes(notes)`

Définit les notes à l'aide d'une chaîne composée de noms de notes (CDEFGAB), dièse (#) ou bémol (-) optionnels, octave (0-4) et silences (R). Insensible à la casse, les espaces sont ignorés.

Détails
Paramètres
`notes` (str) — Chaîne notes
Exemple

    pyxel.sounds[0].set_notes("g2b-2d3r rf3f3f3")

function `Sound.set_tones(tones)`

Définit les timbres avec une chaîne de TSPN (ou 0-9 pour des numéros de timbre personnalisés). Insensible à la casse, les espaces sont ignorés.

Détails
Paramètres
`tones` (str) — Chaîne tones
Exemple

    pyxel.sounds[0].set_tones("ttss pppn")

function `Sound.set_volumes(volumes)`

Définit les volumes avec une chaîne de 01234567. Les espaces sont ignorés.

Détails
Paramètres
`volumes` (str) — Chaîne volumes
Exemple

    pyxel.sounds[0].set_volumes("7777 7531")

function `Sound.set_effects(effects)`

Définit les effets avec une chaîne de NSVFHQ. Insensible à la casse, les espaces sont ignorés.

Détails
Paramètres
`effects` (str) — Chaîne effects
Exemple

    pyxel.sounds[0].set_effects("nfnf nvvs")

function `Sound.mml(code)`

Passe en mode MML avec la chaîne MML donnée. En mode MML, les paramètres normaux tels que les notes et la vitesse sont ignorés. Pour les commandes MML disponibles, consultez la page Commandes MML de Pyxel.

Détails
Paramètres
`code` (str) — Chaîne MML
Exemple

    pyxel.sounds[0].mml("T120 Q90 @1 V100 O5 L8 C4&C<G16R16>C.")

function `Sound.mml()`

Quitte le mode MML et revient au mode normal.

function `Sound.pcm(filename)`

Charge un fichier audio (WAV/OGG) pour la lecture.

Détails
Paramètres
`filename` (str) — Nom du fichier audio (WAV/OGG)
Exemple

    pyxel.sounds[0].pcm("sounds/bgm.ogg")

function `Sound.pcm()`

Quitte le mode PCM et revient au mode normal.

function `Sound.save(filename, sec, ffmpeg=False)`ADV

Crée un fichier WAV du son pour la durée spécifiée en secondes.

Détails
Paramètres
`filename` (str) — Nom du fichier WAV de sortie
`sec` (float) — Durée en secondes
`ffmpeg` (bool) — Créer aussi un fichier MP4 (nécessite FFmpeg). Par défaut : False.
function `Sound.total_sec()`ADV

Renvoie la durée de lecture en secondes. Renvoie None pour les boucles infinies.

Détails
Retour
`float/None` — Durée de lecture en secondes, ou None pour les boucles infinies
Classe Music

## Classe Music

class `Music()`ADV

Crée une nouvelle instance Music.

Détails
Retour
`Music` — Nouvelle instance Music
variable `Music.seqs`

Une liste bidimensionnelle de sons (0-63) sur plusieurs canaux.

Détails
Type
`list[list[int]]`
function `Music.set(seq0, seq1, seq2, ...)`

Définit les listes de sons (0-63) pour chaque canal. Une liste vide signifie que le canal n'est pas utilisé.

Détails
Paramètres
`seq0, seq1, ...` (list[int]) — Listes de sons par canal. Liste vide = non utilisé.
Exemple

    pyxel.musics[0].set([0, 1], [], [3])

function `Music.save(filename, sec, ffmpeg=False)`ADV

Crée un fichier WAV de la musique pour la durée spécifiée en secondes.

Détails
Paramètres
`filename` (str) — Nom du fichier WAV de sortie
`sec` (float) — Durée en secondes
`ffmpeg` (bool) — Créer aussi un fichier MP4 (nécessite FFmpeg). Par défaut : False.
Classe Channel

## Classe Channel

class `Channel()`ADV

Crée une nouvelle instance Channel.

Détails
Retour
`Channel` — Nouvelle instance Channel
variable `Channel.gain` ADV

Le gain (volume) du canal. Par défaut : 0.125.

Détails
Type
`float`
variable `Channel.detune` ADV

La valeur de detune pour l'ajustement de la hauteur. Par défaut : 0.

Détails
Type
`int`
function `Channel.play(snd, sec=0, loop=False, resume=False)`ADV

Joue le son snd sur ce canal. snd peut être un numéro de son, une liste, une instance Sound, une liste de Sounds ou une chaîne MML.

Détails
Paramètres
`snd` (int/list/Sound/str) — Numéro de son (0-63), liste de numéros, instance Sound, liste de Sounds ou chaîne MML
`sec` (float) — Position de début de lecture en secondes. Par défaut : 0.
`loop` (bool) — Lecture en boucle. Par défaut : False.
`resume` (bool) — Reprendre le son précédent après la lecture. Par défaut : False.
function `Channel.stop()`ADV

Arrête la lecture sur ce canal.

function `Channel.play_pos()`ADV

Récupère la position de lecture sous forme de tuple (sound_index, sec). Renvoie None lorsque la lecture est arrêtée.

Détails
Retour
`tuple[int, float]/None` — (sound_index, sec) ou None
Classe Tone

## Classe Tone

class `Tone()`ADV

Crée une nouvelle instance Tone.

Détails
Retour
`Tone` — Nouvelle instance Tone
variable `Tone.mode` ADV

Mode de tonalité (0: Wavetable, 1: ShortPeriodNoise, 2: LongPeriodNoise).

Détails
Type
`int`
variable `Tone.sample_bits` ADV

Bits d'échantillonnage pour la wavetable. Par défaut : 4.

Détails
Type
`int`
variable `Tone.wavetable` ADV

Données de table d'ondes sous forme de liste de valeurs d'échantillon. Chaque valeur doit être comprise entre 0 et (2^sample_bits - 1).

Détails
Type
`list[int]`
variable `Tone.waveform` ADV

Alias obsolète de wavetable.

Détails
Type
`list[int]`
variable `Tone.gain` ADV

Gain du tone. Par défaut : 1.0.

Détails
Type
`float`