置顶公告:【置顶】关于临时开启评论区所有功能的公告(2022.10.22) | 【置顶】关于本站Widget恢复使用的公告
  • 你好~!欢迎来到萌娘百科镜像站!如需查看或编辑,请联系本站管理员注册账号。
  • 本镜像站和其他萌娘百科的镜像站无关,请注意分别。

Module:RandomText

猛汉♂百科,万男皆可猛的百科全书!转载请标注来源页面的网页链接,并声明引自猛汉百科。内容不可商用。
跳到导航 跳到搜索
Template-info.svg 模块文档  [查看] [编辑] [历史] [刷新]

用于随机显示一个列表中的项目,数据写在模块:RandomText的子页面,使用『Data』参数传入。

随机数种子使用『年份+当日是一年的第几日』,所以在UTC计时的一日之内不会变动。

由于本站缓存功能的特殊性,可能需要配合{{TemplateAsyncLoad}}以取得正确的每日随机效果。

示例:

{{RandomText|Data=萌属性}}

闷骚蛇瞳罪犯响板角色腔恐高症

  1. local module = {}
  2. function module.RandomList(frame)
  3. local parent = frame:getParent()
  4. if parent and parent:getTitle() == "Template:RandomText" then
  5. frame = parent
  6. end
  7. if not frame.args["Data"] then return -1 end
  8. local data = mw.loadData("Module:RandomText/"..frame.args["Data"])
  9. local count = data.count
  10. data = data.data
  11. local result = {}
  12. local ttime = os.date("!*t", os.time())
  13. local seed = tonumber(tostring(ttime.year)..tostring(ttime.yday))
  14. math.randomseed(seed)
  15. for j=1,count do
  16. local length = data[j].length or 1
  17. for i=1,length do
  18. table.insert(result, data[j].list[math.random(data[j].count)])
  19. end
  20. end
  21. return frame:preprocess(table.concat(result, "、"))
  22. end
  23. return module