<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-CA">
	<id>https://wiki.rhythm.cafe/w/index.php?action=history&amp;feed=atom&amp;title=Module%3ADialogue</id>
	<title>Module:Dialogue - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.rhythm.cafe/w/index.php?action=history&amp;feed=atom&amp;title=Module%3ADialogue"/>
	<link rel="alternate" type="text/html" href="https://wiki.rhythm.cafe/w/index.php?title=Module:Dialogue&amp;action=history"/>
	<updated>2026-10-07T21:40:11Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.6</generator>
	<entry>
		<id>https://wiki.rhythm.cafe/w/index.php?title=Module:Dialogue&amp;diff=509&amp;oldid=prev</id>
		<title>Auburnsummer: 1 revision imported: miraheze</title>
		<link rel="alternate" type="text/html" href="https://wiki.rhythm.cafe/w/index.php?title=Module:Dialogue&amp;diff=509&amp;oldid=prev"/>
		<updated>2022-05-26T13:08:47Z</updated>

		<summary type="html">&lt;p&gt;1 revision imported: miraheze&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en-CA&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 13:08, 26 May 2022&lt;/td&gt;
				&lt;/tr&gt;
&lt;!-- diff cache key rdwiki:diff::1.12:old-508:rev-509 --&gt;
&lt;/table&gt;</summary>
		<author><name>Auburnsummer</name></author>
	</entry>
	<entry>
		<id>https://wiki.rhythm.cafe/w/index.php?title=Module:Dialogue&amp;diff=508&amp;oldid=prev</id>
		<title>miraheze&gt;Pppery: Import from wikia:dev:Module:Dialogue with minor changes</title>
		<link rel="alternate" type="text/html" href="https://wiki.rhythm.cafe/w/index.php?title=Module:Dialogue&amp;diff=508&amp;oldid=prev"/>
		<updated>2021-07-18T19:28:32Z</updated>

		<summary type="html">&lt;p&gt;Import from &lt;a href=&quot;http://www.wikia.com/wiki/dev:Module:Dialogue&quot; class=&quot;extiw&quot; title=&quot;wikia:dev:Module:Dialogue&quot;&gt;wikia:dev:Module:Dialogue&lt;/a&gt; with minor changes&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;--| Creates dialogue definition lists&lt;br /&gt;
--- For whatever reason, refuses to make blockquotes&lt;br /&gt;
local Dialogue = {}&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
-- Libraries and Globals&lt;br /&gt;
----&lt;br /&gt;
-- Parses invocation and template parameters, trims whitespace, and removes blanks.&lt;br /&gt;
local getArgs = require('Module:Arguments').getArgs&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
-- Local Functions&lt;br /&gt;
----&lt;br /&gt;
local function makeInvokeFunc(funcName)&lt;br /&gt;
  return function (frame)&lt;br /&gt;
    local args = getArgs(frame)&lt;br /&gt;
    return Dialogue[funcName](args)&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
-- Public Functions&lt;br /&gt;
----&lt;br /&gt;
--% Formats dialogue between multiple speakers&lt;br /&gt;
--- Intended to replace {{Dialogue}}.  &lt;br /&gt;
--- Syntax compliant with [[wikipedia:Template:Dialogue]] &lt;br /&gt;
--- with portability and citation modifications&lt;br /&gt;
--@ frame (table) Invokes the frame from {{Dialogue}}. See [[Template:Dialogue/doc]].&lt;br /&gt;
--: (string) HTML &amp;lt;dl /&amp;gt;&lt;br /&gt;
Dialogue.main = makeInvokeFunc('dialogue')&lt;br /&gt;
--% &amp;amp; crafts the Dialogue definition list&lt;br /&gt;
--@ args (table) Arguments passed from Module function call &amp;lt;code&amp;gt;[.main]&amp;lt;/code&amp;gt; or other Lua Modules&lt;br /&gt;
function Dialogue.dialogue (args)&lt;br /&gt;
  local block = mw.html.create('dl')&lt;br /&gt;
  for i,v in ipairs(args) do&lt;br /&gt;
    local next_param = i + 1&lt;br /&gt;
    local mood_line = next_param / 2&lt;br /&gt;
      if i == 1 then &lt;br /&gt;
        if v == 'action' then&lt;br /&gt;
          block:tag('dd')&lt;br /&gt;
          :tag('small'):attr('data-dialogue','action')&lt;br /&gt;
          :tag('u')&lt;br /&gt;
          :wikitext('['..args[next_param]..']')&lt;br /&gt;
          :done():done():done()&lt;br /&gt;
        else&lt;br /&gt;
          local speaker = &lt;br /&gt;
            (args[i] and args[args[i]]) &lt;br /&gt;
            and args[args[i]]&lt;br /&gt;
            or (&lt;br /&gt;
                type(args[i]) == 'string' &lt;br /&gt;
                    and mw.text.trim(args[i]):len() &amp;gt; 0&lt;br /&gt;
                ) &lt;br /&gt;
              and args[i] &lt;br /&gt;
              or nil&lt;br /&gt;
          speaker = speaker and string.format(&amp;quot;'''%s'''&amp;quot;, speaker)&lt;br /&gt;
          local mood = args['mood'..mood_line] or nil&lt;br /&gt;
          mood = mood and string.format(&amp;quot;&amp;amp;nbsp;''(%s)''&amp;quot;, mood)&lt;br /&gt;
          if speaker or mood then&lt;br /&gt;
            block:tag('dt')&lt;br /&gt;
            :wikitext(&lt;br /&gt;
              ('%s%s'):format( speaker or '', mood or '')&lt;br /&gt;
            ):done()&lt;br /&gt;
          end&lt;br /&gt;
          if args[next_param] then&lt;br /&gt;
            block:tag('dd'):tag('q')&lt;br /&gt;
            :wikitext(args[next_param])&lt;br /&gt;
            :done():done()&lt;br /&gt;
          else&lt;br /&gt;
            block:tag('dd'):wikitext('...'):done()&lt;br /&gt;
          end&lt;br /&gt;
        end&lt;br /&gt;
      elseif math.fmod(i, 2) == 1 then&lt;br /&gt;
        if v == 'action' then&lt;br /&gt;
          block:tag('dd')&lt;br /&gt;
          :tag('small')&lt;br /&gt;
          :attr('data-dialogue','action')&lt;br /&gt;
          :tag('u')&lt;br /&gt;
          :wikitext('['..args[next_param]..']')&lt;br /&gt;
          :done():done():done()&lt;br /&gt;
        else&lt;br /&gt;
          local speaker = &lt;br /&gt;
            (args[i] and args[args[i]]) &lt;br /&gt;
            and args[args[i]]&lt;br /&gt;
            or (&lt;br /&gt;
                type(args[i]) == 'string' &lt;br /&gt;
                    and mw.text.trim(args[i]):len() &amp;gt; 0&lt;br /&gt;
                ) &lt;br /&gt;
              and args[i] &lt;br /&gt;
              or nil&lt;br /&gt;
          speaker = speaker and string.format(&amp;quot;'''%s'''&amp;quot;, speaker)&lt;br /&gt;
          local mood = args['mood'..mood_line] or nil&lt;br /&gt;
          mood = mood and string.format(&amp;quot;&amp;amp;nbsp;''(%s)''&amp;quot;, mood)&lt;br /&gt;
          if speaker or mood then&lt;br /&gt;
            block:tag('dt')&lt;br /&gt;
            :wikitext(&lt;br /&gt;
              ('%s%s'):format( speaker or '', mood or '')&lt;br /&gt;
            )&lt;br /&gt;
            :done()&lt;br /&gt;
          end&lt;br /&gt;
          if args[next_param] then&lt;br /&gt;
            block:tag('dd'):tag('q')&lt;br /&gt;
            :wikitext(args[next_param])&lt;br /&gt;
            :done():done()&lt;br /&gt;
          else&lt;br /&gt;
            block:tag('dd'):wikitext('...'):done()&lt;br /&gt;
          end&lt;br /&gt;
        end&lt;br /&gt;
      end&lt;br /&gt;
  end&lt;br /&gt;
  block:done()&lt;br /&gt;
  if args['cite'] then&lt;br /&gt;
    block:tag('cite'):wikitext(string.format(&amp;quot;— %s&amp;quot;, args['cite'])):done()&lt;br /&gt;
  end&lt;br /&gt;
  return tostring(block)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
-- Output&lt;br /&gt;
----&lt;br /&gt;
return Dialogue&lt;/div&gt;</summary>
		<author><name>miraheze&gt;Pppery</name></author>
	</entry>
</feed>