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 airBattle = "/kcsapi/api_req_sortie/airbattle"
23 case ldAirBattle = "/kcsapi/api_req_sortie/ld_airbattle"
24 case combinedLdAirBattle = "/kcsapi/api_req_combined_battle/ld_airbattle"
26 case midnightBattle = "/kcsapi/api_req_battle_midnight/battle"
27 case midnightSpMidnight = "/kcsapi/api_req_battle_midnight/sp_midnight"
28 case combinedEcMidnightBattle = "/kcsapi/api_req_combined_battle/ec_midnight_battle"
29 case combinedMidnightBattle = "/kcsapi/api_req_combined_battle/midnight_battle"
30 case combinedSpMidnight = "/kcsapi/api_req_combined_battle/sp_midnight"
32 case battleResult = "/kcsapi/api_req_sortie/battleresult"
33 case combinedBattleResult = "/kcsapi/api_req_combined_battle/battleresult"
36 final class BattleCommand: JSONCommand {
38 override class func canExecuteAPI(_ api: String) -> Bool {
40 return BattleAPI(rawValue: api) != nil
43 override func execute() {
45 CalculateDamageCommand(apiResponse: apiResponse).execute()
47 guard let battleApi = BattleAPI(rawValue: apiResponse.api)
51 case .battleResult, .combinedBattleResult:
52 DropShipHistoryCommand(apiResponse: apiResponse).execute()
53 DummyShipCommand(apiResponse: apiResponse).execute()
54 GuardShelterCommand(apiResponse: apiResponse).execute()