« Module:Infobox/Armure gamebryo » : différence entre les versions
Aucun résumé des modifications |
Aucun résumé des modifications |
||
Ligne 18 : | Ligne 18 : | ||
{ type = 'row', label = 'Valeur', value = 'valeur' }, | { type = 'row', label = 'Valeur', value = 'valeur' }, | ||
{ type = 'row', label = 'Classe', value = 'classe' }, | { type = 'row', label = 'Classe', value = 'classe' }, | ||
}}, | |||
{ type = 'table', title = 'Autres', rows = { | |||
{ type = 'row', label = 'Quêtes', value = 'quêtes' }, | { type = 'row', label = 'Quêtes', value = 'quêtes' }, | ||
{ type = 'row', label = 'Variantes', value = 'variante' .. index }, | { type = 'row', label = 'Variantes', value = 'variante' .. index }, |
Dernière version du 2 décembre 2023 à 01:07
Ce module contient le paramétrage de l'infobox {{Infobox armure gamebryo}}.
local localdata = require( 'Module:Infobox/Localdata' )
--------------------------------------------------------
----- Fonctions communes -----
--------------------------------------------------------
function buildObjectTable(index, objectName, hasSeparator)
local objectTable
if objectName or index == '' then
objectTable = { type = 'table', title = objectName, separator = hasSeparator, rows = {
{ type = 'table', title = 'Caractéristiques', rows = {
{ type = 'row', label = 'Résistance aux dégâts', value = 'rd' .. index },
{ type = 'row', label = 'Résistance aux radiations', value = 'rr' .. index },
{ type = 'row', label = 'Résistance à l\'énergie', value = 're' .. index },
{ type = 'row', label = 'Seuil de dégâts', value = 'sd' .. index },
{ type = 'row', label = 'Points de vie', value = 'pv' },
{ type = 'row', label = 'Poids', value = 'poids' },
{ type = 'row', label = 'Valeur', value = 'valeur' },
{ type = 'row', label = 'Classe', value = 'classe' },
}},
{ type = 'table', title = 'Autres', rows = {
{ type = 'row', label = 'Quêtes', value = 'quêtes' },
{ type = 'row', label = 'Variantes', value = 'variante' .. index },
{ type = 'row', label = 'Plan', value = 'plan' .. index },
{ type = 'row', label = 'Effets', value = 'effets' },
{ type = 'row', label = 'Réparation', value = { 'réparation' .. index, 'reparation' .. index }},
}},
{ type = 'table', title = 'Technique', collapseparameters = { collapsible = true, collapsed = true }, rows = {
{ type = 'row', label = '[[Editor ID]]', value = 'editorid' .. index },
{ type = 'row', label = '[[Form ID]]', value = 'formid' .. index }
}
}}
}
else
objectTable = { type = 'text' }
end
return objectTable
end
--------------------------------------------------------
----- Calcul des champs à afficher -----
--------------------------------------------------------
local objectName2 = localdata['nom objet2']
-- Type d'armure ou vêtement
local armorType = (localdata['type'] or 'armure'):lower()
local isUnique = armorType:find('unique')
local armorType = armorType:gsub(' unique', '')
local ibSubject
if objectName2 then
local cases = {
['armure'] = 'Ensemble d\'armure',
['tenue'] = 'Tenue',
['vêtement'] = 'Ensemble de vêtement'
}
ibSubject = 'Ensemble ' .. (cases[armorType] or 'd\'armure')
else
local cases = {
['armure'] = 'Armure',
['casque'] = 'Casque',
['couvre-chef'] = 'Couvre-chef',
['tenue'] = 'Tenue',
['vêtement'] = 'Vêtement'
}
ibSubject = cases[armorType] or 'Armure'
end
if isUnique then
ibSubject = ibSubject .. ' unique'
end
-- Gestion de l'affichage des pièces d'armure
local objectTableLabel1
if objectName2 then
objectTableLabel1 = localdata['nom'] or
require( 'Module:Outils' ).simpletitle(mw.getCurrentFrame())
end
local objectTable1 = buildObjectTable('', objectTableLabel1, objectTableLabel1 == nil)
local objectTable2 = buildObjectTable('2', objectName2, false)
--------------------------------------------------------
----- Construction de l'infobox -----
--------------------------------------------------------
return {
parts = {
{ type = 'title', value = 'nom', subtitle = 'sous-titre', icon = 'icône', subhead = { games = 'jeux', subject = ibSubject, link = 'Armures et vêtements' }},
{ type = 'images', imageparameters = { 'image', 'image2', 'image3', 'image4', 'image5' }, captionparameter = { 'légende', 'image desc' }},
objectTable1,
objectTable2,
{ type = 'text', value = 'pied' }
}
}