Changes

no edit summary
Line 1: Line 1: −
local ShipData = {}
+
local BaseData = require("Module:BaseData")
 +
local ShipData = BaseData()
   −
function ShipData:name(type, raw)
+
function ShipData:name(raw)
return self.format_stat(self._name, raw)
+
return self:format_stat(self._name, raw)
 
end
 
end
    
function ShipData:japanese_name(raw)
 
function ShipData:japanese_name(raw)
return self.format_stat(self._japanese_name, raw)
+
return self:format_stat(self._japanese_name, raw)
 
end
 
end
    
function ShipData:id(raw)
 
function ShipData:id(raw)
return self.format_stat(self._id, raw)
+
return self:format_stat(self._id, raw)
 
end
 
end
    
function ShipData:true_id(raw)
 
function ShipData:true_id(raw)
return self.format_stat(self._true_id, raw)
+
return self:format_stat(self._true_id, raw)
 
end
 
end
   Line 22: Line 23:     
function ShipData:rarity(raw)
 
function ShipData:rarity(raw)
return self.format_rarity(self._rarity, raw)
+
return self:format_rarity(self._rarity, raw)
 
end
 
end
    
function ShipData:class(raw)
 
function ShipData:class(raw)
return self.format_stat(self._class, raw)
+
return self:format_stat(self._class, raw)
 
end
 
end
    
function ShipData:type(raw)
 
function ShipData:type(raw)
return self.format_type(self._type, raw)
+
return self:format_type(self._type, raw)
 
end
 
end
   −
function ShipData:card(type)
+
function ShipData:card(raw)
return self._card
+
return self._format_image(self._card, raw)
 
end
 
end
    
function ShipData:firepower(raw)
 
function ShipData:firepower(raw)
return self.format_stat(self._firepower, raw)
+
return self:format_stat(self._firepower, raw)
 
end
 
end
    
function ShipData:firepower_max(raw)
 
function ShipData:firepower_max(raw)
return self.format_stat(self._firepower_max, raw)
+
return self:format_stat(self._firepower_max, raw)
 
end
 
end
   Line 50: Line 51:     
function ShipData:torpedo(raw)
 
function ShipData:torpedo(raw)
return self.format_stat(self._torpedo, raw)
+
return self:format_stat(self._torpedo, raw)
 
end
 
end
    
function ShipData:torpedo_max(raw)
 
function ShipData:torpedo_max(raw)
return self.format_stat(self._torpedo_max, raw)
+
return self:format_stat(self._torpedo_max, raw)
 
end
 
end
   Line 62: Line 63:     
function ShipData:aa(raw)
 
function ShipData:aa(raw)
return self.format_stat(self._aa, raw)
+
return self:format_stat(self._aa, raw)
 
end
 
end
    
function ShipData:aa_max(raw)
 
function ShipData:aa_max(raw)
return self.format_stat(self._aa_max, raw)
+
return self:format_stat(self._aa_max, raw)
 
end
 
end
   Line 74: Line 75:     
function ShipData:armor(raw)
 
function ShipData:armor(raw)
return self.format_stat(self._armor, raw)
+
return self:format_stat(self._armor, raw)
 
end
 
end
    
function ShipData:armor_max(raw)
 
function ShipData:armor_max(raw)
return self.format_stat(self._armor_max, raw)
+
return self:format_stat(self._armor_max, raw)
 
end
 
end
   Line 86: Line 87:     
function ShipData:asw(raw)
 
function ShipData:asw(raw)
return self.format_stat(self._asw, raw)
+
return self:format_stat(self._asw, raw)
 
end
 
end
    
function ShipData:asw_max(raw)
 
function ShipData:asw_max(raw)
return self.format_stat(self._asw_max, raw)
+
return self:format_stat(self._asw_max, raw)
 
end
 
end
   Line 98: Line 99:     
function ShipData:evasion(raw)
 
function ShipData:evasion(raw)
return self.format_stat(self._evasion, raw)
+
return self:format_stat(self._evasion, raw)
 
end
 
end
    
function ShipData:evasion_max(raw)
 
function ShipData:evasion_max(raw)
return self.format_stat(self._evasion_max, raw)
+
return self:format_stat(self._evasion_max, raw)
 
end
 
end
   Line 110: Line 111:     
function ShipData:los(raw)
 
function ShipData:los(raw)
return self.format_stat(self._los, raw)
+
return self:format_stat(self._los, raw)
 
end
 
end
    
function ShipData:los_max(raw)
 
function ShipData:los_max(raw)
return self.format_stat(self._los_max, raw)
+
return self:format_stat(self._los_max, raw)
 
end
 
end
   Line 122: Line 123:     
function ShipData:luck(raw)
 
function ShipData:luck(raw)
return self.format_stat(self._luck, raw)
+
return self:format_stat(self._luck, raw)
 
end
 
end
    
function ShipData:luck_max(raw)
 
function ShipData:luck_max(raw)
return self.format_stat(self._luck_max, raw)
+
return self:format_stat(self._luck_max, raw)
 
end
 
end
   Line 199: Line 200:     
function ShipData.speed()
 
function ShipData.speed()
return self.format_speed(self._speed)
+
return self:format_speed(self._speed)
 
end
 
end
    
function ShipData.range()
 
function ShipData.range()
return self.format_range(self._speed)
+
return self:format_range(self._speed)
 
end
 
end
  −
function ShipData.create_formatter(lookup)
  −
return function(stat, raw)
  −
if raw then
  −
return stat
  −
elseif stat == nil then
  −
return "??"
  −
end
  −
local result = lookup[stat]
  −
if result == nil then
  −
return stat
  −
else
  −
return result
  −
end
  −
end
  −
end
  −
  −
ShipData.format_stat = ShipData.create_formatter({
  −
[false] = "",
  −
})
  −
  −
ShipData.format_speed = ShipData.create_formatter({
  −
[5] = "Slow",
  −
[10] = "Fast",
  −
})
  −
  −
ShipData.format_range = ShipData.create_formatter({
  −
[1] = "Short",
  −
[2] = "Medium",
  −
[3] = "Long",
  −
[0] = "Very Short",
  −
[4] = "Very Long",
  −
})
      
ShipData.format_rarity = ShipData.create_formatter({
 
ShipData.format_rarity = ShipData.create_formatter({
Anonymous user