Module:Tableau Pokémon

De Poképédia
Sauter à la navigation Sauter à la recherche

Fonction « sauvage »[modifier]

Paramètres[modifier]

Légende des icônes
Certains paramètres sont accompagnés d'une ou plusieurs icône indiquant leur(s) caractéristique(s) :
Facultatif.png : Ce paramètre est facultatif, et n'a donc pas besoin d'être systématiquement défini.
Icône catégorie.png : Ce paramètre classe automatiquement l'article dans une catégorie.
Données sémantiques.png : Ce paramètre influe sur les données sémantiques présentes en pied de page.

Paramètres non nommés[modifier]

  • jeu : l'abréviation du ou des jeux auxquels le tableau se réfère. Les abréviations possibles sont les suivantes :
  • image Facultatif.png : permet d'afficher une image en en-tête du tableau.
  • note Facultatif.png : pour ajouter une note au bas du tableau. Des raccourcis sont également disponibles :
  • taux-présents ou taux-absents (au choix) Facultatif.png : lorsque plusieurs taux sont possibles suivant différents éléments (météo, saison, climat...), et qu'un certain type de taux n'est pas disponible, ou que seuls certains taux sont présents, les indiquer séparés par des slashs /, sous la forme taux1/taux2/taux3..., sans le préfixe "taux-". Une phrase de fin est alors créée pour notifier de cette précision. Les taux spécifiques varient selon les jeux, et une liste est présente ci-dessous :
  • taux-raccourci Facultatif.png : de manière similaire à taux-présents et taux-absents, ce paramètre permet de restreindre les taux disponibles, selon une liste prédéfinie, pour faciliter la saisie. Il est à noter que ces trois paramètres ne peuvent pas être utilisés conjointement.

Paramètre non nommé[modifier]

  • (paramètre non nommé) : Le paramètre non nommé représente le contenu du tableau. Chaque ligne du tableau résultat est représentée par une ligne dans ce paramètre. Il existe deux types de ligne.
Ligne ne présentant pas de slash /
Une ligne ne présentant pas de slash sera considérée comme étant un changement de milieu (Hautes herbes, Dans l'eau, etc.). Bien que n'importe quel milieu puisse être indiqué, la plupart est normalisée selon le jeu. L'entrée d'un milieu normalisé sera alors accompagnée d'une coloration de la ligne, ainsi que d'une image représentant le milieu. Une liste des milieux normalisés est disponible ci-dessous :
En plus de ces milieux normalisés, il est également possible d'apporter des précisions. Pour marquer « Étage 3 » ou « Hautes herbes (zone ouest) » tout en gardant la normalisation, il suffira d'indiquer la séparation à l'aide d'une virgule ,, et donc écrire Étage, 3 ou Hautes herbes, (zone ouest). Avec deux virgules ,,, on peut ajouter un préfixe : Sous-sol,, Premier affichera « Premier sous-sol ». Si des milieux nécessaires venaient à manquer, vous pouvez modifier le module ou bien en discuter sur la page de discussion du module.
Ligne présentant un slash /
Une ligne présentant un slash sera considérée comme étant un Pokémon. Elle se présente sous la forme NomPokémon / nom-attribut1(attribut1) nom-attribut2(attribut2) .... Il est possible de renseigner plusieurs entrées pour un même Pokémon en multipliant les slashs, sans répéter le nom du Pokémon.
  • La partie de gauche représente le nom du Pokémon. Pour plus de précisions, se référer au module Ressources/infosPokemon. Si plusieurs Pokémon doivent être renseignés, dans le cas d'une horde de Pokémon par exemple, il suffit de les séparer avec une virgule ,, toujours avec le même nommage.
  • La partie de droite représente les attributs du Pokémon dans le contexte de Pokémon sauvage. Plusieurs fonctionnalités sont disponibles, et sauf indication contraire, s'indiquent avec des parenthèses (), sous la forme nom-attribut(attribut). Les différents attributs possibles sont les suivants :
  • niveau : permet de donner le niveau d'un Pokémon. Les traits d'union « - » sont transformés automatiquement en tiret demi-cadratin « – ». Un Pokémon qui est trouvable aux niveaux 20, 21, 22 et 24 pourra être représenté sous la forme niveau(20-22, 24). Plusieurs niveaux pour un même Pokémon peuvent être indiqués à l'aide d'une virgule ,, pour noter par exemple taux(18-20, RuO, 14, SaA) afin d'obtenir 18–20RO, puis 14SA sur la ligne suivante. Lorsque le même champ est renseigné pour plusieurs entrées de suite d'un même Pokémon, les lignes se fusionnent.
  • taux : le taux d'apparition du Pokémon dans le milieu. L'ajout du symbole « % » est automatique et n'a pas à être renseigné. Plusieurs taux pour un même Pokémon peuvent être indiqués à l'aide d'une virgule ,, pour noter par exemple taux(60, R, 30, S) afin d'obtenir 60 %R, puis 30 %S sur la ligne suivante. Cette fonctionnalité permet également de renseigner lorsqu'un Pokémon est exclusif à une des deux versions gérées par la tableau. Lorsque « Fixe » est renseigné, pour les Pokémon vadrouilleurs, un raccourci vers une icône Fixe est créé, pour améliorer la lisibilité.
  • taux-particule : le taux d'apparition du Pokémon dans le milieu, spécifique à une certaine météo, saison... Il se renseigne à la place du paramètre taux, et les particules sont renseignées dans le tableau « Liste des taux spécifiques pris en charge », plus haut dans cette documentation. On aura par exemple taux-printemps(20), avec les mêmes fonctionnalités que le paramètre précédent. Le raccourci à l'aide de « Fixe » est également disponible.
  • précision-taux Facultatif.png : permet de donner des précisions sur le taux, généralement quand celui-ci est indiqué comme « Fixe » ou « Unique ». Un texte concis et avec des sauts à la ligne est recommandé, pour ne pas trop déformer le tableau.
  • précision-taux-particule Facultatif.png : de manière similaire, quand le taux est découpé selon la météo, la saison, etc., permet d'apporter une précision avec la même bienveillance que les précisions générales (si ce n'est plus, étant donné que le tableau comporte plus de cases).
  • renfort[] Facultatif.png : les noms des Pokémon qui peuvent être appelés en renfort. ATTENTION : cet attribut doit être renseigné entre crochets []. Les différents Pokémon pouvant être appelés sont séparés par des virgules ,, et suivent le nommage du module Ressources/infosPokemon. Un exemple d'utilisation est renfort[Manglouton, Rattata forme(Alola)].
  • taux-renfort Facultatif.png : les taux des Pokémon renseignés avec le paramètre précédent. S'il n'est pas renseigné, il est fixé à 100 par défaut. Comme pour le paramètre taux, l'ajout du symbole « % » est automatique et n'a pas à être renseigné. Comme la majorité des autres attributs, il fonctionne avec des parenthèses ().

Exemples d'utilisation[modifier]

Exemple général[modifier]

{{#invoke:Tableau Pokémon|sauvage|jeu=RB|
Hautes herbes
Rattata / niveau(8-12) taux(45)
Piafabec / niveau(8-12) taux(30)
Abo / niveau(6-12) taux(25, R)
Sabelette / niveau(6-12) taux(25, B)
Pêche à la Canne
Magicarpe / niveau(5) taux(100)
Pêche à la Super Canne
Ptitard / niveau(10) taux(50)
Poissirène / niveau(10) taux(50)
Pêche à la Méga Canne
Psykokwak / niveau(15) taux(33)
Krabby / niveau(15) taux(33)
Poissirène / niveau(15) taux(33)
À acheter (500 {{P}})
Magicarpe / niveau(5) taux(Unique)
}}

donne :

Pokémon Rouge et Bleu
PokémonNiveauTaux
Hautes herbes RB.png Hautes herbes
019 Rattata8–1245 %
021 Piafabec8–1230 %
023 Abo6–1225 %R
027 Sabelette6–1225 %B
Canne.png Pêche à la Canne
129 Magicarpe5100 %
Super Canne.png Pêche à la Super Canne
060 Ptitard1050 %
118 Poissirène1050 %
Méga Canne.png Pêche à la Méga Canne
054 Psykokwak1533 %
098 Krabby1533 %
118 Poissirène1533 %
À acheter (500 Pokédollar)
129 Magicarpe5Unique

Exemple avec des taux spécifiques[modifier]

{{#invoke:Tableau Pokémon|sauvage|jeu=EB|taux-absents=pluie/orage/brume|
Hautes herbes
Laporeille / niveau(60) taux-soleil(36) taux-nuage(36) taux-soleil-intense(36) taux-tempête-de-sable(56) taux-neige(36) taux-blizzard(36)
Rondoudou / niveau(60) taux(32)
Abra / niveau(60) taux(5)
Trousselin / niveau(60) taux(5)
Leveinard / niveau(60) taux(2)
Sepiatop / niveau(60) taux-soleil (20) taux-nuage(20)
Sorboul / niveau(60) taux-neige(20)
Sorbouboul / niveau(60) taux-blizzard(20)
Mimantis / niveau(60) taux-soleil-intense(20)
}}

donne :

Pokémon Épée et Bouclier
PokémonNiveauTaux
SoleilNuageNeigeBlizzardSoleil intenseTempête de sable
Icône Hautes herbes EB.png Hautes herbes
427 Laporeille6036 %36 %36 %36 %36 %56 %
039 Rondoudou6032 %
063 Abra605 %
707 Trousselin605 %
113 Leveinard602 %
686 Sepiatop6020  %20 %
583 Sorboul6020 %
584 Sorbouboul6020 %
753 Mimantis6020 %
Les météos Pluie, Orage et Brume sont absentes dans cette zone.

Exemple avec une horde[modifier]

{{#invoke:Tableau Pokémon|sauvage|jeu=XY|
Hautes herbes
Spoink / niveau(13-15) taux(20)
Mangriff / niveau(14) taux(15, X)
Séviper / niveau(14) taux(15, Y)
Absol / niveau(13-15) taux(5)
Draby / niveau(14-15) taux(5)
Baudrive / niveau(13-15) taux(20)
Kungfouine / niveau(13-15) taux(20)
Sepiatop / niveau(14-15) taux(15)
Éclate-Roc
Crabicoque / niveau(18-19, X, 13-14, Y) taux(66)
Opermine / niveau(18-20, X, 13-15, Y) taux(34)
Dans l'eau
Tentacool / niveau(25-27) taux(70)
Wailmer / niveau(25) taux(30)
Pêche à la Canne
Lovdisc / niveau(15) taux(100)
Pêche à la Super Canne
Stari / niveau(25) taux(35, X)
Kokiyas / niveau(25) taux(35, Y)
Flingouste / niveau(25) taux(65, X)
Venalgue / niveau(25) taux(65, Y)
Pêche à la Méga Canne
Qwilfish / niveau(60) taux(60)
Gamblast / niveau(35) taux(30, X)
Kravarech / niveau(35) taux(30, Y)
Staross / niveau(35) taux(10, X)
Crustabri / niveau(35) taux(10, Y)
Hordes
Goélise, Goélise, Goélise, Goélise, Goélise / niveau(7) taux(60)
Nirondelle, Nirondelle, Nirondelle, Nirondelle, Nirondelle / niveau(7) taux(5)
Mangriff, Mangriff, Mangriff, Séviper, Mangriff / niveau(8) taux(35, X)
Séviper, Séviper, Séviper, Mangriff, Séviper / niveau(8) taux(35, Y)
}}

donne :

Pokémon X et Y
PokémonNiveauTaux
Hautes herbes XY.png Hautes herbes
325 Spoink13–1520 %
335 Mangriff1415 %X
336 Séviper1415 %Y
359 Absol13–155 %
371 Draby14–155 %
425 Baudrive13–1520 %
619 Kungfouine13–1520 %
686 Sepiatop14–1515 %
Rocher Éclate-Roc XY.png Éclate-Roc
557 Crabicoque18–19X
13–14Y
66 %
688 Opermine18–20X
13–15Y
34 %
Icône Surf XY.png Dans l'eau
072 Tentacool25–2770 %
320 Wailmer2530 %
Canne.png Pêche à la Canne
370 Lovdisc15100 %
Super Canne.png Pêche à la Super Canne
120 Stari2535 %X
090 Kokiyas2535 %Y
692 Flingouste2565 %X
690 Venalgue2565 %Y
Méga Canne.png Pêche à la Méga Canne
211 Qwilfish6060 %
693 Gamblast3530 %X
691 Kravarech3530 %Y
121 Staross3510 %X
091 Crustabri3510 %Y
Icône Horde.png Hordes
GoéliseGoéliseGoéliseGoéliseGoélise760 %
NirondelleNirondelleNirondelleNirondelleNirondelle75 %
MangriffMangriffMangriffSéviperMangriff835 %X
SéviperSéviperSéviperMangriffSéviper835 %Y

Exemple avec des renforts et une image[modifier]

{{#invoke:Tableau Pokémon|sauvage|jeu=USUL|image=Route 1 (Zone 3) SL.png|
Hautes herbes
Manglouton / niveau(3-5) taux-jour(30) renfort[Manglouton]
Rattata forme(Alola) / niveau(3-5) taux-nuit(30) renfort[Rattata forme(Alola)]
Picassaut / niveau(3-5) taux(20) renfort[Picassaut]
Coxy / niveau(3-5) taux-jour(15) renfort[Coxy]
Mimigal / niveau(3-5) taux-nuit(15) renfort[Mimigal]
Chenipan / niveau(3-5) taux(10) renfort[Chenipan]
Chrysacier / niveau(3-5) taux(10) renfort[Chenipan]
Larvibule / niveau(3-5) taux(10) renfort[Larvibule]
Pichu / niveau(3-5) taux(5) renfort[Pichu, Pikachu, Ptiravi] taux-renfort(80, 15, 5)
}}

donne :

Pokémon Ultra-Soleil et Ultra-Lune
Route 1 (Zone 3) USUL.png
PokémonNiveauTauxRenfortTaux d'appel
JourNuit
Hautes herbes SL.png Hautes herbes
734 Manglouton3–530 %Renfort 734 Manglouton100 %
019 Rattata
Forme d'Alola
3–530 %Renfort 019 Rattata
Forme d'Alola
100 %
731 Picassaut3–520 %Renfort 731 Picassaut100 %
165 Coxy3–515 %Renfort 165 Coxy100 %
167 Mimigal3–515 %Renfort 167 Mimigal100 %
010 Chenipan3–510 %Renfort 010 Chenipan100 %
011 Chrysacier3–510 %Renfort 010 Chenipan100 %
736 Larvibule3–510 %Renfort 736 Larvibule100 %
172 Pichu3–55 %Renfort 172 Pichu80 %
Renfort 025 Pikachu15 %
Renfort 440 Ptiravi5 %

Fonction « antre »[modifier]

Paramètres[modifier]

Légende des icônes
Certains paramètres sont accompagnés d'une ou plusieurs icône indiquant leur(s) caractéristique(s) :
Facultatif.png : Ce paramètre est facultatif, et n'a donc pas besoin d'être systématiquement défini.
Icône catégorie.png : Ce paramètre classe automatiquement l'article dans une catégorie.
Données sémantiques.png : Ce paramètre influe sur les données sémantiques présentes en pied de page.
  • page : Renseigner le nom de la page, ou bien « {{subst:PAGENAME}} ». Ceci ajoute un lien vers la page en cours sur les autres articles où le tableau est appelé.
  • (paramètre non nommé) : Le paramètre non nommé représente le contenu du tableau. Chaque ligne du tableau résultat est représentée par une ligne dans ce paramètre.
Une ligne présente toujours un slash /, et est considérée comme étant un Pokémon ; les lignes sans slash ne sont pas considérées par le module. Une ligne se présente sous la forme NomPokémon / nom-attribut1(attribut1) nom-attribut2(attribut2) .... Il est possible de renseigner plusieurs entrées pour un même Pokémon en multipliant les slashs, sans répéter le nom du Pokémon.
  • La partie de gauche représente le nom du Pokémon. Pour plus de précisions, se référer au module Ressources/infosPokemon.
  • La partie de droite représente les attributs du Pokémon dans le contexte de Pokémon sauvage. Plusieurs fonctionnalités sont disponibles, et sauf indication contraire, s'indiquent avec des parenthèses (), sous la forme nom-attribut(attribut). Les différents attributs possibles sont les suivants :
  • talent-caché : indiquer « Possible », « Toujours » ou « Impossible » selon qu'il est possible ou non d'obtenir le Pokémon avec son talent caché. Par défaut, la valeur est fixée à « Impossible ». Renseigner une autre valeur que les trois précédemment citées affichera ce qui est renseigné sans aucune coloration. Lorsque le même champ est renseigné pour plusieurs entrées de suite d'un même Pokémon, les lignes se fusionnent.
  • iv : le nombre d'IV parfaits garantis du Pokémon. Lorsque le même champ est renseigné pour plusieurs entrées de suite d'un même Pokémon, les lignes se fusionnent.
  • 1 à 5 Facultatif.png : le taux d'apparition du Pokémon dans la rareté correspondante, avec « — » comme valeur par défaut. L'ajout du symbole « % » est automatique et n'a pas à être renseigné. Plusieurs taux pour un même Pokémon peuvent être indiqués à l'aide d'une virgule ,, pour noter par exemple 2(60, Ep, 30, Bo) afin d'obtenir 60 %É, puis 30 %B sur la ligne suivante. Cette fonctionnalité permet également de renseigner lorsqu'un Pokémon est exclusif à une des deux versions gérées par la tableau.
  • taux Facultatif.png : le taux d'apparition du Pokémon lorsqu'il est indépendant de la rareté du raid. Il possède les mêmes caractéristiques que les paramètres 1 à 5, et se renseigne à la place de ceux-ci.
  • précision-1 à précision-5, ou précision-taux Facultatif.png : permet de donner des précisions sur le taux correspondant. Un texte concis et avec des sauts à la ligne est recommandé, pour ne pas trop déformer le tableau.
  • notes Facultatif.png : permet de donner des précisions sur le Pokémon, comme par exemple s'il connaît une certaine capacité, s'il n'est pas capturable... Si un Pokémon avec un tel argument est présent dans le tableau, une nouvelle colonne est automatiquement rajoutée. Les textes « Toujours chromatique » et « A le caractère Gigamax » ajoutent automatiquement une petite icône Ce Pokémon est toujours chromatique. Gigamax. Plusieurs notes peuvent être ajoutées pour un même Pokémon à l'aide d'une virgule ,. Lorsque le même champ est renseigné pour plusieurs entrées de suite d'un même Pokémon, les lignes se fusionnent.

Exemple d'utilisation[modifier]

{{#invoke:Tableau Pokémon|antre|
Sovkipou / iv(1) 1(30)
Larvadar / iv(1) 1(20)
Carabing / iv(1, Ep, 2, Bo) 1(20, Ep) 2(25, Ep, 20, Bo) 3(20, Bo)
Escargaume / iv(2, Ep, 1, Bo) 1(20, Bo) 2(20, Ep, 25, Bo) 3(20, Ep)
Araqua / iv(1) 1(20) 2(25) / iv(2) 2(20) 3(30) / talent-caché(Toujours) iv(3) 3(20) 4(20)
Astronelle / iv(4) 3(20) 4(20) 5(20)
Tarenbulle / talent-caché(Possible) iv(4) 4(20) 5(25)
Sarmuraï / iv(4) 4(30) 5(30)
Lançargot / talent-caché(Possible) iv(4) 5(15, Ep)
Limaspeed / talent-caché(Possible) iv(4) 5(15, Bo)
Papilusion forme(Gigamax) / talent-caché(Possible) iv(4) taux(10)
}}

donne :

PokémonTalent cachéIV parfaits
garantis
Taux

(Niveau 15–20)
★★
(Niveau 25–30)
★★★
(Niveau 35–40)
★★★★
(Niveau 45–50)
★★★★★
(Niveau 55–60)
767 SovkipouImpossible130 %
824 LarvadarImpossible120 %
588 CarabingImpossible1É
2B
20 %É25 %É
20 %B
20 %B
616 EscargaumeImpossible2É
1B
20 %B20 %É
25 %B
20 %É
751 AraquaImpossible120 %25 %
220 %30 %
Toujours320 %20 %
826 AstronelleImpossible420 %20 %20 %
752 TarenbullePossible420 %25 %
768 SarmuraïImpossible430 %30 %
589 LançargotPossible415 %É
617 LimaspeedPossible415 %B
012 Papilusion
Gigamax
Possible410 %

Avec des notes[modifier]

{{#invoke:Tableau Pokémon|antre|
Papilusion forme(Gigamax) / talent-caché(Possible) iv(1) 1(10) / talent-caché(Possible) iv(2) 2(10) / talent-caché(Possible) iv(3) 3(10) / talent-caché(Possible) iv(4) 4(10) / talent-caché(Possible) iv(5) 5(10)
Magicarpe / talent-caché(Possible) iv(1) 1(52) / talent-caché(Possible) iv(2) 2(52) / talent-caché(Possible) iv(3) 3(52) / talent-caché(Possible) iv(4) 4(52) / talent-caché(Possible) iv(5) 5(52) / notes(Toujours chromatique) talent-caché(Possible) iv(1) 1(8) / notes(Toujours chromatique) talent-caché(Possible) iv(2) 2(8) / notes(Toujours chromatique) talent-caché(Possible) iv(3) 3(8) / notes(Toujours chromatique) talent-caché(Possible) iv(4) 4(8) / notes(Toujours chromatique) talent-caché(Possible) iv(5) 5(8)
Goinfrex / talent-caché(Possible) iv(1) 1(10) notes(A le caractère Gigamax)
Ronflex / talent-caché(Possible) iv(2) 2(10)
Ronflex forme(Gigamax) / talent-caché(Possible) iv(3) 3(10) / talent-caché(Possible) iv(4) 4(10) / talent-caché(Possible) iv(5) 5(10)
Minisange / talent-caché(Possible) iv(1) 1(10, Bo)
Bleuseille / talent-caché(Possible) iv(2) 2(10, Bo)
Corvaillus forme(Gigamax) / talent-caché(Possible) iv(3) 3(10, Bo) / talent-caché(Possible) iv(4) 4(10, Bo) / talent-caché(Possible) iv(5) 5(10, Bo)
Khélocrok / talent-caché(Possible) iv(1) 1(10, Ep)
Torgamord / talent-caché(Possible) iv(2) 2(10, Ep)
Torgamord forme(Gigamax) / talent-caché(Possible) iv(3) 3(10, Ep) / talent-caché(Possible) iv(4) 4(10, Ep) / talent-caché(Possible) iv(5) 5(10, Ep)
Dunaja / talent-caché(Possible) iv(1) 1(10, Ep) / talent-caché(Possible) iv(2) 2(10, Ep)
Dunaconda forme(Gigamax) / talent-caché(Possible) iv(3) 3(10, Ep) / talent-caché(Possible) iv(4) 4(10, Ep) / talent-caché(Possible) iv(5) 5(10, Ep)
Grillepattes / talent-caché(Possible) iv(1) 1(10, Bo)
Scolocendre / talent-caché(Possible) iv(2) 2(10, Bo)
Scolocendre forme(Gigamax) / talent-caché(Possible) iv(3) 3(10, Bo) / talent-caché(Possible) iv(4) 4(10, Bo) / talent-caché(Possible) notes(Connaît [[Danse Flamme]], Connaît [[Survinsecte]]) iv(5) 5(10, Bo)
}}

donne :

PokémonTalent cachéIV parfaits
garantis
TauxNotes

(Niveau 15–20)
★★
(Niveau 25–30)
★★★
(Niveau 35–40)
★★★★
(Niveau 45–50)
★★★★★
(Niveau 55–60)
012 Papilusion
Gigamax
Possible110 %
210 %
310 %
410 %
510 %
129 MagicarpePossible152 %
252 %
352 %
452 %
552 %
18 %Ce Pokémon est toujours chromatique. Toujours chromatique
28 %
38 %
48 %
58 %
446 GoinfrexPossible110 %Gigamax A le caractère Gigamax
143 RonflexPossible210 %
143 Ronflex
Gigamax
Possible310 %
410 %
510 %
821 MinisangePossible110 %B
822 BleuseillePossible210 %B
823 Corvaillus
Gigamax
Possible310 %B
410 %B
510 %B
833 KhélocrokPossible110 %É
834 TorgamordPossible210 %É
834 Torgamord
Gigamax
Possible310 %É
410 %É
510 %É
843 DunajaPossible110 %É
210 %É
844 Dunaconda
Gigamax
Possible310 %É
410 %É
510 %É
850 GrillepattesPossible110 %B
851 ScolocendrePossible210 %B
851 Scolocendre
Gigamax
Possible310 %B
410 %B
510 %BConnaît Danse Flamme
Connaît Survinsecte

Notes et références[modifier]

  1. 1,0 et 1,1 Indiquer « Hautes herbes (Kanto) » pour obtenir ce résultat.
  2. 2,0 et 2,1 Indiquer « Hautes herbes (Johto) » pour obtenir ce résultat.
  3. Indiquer « Coup d'Boule (Kanto) » pour obtenir ce résultat.
  4. Indiquer « Coup d'Boule (Johto) » pour obtenir ce résultat.

local p = {}
local ressources = {
	["infosPokemon"] = require("Module:Ressources/infosPokemon")
}

local get_bordure = {
	["RB"]		= "rouge-bleu", 
	["J"]		= "jaune", 
	["OA"]		= "or-argent", 
	["C"]		= "cristal", 
	["RS"]		= "rubis-saphir", 
	["RFVF"]	= "rougefeu-vertfeuille", 
	["E"]		= "émeraude", 
	["DP"]		= "diamant-perle", 
	["HGSS"]	= "orheartgold-argentsoulsilver", 
	["Pt"]		= "platine", 
	["NB"]		= "noir-blanc", 
	["NB2"]		= "noir2-blanc2", 
	["XY"]		= "x-y", 
	["ROSA"]	= "rubisoméga-saphiralpha", 
	["SL"]		= "soleil-lune", 
	["USUL"]	= "ultrasoleil-ultralune", 
	["LGPE"]	= "letsgopikachu-letsgoévoli", 
	["EB"]		= "épée-bouclier"
}

-- Extrait le contenu d'une fonction de la forme "fun_name(argument)" dans une expression.
function extract_argument(fun_name, expression, default)
	-- le tiret est un caractère utilisé pour les noms de fonctions, mais aussi spécial pour les expressions rationnelles
	fun_name_rat = string.gsub(fun_name, "%-", "%%-")
	if (string.match(expression, fun_name_rat .. "%([^)]*%)"))
	then return string.sub(string.match(expression, fun_name_rat .. "%([^)]*%)"), string.len(fun_name) + 2, -2)
	else return default
	end
end

-- Extrait le contenu d'une fonction de la forme "fun_name[argument]" dans une expression.
function extract_argument_bracket(fun_name, expression, default)
	-- le tiret est un caractère utilisé pour les noms de fonctions, mais aussi spécial pour les expressions rationnelles
	fun_name_rat = string.gsub(fun_name, "%-", "%%-")
	if (string.match(expression, fun_name_rat .. "%[[^]]*%]"))
	then return string.sub(string.match(expression, fun_name_rat .. "%[[^]]*%]"), string.len(fun_name) + 2, -2)
	else return default
	end
end

function p.sauvage(frame)
	-- Recense les différents types de rencontre de Pokémon sauvages
	local milieu_sauvage = {
		["RB"]		= {
			["Hautes herbes"]				= "hautesherbes'>[[Fichier:Hautes herbes RB.png|x20px]]", 
			["En marchant"]					= "cave'>[[Fichier:Icône Cave RB.png|x20px]]", 
			["Rez-de-chaussée"]				= "rezdechaussée'>[[Fichier:Escaliers RB.png|x20px]]", 
			["Étage"]						= "étage'>[[Fichier:Escaliers RB.png|x20px]]", 
			["Sous-sol"]					= "soussol'>[[Fichier:Escaliers RB.png|x20px]]", 
			["Dans l'eau"]					= "surf'>[[Fichier:Icône Surf RB.png|x20px]]", 
			["Pêche à la Canne"]			= "canne'>[[Fichier:Canne.png]]", 
			["Pêche à la Super Canne"]		= "supercanne'>[[Fichier:Super Canne.png]]", 
			["Pêche à la Méga Canne"]		= "mégacanne'>[[Fichier:Méga Canne.png]]",
			["Dans une Poké Ball"]			= "navidex'>[[Fichier:Miniature Objet G1.png]]",
			["Fausses Balls au sol"]		= "navidex'>[[Fichier:Miniature Objet G1.png]]",
			["PokéFlûte"]					= "essaim'>[[Fichier:Miniature PokéFlûte RFVF.png|x20px]]",
			["Spécial"]						= "rencontrespéciale'>[[Fichier:Honor Ball.png|x20px]]",
			["Échange"]						= "rencontrespéciale'>[[Fichier:Icône Échange.png|x20px]]"
		}, 
		["J"]		= {
			["Hautes herbes"]				= "hautesherbes'>[[Fichier:Hautes herbes RB.png|x20px]]", 
			["En marchant"]					= "cave'>[[Fichier:Icône Cave RB.png|x20px]]", 
			["Rez-de-chaussée"]				= "rezdechaussée'>[[Fichier:Escaliers RB.png|x20px]]", 
			["Étage"]						= "étage'>[[Fichier:Escaliers RB.png|x20px]]", 
			["Sous-sol"]					= "soussol'>[[Fichier:Escaliers RB.png|x20px]]", 
			["Dans l'eau"]					= "surf'>[[Fichier:Icône Surf RB.png|x20px]]", 
			["Pêche à la Canne"]			= "canne'>[[Fichier:Canne.png]]", 
			["Pêche à la Super Canne"]		= "supercanne'>[[Fichier:Super Canne.png]]", 
			["Pêche à la Méga Canne"]		= "mégacanne'>[[Fichier:Méga Canne.png]]",
			["Dans une Poké Ball"]			= "navidex'>[[Fichier:Miniature Objet G1.png]]",
			["Fausses Balls au sol"]		= "navidex'>[[Fichier:Miniature Objet G1.png]]",
			["PokéFlûte"]					= "essaim'>[[Fichier:Miniature PokéFlûte RFVF.png|x20px]]",
			["Spécial"]						= "rencontrespéciale'>[[Fichier:Honor Ball.png|x20px]]",
			["Échange"]						= "rencontrespéciale'>[[Fichier:Icône Échange.png|x20px]]"
		}, 
		["OA"]		= {
			["Hautes herbes (Kanto)"]		= "hautesherbes'>[[Fichier:Hautes herbes Kanto OA.png|x20px]] Hautes herbes", 
			["Hautes herbes (Johto)"]		= "hautesherbes'>[[Fichier:Hautes herbes Johto OA.png|x20px]] Hautes herbes", 
			["En marchant"]					= "cave'>[[Fichier:Icône Cave OA.png|x20px]]", 
			["Rez-de-chaussée"]				= "rezdechaussée'>[[Fichier:Escaliers OA.png|x20px]]", 
			["Étage"]						= "étage'>[[Fichier:Escaliers OA.png|x20px]]", 
			["Sous-sol"]					= "soussol'>[[Fichier:Escaliers OA.png|x20px]]", 
			["Éclate-Roc"]					= "éclateroc'>[[Fichier:Rocher Éclate-Roc OA.png|x20px]]", 
			["Coup d'Boule"]				= "coupdboule'>[[Fichier:Arbre à Coup d'Boule OA.png|x20px]]", 
			["Dans l'eau"]					= "surf'>[[Fichier:Icône Surf OA.png|x20px]]", 
			["Pêche à la Canne"]			= "canne'>[[Fichier:Canne.png]]", 
			["Pêche à la Super Canne"]		= "supercanne'>[[Fichier:Super Canne.png]]", 
			["Pêche à la Méga Canne"]		= "mégacanne'>[[Fichier:Méga Canne.png]]",
			["Essaim"]						= "essaim'>[[Fichier:Icône Essaim.png|x20px]]", 
			["Spécial"]						= "rencontrespéciale'>[[Fichier:Honor Ball.png|x20px]]",
			["Échange"]						= "rencontrespéciale'>[[Fichier:Icône Échange.png|x20px]]"
		}, 
		["C"]		= {
			["Hautes herbes (Kanto)"]		= "hautesherbes'>[[Fichier:Hautes herbes Kanto OA.png|x20px]] Hautes herbes", 
			["Hautes herbes (Johto)"]		= "hautesherbes'>[[Fichier:Hautes herbes Johto OA.png|x20px]] Hautes herbes", 
			["En marchant"]					= "cave'>[[Fichier:Icône Cave OA.png|x20px]]", 
			["Rez-de-chaussée"]				= "rezdechaussée'>[[Fichier:Escaliers OA.png|x20px]]", 
			["Étage"]						= "étage'>[[Fichier:Escaliers OA.png|x20px]]", 
			["Sous-sol"]					= "soussol'>[[Fichier:Escaliers OA.png|x20px]]", 
			["Éclate-Roc"]					= "éclateroc'>[[Fichier:Rocher Éclate-Roc OA.png|x20px]]", 
			["Coup d'Boule"]				= "coupdboule'>[[Fichier:Arbre à Coup d'Boule OA.png|x20px]]", 
			["Dans l'eau"]					= "surf'>[[Fichier:Icône Surf C.png|x20px]]", 
			["Pêche à la Canne"]			= "canne'>[[Fichier:Canne.png]]", 
			["Pêche à la Super Canne"]		= "supercanne'>[[Fichier:Super Canne.png]]", 
			["Pêche à la Méga Canne"]		= "mégacanne'>[[Fichier:Méga Canne.png]]",
			["Essaim"]						= "essaim'>[[Fichier:Icône Essaim.png|x20px]]", 
			["Spécial"]						= "rencontrespéciale'>[[Fichier:Honor Ball.png|x20px]]",
			["Échange"]						= "rencontrespéciale'>[[Fichier:Icône Échange.png|x20px]]"
		}, 
		["RS"]		= {
			["Hautes herbes"]				= "hautesherbes'>[[Fichier:Hautes herbes RS.png|x20px]]", 
			["Longues herbes"]				= "longuesherbes'>[[Fichier:Longues herbes RS.png|x20px]]", 
			["Algues"]						= "algues'>[[Fichier:Algues RS.png|x20px]]", 
			["En marchant"]					= "cave'>[[Fichier:Icône Cave RS.png|x20px]]", 
			["Rez-de-chaussée"]				= "rezdechaussée'>[[Fichier:Escaliers RS.png|x20px]]", 
			["Étage"]						= "étage'>[[Fichier:Escaliers RS.png|x20px]]", 
			["Sous-sol"]					= "soussol'>[[Fichier:Escaliers RS.png|x20px]]", 
			["Sable"]						= "sable'>[[Fichier:Sable RS.png|x20px]]", 
			["Éclate-Roc"]					= "éclateroc'>[[Fichier:Rocher Éclate-Roc RS.png|x20px]]", 
			["Dans l'eau"]					= "surf'>[[Fichier:Icône Surf RS.png|x20px]]", 
			["Pêche à la Canne"]			= "canne'>[[Fichier:Canne.png]]", 
			["Pêche à la Super Canne"]		= "supercanne'>[[Fichier:Super Canne.png]]", 
			["Pêche à la Méga Canne"]		= "mégacanne'>[[Fichier:Méga Canne.png]]",
			["Spécial"]						= "rencontrespéciale'>[[Fichier:Miniature Honor Ball RS.png|x20px]]",
			["Échange"]						= "rencontrespéciale'>[[Fichier:Icône Échange.png|x20px]]"
		}, 
		["RFVF"]	= {
			["Hautes herbes"]				= "hautesherbes'>[[Fichier:Hautes herbes RFVF.png|x20px]]", 
			["En marchant"]					= "cave'>[[Fichier:Icône Cave RFVF.png|x20px]]", 
			["Rez-de-chaussée"]				= "rezdechaussée'>[[Fichier:Escaliers RFVF.png|x20px]]", 
			["Étage"]						= "étage'>[[Fichier:Escaliers RFVF.png|x20px]]", 
			["Sous-sol"]					= "soussol'>[[Fichier:Escaliers RFVF.png|x20px]]", 
			["Éclate-Roc"]					= "éclateroc'>[[Fichier:Rocher Éclate-Roc RFVF.png|x20px]]", 
			["Dans l'eau"]					= "surf'>[[Fichier:Icône Surf RFVF.png|x20px]]", 
			["Pêche à la Canne"]			= "canne'>[[Fichier:Canne.png]]", 
			["Pêche à la Super Canne"]		= "supercanne'>[[Fichier:Super Canne.png]]", 
			["Pêche à la Méga Canne"]		= "mégacanne'>[[Fichier:Méga Canne.png]]",
			["Dans une Poké Ball"]			= "navidex'>[[Fichier:Miniature Objet G3.png]]",
			["Fausses Balls au sol"]		= "navidex'>[[Fichier:Miniature Objet G3.png]]",
			["PokéFlûte"]					= "essaim'>[[Fichier:Miniature PokéFlûte RFVF.png|x20px]]",
			["Spécial"]						= "rencontrespéciale'>[[Fichier:Miniature Honor Ball RS.png|x20px]]",
			["Échange"]						= "rencontrespéciale'>[[Fichier:Icône Échange.png|x20px]]"
		}, 
		["E"]		= {
			["Hautes herbes"]				= "hautesherbes'>[[Fichier:Hautes herbes RS.png|x20px]]", 
			["Longues herbes"]				= "longuesherbes'>[[Fichier:Longues herbes RS.png|x20px]]", 
			["Algues"]						= "algues'>[[Fichier:Algues RS.png|x20px]]", 
			["En marchant"]					= "cave'>[[Fichier:Icône Cave RS.png|x20px]]", 
			["Rez-de-chaussée"]				= "rezdechaussée'>[[Fichier:Escaliers RS.png|x20px]]", 
			["Étage"]						= "étage'>[[Fichier:Escaliers RS.png|x20px]]", 
			["Sous-sol"]					= "soussol'>[[Fichier:Escaliers RS.png|x20px]]", 
			["Sable"]						= "sable'>[[Fichier:Sable RS.png|x20px]]", 
			["Éclate-Roc"]					= "éclateroc'>[[Fichier:Rocher Éclate-Roc RS.png|x20px]]", 
			["Dans l'eau"]					= "surf'>[[Fichier:Icône Surf E.png|x20px]]", 
			["Pêche à la Canne"]			= "canne'>[[Fichier:Canne.png]]", 
			["Pêche à la Super Canne"]		= "supercanne'>[[Fichier:Super Canne.png]]", 
			["Pêche à la Méga Canne"]		= "mégacanne'>[[Fichier:Méga Canne.png]]",
			["Spécial"]						= "rencontrespéciale'>[[Fichier:Miniature Honor Ball RS.png|x20px]]",
			["Échange"]						= "rencontrespéciale'>[[Fichier:Icône Échange.png|x20px]]"
		}, 
		["DP"]		= {
			["Hautes herbes"]				= "hautesherbes'>[[Fichier:Hautes herbes DP.png|x20px]]", 
			["En marchant"]					= "cave'>[[Fichier:Icône Cave DP.png|x20px]]", 
			["Dans l'eau"]					= "surf'>[[Fichier:Icône Surf DP.png|x20px]]", 
			["Éclate-Roc"]					= "éclateroc'>[[Fichier:Rocher Éclate-Roc DP.png|x20px]]", 
			["Pêche à la Canne"]			= "canne'>[[Fichier:Canne.png]]", 
			["Pêche à la Super Canne"]		= "supercanne'>[[Fichier:Super Canne.png]]", 
			["Pêche à la Méga Canne"]		= "mégacanne'>[[Fichier:Méga Canne.png]]", 
			["Essaim"]						= "essaim'>[[Fichier:Icône Essaim.png|x20px]]", 
			["Poké Radar"]					= "pokéradar'>[[Fichier:Pokéradar.png]]", 
			["En insérant Rouge Feu"]		= "rougefeu'>[[Fichier:Miniature 006 XY.png|x20px]] En insérant <i>Rouge Feu</i>", 
			["En insérant Vert Feuille"]	= "vertfeuille'>[[Fichier:Miniature 003 XY.png|x20px]] En insérant <i>Vert Feuille</i>", 
			["En insérant Rubis"]			= "rubis'>[[Fichier:Miniature 383 XY.png|x20px]] En insérant <i>Rubis</i>", 
			["En insérant Saphir"]			= "saphir'>[[Fichier:Miniature 382 XY.png|x20px]] En insérant <i>Saphir</i>", 
			["En insérant Émeraude"]		= "émeraude'>[[Fichier:Miniature 384 XY.png|x20px]] En insérant <i>Émeraude</i>", 
			["En insérant RFVF ou Émeraude"]= "rougefeu-vertfeuille-émeraude'>[[Fichier:Game Boy.png|x20px]] En insérant <i>RFVF</i> ou <i>Émeraude</i>", 
			["En insérant un jeu 3G"]		= "gameboy'>[[Fichier:Game Boy.png|x20px]]",
			["Spécial"]						= "rencontrespéciale'>[[Fichier:Honor Ball.png|x20px]]",
			["Échange"]						= "rencontrespéciale'>[[Fichier:Icône Échange.png|x20px]]"
		}, 
		["HGSS"]	= {
			["Hautes herbes"]				= "hautesherbes'>[[Fichier:Hautes herbes HGSS.png|x20px]]", 
			["En marchant"]					= "cave'>[[Fichier:Icône Cave HGSS.png|x20px]]", 
			["Rez-de-chaussée"]				= "rezdechaussée'>[[Fichier:Escaliers HGSS.png|x20px]]", 
			["Étage"]						= "étage'>[[Fichier:Escaliers HGSS.png|x20px]]", 
			["Sous-sol"]					= "soussol'>[[Fichier:Escaliers HGSS.png|x20px]]", 
			["Éclate-Roc"]					= "éclateroc'>[[Fichier:Rocher Éclate-Roc DP.png|x20px]]", 
			["Coup d'Boule (Kanto)"]		= "coupdboule'>[[Fichier:Arbre Kanto HGSS.png|x20px]] Coup d'Boule", 
			["Coup d'Boule (Johto)"]		= "coupdboule'>[[Fichier:Arbre Johto HGSS.png|x20px]] Coup d'Boule", 
			["Dans l'eau"]					= "surf'>[[Fichier:Icône Surf HGSS.png|x20px]]", 
			["Pêche à la Canne"]			= "canne'>[[Fichier:Canne.png]]", 
			["Pêche à la Super Canne"]		= "supercanne'>[[Fichier:Super Canne.png]]", 
			["Pêche à la Méga Canne"]		= "mégacanne'>[[Fichier:Méga Canne.png]]", 
			["Essaim"]						= "essaim'>[[Fichier:Icône Essaim.png|x20px]]", 
			["Son Hoenn"]					= "sonhoenn'>[[Fichier:Pokénav Minia.png]]", 
			["Son Sinnoh"]					= "sonsinnoh'>[[Fichier:Pokémontre Minia.png]]",
			["Spécial"]						= "rencontrespéciale'>[[Fichier:Honor Ball.png|x20px]]",
			["Échange"]						= "rencontrespéciale'>[[Fichier:Icône Échange.png|x20px]]"
		}, 
		["Pt"]		= {
			["Hautes herbes"]				= "hautesherbes'>[[Fichier:Hautes herbes Pt.png|x20px]]", 
			["En marchant"]					= "cave'>[[Fichier:Icône Cave DP.png|x20px]]", 
			["Dans l'eau"]					= "surf'>[[Fichier:Icône Surf Pt.png|x20px]]", 
			["Éclate-Roc"]					= "éclateroc'>[[Fichier:Rocher Éclate-Roc DP.png|x20px]]", 
			["Pêche à la Canne"]			= "canne'>[[Fichier:Canne.png]]", 
			["Pêche à la Super Canne"]		= "supercanne'>[[Fichier:Super Canne.png]]", 
			["Pêche à la Méga Canne"]		= "mégacanne'>[[Fichier:Méga Canne.png]]", 
			["Essaim"]						= "essaim'>[[Fichier:Icône Essaim.png|x20px]]", 
			["Poké Radar"]					= "pokéradar'>[[Fichier:Pokéradar.png]]", 
			["En insérant Rouge Feu"]		= "rougefeu'>[[Fichier:Miniature 006 XY.png|x20px]] En insérant <i>Rouge Feu</i>", 
			["En insérant Vert Feuille"]	= "vertfeuille'>[[Fichier:Miniature 003 XY.png|x20px]] En insérant <i>Vert Feuille</i>", 
			["En insérant Rubis"]			= "rubis'>[[Fichier:Miniature 383 XY.png|x20px]] En insérant <i>Rubis</i>", 
			["En insérant Saphir"]			= "saphir'>[[Fichier:Miniature 382 XY.png|x20px]] En insérant <i>Saphir</i>", 
			["En insérant Émeraude"]		= "émeraude'>[[Fichier:Miniature 384 XY.png|x20px]] En insérant <i>Émeraude</i>", 
			["En insérant RFVF ou Émeraude"]= "rougefeu-vertfeuille-émeraude'>[[Fichier:Game Boy.png|x20px]] En insérant <i>RFVF</i> ou <i>Émeraude</i>", 
			["En insérant un jeu 3G"]		= "gameboy'>[[Fichier:Game Boy.png|x20px]]",
			["Spécial"]						= "rencontrespéciale'>[[Fichier:Honor Ball.png|x20px]]",
			["Échange"]						= "rencontrespéciale'>[[Fichier:Icône Échange.png|x20px]]"
		}, 
		["NB"]		= {
			["Hautes herbes"]				= "hautesherbes'>[[Fichier:Hautes herbes Printemps NB.png|x20px]]", 
			["Herbes sombres"]				= "herbessombres'>[[Fichier:Herbes sombres Printemps NB.png|x20px]]", 
			["Longues herbes"]				= "longuesherbes'>[[Fichier:Longues herbes Printemps NB.png|x20px]]", 
			["Longues herbes sombres"]		= "longuesherbessombres'>[[Fichier:Longues herbes sombres Printemps NB.png|x20px]]", 
			["Hautes herbes remuantes"]		= "hautesherbesremuantes'>[[Fichier:Hautes herbes remuantes Printemps NB.png|x20px]]", 
			["Marécage"]					= "marécage'>[[Fichier:Marécage NB.png|x20px]]", 
			["En marchant"]					= "cave'>[[Fichier:Icône Cave NB.png|x20px]]", 
			["Sable"]						= "sable'>[[Fichier:Sable NB.png|x20px]]", 
			["Sol accidenté"]				= "solaccidenté'>[[Fichier:Sol accidenté NB.png|x20px]]", 
			["Rez-de-chaussée"]				= "rezdechaussée'>[[Fichier:Escaliers NB.png|x20px]]", 
			["Étage"]						= "étage'>[[Fichier:Escaliers NB.png|x20px]]", 
			["Sous-sol"]					= "soussol'>[[Fichier:Escaliers NB.png|x20px]]", 
			["Ombres"]						= "air'>[[Fichier:Ombre NB.png|x20px]]", 
			["Dans l'eau"]					= "surf'>[[Fichier:Icône Surf NB.png|x20px]]", 
			["Ombres dans l'eau"]			= "surf-ombre'>[[Fichier:Ombre Eau NB.png|x20px]] [[Fichier:Icône Surf NB.png|x20px]]", 
			["Pêche"]						= "canne'>[[Fichier:Méga Canne.png]]", 
			["Pêche dans les ombres"]		= "mégacanne'>[[Fichier:Ombre Eau NB.png|x20px]] [[Fichier:Méga Canne.png]]", 
			["Faux objet"]					= "rencontrespéciale'>[[Fichier:Miniature Objet G5.png]]", 
			["Troupeaux"]					= "troupeau'>[[Fichier:Icône Essaim.png|x20px]]",
			["Spécial"]						= "rencontrespéciale'>[[Fichier:Honor Ball.png|x20px]]",
			["Échange"]						= "rencontrespéciale'>[[Fichier:Icône Échange.png|x20px]]"
		}, 
		["NB2"]		= {
			["Hautes herbes"]				= "hautesherbes'>[[Fichier:Hautes herbes Printemps NB.png|x20px]]", 
			["Herbes sombres"]				= "herbessombres'>[[Fichier:Herbes sombres Printemps NB.png|x20px]]", 
			["Longues herbes"]				= "longuesherbes'>[[Fichier:Longues herbes Printemps NB.png|x20px]]", 
			["Longues herbes sombres"]		= "longuesherbessombres'>[[Fichier:Longues herbes sombres Printemps NB.png|x20px]]", 
			["Hautes herbes remuantes"]		= "hautesherbesremuantes'>[[Fichier:Hautes herbes remuantes Printemps NB.png|x20px]]", 
			["Trouée Cachée"]				= "trouéecachée'>[[Fichier:Trouée Cachée NB2.png|x20px]]", 
			["Marécage"]					= "marécage'>[[Fichier:Marécage NB.png|x20px]]", 
			["En marchant"]					= "cave'>[[Fichier:Icône Cave NB.png|x20px]]", 
			["Sable"]						= "sable'>[[Fichier:Sable NB.png|x20px]]", 
			["Sol accidenté"]				= "solaccidenté'>[[Fichier:Sol accidenté NB.png|x20px]]", 
			["Rez-de-chaussée"]				= "rezdechaussée'>[[Fichier:Escaliers NB.png|x20px]]", 
			["Étage"]						= "étage'>[[Fichier:Escaliers NB.png|x20px]]", 
			["Sous-sol"]					= "soussol'>[[Fichier:Escaliers NB.png|x20px]]", 
			["Ombres"]						= "air'>[[Fichier:Ombre NB.png|x20px]]", 
			["Dans l'eau"]					= "surf'>[[Fichier:Icône Surf NB2.png|x20px]]", 
			["Ombres dans l'eau"]			= "surf-ombre'>[[Fichier:Ombre Eau NB.png|x20px]] [[Fichier:Icône Surf NB2.png|x20px]]", 
			["Pêche"]						= "canne'>[[Fichier:Méga Canne.png]]", 
			["Pêche dans les ombres"]		= "mégacanne'>[[Fichier:Ombre Eau NB.png|x20px]] [[Fichier:Méga Canne.png]]", 
			["Faux objet"]					= "rencontrespéciale'>[[Fichier:Miniature Objet G5.png]]", 
			["Troupeaux"]					= "troupeau'>[[Fichier:Icône Essaim.png|x20px]]",
			["Spécial"]						= "rencontrespéciale'>[[Fichier:Honor Ball.png|x20px]]",
			["Échange"]						= "rencontrespéciale'>[[Fichier:Icône Échange.png|x20px]]"
		}, 
		["XY"]		= {
			["Hautes herbes"]				= "hautesherbes'>[[Fichier:Hautes herbes XY.png|x20px]]", 
			["Longues herbes"]				= "longuesherbes'>[[Fichier:Longues herbes XY.png|x20px]]", 
			["Fleurs rouges"]				= "fleursrouges'>[[Fichier:Fleurs rouges XY.png|x20px]]", 
			["Fleurs jaunes"]				= "fleursjaunes'>[[Fichier:Fleurs jaunes XY.png|x20px]]", 
			["Fleurs violettes"]			= "fleursviolettes'>[[Fichier:Fleurs violettes XY.png|x20px]]", 
			["Marécage"]					= "marécage'>[[Fichier:Marécage XY.png|x20px]]", 
			["En marchant"]					= "cave'>[[Fichier:Icône Cave XY.png|x20px]]", 
			["Embuscade au sol"]			= "ausol'>[[Fichier:Embuscade Au sol XY.png|x20px]]", 
			["Embuscade depuis un buisson"]	= "buisson'>[[Fichier:Buisson XY.png|x20px]]", 
			["Embuscade depuis le plafond"]	= "air'>[[Fichier:Embuscade Plafond XY.png|x20px]]", 
			["Éclate-Roc"]					= "éclateroc'>[[Fichier:Rocher Éclate-Roc XY.png|x20px]]", 
			["Dans l'eau"]					= "surf'>[[Fichier:Icône Surf XY.png|x20px]]", 
			["Pêche à la Canne"]			= "canne'>[[Fichier:Canne.png]]", 
			["Pêche à la Super Canne"]		= "supercanne'>[[Fichier:Super Canne.png]]", 
			["Pêche à la Méga Canne"]		= "mégacanne'>[[Fichier:Méga Canne.png]]", 
			["Hordes"]						= "horde'>[[Fichier:Icône Horde.png|x20px]]",
			["Spécial"]						= "rencontrespéciale'>[[Fichier:Honor Ball.png|x20px]]",
			["Échange"]						= "rencontrespéciale'>[[Fichier:Icône Échange.png|x20px]]"
		}, 
		["ROSA"]	= {
			["Hautes herbes"]				= "hautesherbes'>[[Fichier:Hautes herbes XY.png|x20px]]", 
			["Hautes herbes volcaniques"]	= "hautesherbesvolcaniques'>[[Fichier:Hautes herbes volcaniques ROSA.png|x20px]]", 
			["Longues herbes"]				= "longuesherbes'>[[Fichier:Longues herbes XY.png|x20px]]", 
			["Algues"]						= "algues'>[[Fichier:Algues ROSA.png|x20px]]", 
			["En marchant"]					= "cave'>[[Fichier:Icône Cave ROSA.png|x20px]]", 
			["Rez-de-chaussée"]				= "rezdechaussée'>[[Fichier:Escaliers ROSA.png|x20px]]", 
			["Étage"]						= "étage'>[[Fichier:Escaliers ROSA.png|x20px]]", 
			["Sous-sol"]					= "soussol'>[[Fichier:Escaliers ROSA.png|x20px]]", 
			["Sable"]						= "sable'>[[Fichier:Sable ROSA.png|x20px]]", 
			["Éclate-Roc"]					= "éclateroc'>[[Fichier:Rocher Éclate-Roc XY.png|x20px]]", 
			["Dans l'eau"]					= "surf'>[[Fichier:Icône Surf ROSA.png|x20px]]", 
			["Pêche à la Canne"]			= "canne'>[[Fichier:Canne.png]]", 
			["Pêche à la Super Canne"]		= "supercanne'>[[Fichier:Super Canne.png]]", 
			["Pêche à la Méga Canne"]		= "mégacanne'>[[Fichier:Méga Canne.png]]", 
			["Vols d'oiseaux"]				= "air'>[[Fichier:Vols d'oiseaux ROSA.png|x20px]]", 
			["Navi-Dex"]					= "navidex'>[[Fichier:Icône Navi-Dex ROSA.png|x20px]]", 
			["Hordes"]						= "horde'>[[Fichier:Icône Horde.png|x20px]]",
			["Spécial"]						= "rencontrespéciale'>[[Fichier:Honor Ball.png|x20px]]",
			["Échange"]						= "rencontrespéciale'>[[Fichier:Icône Échange.png|x20px]]"
		}, 
		["SL"]		= {
			["Hautes herbes"]				= "hautesherbes'>[[Fichier:Hautes herbes SL.png|x20px]]", 
			["Hautes herbes brunes"]		= "hautesherbesbrunes'>[[Fichier:Hautes herbes brunes SL.png|x20px]]", 
			["Hautes herbes remuantes"]		= "hautesherbesremuantes'>[[Fichier:Hautes herbes remuantes SL.png|x20px]]", 
			["Longues herbes"]				= "longuesherbes'>[[Fichier:Longues herbes SL.png|x20px]]", 
			["Fleurs rouges"]				= "fleursrouges'>[[Fichier:Fleurs rouges XY.png|x20px]]", 
			["Fleurs jaunes"]				= "fleursjaunes'>[[Fichier:Fleurs jaunes XY.png|x20px]]", 
			["Pokémon volants"]				= "air'>[[Fichier:Miniature Jolie Aile SL.png|x20px]]", 
			["Ombre"]						= "air'>[[Fichier:Ombre SL.png|x20px]]", 
			["Fuite"]						= "solaccidenté'>[[Fichier:Miniature 767 SL.png|x20px]]", 
			["En marchant"]					= "cave'>[[Fichier:Icône Cave SL.png|x20px]]", 
			["Nuages de poussière"]			= "ausol'>[[Fichier:Nuage de poussière SL.png|x20px]]", 
			["Embuscade depuis un arbre"]	= "arbre'>[[Fichier:Arbre SL.png|x20px]]", 
			["Embuscade depuis un buisson"]	= "buisson'>[[Fichier:Buisson SL.png|x20px]]", 
			["Sables mouvants"]				= "sable'>[[Fichier:Sables mouvants SL.png|x20px]]", 
			["Dans l'eau"]					= "surf'>[[Fichier:Icône Surf SL.png|x20px]]", 
			["Embuscade dans l'eau"]		= "surf-ombre'>[[Fichier:Embuscade dans l'eau SL.png|x20px]]", 
			["Pêche"]						= "canne'>[[Fichier:Canne à Pêche.png]]", 
			["Pêche dans les remous"]		= "mégacanne'>[[Fichier:Embuscade dans l'eau SL.png|x20px]] [[Fichier:Méga Canne.png]]", 
			["Tas de Baies"]				= "baie'>[[Fichier:Tas de Baies SL.png|x20px]]", 
			["Scanner des Îles"]			= "scannerdesîles'>[[Fichier:Scanner des Îles SL.png|x20px]] [[Scanner des Îles]]", 
			["Renforts spéciaux"]			= "renfort'>[[Fichier:Miniature Orbe Frousse SL.png|x20px]]", 
			["Spécial"]						= "rencontrespéciale'>[[Fichier:Miniature Honor Ball SL.png|x20px]]",
			["Échange"]						= "rencontrespéciale'>[[Fichier:Icône Échange.png|x20px]]"
		}, 
		["USUL"]	= {
			["Hautes herbes"]				= "hautesherbes'>[[Fichier:Hautes herbes SL.png|x20px]]", 
			["Hautes herbes brunes"]		= "hautesherbesbrunes'>[[Fichier:Hautes herbes brunes SL.png|x20px]]", 
			["Hautes herbes remuantes"]		= "hautesherbesremuantes'>[[Fichier:Hautes herbes remuantes SL.png|x20px]]", 
			["Longues herbes"]				= "longuesherbes'>[[Fichier:Longues herbes SL.png|x20px]]", 
			["Fleurs rouges"]				= "fleursrouges'>[[Fichier:Fleurs rouges XY.png|x20px]]", 
			["Fleurs jaunes"]				= "fleursjaunes'>[[Fichier:Fleurs jaunes XY.png|x20px]]", 
			["Pokémon volants"]				= "air'>[[Fichier:Miniature Jolie Aile SL.png|x20px]]", 
			["Ombre"]						= "air'>[[Fichier:Ombre SL.png|x20px]]", 
			["Fuite"]						= "solaccidenté'>[[Fichier:Miniature 767 SL.png|x20px]]", 
			["En marchant"]					= "cave'>[[Fichier:Icône Cave SL.png|x20px]]", 
			["Nuages de poussière"]			= "ausol'>[[Fichier:Nuage de poussière SL.png|x20px]]", 
			["Embuscade depuis un arbre"]	= "coupdboule'>[[Fichier:Arbre SL.png|x20px]]", 
			["Embuscade depuis un buisson"]	= "buisson'>[[Fichier:Buisson SL.png|x20px]]", 
			["Sables mouvants"]				= "sable'>[[Fichier:Sables mouvants SL.png|x20px]]", 
			["Dans l'eau"]					= "surf'>[[Fichier:Icône Surf SL.png|x20px]]", 
			["Embuscade dans l'eau"]		= "surf-ombre'>[[Fichier:Embuscade dans l'eau SL.png|x20px]]", 
			["Pêche"]						= "canne'>[[Fichier:Canne à Pêche.png]]", 
			["Pêche dans les remous"]		= "mégacanne'>[[Fichier:Embuscade dans l'eau SL.png|x20px]] [[Fichier:Méga Canne.png]]", 
			["Tas de Baies"]				= "baie'>[[Fichier:Tas de Baies SL.png|x20px]]", 
			["Scanner des Îles"]			= "scannerdesîles'>[[Fichier:Scanner des Îles SL.png|x20px]] [[Scanner des Îles]]", 
			["Renforts spéciaux"]			= "renfort'>[[Fichier:Miniature Orbe Frousse SL.png|x20px]]", 
			["Spécial"]						= "rencontrespéciale'>[[Fichier:Miniature Honor Ball SL.png|x20px]]",
			["Échange"]						= "rencontrespéciale'>[[Fichier:Icône Échange.png|x20px]]"
		}, 
		["LGPE"]	= {
			["Hautes herbes"]				= "hautesherbes'>[[Fichier:Hautes herbes LGPE.png|x20px]]", 
			["En marchant"]					= "cave'>[[Fichier:Icône Cave LGPE.png|x20px]]", 
			["Rez-de-chaussée"]				= "rezdechaussée'>[[Fichier:Escaliers ROSA.png|x20px]]", 
			["Étage"]						= "étage'>[[Fichier:Escaliers ROSA.png|x20px]]", 
			["Sous-sol"]					= "soussol'>[[Fichier:Escaliers ROSA.png|x20px]]", 
			["Dans les airs"]				= "air'>[[Fichier:Miniature Jolie Aile LGPE.png|x20px]]", 
			["Dans l'eau"]					= "surf'>[[Fichier:Planche à voile LGPE.png|x20px]]",
			["Fausses Balls au sol"]		= "navidex'>[[Fichier:Miniature Objet G7 Switch.png|x20px]]",
			["Poké Flûte"]					= "essaim'>[[Fichier:Miniature Poké Flûte LGPE.png|x20px]]",
			["Spécial"]						= "rencontrespéciale'>[[Fichier:Miniature Honor Ball LGPE.png|x20px]]",
			["Échange"]						= "rencontrespéciale'>[[Fichier:Icône Échange.png|x20px]]"
		}, 
		["EB"]		= {
			["Hautes herbes"]				= "longuesherbes'>[[Fichier:Icône Hautes herbes EB.png|x20px]]", 
			["Hautes herbes brunes"]		= "hautesherbesbrunes'>[[Fichier:Icône Hautes herbes EB.png|x20px]]", 
			["Au sol"]						= "ausol'>[[Fichier:Icône Au sol EB.png|x20px]]", 
			["Pokémon cachés"]				= "caché'>[[Fichier:Icône Pokémon cachés EB.png|x20px]]", 
			["Surface de l'eau"]			= "surf-ombre'>[[Fichier:Icône Surface de l'eau EB.png|x20px]]", 
			["Marécage"]					= "marécage'>[[Fichier:Icône Marécage EB.png|x20px]]", 
			["Dans les airs"]				= "air'>[[Fichier:Icône Dans les airs EB.png|x20px]]", 
			["Pokémon vadrouilleurs"]		= "vadrouilleur'>[[Fichier:Icône Pokémon vadrouilleurs EB.png|x20px]]", 
			["Arbres à Baies"]				= "baie'>[[Fichier:Icône Arbre à Baies EB.png|x20px]]", 
			["Pêche"]						= "canne'>[[Fichier:Icône Pêche EB.png|x20px]]", 
			["Fossiles"]					= "fossile'>[[Fichier:Miniature Fossile Oiseau EB.png]]",
			["Échange"]						= "rencontrespéciale'>[[Fichier:Icône Échange.png|x20px]]",
			["Spécial"]						= "rencontrespéciale'>[[Fichier:Icône Spécial EB.png|x20px]]"
		}
	}

	local jeu = frame.args["jeu"]
	if jeu == nil then jeu = "" end
	
	local bordure = get_bordure[jeu]
	if bordure == nil then bordure = "" end
	
	local image = frame.args["image"]
	
	local pokemon = frame.args[1]
	if pokemon ~= nil then pokemon = mw.text.split(pokemon, "\n") else pokemon = {} end
	
	local h = 1
	local i = 1
	local j = 1
	local k = 1

	-- Noms des icônes / Noms des sous-arguments / Classes de couleurs associées
	-- / Lien vers une page globale qui traite de ces sous-taux, nom du type de sous-taux (météo, horaire, saison),
	-- singulier, pluriel, article ("le", "la" ou "l'"), et est-ce que le type du sous-taux est féminin (true ou false)
	local sous_taux = {
		["OA"]		= {{"Matin", "Jour", "Nuit"}, {"taux-matin", "taux-jour", "taux-nuit"},
			{"matin", "jour", "nuit"}, {"Temps (durée)", "horaire", "horaires", "l'", false}}, 
		["C"]		= {{"Matin", "Jour", "Nuit"}, {"taux-matin", "taux-jour", "taux-nuit"},
			{"matin", "jour", "nuit"}, {"Temps (durée)", "horaire", "horaires", "l'", false}}, 
		["DP"]		= {{"Matin", "Jour", "Nuit"}, {"taux-matin", "taux-jour", "taux-nuit"},
			{"matin", "jour", "nuit"}, {"Temps (durée)", "horaire", "horaires", "l'", false}}, 
		["HGSS"]	= {{"Matin", "Jour", "Nuit"}, {"taux-matin", "taux-jour", "taux-nuit"},
			{"matin", "jour", "nuit"}, {"Temps (durée)", "horaire", "horaires", "l'", false}}, 
		["Pt"]		= {{"Matin", "Jour", "Nuit"}, {"taux-matin", "taux-jour", "taux-nuit"},
			{"matin", "jour", "nuit"}, {"Temps (durée)", "horaire", "horaires", "l'", false}}, 
		["NB"]		= {{"Printemps", "Été", "Automne", "Hiver"}, 
			{"taux-printemps", "taux-été", "taux-automne", "taux-hiver"}, 
			{"printemps", "été", "automne", "hiver"}, 
			{"Saison", "saison", "saisons", "la", true}}, 
		["NB2"]		= {{"Printemps", "Été", "Automne", "Hiver"}, 
			{"taux-printemps", "taux-été", "taux-automne", "taux-hiver"}, 
			{"printemps", "été", "automne", "hiver"}, 
			{"Saison", "saison", "saisons", "la", true}}, 
		["SL"]		= {{"Jour", "Nuit"}, {"taux-jour", "taux-nuit"}, {"jour", "nuit"}, {"Temps (durée)", "horaire", "horaires", "l'", false}}, 
		["USUL"]	= {{"Jour", "Nuit"}, {"taux-jour", "taux-nuit"}, {"jour", "nuit"}, {"Temps (durée)", "horaire", "horaires", "l'", false}}, 
		["EB"]		= {{"Soleil", "Nuage", "Pluie", "Orage", "Neige", "Blizzard", "Soleil intense", "Tempête de sable", "Brume"},
			{"taux-soleil", "taux-nuage", "taux-pluie", "taux-orage", "taux-neige", "taux-blizzard", "taux-soleil-intense", "taux-tempête-de-sable", "taux-brume"},
			{"météo-soleil", "nuage", "pluie", "orage", "neige", "blizzard", "soleilintense", "tempêtedesable", "brume"}, 
			{"Météo (mécanisme)", "météo", "météos", "la", true}}
	}
	
	local raccourcis = {
		["isolarmure"] = {{"Soleil", "Nuage", "Pluie", "Orage", "Soleil intense", "Tempête de sable", "Brume"},
			{"taux-soleil", "taux-nuage", "taux-pluie", "taux-orage", "taux-soleil-intense", "taux-tempête-de-sable", "taux-brume"},
			{"météo-soleil", "nuage", "pluie", "orage", "soleilintense", "tempêtedesable", "brume"}, 
			{"Météo (mécanisme)", "À [[Isolarmure]], les météos Neige et Blizzard sont absentes."}},
		["couronneige"] = {{"Soleil", "Nuage", "Pluie", "Orage", "Neige", "Blizzard", "Soleil intense", "Brume"},
			{"taux-soleil", "taux-nuage", "taux-pluie", "taux-orage", "taux-neige", "taux-blizzard", "taux-soleil-intense", "taux-brume"},
			{"météo-soleil", "nuage", "pluie", "orage", "neige", "blizzard", "soleilintense", "brume"}, 
			{"Météo (mécanisme)", "À [[Couronneige]], la météo Tempête de sable est absente."}},
		["couronneige-enneigé"] = {{"Soleil", "Nuage", "Neige", "Blizzard", "Soleil intense", "Brume"},
			{"taux-soleil", "taux-nuage", "taux-neige", "taux-blizzard", "taux-soleil-intense", "taux-brume"},
			{"météo-soleil", "nuage", "neige", "blizzard", "soleilintense", "brume"}, 
			{"Météo (mécanisme)", "Dans les zones enneigées de [[Couronneige]],<br>les météos Pluie, Orage et Tempête de sable sont absentes."}}
	}
	
	-- GESTION DES TAUX PRÉSENTS
	local taux_presents = nil
	local phrase_finale = ""
	local union_taux = true
	local colspan_taux = 1
	
	-- Paramètre taux-raccourci
	local raccourci_arg = frame.args["taux-raccourci"]
	if raccourci_arg ~= nil
	then taux_presents = raccourcis[raccourci_arg]
		if taux_presents ~= nil
		then phrase_finale = taux_presents[4][2]
			union_taux = false
			local nombre_taux = 1
			while taux_presents[1][nombre_taux] do
				nombre_taux = nombre_taux + 1
			end
			colspan_taux = nombre_taux - 1
		end
	end
	
	-- Paramètre taux-présents
	local taux_presents_arg = nil
	if taux_presents == nil		-- Si les taux présents ont déjà été définis, on passe cette étape
	then taux_presents_arg = frame.args["taux-présents"]
	end
	
	if taux_presents_arg ~= nil
	then 
		i = 1
		local nombre_taux = 0
		local taux_presents_max = sous_taux[jeu]		-- Le tableau qu'on va émincer pour ne garder que les taux présents
		taux_presents = {{}, {}, {}, taux_presents_max[4]}	-- Le tableau des taux qu'on va remplir
		taux_presents_arg = mw.text.split(taux_presents_arg, "/")
		while taux_presents_arg[i] do
			taux_i = "taux-" .. taux_presents_arg[i]
			j = 1
			while taux_presents_max[2][j] and taux_i ~= taux_presents_max[2][j] do
				j = j + 1
			end
			if taux_presents_max[2][j] -- Trouvé !
			then
				table.insert(taux_presents[1], taux_presents_max[1][j])
				table.insert(taux_presents[2], taux_presents_max[2][j])
				table.insert(taux_presents[3], taux_presents_max[3][j])
				nombre_taux = nombre_taux + 1
			end
			i = i + 1
			union_taux = false
			colspan_taux = nombre_taux
		end
		
		-- Création de la phrase de bas de tableau
		if nombre_taux > 0 then
			if nombre_taux >= 2
			then phrase_finale = "Les " .. taux_presents[4][3] .. " "
			else if taux_presents[4][4] == "l'"
				then phrase_finale = "L'"
				else phrase_finale = mw.getContentLanguage():ucfirst(taux_presents[4][4]) .. " "
				end
				phrase_finale = phrase_finale .. taux_presents[4][2] .. " "
			end
			i = 1
			while taux_presents[1][i] and taux_presents[1][i+1] and taux_presents[1][i+2] do
				phrase_finale = phrase_finale .. taux_presents[1][i] .. ", "
				i = i + 1
			end
			if taux_presents[1][i] and taux_presents[1][i+1]
			then
				local e = ""
				if taux_presents[4][5] then e = "e" end
				phrase_finale = phrase_finale .. taux_presents[1][i] .. " et " .. taux_presents[1][i+1]
				.. "<br>sont les seul" .. e .. "s présent" .. e .. "s dans cette zone."
			elseif taux_presents[1][i] then
				local e = ""
				if taux_presents[4][5] then e = "e" end
				phrase_finale = phrase_finale .. taux_presents[1][i] .. "<br>est "
				if taux_presents[4][5]
				then phrase_finale = phrase_finale .. "la"
				else phrase_finale = phrase_finale .. "le"
				end
				phrase_finale = phrase_finale .. " seul" .. e .. " présent" .. e .. " dans cette zone."
			else
				phrase_finale = "<p>" .. phrase_finale .. " n'est pas disponible dans cette zone.</p>"
			end
		end
	end
	
	-- Paramètre taux-absents
	local taux_absents_arg = nil
	if taux_presents == nil		-- Si les taux présents ont déjà été définis, on passe cette étape
	then taux_absents_arg = frame.args["taux-absents"]
	end
	
	if taux_absents_arg ~= nil
	then 
		i = 1
		colspan_taux = 0
		local nombre_taux_absents = 0
		local taux_presents_max = sous_taux[jeu]		-- Le tableau qu'on va émincer pour ne garder que les taux présents
		taux_presents = {{}, {}, {}, taux_presents_max[4]}	-- Le tableau des taux qu'on va remplir
		taux_absents = {{}, {}, {}, taux_presents_max[4]}	-- Le tableau qui va servir à la phrase finale
		taux_absents_arg = mw.text.split(taux_absents_arg, "/")
		while taux_presents_max[2][i] do
			taux_i = taux_presents_max[2][i]
			j = 1
			while taux_absents_arg[j] and taux_i ~= "taux-" .. taux_absents_arg[j] do
				j = j + 1
			end
			if taux_absents_arg[j] == nil	-- Pas trouvé !
			then
				table.insert(taux_presents[1], taux_presents_max[1][i])
				table.insert(taux_presents[2], taux_presents_max[2][i])
				table.insert(taux_presents[3], taux_presents_max[3][i])
				colspan_taux = colspan_taux + 1
			else
				table.insert(taux_absents[1], taux_presents_max[1][i])
				table.insert(taux_absents[2], taux_presents_max[2][i])
				table.insert(taux_absents[3], taux_presents_max[3][i])
				nombre_taux_absents = nombre_taux_absents + 1
			end
			i = i + 1
			union_taux = false
		end
		
		-- Création de la phrase de bas de tableau
		if nombre_taux_absents > 0 then
			if nombre_taux_absents >= 2
			then phrase_finale = "Les " .. taux_absents[4][3] .. " "
			else if taux_absents[4][4] == "l'"
				then phrase_finale = "L'"
				else phrase_finale = mw.getContentLanguage():ucfirst(taux_absents[4][4]) .. " "
				end
				phrase_finale = phrase_finale .. taux_absents[4][2] .. " "
			end
			i = 1
			while taux_absents[1][i] and taux_absents[1][i+1] and taux_absents[1][i+2] do
				phrase_finale = phrase_finale .. taux_absents[1][i] .. ", "
				i = i + 1
			end
			if taux_absents[1][i] and taux_absents[1][i+1]
			then
				local e = ""
				if taux_absents[4][5] then e = "e" end
				phrase_finale = phrase_finale .. taux_absents[1][i] .. " et " .. taux_absents[1][i+1]
				.. " sont absent" .. e .. "s dans cette zone."
			elseif taux_absents[1][i] then
				local e = ""
				if taux_absents[4][5] then e = "e" end
				phrase_finale = phrase_finale .. taux_absents[1][i] .. " est absent" .. e .. " dans cette zone."
			else
				phrase_finale = phrase_finale .. " n'est pas disponible dans cette zone."
			end
		end
	end
	
	-- Si aucune restriction de taux n'a été appliquée, on prend par défaut celle associée au jeu.
	if taux_presents == nil
	then taux_presents = sous_taux[jeu]
	end
	
	local colspan_renfort = 0
	-- Première boucle pour voir si on a affaire à des taux particuliers (si les taux doivent être divisés ou s'ils peuvent être réunis)
	-- et des renforts.
	while pokemon[i] do
		-- Taux particuliers
		if union_taux
		then
			j = 1
			while taux_presents and taux_presents[2][j] do
				-- le tiret est un caractère utilisé pour les noms de fonctions, mais aussi spécial pour les expressions rationnelles
				if string.find(pokemon[i], string.gsub(taux_presents[2][j], "%-", "%%-"))
				then union_taux = false
				end
				j = j + 1
			end
			if not union_taux
			then colspan_taux = j - 1	-- On récupère la longueur des taux
			end
		end
		
		-- Renforts
		if colspan_renfort < 2 and string.find(pokemon[i], "renfort")
		then if string.find(pokemon[i], "taux%-renfort")
			then colspan_renfort = 2
			else colspan_renfort = 1
			end
		end
		
		i = i + 1
	end
	
	-- EN-TÊTE
	local rowspan_en_tete = 1
	if not union_taux
	then rowspan_en_tete = 2
	end
	local resultat = {"<table class='tableaustandard centre' style='max-width: 100%;'><tr><td colspan='"
		.. 2 + colspan_taux + colspan_renfort .. "' class='" .. bordure .. "'><b>" .. frame:expandTemplate{title='Jeu', args={jeu}}
		.. "</b></td></tr>"}
	if image then table.insert(resultat, "<tr><td colspan='" .. 2 + colspan_taux + colspan_renfort .. "'>[[Fichier:" .. image .. "]]</td></tr>") end
	table.insert(resultat, "<tr><th rowspan='" .. rowspan_en_tete .. "'>Pokémon</th><th rowspan='" .. rowspan_en_tete
		.. "'>Niveau</th><th colspan='" .. colspan_taux .. "'>Taux</th>")

	if colspan_renfort > 0
	then table.insert(resultat, "<th rowspan='" .. rowspan_en_tete .. "'>Renfort</th>")
		if colspan_renfort == 2
		then table.insert(resultat, "<th rowspan='" .. rowspan_en_tete .. "'>Taux d'appel</th>")
		end
	end
	table.insert(resultat, "</tr>")
	
	if not union_taux
	then j = 1
		table.insert(resultat, "<tr>")
		while taux_presents[1][j] do
			local color = taux_presents[3][j]
			if color
			then table.insert(resultat, "<th class='" .. color .. "'>[[Fichier:Icône " .. taux_presents[1][j]
				.. " " .. jeu .. ".png|" .. taux_presents[1][j] .. "|link=" .. taux_presents[4][1] .. "|x25px]]</th>")
			else table.insert(resultat, "<th>[[Fichier:Icône " .. taux_presents[1][j]
				.. " " .. jeu .. ".png|" .. taux_presents[1][j] .. "|link=" .. taux_presents[4][1] .. "|x25px]]</th>")
			end
			j = j + 1
		end
		table.insert(resultat, "</tr>")
	end
	
	-- Pokémon
	local poke = {}
	local poke_split = {}
	local niveau = ""
	local taux = ""
	local renfort_poke = {}
	local rowspan_ligne = 1
	i = 1
	while pokemon[i] do
		poke = pokemon[i]
		poke = mw.text.split(pokemon[i], "/")
		
		local nb_entrees = 1
		while poke[nb_entrees + 1] do
			nb_entrees = nb_entrees + 1
		end
		
		local rowspan_poke = 0
		-- Instance de Pokémon sauvage
		if nb_entrees >= 2 then
			h = 2
			
			-- On regarde le nombre de lignes nécessaire au total
			while poke[h] do
				local renfort_poke = extract_argument_bracket("renfort", poke[h], "—")
				renfort_poke = mw.text.split(renfort_poke, ", ")
				j = 1
				while renfort_poke[j] do
					j = j + 1
				end
				rowspan_poke = rowspan_poke + math.max(1, j - 1)
				h = h + 1
			end
			
			poke_split = mw.text.split(poke[1], ", ")
			if poke_split[2]
			-- Cas de horde
			then table.insert(resultat, '<tr><td rowspan="' .. rowspan_poke .. '">')
				j = 1
				while poke_split[j] do
					table.insert(resultat, ressources.infosPokemon(poke_split[j], "miniature"))
					j = j + 1
				end
				table.insert(resultat, "</td>")
			-- Cas classique, un seul Pokémon
			else table.insert(resultat, '<tr><td rowspan="' .. rowspan_poke .. '" style="text-align:left">'
				.. ressources.infosPokemon(poke_split[1]) .. "</td>")
			end
			
			h = 2
			while poke[h] do
				if h ~= 2 then table.insert(resultat, "<tr>") end
				infos = poke[h]
				
				-- On regarde combien de Pokémon peuvent être en renforts dans cette ligne
				local renfort_poke_unsplit = extract_argument_bracket("renfort", infos, "—")
				local renfort_poke = mw.text.split(renfort_poke_unsplit, ", ")
				j = 1
				while renfort_poke[j] do
					j = j + 1
				end
				rowspan_ligne = j - 1
				
				-- On regroupe les renforts avec les lignes d'après si il n'y en a qu'un et que ce sont les mêmes
				-- On vérifie quand même au préalable que ce n'est pas déjà regroupé avec la ligne d'avant
				local is_renfort_alone_and_same_than_pred = false
				local renfort_pred = nil
				local rowspan_renfort = 1
				
				if h ~= 1
				then renfort_pred = extract_argument_bracket("renfort", poke[h-1], nil)
				end
				
				if not renfort_poke_unsplit:find(",") then
					if renfort_pred == renfort_poke_unsplit
					then is_renfort_alone_and_same_than_pred = true
					else
						local hh = h + 1
						while poke[hh] do
							local renfort_next = extract_argument_bracket("renfort", poke[hh], nil)
							if renfort_next == renfort_poke_unsplit
							then rowspan_renfort = rowspan_renfort + 1
							else break
							end
							hh = hh + 1
						end
					end
				end
				
				local niveau_unsplit = extract_argument("niveau", infos, "—")
				local niveau_pred = extract_argument("niveau", poke[h-1], "—")
				local niveau = niveau_unsplit:gsub("-", "–")
				niveau = mw.text.split(niveau, ", ")
				local rowspan_niveau = rowspan_ligne
				if h == 2 or niveau_unsplit ~= niveau_pred
				then
					local hh = h + 1
					while poke[hh] do
						local niveau_next = extract_argument("niveau", poke[hh], nil)
						if niveau_next == niveau_unsplit
						then 
							local renfort_poke_unsplit = extract_argument_bracket("renfort", poke[hh], "—")
							local renfort_poke = mw.text.split(renfort_poke_unsplit, ", ")
							j = 1
							while renfort_poke[j] do
								rowspan_niveau = rowspan_niveau + 1
								j = j + 1
							end
						else break
						end
						hh = hh + 1
					end
				
					local niveau_text = niveau[1]
					j = 2
					while niveau[j] do
						niveau_j_number = niveau[j]:gsub("–", "")
						if tonumber(niveau_j_number)
						then niveau_text = niveau_text .. "<br>" .. niveau[j]
						else niveau_text = niveau_text .. frame:expandTemplate{title='Sup', args={niveau[j]}}
						end
						j = j + 1
					end
					table.insert(resultat, "</td><td rowspan='" .. rowspan_niveau .. "'>" .. niveau_text .. "</td>")
				end
				

				
				-- Ajout du taux
				if union_taux
				then
					-- Configuration où les taux ne varient jamais
					taux = extract_argument("taux", infos, "—")
					local precision_taux = extract_argument("précision-taux", infos, nil)
					taux = mw.text.split(taux, ", ")
					if tonumber(taux[1]) then taux[1] = taux[1] .. "&nbsp;%" end
					if taux[1] == "Fixe" then taux[1] = "[[Fichier:Icône Fixe.svg|27px|Fixe]]" end
					
					table.insert(resultat, "<td rowspan='" .. rowspan_ligne .. "'>" .. taux[1])
					j = 2
					while taux[j] do	-- Gestion des taux spécifiques à des jeux
						if tonumber(taux[j])
						then table.insert(resultat, "<br>" .. taux[j] .. "&nbsp;%")
						else table.insert(resultat, frame:expandTemplate{title='Sup', args={taux[j]}})
						end
						j = j + 1
					end
					if precision_taux then table.insert(resultat, '<br><small><i>' .. precision_taux .. '</i></small>') end
					table.insert(resultat, "</td>")
				else
					taux = extract_argument("taux", infos, "—")
					if taux == "—"
					then
						-- Sur une configuration où les taux sont divisés, cas d'un Pokémon qui plusieurs taux différents
						j = 1
						while taux_presents[2][j] do
							local taux_j = extract_argument(taux_presents[2][j], infos, "—")
							taux_j = mw.text.split(taux_j, ", ")
							local precision_taux_j = extract_argument("précision-" .. taux_presents[2][j], infos, nil)
							if tonumber(taux_j[1]) then taux_j[1] = taux_j[1] .. "&nbsp;%" end
							if taux_j[1] == "Fixe" then taux_j[1] = "[[Fichier:Icône Fixe.svg|27px|Fixe]]" end
							
							local color = taux_presents[3][j]
							if color
							then table.insert(resultat, "<td class='" .. color .. "' rowspan='" .. rowspan_ligne
								.. "'>" .. taux_j[1])
							else table.insert(resultat, "<td rowspan='" .. rowspan_ligne .. "'>" .. taux_j[1])
							end
							k = 2
							while taux_j[k] do	-- Gestion des taux spécifiques à des jeux
								if tonumber(taux_j[k])
								then table.insert(resultat, "<br>" .. taux_j[k] .. "&nbsp;%")
								else table.insert(resultat, frame:expandTemplate{title='Sup', args={taux_j[k]}})
								end
								k = k + 1
							end
							if precision_taux_j then table.insert(resultat, '<br><small><i>' .. precision_taux_j .. '</i></small>') end
							table.insert(resultat, "</td>")
							j = j + 1
						end
					else
						-- Sur une configuration où les taux sont divisés, cas d'un Pokémon qui a un taux unique
						local precision_taux = extract_argument("précision-taux", infos, nil)
						taux = mw.text.split(taux, ", ")
						if tonumber(taux[1]) then taux[1] = taux[1] .. "&nbsp;%" end
						if taux[1] == "Fixe" then taux[1] = "[[Fichier:Icône Fixe.svg|27px|Fixe]]" end
						
						table.insert(resultat, '<td rowspan="' .. rowspan_ligne .. '" colspan="' .. colspan_taux .. '">' .. taux[1])
						j = 2
						while taux[j] do	-- Gestion des taux spécifiques à des jeux
							if tonumber(taux[j])
							then table.insert(resultat, "<br>" .. taux[j] .. "&nbsp;%")
							else table.insert(resultat, frame:expandTemplate{title='Sup', args={taux[j]}})
							end
							j = j + 1
						end
						if precision_taux then table.insert(resultat, '<br><small><i>' .. precision_taux .. '</i></small>') end
						table.insert(resultat, "</td>")
					end
				end
			
			
				-- Ajout du renfort
				if not is_renfort_alone_and_same_than_pred and colspan_renfort > 0
				then
					j = 1
					local renfort_taux = extract_argument("taux-renfort", infos, "100")
					renfort_taux = mw.text.split(renfort_taux, ", ")
					if renfort_poke[1] == "—"
					-- Cas où le Pokémon n'a pas de renforts, mais d'autres en ont
					then table.insert(resultat, '<td colspan="' .. colspan_renfort .. '" style="background-color:#F0F0F0" rowspan="'
							.. rowspan_renfort .. '">—</td>')
					else
						while renfort_poke[j] do
							if j >= 2 then table.insert(resultat, "<tr>") end
							
							table.insert(resultat, '<td style="text-align:left; background-color:#F0F0F0" rowspan="' .. rowspan_renfort
								.. '">[[Fichier:Miniature Orbe Frousse SL.png|Renfort]]&nbsp;' .. ressources.infosPokemon(renfort_poke[j]) .. '</td>')
							if colspan_renfort == 2
							then
								local renfort_taux_j = renfort_taux[j]
								if renfort_taux_j == nil or renfort_taux_j == "-" then renfort_taux_j = "100" end
								if tonumber(renfort_taux_j) then renfort_taux_j = renfort_taux_j .. "&nbsp;%" end
								table.insert(resultat, '<td style="background-color:#F0F0F0" rowspan="' .. rowspan_renfort
									.. '">' .. renfort_taux_j .. '</td>')
							end
							j = j + 1
						end
					end
				end
				
				table.insert(resultat, "</tr>")
				h = h + 1
			end
		
		-- Ligne de changement d'endroit de Poké sauvage
		elseif poke[1] then
			local endroit_unsplit = mw.text.split(poke[1], ",, ")
			local prefixe_endroit = endroit_unsplit[2] -- éventuellement nil
			local endroit = mw.text.split(endroit_unsplit[1], ",")
			local endroit_untouched = endroit[1]
			if prefixe_endroit == nil
			then prefixe_endroit = ""
			else prefixe_endroit = prefixe_endroit .. " "
				if endroit[1]:sub(1,2) == "É"
				then endroit[1] = "é" .. endroit[1]:sub(3, endroit[1]:len())
				else endroit[1] = endroit[1]:sub(1,1):lower() .. endroit[1]:sub(2, endroit[1]:len())
				end	-- on a mis la première lettre de l'endroit en minuscule, puisqu'elle est précédée de prefixe_endroit
			end
			if endroit[2] == nil then endroit[2] = "" end
			if endroit[1] ~= ""
			then 
				local milieu = milieu_sauvage[jeu]
				if milieu ~= nil then milieu = milieu[endroit_untouched] end
				if milieu == nil
				then milieu = "'>" .. prefixe_endroit .. endroit[1] .. endroit[2]
				else
					-- Si aucun nom n'est précisé dans les données des milieux, on prend celui par défaut (celui indiqué)
					if milieu:sub(-6, -1) == ".png]]" or milieu:sub(-4, -1) == "px]]"
					then milieu = milieu .. " " .. prefixe_endroit .. endroit[1] .. endroit[2]
					else milieu = milieu .. endroit[2]
					end
				end
				table.insert(resultat, "<tr><th colspan='" .. 2 + colspan_taux + colspan_renfort .. "' class='" .. milieu .. "</th></tr>")
			end
		end
		i = i + 1
	end
	
	note = frame.args["note"]
	if note
	then
		if note == "ligue"
			then phrase_finale = "<p><i>Les niveaux présentés correspondent respectivement à<br>"
				.. "avant et après la victoire contre la Ligue Pokémon.</i></p>" .. phrase_finale
		elseif note == "éthernatos"
			then phrase_finale = "<p><i>Les niveaux présentés correspondent respectivement à<br>"
				.. "avant et après le combat contre Éthernatos.<br>"
				.. "Les Pokémon vadrouilleurs de niveau 65 apparaissent une fois la Ligue vaincue.</i></p>" .. phrase_finale
		else phrase_finale = "<p><i>" .. note .. "</i></p>"
		end
	end
	
	if phrase_finale ~= ""
	then table.insert(resultat, "<tr><td colspan='" .. 2 + colspan_taux + colspan_renfort .. "'><i>" .. phrase_finale .. "</i></td></tr>")
	end
	
	table.insert(resultat, '</table>')
	return table.concat(resultat, "")
end

function p.antre(frame)
	local pokemon = frame.args[1]
	if pokemon ~= nil then pokemon = mw.text.split(pokemon, "\n") else pokemon = {} end
		
	local page = frame.args["page"]
	local pagename = frame:preprocess("{{PAGENAME}}")
	
	local i = 1
	local j = 1
	local k = 1
	
	taux_presents = {{"★<br><i><small>(Niveau 15–20)</small></i>", "★★<br><i><small>(Niveau 25–30)</small></i>",
			"★★★<br><i><small>(Niveau 35–40)</small></i>", "★★★★<br><i><small>(Niveau 45–50)</small></i>",
			"★★★★★<br><i><small>(Niveau 55–60)</small></i>"},
		{"1", "2", "3", "4", "5"},
		{"raid1", "raid2", "raid3", "raid4", "raid5"}}
	
	-- Première boucle pour voir si on a affaire à des notes/remarques sur certains Pokémon
	i = 1
	local colspan_notes = 0
	while pokemon[i] do
		poke = mw.text.split(pokemon[i], "/")
		local h = 2
		while poke[h] do
			if extract_argument("notes", poke[h], nil)
			then colspan_notes = 1
			break
			end
			h = h + 1
		end
		if colspan_notes == 1 then break end
		i = i + 1
	end
	
	local colspan_taux = 5
	local rowspan_en_tete = 2
	-- EN-TÊTE
	local resultat = {"<table class='tableaustandard centre' style='max-width: 100%;'><tr>"
		.. "<th rowspan='" .. rowspan_en_tete .. "'>Pokémon</th><th rowspan='" .. rowspan_en_tete .. "'>Talent caché</th><th rowspan='"
		.. rowspan_en_tete .. "'>[[IV]] parfaits<br>garantis</th><th colspan='" .. colspan_taux .. "'>"}
	
	if page ~= nil and page ~= pagename
	then table.insert(resultat, '<div style="float:left; width:0em; text-align:left"><div style="font-size:xx-small">'
		..  frame:preprocess("[[" .. page .. "|Source]]") .. '</div></div>')
	end
	table.insert(resultat, "Taux</th>")
	if colspan_notes > 0
	then table.insert(resultat, "<th rowspan='" .. rowspan_en_tete .. "'>Notes</th>")
	end
	table.insert(resultat, "</tr>")
	
	j = 1
	table.insert(resultat, "<tr>")
	while taux_presents[1][j] do
		local color = taux_presents[3][j]
		if color
		then table.insert(resultat, "<th class='" .. color .. "'>" .. taux_presents[1][j] .. "</th>")
		else table.insert(resultat, "<th>taux_presents[1][j]</th>")
		end
		j = j + 1
	end
	table.insert(resultat, "</tr>")
	
	-- Pokémon
	local poke = {}
	local poke_split = {}
	local niveau = ""
	local taux = ""
	local renfort_poke = {}
	local rowspan_ligne = 1
	i = 1
	while pokemon[i] do
		poke = mw.text.split(pokemon[i], "/")
		
		local nb_entrees = 1
		while poke[nb_entrees + 1] do
			nb_entrees = nb_entrees + 1
		end
		
		local rowspan_poke = 0
		-- Instance de Pokémon sauvage
		if nb_entrees >= 2 then
			h = 2
			
			-- On regarde le nombre de lignes nécessaire au total
			while poke[h] do
				rowspan_poke = rowspan_poke + 1
				h = h + 1
			end
			
			table.insert(resultat, '<tr><td rowspan="' .. rowspan_poke .. '" style="text-align:left">'
				.. ressources.infosPokemon(poke[1]) .. "</td>")
				
			h = 2
			while poke[h] do
				if h ~= 2 then table.insert(resultat, "<tr>") end
				infos = poke[h]
						
				talent_cache = extract_argument("talent-caché", infos, nil)
				local talent_cache_pred = extract_argument("talent-caché", poke[h-1], nil)
				local rowspan_talent_cache = 1
				if h == 2 or talent_cache ~= talent_cache_pred
				then
					local hh = h + 1
					while poke[hh] do
						local talent_cache_next = extract_argument("talent-caché", poke[hh], nil)
						if talent_cache_next == talent_cache
						then rowspan_talent_cache = rowspan_talent_cache + 1
						else break
						end
						hh = hh + 1
					end
					
					if talent_cache == "Possible"
						then table.insert(resultat, "<td rowspan='" .. rowspan_talent_cache .. "'class='résistance'>Possible</td>")
					elseif talent_cache == "Toujours"
						then table.insert(resultat, "<td rowspan='" .. rowspan_talent_cache .. "'class='standard'>Toujours</td>")
					elseif talent_cache == "Impossible" or talent_cache == nil
						then table.insert(resultat, "<td rowspan='" .. rowspan_talent_cache .. "'class='faiblesse'>Impossible</td>")
					else table.insert(resultat, "<td rowspan='" .. rowspan_talent_cache .. "'>" .. talent_cache .. "</td>")
					end
				end
				
				local iv_unsplit = extract_argument("iv", infos, "—")
				local iv_pred = extract_argument("iv", poke[h-1], nil)
				iv = mw.text.split(iv_unsplit, ", ")
				local rowspan_iv = 1
				if h == 2 or iv_unsplit ~= iv_pred
				then
					local hh = h + 1
					while poke[hh] do
						local iv_next = extract_argument("iv", poke[hh], nil)
						if iv_next == iv_unsplit
						then rowspan_iv = rowspan_iv + 1
						else break
						end
						hh = hh + 1
					end
				
					table.insert(resultat, "<td rowspan='" .. rowspan_iv .. "'>" .. iv[1])
					j = 2
					while iv[j] do
						if tonumber(iv[j])
							then table.insert(resultat, "<br>" .. iv[j])
							else table.insert(resultat, frame:expandTemplate{title='Sup', args={iv[j]}})
						end
						j = j + 1
					end
					table.insert(resultat, "</td>")
				end
				
				taux = extract_argument("taux", infos, "—")
				if taux == "—"
				then
					-- Cas d'un Pokémon qui plusieurs taux différents
					j = 1
					while taux_presents[2][j] do
						local taux_j = extract_argument(taux_presents[2][j], infos, "—")
						taux_j = mw.text.split(taux_j, ", ")
						local precision_taux_j = extract_argument("précision-" .. taux_presents[2][j], infos, nil)
						if tonumber(taux_j[1]) then taux_j[1] = taux_j[1] .. "&nbsp;%" end
						
						local color = taux_presents[3][j]
						if color
						then table.insert(resultat, "<td class='" .. color .. "' rowspan='" .. rowspan_ligne
							.. "'>" .. taux_j[1])
						else table.insert(resultat, "<td rowspan='" .. rowspan_ligne .. "'>" .. taux_j[1])
						end
						k = 2
						while taux_j[k] do	-- Gestion des taux spécifiques à des jeux
							if tonumber(taux_j[k])
							then table.insert(resultat, "<br>" .. taux_j[k] .. "&nbsp;%")
							else table.insert(resultat, frame:expandTemplate{title='Sup', args={taux_j[k]}})
							end
							k = k + 1
						end
						if precision_taux_j then table.insert(resultat, '<br><small><i>' .. precision_taux_j .. '</i></small>') end
						table.insert(resultat, "</td>")
						j = j + 1
					end
				else
					-- Cas d'un Pokémon qui a un taux unique
					local precision_taux = extract_argument("précision-taux", infos, nil)
					taux = mw.text.split(taux, ", ")
					if tonumber(taux[1]) then taux[1] = taux[1] .. "&nbsp;%" end
					
					table.insert(resultat, '<td colspan="' .. colspan_taux .. '">' .. taux[1])
					j = 2
					while taux[j] do	-- Gestion des taux spécifiques à des jeux
						if tonumber(taux[j])
						then table.insert(resultat, "<br>" .. taux[j] .. "&nbsp;%")
						else table.insert(resultat, frame:expandTemplate{title='Sup', args={taux[j]}})
						end
						j = j + 1
					end
					if precision_taux then table.insert(resultat, '<br><small><i>' .. precision_taux .. '</i></small>') end
					table.insert(resultat, "</td>")
				end
				
				-- Notes (colonne optionnelle)
				if colspan_notes > 0
				then
					local notes_unsplit = extract_argument("notes", infos, "—")
					local notes_pred = extract_argument("notes", poke[h-1], "—")
					notes = mw.text.split(notes_unsplit, ", ")
					local rowspan_notes = 1
					if h == 2 or notes_unsplit ~= notes_pred
					then
						local hh = h + 1
						while poke[hh] do
							local notes_next = extract_argument("notes", poke[hh], "—")
							if notes_next == notes_unsplit
							then rowspan_notes = rowspan_notes + 1
							else break
							end
							hh = hh + 1
						end
					
						table.insert(resultat, "<td rowspan='" .. rowspan_notes .. "'>")
						j = 1
						while notes[j] do
							-- Expansion de certaines notes
							if notes[j] == "Toujours chromatique"
								then notes[j] = "[[Fichier:Miniature Chromatique EB.png|x15px|link=Pokémon chromatique|Ce Pokémon est toujours chromatique.]]"
									.. "&nbsp;Toujours chromatique"
							elseif notes[j] == "A le caractère Gigamax"
								then notes[j] = "[[Fichier:Miniature Gigamax EB.png|x15px|link=Gigamax|Gigamax]]&nbsp;A le caractère Gigamax"
							end
							
							if j == 1
							then table.insert(resultat, notes[j])
							else table.insert(resultat, "<br>" .. notes[j])
							end
							j = j + 1
						end
						table.insert(resultat, "</td>")
					end
				end
				
				h = h + 1
			end
		end
		i = i + 1
	end
	
	table.insert(resultat, '</table>')
	return table.concat(resultat, "")
end

return p