Minecraft Wiki

Minecraft Wikiは、Microsoftから公式ウィキとみなされなくなったため、ウィキのロゴを含むいくつかの変更が必要となりました。詳細はこちらのお知らせをご覧ください。

もっと見る

Minecraft Wiki
Advertisement
Minecraft Wiki
4,154
ページ

このモジュールは {{DidYouKnow}} を実装しています。モジュールで使用しているデータは、モジュール:DidYouKnow/factsに保管されています。

[閲覧 | 編集 | 履歴 | キャッシュ削除]上記の解説は、モジュール:DidYouKnow/docから参照されています。
local p = {}
local facts = require("モジュール:DidYouKnow/facts")

local function formatFact(factText)
	return "* " .. factText .. "。"
end

function p.getFacts()
	local s = ""
	local length = #facts.facts
	-- Different random seed every day (displays the same set of facts for a day, then a different set the next day, etc.)
	math.randomseed(math.floor(os.time()/(60*60*24)))
	
	-- Ensure duplicate facts are not displayed
	local chosen = {}
	while #chosen < 8 do
		local random = math.random(1, length)
		local isPresent = false
		
		for i, v in ipairs(chosen) do
			if v == random then
				isPresent = true
				break
			end
		end
		
		if not isPresent then
			table.insert(chosen, random)
		end
	end
	
	-- Now we actually get to write the output.
	local result = {}
	for i, v in ipairs(chosen) do
		result[i] = formatFact(facts.facts[v])
	end
	return table.concat(result, "\n")
end

local function formatFactList(factTable)
	local facts = factTable.facts
	local length = #facts
	local result = {}
	
	for i = 1, length do
		result[i] = formatFact(facts[i])
	end
	
	return table.concat(result, "\n")
end

-- List all facts. Intended to allow easier debugging.
function p.listAllFacts()
	return formatFactList(facts)
end

function p.listEditcopyFacts()
	local editcopyFacts = require("モジュール:DidYouKnow/facts/editcopy")
	return formatFactList(editcopyFacts)
end

return p
Advertisement