Module:Block value: Difference between revisions
Jump to navigation
Jump to search
Created page with "local p = {} p.hardness = function( f ) local args = f if f == mw.getCurrentFrame() then args = f:getParent().args end local block = args[1]:gsub( '%s+', '' ):lower()..." |
No edit summary |
||
Line 24: | Line 24: | ||
-- Remove stuff in parens | -- Remove stuff in parens | ||
block = block:gsub( '%([^%)]+%)', '' ) | block = block:gsub( '%s*%([^%)]+%)', '' ) | ||
-- Other transforms | -- Other transforms | ||
Line 33: | Line 33: | ||
:gsub( "['%-]", '' ) | :gsub( "['%-]", '' ) | ||
local value = mw.loadData( | local value = mw.loadData( [[Module:Hardness values]] )[block] | ||
local category = '' | local category = '' | ||
if not value then | if not value then |
Revision as of 03:47, 6 October 2014
Documentation for this module may be created at Module:Block value/doc
local p = {}
p.hardness = function( f )
local args = f
if f == mw.getCurrentFrame() then
args = f:getParent().args
end
local block = args[1]:gsub( '%s+', '' ):lower()
-- Most of these transforms are unnecessary, but are kept for compatibility with original template
-- Strip trailing "s" on everything but these
local keepS = {
glass = true,
steps = true, stairs = true,
bars = true,
cactus = true,
leaves = true,
grass = true,
potatoes = true
}
if not keepS[block] then
block = block:gsub( 's$', '' )
end
-- Remove stuff in parens
block = block:gsub( '%s*%([^%)]+%)', '' )
-- Other transforms
block = block
:gsub( 'wooden', 'wood' )
:gsub( 'mossy', 'moss' )
:gsub( 'steps', 'stairs' )
:gsub( "['%-]", '' )
local value = mw.loadData( [[Module:Hardness values]] )[block]
local category = ''
if not value then
value = '[[Template:Hardness values#Missing value|?]]'
local title = mw.title.getCurrentTitle()
if not args.nocat and title.namespace == 0 and not title.isSubpage then
category = '[[Category:Missing hardness]]'
end
end
return value .. category
end
return p