2 // SlotItemShortNameTransformer.swift
5 // Created by Hori,Masaki on 2017/01/04.
6 // Copyright © 2017年 Hori,Masaki. All rights reserved.
11 class SlotItemShortNameTransformer: ValueTransformer {
13 private static var slotItemShortName: [Int: String] = {
14 guard let url = Bundle.main.url(forResource: "SlotItemShortName", withExtension: "plist"),
15 let dict = NSDictionary(contentsOf: url) as? [String: String]
16 else { fatalError("Can not load SlotItemShortName.plist") }
17 return dict.reduce([Int: String]()) {
18 guard let k = Int($1.0) else { return $0 }
25 override class func transformedValueClass() -> Swift.AnyClass {
26 return String.self as! AnyClass
28 override func transformedValue(_ value: Any?) -> Any? {
29 guard let id = value as? Int, id != 0, id != -1 else { return nil }
30 guard let item = ServerDataStore.default.slotItem(byId: id)
32 let itemId = item.master_slotItem.id
33 return SlotItemShortNameTransformer.slotItemShortName[itemId] ?? item.name