Vorlage:PlantDetails: Unterschied zwischen den Versionen

Aus Eco - Deutsches Wiki
Wechseln zu:Navigation, Suche
[unmarkierte Version][unmarkierte Version]
(Die Seite wurde neu angelegt: „local p = {} -- Grabs args from the parent frame -- Trims and parses the args into a table, then returns the table function norm() local origArgs = mw.get…“)
 
(Der Seiteninhalt wurde durch einen anderen Text ersetzt: „<includeonly> {{#invoke:PlantDetails|main}} </includeonly> <noinclude> ==Documentation== <pre> {{PlantDetails|plant=Plant Name}} </…“)
Markierung: Ersetzt
Zeile 1: Zeile 1:
local p = {}
<includeonly>
{{#invoke:PlantDetails|main}}
</includeonly>


-- Grabs args from the parent frame
<noinclude>
-- Trims and parses the args into a table, then returns the table
==Documentation==
function norm()
<pre>
    local origArgs = mw.getCurrentFrame():getParent().args
{{PlantDetails|plant=Plant Name}}
    local args = {}
</pre>
   
    for k, v in pairs( origArgs ) do
        v = mw.text.trim( tostring( v ) )
        if v ~= '' then
            args[k] = v
        end
    end
   
    return args
end


-- Main entry point for the Module
This template can be used to grab all details about the conditions for a plant.  
function p.main()
TreeDetails will generate the following information, using the following Modules:
    -- get args from the Template
*[[Module:PlantDetails]]
    local args = norm()
*[[Module:PlantData]]
   
if args.plant == nil or args.plant == '' then
        return '\'plant\' must be specified.'
    end
    -- assign variables for plant
    local plant = args.plant
 
    -- load list of recipes
    local plantData = require( "Module:PlantData" )
    local plantTable = plantData.plants[plant]
    if plantTable == nil then
return plant .. ' could not be found in Module:PlantData.'
end   
local wikibox = '=== Plant Properties===\n'
if plantTable.isDecorative == 'Decorative' then
wikibox = wikibox .. 'This plant is decorative only. \n'
end
if plantTable.isWater == 'Underwater' then
wikibox = wikibox .. 'This plant grows underwater. \n'
end
if plantTable.scytheKills =='Yes' then
wikibox = wikibox .. 'Scything this plant will kill it. \n'
end
wikibox = wikibox .. '\n===Environmental Conditions===\n'
wikibox = wikibox .. '{| class=\"wikitable\"\n'
-- Temperature row
wikibox = wikibox .. '| rowspan="4" | Temperature Ranges \n'
wikibox = wikibox .. '| Ideal Minimum : ' .. plantTable.idealTempMin .. '\n'
wikibox = wikibox .. '| rowspan="2" |  Ideal Range: The plant\'s preferred temperature range.  Temperatures in this range won\'t inhibit population growth or reduce yield.\n'
wikibox = wikibox .. '|- \n| Ideal Maximum : ' .. plantTable.idealTempMax .. '\n'
wikibox = wikibox .. '|- \n| Extreme Minimum  : ' .. plantTable.extremeTempMin .. '\n'
wikibox = wikibox .. '| rowspan="2" | Extreme Range : The temperature range that can support this plant (albeit at reduced efficiency if the temperature is not also within the ideal range).  Temperatures outside this range prohibit reproduction entirely and prevent any yield at all. \n'
wikibox = wikibox .. '|- \n| Extreme Maximum : ' .. plantTable.extremeTempMax .. '\n'
-- Moisture row
wikibox = wikibox .. '|- \n| rowspan="4" | Moisture Ranges \n'
wikibox = wikibox .. '| Ideal Minimum : ' .. plantTable.idealMoistureMin .. '\n'
wikibox = wikibox .. '| rowspan="2" |  Ideal Range: The plant\'s preferred moisture range.  Moisture in this range won\'t inhibit population growth or reduce yield.\n'
wikibox = wikibox .. '|- \n| Ideal Maximum : ' .. plantTable.idealMoistureMax .. '\n'
wikibox = wikibox .. '|- \n| Extreme Minimum  : ' .. plantTable.extremeMoistureMin .. '\n'
wikibox = wikibox .. '| rowspan="2" | Extreme Range : The moisture range that can support this plant (albeit at reduced efficiency if the moisture is not also within the ideal range).  Moisture outside this range prohibits reproduction entirely and prevent any yield at all. \n'
wikibox = wikibox .. '|- \n| Extreme Maximum : ' .. plantTable.extremeMoistureMax .. '\n'
-- Salt row
wikibox = wikibox .. '|- \n| rowspan="4" | Salt Ranges \n'
wikibox = wikibox .. '| Ideal Minimum : ' .. plantTable.idealSaltMin .. '\n'
wikibox = wikibox .. '| rowspan="2" |  Ideal Range: The plant\'s preferred sale range.  Salt in this range won\'t inhibit population growth or reduce yield.\n'
wikibox = wikibox .. '|- \n| Ideal Maximum : ' .. plantTable.idealSaltMax .. '\n'
wikibox = wikibox .. '|- \n| Extreme Minimum  : ' .. plantTable.extremeSaltMin .. '\n'
wikibox = wikibox .. '| rowspan="2" | Extreme Range : The salt range that can support this plant (albeit at reduced efficiency if the salt is not also within the ideal range).  Salt outside this range prohibits reproduction entirely and prevent any yield at all. \n'
wikibox = wikibox .. '|- \n| Extreme Maximum : ' .. plantTable.extremeSaltMax .. '\n'
-- Soil Restrictions
wikibox = wikibox .. '|- \n| rowspan="4" | Soil Conditions \n'
if plantTable.nitrogenHalfSpeed == nil then
wikibox = wikibox .. '| Nitrogen minimum : None \n'
else
wikibox = wikibox .. '| Nitrogen minimum : ' .. plantTable.nitrogenHalfSpeed .. '\n'
end
wikibox = wikibox .. '| rowspan="4" | Any nutirent dropping below its minimum will reduce the growth of the plant to half speed\n'
if plantTable.phosphorusHalfSpeed == nil then
wikibox = wikibox .. '|- \n| Phosphorus minimum : None \n'
else
wikibox = wikibox .. '|- \n| Phosphorus minimum : ' .. plantTable.phosphorusHalfSpeed .. '\n'
end
if plantTable.potassiumHalfSpeed == nil then
wikibox = wikibox .. '|- \n| Potassium minimum : None \n'
else
wikibox = wikibox .. '|- \n| Potassium minimum  : ' .. plantTable.potassiumHalfSpeed .. '\n'
end
if plantTable.soilMoistureHalfSpeed == nil then
wikibox = wikibox .. '|- \n| Soil Moisture minimum : None \n'
else
wikibox = wikibox .. '|- \n| Soil Moisture minimum : ' .. plantTable.soilMoistureHalfSpeed .. '\n'
end
wikibox = wikibox .. '|}\n\n'
wikibox = wikibox .. '===Plant Harvest===\n'
wikibox = wikibox .. '{| class=\"wikitable\"\n'
-- Growth Details
wikibox = wikibox .. '|- \n| rowspan="3" | Growth Stages \n'
wikibox = wikibox .. '| Mature in ' .. plantTable.maturity .. ' days\n'
wikibox = wikibox .. '| How many days it takes for this plant to mature \n'
wikibox = wikibox .. '|- \n| Pickable at ' .. plantTable.pickableAtPercent .. '% growth\n'
wikibox = wikibox .. '| The percent it is possible to pick this plant \n'
if plantTable.killOnHarvest == 'Yes' then
wikibox = wikibox .. '|- \n| Harvesting Kills \n'
wikibox = wikibox .. '| This plant must be replanted from seeds after harvesting \n'
else
wikibox = wikibox .. '|- \n| Returns to ' .. plantTable.postHarvestGrowth .. '% growth\n'
wikibox = wikibox .. '| This plant will return to an immature state on harvesting \n'
end
-- Resource Yields
wikibox = wikibox .. '|- \n| rowspan="3" | Resource Yield \n'
wikibox = wikibox .. '| Minimum yield : ' .. plantTable.resourceMin .. '\n'
wikibox = wikibox .. '| The minimum yield from harvesting this plant at maturity \n'
wikibox = wikibox .. '|- \n| Maximum Yield : ' .. plantTable.resourceMax .. '\n'
wikibox = wikibox .. '| The maximum yield from harvesting this plant at maturity \n'
wikibox = wikibox .. '|- \n| Yield Bonus : ' .. plantTable.resourceBonus .. '% growth\n'
wikibox = wikibox .. '| The growth at which you get a yield bonus from the minimum \n'
wikibox = wikibox .. '|}\n\n'
wikibox = wikibox .. '===Environmental Effects===\n'
wikibox = wikibox .. '{| class=\"wikitable\"\n'
-- Soil Effects
wikibox = wikibox .. '| rowspan="4" | Nutrients Depleted \n'
if plantTable.nitrogenContent == nil then
wikibox = wikibox .. '| Nitrogen absorbed : None \n'
else
wikibox = wikibox .. '| Nitrogen absorbed : ' .. plantTable.nitrogenContent .. '\n'
end
wikibox = wikibox .. '| rowspan="4" | The amount of nutrients an adult plant absorbs from the soil\n'
if plantTable.phosphorusContent == nil then
wikibox = wikibox .. '|- \n| Phosphorus absorbed : None \n'
else
wikibox = wikibox .. '|- \n| Phosphorus absorbed : ' .. plantTable.phosphorusContent .. '\n'
end
if plantTable.potassiumContent == nil then
wikibox = wikibox .. '|- \n| Potassium absorbed : None \n'
else
wikibox = wikibox .. '|- \n| Potassium absorbed  : ' .. plantTable.potassiumContent .. '\n'
end
if plantTable.soilMoistureContent == nil then
wikibox = wikibox .. '|- \n| Soil Moisture absorbed : None \n'
else
wikibox = wikibox .. '|- \n| Soil Moisture absorbed : ' .. plantTable.soilMoistureContent .. '\n'
end
-- Overcrowding Effects
wikibox = wikibox .. '|- \n| rowspan="4" | Space Required \n'
if plantTable.consumedFertileGround == nil then
wikibox = wikibox .. '| Fertile ground occupied : None \n'
else
wikibox = wikibox .. '| Fertile ground occupied : ' .. plantTable.consumedFertileGround .. '\n'
end
wikibox = wikibox .. '| rowspan="4" | The amount of each space occupied by each plant\n'
if plantTable.consumedUnderwaterFertileGround == nil then
wikibox = wikibox .. '|- \n| Underwater fertile ground occupied : None \n'
else
wikibox = wikibox .. '|- \n| Underwater fertile ground occupied : ' .. plantTable.consumedUnderwaterFertileGround .. '\n'
end
if plantTable.consumedShrubSpace == nil then
wikibox = wikibox .. '|- \n| Shrub space occupied : None \n'
else
wikibox = wikibox .. '|- \n| Shrub space occupied : ' .. plantTable.consumedShrubSpace .. '\n'
end
if plantTable.consumedCanopySpace == nil then
wikibox = wikibox .. '|- \n| Canopy space occupied : None \n'
else
wikibox = wikibox .. '|- \n| Canopy space occupied : ' .. plantTable.consumedCanopySpace .. '\n'
end
wikibox = wikibox .. '|}\n\n'
return wikibox
end


return p
==== Plant Details ====
* The table displays details about the plant found in the EcoSim.eco config, and has the header "Farming Conditions".
 
==Usage==
===Parameters===
; plant
: A plant in the game. Use the name as it appears in the game, with spaces.
 
==Example==
<pre>
{{PlantDetails|plant=Amanita Mushroom}}
</pre>
{{PlantDetails|plant=Amanita Mushroom}}
 
 
</noinclude>

Version vom 22. September 2020, 02:50 Uhr


Documentation

{{PlantDetails|plant=Plant Name}}

This template can be used to grab all details about the conditions for a plant. TreeDetails will generate the following information, using the following Modules:

Plant Details

  • The table displays details about the plant found in the EcoSim.eco config, and has the header "Farming Conditions".

Usage

Parameters

plant
A plant in the game. Use the name as it appears in the game, with spaces.

Example

{{PlantDetails|plant=Amanita Mushroom}}

Amanita Mushroom could not be found in Module:PlantData.