Module:Statistic/Legacy/Fleet

local statistics = {}

--	displayName		|	The name to be displayed in the stat block. |	string --	displayImage	|	The image to be displayed in the stat block. |	string --	displayValue	|	The raw value that is going to be formatted. |	function (accepts the value of the stat, returns number or table of numbers) --	displayUnits	|	The units of the statistic when displayed. |	string or table of strings (note that "%" and Time" have special treatment) --	overview		|	The content of the hover tooltip in the stat block.		|	string (use table.unpack and string.format) --	details			|	The content of the help page.							|	string --	relation		|	The relationship of the statistic vs effectiveness.		|	char or table of chars (either '+', '-' or '') -- -- If tables are used, their size should be equal across displayValue, displayUnits and relation. statistics.basicStatistics = {	["Bonus Helium-3"] = {		displayName = "Bonus Helium-3",		displayImage = "Helium3.png",		displayValue = function(v) return v * 100 end,		displayUnits = "%",		overview = "The fleet obtains %s more Helium-3",		details = "This is the proportion by which Helium-3 gains are increased for the fleet."		.. "\n\n"		.. "If the cargo hold is full, other resources will be displaced.",		relation = '+', },

["Bonus Mineral Ore"] = { displayName = "Bonus Mineral Ore", displayImage = "MineralOre.png", displayValue = function(v) return v * 100 end, displayUnits = "%", overview = "The fleet obtains %s more Mineral Ore", details = "This is the proportion by which Mineral Ore gains are increased for the fleet." .. "\n\n" .. "If the cargo hold is full, other resources will be displaced.", relation = '+', },

["Bonus Antimatter"] = { displayName = "Bonus Antimatter", displayImage = "Antimatter.png", displayValue = function(v) return v * 100 end, displayUnits = "%", overview = "The fleet obtains %s more Antimatter", details = "This is the proportion by which Antimatter gains are increased for the fleet." .. "\n\n" .. "If the cargo hold is full, other resources will be displaced.", relation = '+', },

["Harmonic Shield"] = { displayName = "Harmonic Shield", displayImage = "ShieldSlots-Stat.png", displayValue = function(v) return v end, displayUnits = "", overview = "Add %s to Harmonic Shield points", details = "Each Harmonic Shield point proportionally adds 0.83% shield energy to each ship in the fleet, capped at +30.00% for 36 points.", relation = '+', },

["Harmonic Agility"] = { displayName = "Harmonic Agility", displayImage = "ShipSpeed-Stat.png", displayValue = function(v) return v end, displayUnits = "", overview = "Add %s to Harmonic Agility points", details = "Each Harmonic Agility point proportionally adds 1.25% speed, strafe and rear speed to each ship in the fleet, capped at +30.00% for 24 points.", relation = '+', },

["Harmonic Warfare"] = { displayName = "Harmonic Warfare", displayImage = "ShipDamage-Stat.png", displayValue = function(v) return v end, displayUnits = "", overview = "Add %s to Harmonic Warfare points", details = "Each Harmonic Warfare point proportionally adds 1.25% ship damage to each ship in the fleet, capped at +30.00% for 24 points.", relation = '+', },

["Harmonic Siege"] = { displayName = "Harmonic Siege", displayImage = "ModuleDamage-Stat.png", displayValue = function(v) return v end, displayUnits = "", overview = "Add %s to Harmonic Siege points", details = "Each Harmonic Siege point proportionally adds 1.25% module damage to each ship in the fleet, capped at +30.00% for 24 points.", relation = '+', },

["Fleet Resurgence"] = { displayName = "Fleet Resurgence", displayImage = "FleetResurgence-Stat.png", displayValue = function(v) return v end, displayUnits = "", overview = "Add %s to Fleet Resurgence points", details = "When there are at least 5 Fleet Resurgence points, an additive 30% Resurgence is applied to each ship in the fleet.", relation = '+', },

["Escort Minimum Level"] = { displayName = "Escort Minimum Level", displayImage = "XP-Stat.png", displayValue = function(v) return v end, displayUnits = "", overview = "Escorts must be at least level %s", details = "Other fleets below this level cannot escort the fleet.", relation = '-', },

["Escort Maximum Level"] = { displayName = "Escort Maximum Level", displayImage = "XP-Stat.png", displayValue = function(v) return v end, displayUnits = "", overview = "Escorts can be at most level %s", details = "Other fleets above this level cannot escort the fleet.", relation = '+', },

["Escort Limit"] = { displayName = "Escort Limit", displayImage = "EscortLimit-Stat.png", displayValue = function(v) return v end, displayUnits = "", overview = "Supports at most %s escorts", details = "This is the maximum number of other fleets that can escort the fleet.", relation = '+', },

["Local Minimum Range"] = { displayName = "Minimum Range", displayImage = "Range-Stat.png", displayValue = function(v) return v end, displayUnits = "AU", overview = "Local jump distance must be at least %s", details = "This is the minimum distance between the fleet and the target destination for a jump to be valid when travelling within the same sector.", relation = '-', },

["Local Maximum Range"] = { displayName = "Maximum Range", displayImage = "Range-Stat.png", displayValue = function(v) return v end, displayUnits = "AU", overview = "Local jump distance can be at most %s", details = "This is the maximum distance between the fleet and the target destination for a jump to be valid when travelling within the same sector.", relation = '+', },

["Local Warmup"] = { displayName = "Warmup", displayImage = "Time-Stat.png", displayValue = function(v) return v end, displayUnits = "s", overview = "Take %s to execute a local jump", details = "This is the time between clicking the Jump button and the warping of the fleet and its escorts. Only applied to jumps within the same sector.", relation = '-', },

["Local Cooldown"] = { displayName = "Cooldown", displayImage = "Time-Stat.png", displayValue = function(v) return v end, displayUnits = "s", overview = "Take %s to prepare for the next local jump", details = "This is the time required after a successful jump before the Jump button can be clicked again. Only applied to jumps within the same sector.", relation = '-', },

["Sector Range"] = { displayName = "Sector Range", displayImage = "Range-Stat.png", displayValue = function(v) return v end, displayUnits = "", overview = "Can jump across at most %s sectors", details = "This is the maximum number of sectors between the fleet and the target destination for a jump to be valid when travelling across sectors.", relation = '+', },

["Sector Warmup"] = { displayName = "Sector Warmup", displayImage = "Time-Stat.png", displayValue = function(v) return v end, displayUnits = "s", overview = "Take %s to execute a sector jump", details = "This is the time between clicking the Jump button and the warping of the fleet and its escorts. Only applied to jumps between sectors.", relation = '-', },

["Sector Cooldown"] = { displayName = "Sector Cooldown", displayImage = "Time-Stat.png", displayValue = function(v) return v end, displayUnits = "s", overview = "Take %s to prepare for the next sector jump", details = "This is the time required after a successful jump before the Jump button can be clicked again. Only applied to jumps between sectors.", relation = '-', }, }

-- These have no innate values. --	displayName		|	The name to be displayed in the stat block. |	string --	displayImage	|	The image to be displayed in the stat block. |	string --	basicStats		|	The keys of the constituent statistics. |	string or table of strings --	overview		|	The content of the hover tooltip in the stat block. |	function (accepts the formatted values, returns string) statistics.compositeStatistics = { ["Local Jump Details"] = { displayName = "Local Jump Details", displayImage = "LocalJump-Stat.png", basicStats = { "Local Minimum Range", "Local Maximum Range", "Local Warmup", "Local Cooldown" }, overview = function(t) return string.format("Can jump to destinations between %s and %s away within the same sector. Each local jump takes %s and has a cooldown of %s.", t[1], t[2], t[3], t[4]) end, },

["Sector Jump Details"] = { displayName = "Sector Jump Details", displayImage = "LocalJump-Stat.png", basicStats = { "Sector Range", "Sector Warmup", "Sector Cooldown" }, overview = function(t) return string.format("Can jump to destinations up to %s sectors away. Each sector jump takes %s and has a cooldown of %s.", t[1], t[2], t[3]) end, }, }

return statistics