OSDN Git Service

staticプロパティをインスタンスプロパティに変更
[kcd/KCD.git] / KCD / Quest.swift
1 //
2 //  KCQuest.swift
3 //  KCD
4 //
5 //  Created by Hori,Masaki on 2017/01/31.
6 //  Copyright © 2017年 Hori,Masaki. All rights reserved.
7 //
8
9 import Foundation
10
11 // swiftlint:disable identifier_name
12 final class Quest: KCManagedObject {
13     
14     @NSManaged var bonus_flag: Bool
15     @NSManaged var category: Int
16     @NSManaged var detail: String
17     @NSManaged var get_material_0: Int
18     @NSManaged var get_material_1: Int
19     @NSManaged var get_material_2: Int
20     @NSManaged var get_material_3: Int
21     @NSManaged var invalid_flag: Int
22     @NSManaged var no: Int
23     @NSManaged var progress_flag: Int
24     @NSManaged var state: Int
25     @NSManaged var title: String
26     @NSManaged var type: Int
27 }
28 // swiftlint:eable identifier_name
29
30 extension Quest {
31     
32     @objc override class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String> {
33         
34         switch key {
35             
36         case #keyPath(compositStatus): return [#keyPath(state), #keyPath(progress_flag)]
37             
38         default: return []
39             
40         }
41     }
42     
43     @objc dynamic var compositStatus: Int {
44         
45         return progress_flag * 4 + state
46     }
47 }