Modèle:StoryPart/FightChapter

De SaintSeiyaPedia
Share/Save/Bookmark
Aller à : navigation, rechercher
Utilisé sur les pages de Récits. Affiche une ligne de tableau représentant un combat, et crée également un sous-objet sémantique pour ce combat. L'entête et le tag de fin du tableau sont ajoutés séparément.

Usage

  • Ce template devrait être appelé selon le format suivant :

{{StoryPart/FightChapter
|start_chapter=
|end_chapter=
|result=
|fight1=
|fight2=
|fight3=
|fight4=
|order=
}}

Paramètres

Paramètre Contenu Valeur par défaut
start_chapter Chapitre ou épisode de début Nom de l'article dans lequel ce Template est utilisé
end_chapter Chapitre ou épisode de fin
result Issue du combat
fight1 Combattants - 1er camp. Valeurs séparées par des virgules. Utiliser des identifiants de personnages (Consulter l'aide).
fight2 Combattants - 2nd camp. Valeurs séparées par des virgules. Utiliser des identifiants de personnages (Consulter l'aide).
fight3 Combattants - 3ème camp. Valeurs séparées par des virgules. Utiliser des identifiants de personnages (Consulter l'aide).
fight4 Combattants - 4ème camp. Valeurs séparées par des virgules. Utiliser des identifiants de personnages (Consulter l'aide).
order Numéro permettant de trier les combats

Sous-objets sémantiques crées

Sous-objet sémantique Propriété Remplie par le paramètre Valeur par défaut
FightInChapter_paramètre: order
FightStartIn start_chapter Nom de l'article dans lequel ce Template est utilisé
Has main series Interroge la page donnée par start_chapter et y récupére la valeur de la propriété Has_main_series
EndInChapter end_chapter
Ordering_number order 0
Result result
Has Fighters fight1 + fight2 + fight3 + fight4
Features character fight1 + fight2 + fight3 + fight4 (en vue d'un changement de système)
Has Fighters 1 fight1
Has Fighters 2 fight2
Has Fighters 3 fight3
Has Fighters 4 fight4

Exemple


{{StoryPart/FightChapter
|start_chapter=Episode 001
|end_chapter=Episode 002
|result=Victoire de Thanatos
|fight1=Seiya, Shaina
|fight2=Cassios, Baian
|fight3=Rhadamanthe, Io
|fight4=Thanatos
|order=5
}}

Explications avancées

Sous-objet sémantique

Les sous-objets sémantiques ([http:// Sous-objets sémantiques]) n'ont pas de mécanisme permettant d'affecter directement en liste de valeurs pour une propriété donnée. Or, il est important ici de pouvoir affecter plusieurs valeurs aux propriétés représentant les combattants telle que Has Fighters ou Has Fighters 1.

Mécanisme idéal, mais qui ne fonctionne pas


{{#subobject:FightInChapter_{{{order|0}}}
|FightStartIn={{{start_chapter|{{PAGENAME}}}}}
|Has main series={{#show:{{{start_chapter|{{PAGENAME}}}}}|?Has_main_series}} 
|EndInChapter={{{end_chapter|}}}
|Ordering_number={{{order|0}}}
|Result={{{result|}}}
|Has Fighters=<liste de noms séparés par des virgules>
|Has Fighters 1=<liste de noms séparés par des virgules>
...
}}

Cependant, définir à nouveau des propriétés pour un sous-objet donné (identifié par son nom) permet d'ajouter des propriétés en plus de celles déja existantes.

On crée donc d'abord l'objet


{{#subobject:FightInChapter_{{{order|0}}}
|FightStartIn={{{start_chapter|{{PAGENAME}}}}}
|Has main series={{#show:{{{start_chapter|{{PAGENAME}}}}}|?Has_main_series}} 
|EndInChapter={{{end_chapter|}}}
|Ordering_number={{{order|0}}}
|Result={{{result|}}}
}}

Puis on parcourt les liste des combattants pour ajouter peu à peu toutes lse propriétés nécessaires


{{#arraymap:{{{fight1|}}}|,|x| {{#subobject:FightInChapter_{{{order|0}}}|Has Fighters 1=x}}

Exemple

  • fight1=> Seiya, Marin
  • fight2=> Shaina, Cassios
Code Interprétation Résultat
{{#subobject:FightInChapter_1
|FightStartIn=Episode 001
|Has main series=Saint Seiya Série TV
|EndInChapter=Episode 002
|Ordering_number=01
|Result=Victoire de Seiya
}}
FightInChapter_1
FightStartIn=Episode 001
Has main series=Saint Seiya Série TV
EndInChapter=Episode 002
Ordering_number=01
Result=Victoire de Seiya

{{#arraymap:{{{fight1|}}}|,|x|

{{#subobject:FightInChapter_{{{order|0}}}|Has Fighters 1=x}}
{{#subobject:FightInChapter_{{{order|0}}}|Has Fighters=x}}

}}

{{#subobject:FightInChapter_1

|Has Fighters 1=Seiya}}

{{#subobject:FightInChapter_1

|Has Fighters=Seiya}}

{{#subobject:FightInChapter_1

|Has Fighters 1=Marin}}

{{#subobject:FightInChapter_1

|Has Fighters=Marin}}
FightInChapter_1
FightStartIn=Episode 001
Has main series=Saint Seiya Série TV
EndInChapter=Episode 002
Ordering_number=01
Result=Victoire de Seiya
Has Fighters 1=Seiya, Marin
Has Fighters=Seiya, Marin

{{#arraymap:{{{fight2|}}}|,|x|

{{#subobject:FightInChapter_{{{order|0}}}|Has Fighters 2=x}}
{{#subobject:FightInChapter_{{{order|0}}}|Has Fighters=x}}

}}

{{#subobject:FightInChapter_1

|Has Fighters 2=Shaina}}

{{#subobject:FightInChapter_1

|Has Fighters=Shaina}}

{{#subobject:FightInChapter_1

|Has Fighters 2=Cassios}}

{{#subobject:FightInChapter_1

|Has Fighters=Cassios}}
FightInChapter_1
FightStartIn=Episode 001
Has main series=Saint Seiya Série TV
EndInChapter=Episode 002
Ordering_number=01
Result=Victoire de Seiya
Has Fighters 1=Seiya, Marin
Has Fighters 2=Shaina, Cassios
Has Fighters=Seiya, Marin, Shaina, Cassios