2 // DamageValueTransformer.swift
5 // Created by Hori,Masaki on 2017/01/05.
6 // Copyright © 2017年 Hori,Masaki. All rights reserved.
11 final class DamageValueTransformer: ValueTransformer {
13 override class func transformedValueClass() -> AnyClass {
15 return NSAttributedString.self
18 override func transformedValue(_ value: Any?) -> Any? {
20 guard let v = value as? Int,
21 let type = DamageType(rawValue: v),
22 let attributes = attribute(for: type)
25 return NSAttributedString(string: attributes.string, attributes: attributes.attr)
28 private func attribute(for type: DamageType) -> (string: String, attr: [String: Any])? {
36 [NSForegroundColorAttributeName: #colorLiteral(red: 1, green: 0.925, blue: 0, alpha: 1),
37 NSParagraphStyleAttributeName: paragraphStyle]
42 [NSForegroundColorAttributeName: #colorLiteral(red: 1, green: 0.32, blue: 0, alpha: 1),
43 NSParagraphStyleAttributeName: paragraphStyle]
48 [NSForegroundColorAttributeName: #colorLiteral(red: 0.87, green: 0, blue: 0.036, alpha: 1),
49 NSParagraphStyleAttributeName: paragraphStyle]
54 private var paragraphStyle: NSParagraphStyle = {
56 let style = NSMutableParagraphStyle()
57 style.alignment = .center