Documentation for this module may be created at Module:Properties/doc
local p = {}
p.properties = {
health = {
icon = 'Health.png',
name = 'Health',
color = '#dce2a0',
},
w_health = {
icon = 'W-Health.png',
name = 'Health',
color = '#dce2a0',
},
health_peruse = {
icon = 'W-Health.png',
name = 'Health / Use',
color = '#dce2a0',
},
health_cure = {
icon = 'W-Health.png',
name = 'Health / Cure',
color = '#dce2a0',
},
health_overtime = {
icon = 'W-Health.png',
name = 'Health / Over Time',
color = '#dce2a0',
},
fuel_capacity = {
icon = 'FUELS.png',
name = 'Capacity',
color = '#dce2a0',
},
fuel_gain_persec = {
icon = 'Fuel Gain.png',
name = 'Fuel Gain (Fuel/SEC)',
color = '#dce2a0',
},
durability = {
icon = 'Durability.png',
name = 'Durability',
color = '#dce2a0',
},
piercing_damage_persec = {
icon = 'HAZARD-PIERCING.png',
name = 'Piercing Damage / Sec',
color = '#dce2a0',
},
explosive_damage_peruse = {
icon = 'HAZARD-EXPLOSIVE.png',
name = 'Explosive Damage / Use',
color = '#dce2a0',
},
battery_capacity = {
icon = 'BATTERIES.png',
name = 'Capacity',
color = '#dce2a0',
},
battery_drain_persec = {
icon = 'Battery Drain.png',
name = 'Battery Drain (KW/SEC)',
color = '#eaaa8a',
},
battery_drain_peractive = {
icon = 'Battery Drain.png',
name = 'Battery Drain (KW/Activate)',
color = '#eaaa8a',
},
battery_drain_perfuel = {
icon = 'Battery Drain.png',
name = 'Battery Drain (KW/Fuel)',
color = '#eaaa8a',
},
battery_gain_persec = {
icon = 'Battery Gain.png',
name = 'Battery Gain (KW/SEC)',
color = '#beec9b',
},
battery_gain_perklim = {
icon = 'Battery Gain.png',
name = 'Battery Gain (KW/kLIM)',
color = '#beec9b',
},
battery_gain_peruse = {
icon = 'Battery Gain.png',
name = 'Battery Gain (KW/Use)',
color = '#beec9b',
},
battery_gain_perbolt = {
icon = 'Battery Gain.png',
name = 'Battery Gain (KW/Bolt)',
color = '#beec9b',
},
impact_damage_peruse = {
icon = 'Physical DMG.png',
name = 'Impact Damage / Use',
color = '#dce2a0',
},
impact_resist = {
icon = 'Physical DMG.png',
name = 'Impact Resist (%)',
color = '#dce2a0',
},
explode_resist = {
icon = 'HAZARD-EXPLOSIVE.png',
name = 'Explosion Resist (%)',
color = '#dce2a0',
},
electric_resist = {
icon = 'HAZARD-ELECTRICAL.png',
name = 'Electrical Resist (%)',
color = '#dce2a0',
},
radiation_resist = {
icon = 'HAZARD-RADIATION.png',
name = 'Radiation Resist (%)',
color = '#dce2a0',
},
acid_resist = {
icon = 'HAZARD-ACID.png',
name = 'Acid Resist (%)',
color = '#dce2a0',
},
blocks_charged = {
icon = 'Charged Block.png',
name = 'Blocks Charged',
color = '#fcc300',
},
blocks_flat = {
icon = 'Flat Block.png',
name = 'Blocks Flat',
color = '#dce2a0',
},
blocks_blown = {
icon = 'Flat Block.png',
name = 'Blocks Blown Out',
color = '#dce2a0',
},
bracer_ability = {
icon = 'Bracer.png',
name = 'Bracer Shield Ability',
color = '#dce2a0',
},
impact_ability = {
icon = 'Impact Shield.png',
name = 'Impact Shield Ability',
color = '#dce2a0',
},
bubble_ability = {
icon = 'BUBBLE-SHIELD.png',
name = 'Anti-Radiation Shield Ability',
color = '#dce2a0',
},
boost_ability = {
icon = 'BOOST.png',
name = 'Boost Ability',
color = '#dce2a0',
},
grip_ability = {
icon = 'POWER-GRIP-TIRE 2.png',
name = 'Grip Ability',
color = '#dce2a0',
},
road_rating = {
icon = 'COLL-WHEEL.png',
name = 'Road Rating',
color = '#dce2a0',
},
offroad_rating = {
icon = 'COLL-WHEEL.png',
name = 'Offroad Rating',
color = '#dce2a0',
},
water_rating = {
icon = 'COLL-WHEEL.png',
name = 'Water Rating',
color = '#dce2a0',
},
horsepower = {
icon = 'ENGINES.png',
name = 'Horsepower',
color = '#dce2a0',
},
fuel_consumption = {
icon = 'FUEL-CAN.png',
name = 'Fuel Consumption (MPG)',
color = '#dce2a0',
},
}
function p.main(frame)
local res = ''
for key, value in frame.args.stats:gmatch("([%w_]+)=([%w_\.]+)") do
local property = p.properties[key]
if not property then
return string.format("Property %s not found.", key)
end
res = string.format('%s<div style="color: #eaecc3; display: flex; align-items: center; max-width: 24em; padding: 0; margin: 0; border: solid; border-color: %s; border-width: 2px;"><span style="margin: 0; padding-left: 8px; padding-right: 8px;">[[File:%s|26px|alt=Icon for the %s property]]</span><span style="width: 14em; border-left: solid; border-color: %s; border-width: 2px; font-size: 24px; padding: 2px 8px 2px 8px; margin: 0;">[[%s]]</span><span style="padding-right: 8px; font-size: 24px;">%s</span></div>',
res, property.color, property.icon, property.name, property.color, property.name, value)
end
return res
end
return p