« Module:Fiche de créature/Fallout: New Vegas » : différence entre les versions

De Les Archives de Vault-Tec
Kharmitch (discussion | contributions)
Aucun résumé des modifications
Kharmitch (discussion | contributions)
Harmonisation des identifiants techniques
 
(Une version intermédiaire par le même utilisateur non affichée)
Ligne 39 : Ligne 39 :
return tooltip._build({ comportement.tag, comportement.label })
return tooltip._build({ comportement.tag, comportement.label })
end
end
end
function agressivite(localdata)
agressivite_lookup = {
['0'] = { tag = "Non agressif", label = "N'engage pas les affrontements." },
['1'] = { tag = "Agressif", label = "Attaque les ennemis à vue." },
['2'] = { tag = "Très agressif", label = "Attaque les ennemis et les créatures neutres à vue." },
['3'] = { tag = "Frénétique", label = "Attaque n'importe qui à vue." }
}
local agressivite = localdata["agressivité"] or '0'
agressivite = agressivite_lookup[agressivite] or agressivite_lookup['0']
return formatcomportement(agressivite.tag, agressivite.label)
end
function assurance(localdata)
assurance_lookup = {
['0'] = { tag = "Lâche", label = "Fuit ou évite les affrontements." },
['1'] = { tag = "Prudent", label = "Fuit ou évite les menaces plus faibles que lui." },
['2'] = { tag = "Normal", label = "Fuit ou évite les menaces plus fortes que lui." },
['3'] = { tag = "Courageux", label = "Fuit ou évite les affrontements s'il est sévèrement dépassé." },
['4'] = { tag = "Téméraire", label = "Ne fuit ou n'évite jamais les affrontements." }
}
local assurance = localdata["assurance"] or '0'
assurance = assurance_lookup[assurance] or assurance_lookup['0']
return formatcomportement(assurance.tag, assurance.label)
end
function assistance(localdata)
assistance_lookup = {
['0'] = { tag = "N'aide personne", label = "N'aide personne lors des affrontements." },
['1'] = { tag = "Aide les alliés", label = "Aide les alliés lors des affrontements." },
['2'] = { tag = "Aide les amis", label = "Aide les amis et les alliés lors des affrontements." }
}
local assistance = localdata["assistance"] or '0'
assistance = assistance_lookup[assistance] or assistance_lookup['0']
return formatcomportement(assistance.tag, assistance.label)
end
end


Ligne 82 : Ligne 45 :
{ type = "table", rows = {
{ type = "table", rows = {
{ type = "row", label = "Nom", icon = "sic", value = "nom" },
{ type = "row", label = "Nom", icon = "sic", value = "nom" },
{ type = "row", label = "[[Form ID|Base ID]]", icon = "réparation", value = "baseid" },
{ type = "row", label = "[[Form ID]]", icon = "réparation", value = "formid" },
{ type = "row", label = "[[Niveau]]", icon = "niveau", value = "niveau" },
{ type = "row", label = "[[Niveau]]", icon = "niveau", value = "niveau" },
{ type = "row", label = "[[Points d'expérience]]", icon = "xp", value = "xp" },
{ type = "row", label = "[[Points d'expérience]]", icon = "xp", value = "xp" },
Ligne 91 : Ligne 54 :
}},
}},
{ type = "table", title = "[[Attributs de l'IA Gamebryo|Comportement]]", rows = {
{ type = "table", title = "[[Attributs de l'IA Gamebryo|Comportement]]", rows = {
{ type = "row", label = "Agressivité", icon = "poing", value = function(localdata) return agressivite(localdata) end },
{ type = "row", label = "Agressivité", icon = "poing", value = function(localdata) return formatcomportement(localdata, "agressivité") end },
{ type = "row", label = "Assurance", icon = "confiance", value = function(localdata) return assurance(localdata) end },
{ type = "row", label = "Assurance", icon = "confiance", value = function(localdata) return formatcomportement(localdata, "assurance") end },
{ type = "row", label = "Assistance", icon = "groupe", value = function(localdata) return assistance(localdata) end }
{ type = "row", label = "Assistance", icon = "groupe", value = function(localdata) return formatcomportement(localdata, "assistance") end }
}},
}},
{ type = "list", title = "Attaques", prefix = "attaque", max = 5 },
{ type = "list", title = "Attaques", prefix = "attaque", max = 5 },

Dernière version du 21 janvier 2023 à 23:41

Documentation du module

Ce module contient la structure du modèle {{Fiche de créature de Fallout: New Vegas}}.

local localdata = require( 'Module:Infobox/Localdata' )
local tooltip = require( 'Module:Infobulle' )

COMPORTEMENT_LOOKUP = {
	["agressivité"] = {
		['0'] = { tag = "Non agressif", label = "N'engage pas les affrontements." },
		['1'] = { tag = "Agressif", label = "Attaque les ennemis à vue." },
		['2'] = { tag = "Très agressif", label = "Attaque les ennemis et les créatures neutres à vue." },
		['3'] = { tag = "Frénétique", label = "Attaque n'importe qui à vue." }
	},
	["assurance"] = {
		['0'] = { tag = "Lâche", label = "Fuit ou évite les affrontements." },
		['1'] = { tag = "Prudent", label = "Fuit ou évite les menaces plus faibles que lui." },
		['2'] = { tag = "Normal", label = "Fuit ou évite les menaces plus fortes que lui." },
		['3'] = { tag = "Courageux", label = "Fuit ou évite les affrontements s'il est sévèrement dépassé." },
		['4'] = { tag = "Téméraire", label = "Ne fuit ou n'évite jamais les affrontements." }
	},
	["assistance"] = {
		['0'] = { tag = "N'aide personne", label = "N'aide personne lors des affrontements." },
		['1'] = { tag = "Aide les alliés", label = "Aide les alliés lors des affrontements." },
		['2'] = { tag = "Aide les amis", label = "Aide les amis et les alliés lors des affrontements." }
	}
}

function rd(localdata)
	local rd = localdata['rd']
	if rd ~= nil then
		rd = rd .. ' %'
	end
	return rd
end

function formatcomportement(localdata, setting)
	local comportement = localdata[setting] or "0"
	comportement = COMPORTEMENT_LOOKUP[setting][comportement]
	if not comportement then
		return nil
	else
		return tooltip._build({ comportement.tag, comportement.label })
	end
end

return {
	parts = {
		{ type = "table", rows = {
			{ type = "row", label = "Nom", icon = "sic", value = "nom" },
			{ type = "row", label = "[[Form ID]]", icon = "réparation", value = "formid" },
			{ type = "row", label = "[[Niveau]]", icon = "niveau", value = "niveau" },
			{ type = "row", label = "[[Points d'expérience]]", icon = "xp", value = "xp" },
			{ type = "row", label = "[[Perception]]", icon = "oeil", value = "perception" },
			{ type = "row", label = "[[Points de vie]]", icon = "pv", value = "pv" },
			{ type = "row", label = "[[Seuil de dégâts]]", icon = "sd", value = "sd" },
			{ type = "row", label = "[[Résistance aux dégâts]]", icon = "rd", value = function(localdata) return rd(localdata) end }
		}},
		{ type = "table", title = "[[Attributs de l'IA Gamebryo|Comportement]]", rows = {
			{ type = "row", label = "Agressivité", icon = "poing", value = function(localdata) return formatcomportement(localdata, "agressivité") end },
			{ type = "row", label = "Assurance", icon = "confiance", value = function(localdata) return formatcomportement(localdata, "assurance") end },
			{ type = "row", label = "Assistance", icon = "groupe", value = function(localdata) return formatcomportement(localdata, "assistance") end }
		}},
		{ type = "list", title = "Attaques", prefix = "attaque", max = 5 },
		{ type = "list", title = "Capacités", prefix = "capacité", max = 5 },
		{ type = "list", title = "Objets", prefix = "objet", max = 8 }
	}
}