2 // RemodelSlotItemCommand.swift
5 // Created by Hori,Masaki on 2017/01/09.
6 // Copyright © 2017年 Hori,Masaki. All rights reserved.
11 class RemodelSlotItemCommand: JSONCommand {
12 override func execute() {
13 guard let success = data["api_remodel_flag"].int,
17 guard let slotItemId = parameter["api_slot_id"].int
18 else { return print("api_slot_id is wrong") }
20 let afterSlot = data["api_after_slot"]
21 let store = ServerDataStore.oneTimeEditor()
22 guard let slotItem = store.slotItem(byId: slotItemId)
23 else { return print("SlotItem not found") }
25 if let locked = afterSlot["api_locked"].int {
26 slotItem.locked = locked != 0
28 if let masterSlotItemId = afterSlot["api_slotitem_id"].int,
29 masterSlotItemId != slotItem.slotitem_id,
30 let masterSlotItem = store.masterSlotItem(by: slotItemId) {
31 slotItem.master_slotItem = masterSlotItem
32 slotItem.slotitem_id = slotItemId
34 if let level = afterSlot["api_level"].int {
35 slotItem.level = level
38 // remove used slot items.
39 guard let useSlot = data["api_use_slot_id"].arrayObject as? [Int]
41 store.slotItems(in: useSlot).forEach { store.delete($0) }