• Welcome to the Kancolle Wiki!
  • If you have any questions regarding site content, account registration, etc., please visit the KanColle Wiki Discord

Changes

Jump to navigation Jump to search
no edit summary
Line 218: Line 218:  
end
 
end
   −
function ship_cgs(ship_name, ship_suffix, j, seasonal_forms)
+
function ship_cgs(ship_name, ship_suffix, j, seasonal_forms, visited_modules)
 +
ship_suffix = ship_suffix or ""
 
     j = j or 1
 
     j = j or 1
     ship_suffix = ship_suffix or ""
+
     seasonal_forms = seasonal_forms or {}
 +
    visited_modules = visited_modules or {}
 
     local forms = { { name = ship_name .. '/' .. ship_suffix, normal = true, damaged = true } }
 
     local forms = { { name = ship_name .. '/' .. ship_suffix, normal = true, damaged = true } }
 
     local success, ship_data = Ship.requireModule(ship_name)
 
     local success, ship_data = Ship.requireModule(ship_name)
Line 226: Line 228:  
         return forms
 
         return forms
 
     end
 
     end
     local form_data = ship_data[ship_suffix]
+
     if not U.ifind(visited_modules, ship_name) then
    seasonal_forms = seasonal_forms or {}
+
    table.insert(visited_modules, ship_name)
    for suffix, data in pairs(ship_data) do
+
    -- TODO: legacy seasonals, check if it is ok to delete
        if data._seasonal or data._season then
+
    for suffix, data in pairs(ship_data) do
            local normal = data._cg ~= false
+
        if data._seasonal or data._season then
            local damaged = data._cg_damaged ~= false
+
            local normal = data._cg ~= false
            table.insert(seasonal_forms, {
+
            local damaged = data._cg_damaged ~= false
                suffux = data._suffix or suffix,
+
            table.insert(seasonal_forms, {
                name = (data._name or ship_name) .. "/" .. (data._suffix or suffix),
+
                suffux = data._suffix or suffix,
                seasonal = true,
+
                name = (data._name or ship_name) .. "/" .. (data._suffix or suffix),
                normal = normal,
+
                seasonal = true,
                damaged = damaged,
+
                normal = normal,
                season = data._season,
+
                damaged = damaged,
                season_suffix = data._season_suffix,
+
                season = data._season,
                battle_card = data._show_battle_card,
+
                season_suffix = data._season_suffix,
            })
+
                battle_card = data._show_battle_card,
        end
+
            })
    end
+
        end
    for _, data in ipairs(ship_data.seasonals or {}) do
+
    end
        local normal = data._cg ~= false
+
    for _, data in ipairs(ship_data.seasonals or {}) do
        local damaged = data._cg_damaged ~= false
+
        local normal = data._cg ~= false
        table.insert(seasonal_forms, {
+
        local damaged = data._cg_damaged ~= false
            suffux = data._suffix,
+
        table.insert(seasonal_forms, {
            name = (data._name or ship_name) .. "/" .. data._suffix,
+
            suffux = data._suffix,
            seasonal = true,
+
            name = (data._name or ship_name) .. "/" .. data._suffix,
            normal = normal,
+
            seasonal = true,
            damaged = damaged,
+
            normal = normal,
            season = data._season,
+
            damaged = damaged,
            season_suffix = data._season_suffix,
+
            season = data._season,
            battle_card = data._show_battle_card,
+
            season_suffix = data._season_suffix,
        })
+
            battle_card = data._show_battle_card,
 +
        })
 +
    end
 
     end
 
     end
 
     local i = 1
 
     local i = 1
 +
    local form_data = ship_data[ship_suffix]
 
     while form_data and form_data._remodel_to and not U.find(forms, form_data._remodel_to, 'name') and i <= 15 and j <= 3 do
 
     while form_data and form_data._remodel_to and not U.find(forms, form_data._remodel_to, 'name') and i <= 15 and j <= 3 do
 
         local ship_name_next, ship_suffix_next = Ship:process_ship_key(form_data._remodel_to)
 
         local ship_name_next, ship_suffix_next = Ship:process_ship_key(form_data._remodel_to)
 
         if ship_name_next ~= ship_name then
 
         if ship_name_next ~= ship_name then
             return U.concat(forms, ship_cgs(ship_name_next, ship_suffix_next, j + 1, seasonal_forms))
+
             return U.concat(forms, ship_cgs(ship_name_next, ship_suffix_next, j + 1, seasonal_forms, visited_modules))
 
         else
 
         else
 
             local name = form_data._remodel_to
 
             local name = form_data._remodel_to
cssedit, gkautomate
6,940

edits

Navigation menu