- Welcome to the Kancolle Wiki!
- If you have any questions regarding site content, account registration, etc., please visit the KanColle Wiki Discord
Difference between revisions of "Module:EnemyShipData"
Jump to navigation
Jump to search
m |
com>Ckwng |
||
Line 1: | Line 1: | ||
− | local | + | local ShipData = require("Module:ShipData") |
− | local EnemyShipData = | + | local EnemyShipData = ShipData() |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | function EnemyShipData: | + | function EnemyShipData:air_power() |
− | + | local air_power = 0 | |
− | + | for i=1, self:slots() do | |
− | + | local slot_equipment, slot_space = self:slot(i) | |
− | + | if slot_equipment == nil or slot_space == nil then | |
− | + | --we have missing information, fall back to hard-coded air power | |
− | + | air_power = self._as_rating | |
− | + | break | |
− | + | elseif slot_equipment ~= false then | |
− | + | --if there is an equipment | |
− | + | local slot_equipment_type = slot_equipment:type() | |
− | + | local slot_equipment_aa = slot_equipment:aa() | |
− | + | if slot_equipment_aa and | |
− | + | (slot_equipment_type == 6 or | |
− | + | slot_equipment_type == 7 or | |
− | + | slot_equipment_type == 8 or | |
− | + | slot_equipment_type == 11) then | |
− | + | air_power = air_power + | |
− | + | math.floor(math.sqrt(slot_space) * slot_equipment_aa) | |
− | + | elseif slot_equipment_aa == nil then | |
− | + | --we have missing information, fall back to hard-coded air power | |
− | + | air_power = self._as_rating | |
− | + | break | |
− | + | end | |
− | + | end | |
− | + | end | |
− | + | return air_power | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | end | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
end | end | ||
Revision as of 22:04, 21 April 2015
Documentation for this module may be created at Module:EnemyShipData/doc
local ShipData = require("Module:ShipData")
local EnemyShipData = ShipData()
function EnemyShipData:air_power()
local air_power = 0
for i=1, self:slots() do
local slot_equipment, slot_space = self:slot(i)
if slot_equipment == nil or slot_space == nil then
--we have missing information, fall back to hard-coded air power
air_power = self._as_rating
break
elseif slot_equipment ~= false then
--if there is an equipment
local slot_equipment_type = slot_equipment:type()
local slot_equipment_aa = slot_equipment:aa()
if slot_equipment_aa and
(slot_equipment_type == 6 or
slot_equipment_type == 7 or
slot_equipment_type == 8 or
slot_equipment_type == 11) then
air_power = air_power +
math.floor(math.sqrt(slot_space) * slot_equipment_aa)
elseif slot_equipment_aa == nil then
--we have missing information, fall back to hard-coded air power
air_power = self._as_rating
break
end
end
end
return air_power
end
EnemyShipData.__call = EnemyShipData.create
return EnemyShipData