Модуль:BotanyStats: различия между версиями
Материал из Space Station 14 Вики
Pok (обсуждение | вклад) мНет описания правки |
Pok (обсуждение | вклад) мНет описания правки |
||
Строка 1: | Строка 1: | ||
local p = {} | local p = {} | ||
-- Функция для преобразования Кельвинов в Цельсии | |||
local function kelvinToCelsius(kelvin) | |||
return kelvin - 273.15 | |||
end | |||
function p.templateCells(frame) | function p.templateCells(frame) | ||
Строка 6: | Строка 11: | ||
local seedId = frame.args.seedId or "" -- ID семечка | local seedId = frame.args.seedId or "" -- ID семечка | ||
local potency = frame.args.potency or " | local potency = frame.args.potency or "1" -- Потенция | ||
local yield = frame.args.yield or " | local yield = frame.args.yield or "0" -- Урожайность | ||
local lifespan = frame.args.lifespan or " | local lifespan = frame.args.lifespan or "0" -- Время жизни | ||
local maturation = frame.args.maturation or " | local maturation = frame.args.maturation or "0" -- Созревания | ||
local production = frame.args.production or " | local production = frame.args.production or "0" -- Продуктивность | ||
local growthStages = frame.args.growthStages | local growthStages = frame.args.growthStages or "6" -- Стадии роста | ||
local waterConsumption = frame.args.waterConsumption or " | local waterConsumption = frame.args.waterConsumption or "0.5" -- Вода | ||
local nutrientConsumption = frame.args.nutrientConsumption or " | local nutrientConsumption = frame.args.nutrientConsumption or "0.75" -- Удобрения | ||
local | local idealHeatKelvin = tonumber(frame.args.idealHeat) or 293 -- Температура в Кельвинах | ||
local idealLight = frame.args.idealLight or " | local idealLight = frame.args.idealLight or "7" -- Освещения | ||
local description = frame.args.description or "" -- Описание | local description = frame.args.description or "" -- Описание | ||
Строка 22: | Строка 27: | ||
local mutation = frame.args.mutation or "" -- Мутации | local mutation = frame.args.mutation or "" -- Мутации | ||
-- Преобразование температуры из Кельвинов в Цельсии | |||
local idealHeatCelsius = kelvinToCelsius(idealHeatKelvin) | |||
-- Формирование строк для ячеек таблицы | -- Формирование строк для ячеек таблицы | ||
local out = "" | local out = "" | ||
Строка 36: | Строка 44: | ||
out = out .. frame:preprocess('* {{tooltip|Вода|Потребления воды в секунду|color=#e1f6ff}}: ' .. '<b>' .. waterConsumption .. '</b>' .. '\n') | out = out .. frame:preprocess('* {{tooltip|Вода|Потребления воды в секунду|color=#e1f6ff}}: ' .. '<b>' .. waterConsumption .. '</b>' .. '\n') | ||
out = out .. frame:preprocess('* {{tooltip|Удобрения|Потребления удобрений в секунду|color=#e1f6ff}}: ' .. '<b>' .. nutrientConsumption .. '</b>' .. '\n') | out = out .. frame:preprocess('* {{tooltip|Удобрения|Потребления удобрений в секунду|color=#e1f6ff}}: ' .. '<b>' .. nutrientConsumption .. '</b>' .. '\n') | ||
out = out .. frame:preprocess('* {{tooltip|Температура|Оптимальная температура|color=#e1f6ff}}: ' .. '<b>' .. | out = out .. frame:preprocess('* {{tooltip|Температура|Оптимальная температура|color=#e1f6ff}}: ' .. '<b>' .. string.format("%.2f", idealHeatCelsius) .. '°C</b>' .. '\n') | ||
out = out .. frame:preprocess('* {{tooltip|Освещения|Оптимальный уровень освещения|color=#e1f6ff}}: ' .. '<b>' .. idealLight .. '</b>' .. '\n') | out = out .. frame:preprocess('* {{tooltip|Освещения|Оптимальный уровень освещения|color=#e1f6ff}}: ' .. '<b>' .. idealLight .. '</b>' .. '\n') | ||
out = out .. '| ' .. description .. '\n' | out = out .. '| ' .. description .. '\n' |
Версия от 19:52, 22 августа 2024
Для документации этого модуля может быть создана страница Модуль:BotanyStats/doc
local p = {} -- Функция для преобразования Кельвинов в Цельсии local function kelvinToCelsius(kelvin) return kelvin - 273.15 end function p.templateCells(frame) local anchorName = frame.args.anchorName or "" -- Название якоря local fruitId = frame.args.fruitId or "" -- ID плода local seedId = frame.args.seedId or "" -- ID семечка local potency = frame.args.potency or "1" -- Потенция local yield = frame.args.yield or "0" -- Урожайность local lifespan = frame.args.lifespan or "0" -- Время жизни local maturation = frame.args.maturation or "0" -- Созревания local production = frame.args.production or "0" -- Продуктивность local growthStages = frame.args.growthStages or "6" -- Стадии роста local waterConsumption = frame.args.waterConsumption or "0.5" -- Вода local nutrientConsumption = frame.args.nutrientConsumption or "0.75" -- Удобрения local idealHeatKelvin = tonumber(frame.args.idealHeat) or 293 -- Температура в Кельвинах local idealLight = frame.args.idealLight or "7" -- Освещения local description = frame.args.description or "" -- Описание local location = frame.args.location or "" -- Местонахождение local mutation = frame.args.mutation or "" -- Мутации -- Преобразование температуры из Кельвинов в Цельсии local idealHeatCelsius = kelvinToCelsius(idealHeatKelvin) -- Формирование строк для ячеек таблицы local out = "" out = out .. frame:preprocess('!{{Anchor|' .. anchorName .. '}}{{#invoke:Entity Lookup|createimagetooltip|Файл:' .. fruitId .. '.png|' .. fruitId .. '|Мета=64x64px,link=}}<br>{{#invoke:Entity Lookup|getname|' .. fruitId .. '}} \n') out = out .. frame:preprocess('!{{#invoke:Entity Lookup|createimagetooltip|Файл:' .. seedId .. '.png|' .. seedId .. '|Мета=64x64px,link=}} \n') out = out .. '|style="text-wrap:nowrap;"| \n' out = out .. frame:preprocess('* {{tooltip|Потенция|Потенция растения, которая влияет на количество химических веществ в растении|color=#e1f6ff}}: ' .. '<b>' .. potency .. '</b>' .. '\n') out = out .. frame:preprocess('* {{tooltip|Урожайность|Количество продуктов, которые растение дает за один урожай|color=#e1f6ff}}: ' .. '<b>' .. yield .. '</b>' .. '\n') out = out .. frame:preprocess('* {{tooltip|Время жизни|Продолжительность жизни растения|color=#e1f6ff}}: ' .. '<b>' .. lifespan .. '</b>' .. '\n') out = out .. frame:preprocess('* {{tooltip|Созревания|Время созревания растения|color=#e1f6ff}}: ' .. '<b>' .. maturation .. '</b>' .. '\n') out = out .. frame:preprocess('* {{tooltip|Продуктивность|Время, необходимое для производства следующего урожая после созревания|color=#e1f6ff}}: ' .. '<b>' .. production .. '</b>' .. '\n') out = out .. frame:preprocess('* {{tooltip|Стадии роста|Этапы роста растения, которые оно проходит от начальной стадии до полной зрелости|color=#e1f6ff}}: ' .. '<b>' .. growthStages .. '</b>' .. '\n') out = out .. '|style="text-wrap:nowrap;"| \n' out = out .. frame:preprocess('* {{tooltip|Вода|Потребления воды в секунду|color=#e1f6ff}}: ' .. '<b>' .. waterConsumption .. '</b>' .. '\n') out = out .. frame:preprocess('* {{tooltip|Удобрения|Потребления удобрений в секунду|color=#e1f6ff}}: ' .. '<b>' .. nutrientConsumption .. '</b>' .. '\n') out = out .. frame:preprocess('* {{tooltip|Температура|Оптимальная температура|color=#e1f6ff}}: ' .. '<b>' .. string.format("%.2f", idealHeatCelsius) .. '°C</b>' .. '\n') out = out .. frame:preprocess('* {{tooltip|Освещения|Оптимальный уровень освещения|color=#e1f6ff}}: ' .. '<b>' .. idealLight .. '</b>' .. '\n') out = out .. '| ' .. description .. '\n' out = out .. '| ' .. location .. '\n' out = out .. '| ' .. mutation .. '\n' out = out .. '|- \n' return out end return p