Difference between revisions of "Module:DetectWeaponType"
Jump to navigation
Jump to search
(Created page with "--Module for detecting weapon type WIP local p = {} -- p stands for package function p.GetWeaponType( frame ) if frame then else return end if frame.args...") |
m |
||
Line 6: | Line 6: | ||
local p = {} -- p stands for package | local p = {} -- p stands for package | ||
function p.GetWeaponType( frame ) | function p.GetWeaponType( frame ) | ||
if frame then | if not frame then return end | ||
if frame.args["forcereturn"] then return frame.args["forcereturn"] end | |||
if frame.args["impactdelay"] or frame.args["range"] or frame.args["knockback"] then | if frame.args["impactdelay"] or frame.args["range"] or frame.args["knockback"] then | ||
return "melee" | return "melee" | ||
Line 19: | Line 20: | ||
elseif frame.args["healing"] then | elseif frame.args["healing"] then | ||
return "medtool" | return "medtool" | ||
else | |||
return frame.args["else"] or nil | |||
end | end | ||
end | end | ||
return p | return p |
Revision as of 17:04, 23 December 2021
This module is used by Template:Infobox_Weapon, this will return the weapon type if one of values if filled.
Usage
Parameter | Result |
---|---|
reload minspread maxspread |
gun |
impactdelay range knockback |
melee |
any gun value + healing | medgun |
any melee value + healing | medmelee |
healing (without healing values) | medtool |
repair | repairtool |
else (If any of values above fails) | unknown |
forcereturn | (the value of forcereturn is returned always.) |
--[[ Module for detecting weapon type WIP ]] local p = {} -- p stands for package function p.GetWeaponType( frame ) if not frame then return end if frame.args["forcereturn"] then return frame.args["forcereturn"] end if frame.args["impactdelay"] or frame.args["range"] or frame.args["knockback"] then return "melee" elseif frame.args["reload"] or frame.args["minspread"] or frame.args["maxspread"] then return "gun" elseif frame.args["repair"] then return "repair" elseif frame.args["healing"] and (frame.args["reload"] or frame.args["minspread"] or frame.args["maxspread"]) then return "medgun" elseif frame.args["healing"] and (frame.args["impactdelay"] or frame.args["range"] or frame.args["knockback"]) then return "medmelee" elseif frame.args["healing"] then return "medtool" else return frame.args["else"] or nil end end return p