Changes

no edit summary
Line 1: Line 1:  
local U = require("Module:Core")
 
local U = require("Module:Core")
local format = U.format
+
local format = require("Module:Core").format
 
local Formatting = require("Module:Formatting")
 
local Formatting = require("Module:Formatting")
 
local Equipment = require("Module:Equipment")
 
local Equipment = require("Module:Equipment")
Line 8: Line 8:  
local ShipCardKai = require("Module:ShipCardKai")
 
local ShipCardKai = require("Module:ShipCardKai")
 
local ShipBattleCardKai = require("Module:ShipBattleCardKai")
 
local ShipBattleCardKai = require("Module:ShipBattleCardKai")
local Combat2 = require("Module:Combat2")
+
local Combat = require("Module:CalcCombat")
 
local EquipmentCardKai = require("Module:EquipmentCardKai")
 
local EquipmentCardKai = require("Module:EquipmentCardKai")
 
local EquipmentGraphicKai = require("Module:EquipmentGraphicKai")
 
local EquipmentGraphicKai = require("Module:EquipmentGraphicKai")
Line 97: Line 97:  
     air_power = function(ship)
 
     air_power = function(ship)
 
         return ship:air_power() or -1
 
         return ship:air_power() or -1
 +
    end,
 +
   
 +
    equipment_range = function(ship)
 +
        return U.imax(U.imap(ship._equipment or {}, function (e) return Equipment(e.equipment):range() or 0 end), 0)
 +
    end,
 +
   
 +
    equipment_range_diff = function(ship)
 +
        local equipment_range = U.imax(U.imap(ship._equipment or {}, function (e) return Equipment(e.equipment):range() or 0 end), 0)
 +
        return (ship:range() or 0) - equipment_range
 
     end,
 
     end,
   Line 207: Line 216:     
     banner = function(obj)
 
     banner = function(obj)
 +
    if not obj or not obj.lua_name then
 +
    return ' '
 +
    end
 
         return ShipBattleCardKai:Asset({ obj:lua_name(), hd = true, size = "160px" })
 
         return ShipBattleCardKai:Asset({ obj:lua_name(), hd = true, size = "160px" })
 
     end,
 
     end,
    
     card = function(obj)
 
     card = function(obj)
 +
    if not obj or not obj.lua_name then
 +
    return ' '
 +
    end
 
         if obj.hp then
 
         if obj.hp then
 
             return ShipCardKai:Asset({ obj:lua_name(), hd = true, size = "160px" })
 
             return ShipCardKai:Asset({ obj:lua_name(), hd = true, size = "160px" })
Line 241: Line 256:     
     hit_rate = function(ship, target)
 
     hit_rate = function(ship, target)
         local r = Combat2.hit_rate(ship, target)
+
         local r = Combat.hit_rate(ship, target)
 
         if r then
 
         if r then
 
             ship.hit_rate = r
 
             ship.hit_rate = r
Line 251: Line 266:     
     critical_hit_rate = function(ship, target)
 
     critical_hit_rate = function(ship, target)
         local r = Combat2.critical_hit_rate(ship, target)
+
         local r = Combat.critical_hit_rate(ship, target)
 
         if r then
 
         if r then
 
             ship.critical_hit_rate = r
 
             ship.critical_hit_rate = r
Line 303: Line 318:  
end
 
end
   −
local Plugins = require("Module:Calc/Plugins")
+
addFormattingFunctions("FitData", require("Module:CalcFit"))
 
+
addFormattingFunctions("Assets", require("Module:CalcAsset"))
for _, name in ipairs(Plugins) do
  −
    local data = require("Module:Calc/Plugins/" .. name)
  −
    addFormattingFunctions(name, data)
  −
end
      
function format_value(key, ship, target)
 
function format_value(key, ship, target)
cssedit, gkautomate
7,064

edits