Menu
Coddy logo textTech

Récapitulatif - Gestionnaire d'événements simple

Fait partie de la section Logique et flux du Journey Lua de Coddy. Leçon 15 sur 54.

challenge icon

Défi

Facile

Écrivez une fonction createEventSystem qui crée un système d'événements simple avec des événements pré-enregistrés et en déclenche un en fonction des paramètres d'entrée.

Logique :

  • Créez une table vide pour stocker les événements à l'intérieur de createEventSystem
  • Définissez une fonction register qui prend eventName et callback, en stockant le rappel dans la table des événements avec le nom de l'événement comme clé
  • Définissez une fonction trigger qui prend eventName et arg, recherche le rappel dans la table des événements et l'appelle avec l'argument s'il existe
  • Pré-enregistrez trois événements :
    • "double" : prend un nombre et le retourne multiplié par 2
    • "square" : prend un nombre et le retourne au carré
    • "increment" : prend un nombre et lui ajoute 1
  • Déclenchez l'événement spécifié par le paramètre eventName avec le paramètre value
  • Retournez le résultat de l'événement déclenché, ou "Event not found" si l'événement n'existe pas

Paramètres :

  • eventName (string) : Le nom de l'événement à déclencher
  • value (number) : La valeur à passer au rappel de l'événement

Retourne :

  • Le résultat de la fonction de rappel (number), ou "Event not found" si l'événement n'existe pas (number|string)

Essayez vous-même

function createEventSystem(eventName, value)
    -- Écrivez le code ici
end

Toutes les leçons de Logique et flux

Entraînez-vous par vous-même : Compilateur Lua en ligne