5 // Created by Hori,Masaki on 2017/01/18.
6 // Copyright © 2017年 Hori,Masaki. All rights reserved.
11 enum BattleAPI: String {
13 case battle = "/kcsapi/api_req_sortie/battle"
15 case combinedBattle = "/kcsapi/api_req_combined_battle/battle"
16 case combinedAirBattle = "/kcsapi/api_req_combined_battle/airbattle"
17 case combinedBattleWater = "/kcsapi/api_req_combined_battle/battle_water"
18 case combinedEcBattle = "/kcsapi/api_req_combined_battle/ec_battle"
19 case combinedEachBattle = "/kcsapi/api_req_combined_battle/each_battle"
20 case combinedEachBattleWater = "/kcsapi/api_req_combined_battle/each_battle_water"
22 case combinedEachNightToDay = "/kcsapi/api_req_combined_battle/ec_night_to_day"
24 case airBattle = "/kcsapi/api_req_sortie/airbattle"
25 case ldAirBattle = "/kcsapi/api_req_sortie/ld_airbattle"
26 case combinedLdAirBattle = "/kcsapi/api_req_combined_battle/ld_airbattle"
28 case midnightBattle = "/kcsapi/api_req_battle_midnight/battle"
29 case midnightSpMidnight = "/kcsapi/api_req_battle_midnight/sp_midnight"
30 case combinedEcMidnightBattle = "/kcsapi/api_req_combined_battle/ec_midnight_battle"
31 case combinedMidnightBattle = "/kcsapi/api_req_combined_battle/midnight_battle"
32 case combinedSpMidnight = "/kcsapi/api_req_combined_battle/sp_midnight"
34 case battleResult = "/kcsapi/api_req_sortie/battleresult"
35 case combinedBattleResult = "/kcsapi/api_req_combined_battle/battleresult"
38 final class BattleCommand: JSONCommand {
40 override class func canExecuteAPI(_ api: String) -> Bool {
42 return BattleAPI(rawValue: api) != nil
45 override func execute() {
47 CalculateDamageCommand(apiResponse: apiResponse).execute()
49 guard let battleApi = BattleAPI(rawValue: apiResponse.api) else { return }
52 case .battleResult, .combinedBattleResult:
53 DropShipHistoryCommand(apiResponse: apiResponse).execute()
54 DummyShipCommand(apiResponse: apiResponse).execute()
55 GuardShelterCommand(apiResponse: apiResponse).execute()