Encyclopédie de la création de jeux

Aide-mémoire

Cet aide-mémoire vous permettra de retrouver facilement des raccourcis claviers, des règles de syntaxe et des commandes. Si vous repérez que quelque chose manque ou n’est plus à jour, n’hésitez pas à modifier la page .

Raccourcis clavier

Ces quelques raccourcis clavier vous permettront de gagner du temps. Les raccourcis nécessitent pour la plupart d’entre eux que l’option config.developer soit sur True pour fonctionner.

Structure du langage

Les blocs de code sont espacés de 4 caractères par rapport au bloc de code parent. Les tabulations ↹ sont interdites.

# Les lignes commençant par # sont des commentaires.
condition1:
    # Les : indiquent que ce qui suit est un bloc
    # qui sera parcouru si condition1 est vrai.
    # Le contenu du bloc est indenté de 4 espaces.
    condition2:
        # On se décale à nouveau de 4 espaces.
condition3:
    # Un autre bloc.

Personnages

define p = Character("Popeye", color="#ffffff")

Définit le personnage p avec le nom Popeye et la couleur #ffffff.

Dialogues

"Ceci est un message du narateur"
p "Ceci est un message du personnage p"
"Ceci est un message du narateur contenant des \"guillemets\""

Images

Les images doivent être placées dans le répertoire images de votre projet. Les formats recommandés sont PNG pour les dessins, et PNG ou JPEG pour les photos.

# Affiche l'image "fond hongkong" en tant que
# fond avec un effet "dissolve" en transition.
scene fond hongkong
with dissolve # facultatif

# Affiche l'image "marie heureuse"
show marie heureuse
# Affiche l'image à droite. right peut être
# remplacé par left, top ou bottom.
show marie heureuse at right
# Cache l'image "marie heureuse"
hide marie heureuse

Musique et sons

Les fichiers audio doivent être placés dans le répertoire game de votre projet. Le format recommandé est l’OGG Vorbis.

# Joue une musique en boucle.
play music "musique.ogg"
stop music
# Joue un son une seule fois.
play sound "fichier_audio.ogg"

Choix multiples

Remarquez l’indentation qui est essentielle pour que le code fonctionne.

menu:
    "Une question ?" # Facultatif
    "Une réponse possible":
        # Bloc exécuté si la réponse ci-dessus est choisie
    "Une autre réponse possible":
        # Bloc exécuté si la réponse ci-dessus est choisie
    "Une troisième réponse possible":
        # Bloc exécuté si la réponse ci-dessus est choisie

Labels et sauts

Les labels marquent différents états du jeu. Tandis que normalement, le code est parcouru ligne après ligne, les sauts permettent d’aller directement à un endroit marqué d’un label. Les sauts sont généralement utilisés dans les menus.

label infini: # Déclaration d'un label nommé "infini"
    "Ne suis-je pas déjà passé par là ?"
    jump infini # Retourne à la première ligne.
    # Ce cas particulier est appelé boucle infinie.

Exemple simple avec menus et sauts

menu:
    "Vous aimez le chocolat ?"
    "Oh oui !":
        jump aime_chocolat
    "Beurk, non !":
        jump aime_pas_chocolat

label aime_chocolat:
    "Alors comme ça vous aimez le chocolat..."
    jump suite # Ce saut est important. Sans lui,
    # l'état "aime_pas_chocolat" serait parcouru.

label aime_pas_chocolat:
    "Non, sérieusement ?"

label suite:
    "Bon, peu importe."

Récapitulatif


Dernière mise à jour le 6 octobre 2018