Line 345: |
Line 345: |
| function Seasonal.include(frame) | | function Seasonal.include(frame) |
| | | |
− | local quote_template = [=[|- id="${ship}" | + | local ship_row_template = [=[|align="center" rowspan="${rowspan}"|[[${ship}]] |
− | |align="center"|[[${ship}]]
| + | ]=] |
− | |align="center"|<span class="audio-button click-parent">[[File:${ship} ${season}${line}.ogg|Play]]</span> | + | |
| + | local id_string_template = [[id="${ship}"]] |
| + | |
| + | local quote_template = [=[|- ${id_string} |
| + | ${ship_row}|align="center"|<span class="audio-button click-parent">[[File:${ship} ${season}${line}.ogg|Play]]</span> |
| |lang="ja"|${ja} | | |lang="ja"|${ja} |
| |${en} | | |${en} |
Line 362: |
Line 366: |
| if not Utils.find(args, ship) then | | if not Utils.find(args, ship) then |
| local ship_data = seasonal_data.ships[ship] | | local ship_data = seasonal_data.ships[ship] |
− | for _, quote in ipairs(ship_data) do | + | for i, quote in ipairs(ship_data) do |
| table.insert(result, format{ | | table.insert(result, format{ |
| quote_template, | | quote_template, |
− | ship = ship, | + | id_string = i > 1 and "" or format{ |
| + | id_string_template, |
| + | ship = ship, |
| + | }, |
| + | ship_row = i > 1 and "" or format{ |
| + | ship_row_template, |
| + | rowspan = #ship_data, |
| + | ship = ship, |
| + | }, |
| season = season, | | season = season, |
| line = quote.line and " " .. quote.line or "", | | line = quote.line and " " .. quote.line or "", |