프로그래밍/Cocos2D2012. 2. 9. 02:13

plist 프레임 키값을 알아서 가져오는 방법입니다.
 TexturePacker를 사용하여 생성된 plist 프레임 키값을 가져올 때 사용하였습니다. 
        

 NSMutableArray *animFrames = [NSMutableArray array];
        
 NSString *framePath = [[NSBundle mainBundle] pathForResource:@"1st_bad_animation" ofType:@"plist"];
 NSDictionary *dictionary = [[NSDictionary alloc] initWithContentsOfFile:framePath];
 NSDictionary *framesDict = [dictionary objectForKey:@"frames"];

 // Dictionary는 순서가 뒤섞여 있어서 정렬하기 위해 Array에 새로 담습니다.
 NSMutableArray *sortFrames = [[NSMutableArray alloc] initWithCapacity:[framesDict count]];
        
 for (NSString *frameDictKey in framesDict) 
 {
       [sortFrames addObject:frameDictKey];
 }
        
 [sortFrames sortUsingSelector:@selector(compare:)]; // 정렬 
  // compare 는 기본으로 제공되는 함수이고 커스텀이 가능합니다.
        
  for(NSString *frameDictKey in sortFrames) 
  {
       CCSpriteFrame *frame = [[CCSpriteFrameCache sharedSpriteFrameCache] spriteFrameByName:frameDictKey];
       [animFrames addObject:frame];
  }
Posted by windship