2 // HMStrengthenListItemCellView.m
5 // Created by Hori,Masaki on 2015/06/13.
6 // Copyright (c) 2015年 Hori,Masaki. All rights reserved.
9 #import "HMStrengthenListItemCellView.h"
11 #import "HMStrengthenListItemView.h"
14 @interface HMStrengthenListItemCellView ()
15 @property (nonatomic, weak) IBOutlet HMStrengthenListItemView *itemBox;
18 @property (readonly) NSString *secondsShipList;
19 @property (readonly) HMRequiredEquipment *requiredEquipment01;
20 @property (readonly) HMRequiredEquipment *requiredEquipment02;
21 @property (readonly) HMRequiredEquipment *requiredEquipment03;
22 @property (readonly) NSString *targetEquipment;
23 @property (readonly) NSString *remodelEquipment;
25 @property (readonly) NSString *needsScrewString01;
26 @property (readonly) NSString *needsScrewString02;
27 @property (readonly) NSString *needsScrewString03;
30 @implementation HMStrengthenListItemCellView
32 - (HMEnhancementListItem *)item
34 return (HMEnhancementListItem *)self.objectValue;
37 + (NSSet *)keyPathsForValuesAffectingSecondsShipList
39 return [NSSet setWithObjects:@"item", @"objectValue", nil];
41 + (NSSet *)keyPathsForValuesAffectingRequiredEquipment01
43 return [NSSet setWithObjects:@"item", @"objectValue", nil];
45 + (NSSet *)keyPathsForValuesAffectingRequiredEquipment02
47 return [NSSet setWithObjects:@"item", @"objectValue", nil];
49 + (NSSet *)keyPathsForValuesAffectingRequiredEquipment03
51 return [NSSet setWithObjects:@"item", @"objectValue", nil];
53 + (NSSet *)keyPathsForValuesAffectingTargetEquipment
55 return [NSSet setWithObjects:@"item", @"objectValue", nil];
57 + (NSSet *)keyPathsForValuesAffectingRemodelEquipment
59 return [NSSet setWithObjects:@"item", @"objectValue", nil];
61 + (NSSet *)keyPathsForValuesAffectingNeedsScrewString01
63 return [NSSet setWithObjects:@"item", @"objectValue", nil];
65 + (NSSet *)keyPathsForValuesAffectingNeedsScrewString02
67 return [NSSet setWithObjects:@"item", @"objectValue", nil];
69 + (NSSet *)keyPathsForValuesAffectingNeedsScrewString03
71 return [NSSet setWithObjects:@"item", @"objectValue", nil];
74 - (NSString *)secondsShipList
76 NSArray *secondsShips = self.item.secondsShipNames;
78 return [secondsShips componentsJoinedByString:@", "];
80 - (HMRequiredEquipment *)requiredEquipment01
82 return self.item.requiredEquipments.requiredEquipment01;
84 - (HMRequiredEquipment *)requiredEquipment02
86 return self.item.requiredEquipments.requiredEquipment02;
88 - (HMRequiredEquipment *)requiredEquipment03
90 return self.item.requiredEquipments.requiredEquipment03;
92 - (NSString *)targetEquipment
94 return self.item.targetEquipment;
96 - (NSString *)remodelEquipment
98 return self.item.remodelEquipment;
101 NSString *needsScrewString(NSNumber *screwNumber, NSNumber *ensureScrewNumber)
103 NSString *screwString = @"";
104 NSString *ensureScrewString = @"";
106 NSInteger screw = screwNumber.integerValue;
107 if(screw == 0) return nil;
111 screwString = [NSString stringWithFormat:@"%ld", screw];
114 NSInteger ensureScrew = ensureScrewNumber.integerValue;
115 if(ensureScrew == -1) {
116 ensureScrewString = @"-";
118 ensureScrewString = [NSString stringWithFormat:@"%ld", ensureScrew];
121 return [NSString stringWithFormat:@"%@/%@", screwString, ensureScrewString];
124 - (NSString *)needsScrewString01
126 return needsScrewString(self.requiredEquipment01.screw, self.requiredEquipment01.ensureScrew);
128 - (NSString *)needsScrewString02
130 return needsScrewString(self.requiredEquipment02.screw, self.requiredEquipment02.ensureScrew);
132 - (NSString *)needsScrewString03
134 return needsScrewString(self.requiredEquipment03.screw, self.requiredEquipment03.ensureScrew);