Editing Module:RecipeTable

From Eco - English Wiki

Your changes will be displayed to readers once an authorized user accepts them. (help)

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
Line 94: Line 94:
function p.main(recipes)
function p.main(recipes)
     local rows = ''
     local rows = ''
     -- Get each row
     -- Get each row
     for i = 1, #recipes do
     for i = 1, #recipes do
Line 106: Line 107:


         --loop through variants to select default variant ingredients
         --loop through variants to select default variant ingredients
if numberOfVariants == 1 then
        for k, v in pairs(recipes[i].variants) do
            ingredients = recipes[i].variants[1].ingredients
            -- HACK skill books default Recipe does not have Skill Book
             products = recipes[i].variants[1].products
             local def = ''
        else
            if string.sub(k, 1, string.len(k) - 9) == "Skill Book" then
        --loop through variants to select default variant ingredients
                def = string.sub(k, 1, string.len(k) - 11)
            for k, v in pairs(recipes[i].variants) do       
            else
                 --given pairs doesn't guarantee order, check that product matches default variant
                 def = k
                if k == recipes[i].defaultVariant then
            end
                    ingredients = v.ingredients
           
                    products = v.products
            --given pairs doesn't guarantee order, check that product matches default variant
                end
            if def == recipes[i].defaultVariant then
                ingredients = v.ingredients
                products = v.products
             end
             end
         end
         end
Line 158: Line 161:
         -- Add new row if products or ingredients are passed in with at least 1 item
         -- Add new row if products or ingredients are passed in with at least 1 item
         if (products[1] and ingredients[1]) then
         if (products[1] and ingredients[1]) then
            local station = craftStn[1]


             -- Show or hide the Crafting Station column
             -- Show or hide the Crafting Station column
             if recipes[i].dispCraftStn == '1' then
             if recipes[i].dispCraftStn == '1' then
                 row = row .. rowspan .. stationcell({ station[1], station[2] }) .. '\n'
                 row = row .. rowspan .. stationcell({ craftStn[1][1], craftStn[1][2] }) .. '\n'
             end
             end


Line 258: Line 259:


             rows = rows .. row
             rows = rows .. row
           
         end
         end


Line 304: Line 304:
     -- Return the full wikitable
     -- Return the full wikitable
     return header({ recipes[1].dispCraftStn }) .. rows .. '|-\n|}\n'
     return header({ recipes[1].dispCraftStn }) .. rows .. '|-\n|}\n'
end
function p.testrender()
  local crafting_recipes = require("Module:GetRecipes")
  return crafting_recipes.renderTable('Campfire', nil, nil, nil)
end
end


return p
return p
Please note that all contributions to Eco - English Wiki are considered to be released under the CC BY-NC-SA 4.0 (see Eco:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To protect the wiki against automated edit spam, we kindly ask you to solve the following hCaptcha:

Cancel Editing help (opens in new window)

Template used on this page: