//====================================================================================================
// New popup example
//====================================================================================================
[self displayQuestionDialog:@"Title" :@"Message" yesBlock:^{
    [self defaultPopupResponse];
    NSLog(@"Yes");
} noBlock:^{
    [self defaultPopupResponse];
    NSLog(@"No");
}];

//====================================================================================================
// Single ability cost (shards & money) - add to didappear in ABiltiyVC
//====================================================================================================
[[[GameFactory sharedUserManager].userBoxer.abilities getAbility:ABILITY_ROLL] debugGetCostAndShards];

//====================================================================================================
// exe timer
//====================================================================================================
double start = [[NSDate date] timeIntervalSince1970];
double end = [[NSDate date] timeIntervalSince1970];
NSLog(@"buildPlayerAcounts:%f", (end - start));

//====================================================================================================
// test fighter stats
//====================================================================================================
-(FightStats*) getTestFightStats:(Fighter*) a :(Fighter*) b {
    FightStats* fs = [[FightStats alloc] initWithFighters:a :b];
    
    for (int punch = 0; punch < 10; punch++) {
        
        Fighter* f = [HelperMaths randomBoolean] ? a : b;
        
        FighterPunch* p = nil;
        switch ([HelperMaths randomInt:0 :5]) {
            case 0: p = f.punchJab; break;
            case 1: p = f.punchCross; break;
            case 2: p = f.punchHook; break;
            case 3: p = f.punchUppercut; break;
            case 4: p = f.punchHaymaker; break;
        }
        
        PunchResult* r = nil;
        switch ([HelperMaths randomInt:0 :6]) {
            case 0: r = [[PunchResult alloc] initResult:DEFENSE_FULL damage:100 knockDown:NO];
            case 1: r = [[PunchResult alloc] initResult:DEFENSE_MISS damage:0 knockDown:NO];
            case 2: r = [[PunchResult alloc] initResult:DEFENSE_ROLL damage:75 knockDown:NO];
            case 3: r = [[PunchResult alloc] initResult:DEFENSE_BLOCK damage:50 knockDown:NO];
            case 4: r = [[PunchResult alloc] initResult:DEFENSE_EVADE damage:1000 knockDown:NO];
            case 5: r = [[PunchResult alloc] initResult:DEFENSE_COUNTER damage:100 knockDown:NO];
        }
        
        [fs punchWithFighter:f
                       punch:p
                 punchResult:r];
    }
    
    return fs;
}
    
//====================================================================================================
// Weekly results for testing (added to LoadVC). I'm not using Results at the mo but this could be useful if i re-adf
//====================================================================================================
-(NSArray*) buildResults:(UserBoxer*) user {
    
    NSMutableArray* results = [[NSMutableArray alloc] init];
    
    BoxingClass bc      = BOXING_CLASS_FLYWEIGHT;
    NSArray* all        = [[GameFactory sharedUserManager].gameData getBoxersForClassification:bc];
    for (int count=0; count < 3; count++) {
        NSArray* picked     = [HelperMaths pickRandomFromArray:all :2];
        BoxingPerson* p1    = [picked objectAtIndex:0];
        BoxingPerson* p2    = [picked objectAtIndex:1];
        
        // ad duser
        if (count == 1)
            p1 = user;
        
        [results addObject:[[Result alloc] init:bc :p1 :p2 :[HelperMaths randomInt:-1 :2] :FIGHT_CAUSE_MD]];
    }
    
    bc          = BOXING_CLASS_HEAVYWEIGHT;
    all         = [[GameFactory sharedUserManager].gameData getBoxersForClassification:bc];
    for (int count=0; count < 5; count++) {
        NSArray* picked     = [HelperMaths pickRandomFromArray:all :2];
        BoxingPerson* p1    = [picked objectAtIndex:0];
        BoxingPerson* p2    = [picked objectAtIndex:1];
        
        [results addObject:[[Result alloc] init:bc :p1 :p2 :[HelperMaths randomInt:-1 :2] :FIGHT_CAUSE_MD]];
    }
    
    bc          = BOXING_CLASS_WELTERWEIGHT;
    all         = [[GameFactory sharedUserManager].gameData getBoxersForClassification:bc];
    for (int count=0; count < 1; count++) {
        NSArray* picked     = [HelperMaths pickRandomFromArray:all :2];
        BoxingPerson* p1    = [picked objectAtIndex:0];
        BoxingPerson* p2    = [picked objectAtIndex:1];
        
        [results addObject:[[Result alloc] init:bc :p1 :p2 :[HelperMaths randomInt:-1 :2] :FIGHT_CAUSE_MD]];
    }
    
    bc          = BOXING_CLASS_MIDDLEWEIGHT;
    all         = [[GameFactory sharedUserManager].gameData getBoxersForClassification:bc];
    for (int count=0; count < 5; count++) {
        NSArray* picked     = [HelperMaths pickRandomFromArray:all :2];
        BoxingPerson* p1    = [picked objectAtIndex:0];
        BoxingPerson* p2    = [picked objectAtIndex:1];
        
        [results addObject:[[Result alloc] init:bc :p1 :p2 :[HelperMaths randomInt:-1 :2] :FIGHT_CAUSE_MD]];
    }
    
    return results;
}
