Projet : Élément d'inventaire
Fait partie de la section Introduction à Luau du Journey Lua de Coddy — leçon 63 sur 73.
Défi
FacileCommencez le projet d'inventaire en définissant son type principal et deux objets.
- Déclarez un alias de type générique
Item<T>avec les champsid: number,name: stringetdata: T. - Créez
swordde typeItem<{damage: number}>avecid = 1,name = "Iron Sword"etdata = {damage = 25}. - Créez
potionde typeItem<{heal: number}>avecid = 2,name = "Health Potion"etdata = {heal = 40}.
Ensuite, affichez, chacun sur sa propre ligne :
sword.idsword.namesword.data.damagepotion.idpotion.namepotion.data.heal
Essayez vous-même
-- Écrivez le code ici
-- 1) déclarez le type générique Item<T> avec id, name et data
-- 2) créez sword (Item<{damage: number}>) et potion (Item<{heal: number}>)
-- 3) affichez les six champs demandés, un par ligne
Toutes les leçons de Introduction à Luau
1Premiers pas avec Luau
Qu'est-ce que Luau ?Pourquoi utiliser Luau ?Votre premier code LuauVérification de type et modes d'erreurRécapitulatif : Introduction à Luau4Travailler avec les fonctions
Typage des paramètres et valeurs de retourTypage des fonctions anonymesFonctions ne retournant rienParamètres optionnelsValeurs par défaut des paramètresFonctions variadiquesDéfinition des types de fonctionsRécapitulatif : Fonctions typées7Projet : Gestionnaire de tâches typé
Projet : La structure d'une tâcheFonction pour ajouter une tâche10Projet : Inventaire générique
Projet : Élément d'inventaireFonction : Ajouter des éléments2Types fondamentaux
Types de base : num, str, boolLe type 'any' : la porte de sortieLe type 'unknown'Types Nil et optionnelsL'inférence de type en actionAnnotations explicites de typeRécapitulatif : Pratique des types fondamentaux5Alias, unions et intersections
Alias de types pour les types primitifsTypes unionsTravailler avec les types unionsTypes littérauxTypes intersectionsCombinaison d'alias de typesRécapitulatif : Combinaisons de types avancées3Tables typées : Tableaux et Maps
Tableaux typésAjout et lecture d'élémentsQu'est-ce qu'un type Map ?Déclaration et accès aux MapsItération sur les tablesTables à formes mixtesTableaux typés multidimensionnelstable.unpack et VarargsRécapitulatif : Tableaux et Maps