Update of /cvsroot/macattrick/macattrick In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25981 Modified Files: FormulasViewController.h FormulasViewController.m HattrickOrg.m MainController.m Player.m Position.h Position.m PreferencesController.m Log Message: keeper formulas are now correctly integrated, missing defaults and import/export functions Index: Position.m =================================================================== RCS file: /cvsroot/macattrick/macattrick/Position.m,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** Position.m 24 Jan 2005 20:18:29 -0000 1.7 --- Position.m 6 Feb 2005 19:36:18 -0000 1.8 *************** *** 33,36 **** --- 33,48 ---- @interface Position (Private) + - (void) setPlayerFormRate: (double) newPlayerFormRate; + - (void) setExperienceRate: (double) newExperienceRate; + - (void) setStaminaRate: (double) newStaminaRate; + - (void) setKeeperRate: (double) newKeeperRate; + - (void) setPlaymakingRate: (double) newPlaymakingRate; + - (void) setPassingRate: (double) newPassingRate; + - (void) setWingerRate: (double) newWingerRate; + - (void) setDefenderRate: (double) newDefenderRate; + - (void) setScorerRate: (double) newScorerRate; + - (void) setSetPiecesRate: (double) newSetPiecesRate; + - (void) setTotal: (double) newTotal; + - (void) updateTotal; + (void) loadDefaultPositions; + (void) loadPositions; *************** *** 40,128 **** @implementation Position - /* - + (Position*) positionKeeper { - return [[Position alloc] initWithIdentifier:@"Keeper" staminaRate:0 keeperRate:1 playmakingRate:0 scorerRate:0 - passingRate:0 wingerRate:0 defenderRate:0 setPiecesRate:0]; - } - - + (Position*) positionCentralDefender { - return [[Position alloc] initWithIdentifier:@"Central Defender" staminaRate:0.1 keeperRate:0 playmakingRate:0.02 scorerRate:0 - passingRate:0.15 wingerRate:0 defenderRate:0.75 setPiecesRate:0]; - } - - + (Position*) positionCentralDefenderTowardsWing { - return [[Position alloc] initWithIdentifier:@"Central Defender Towards Wing" staminaRate:0.1 keeperRate:0 playmakingRate:0 scorerRate:0 - passingRate:0.1 wingerRate:0.15 defenderRate:0.65 setPiecesRate:0]; - } - - + (Position*) positionCentralDefenderOffensive { - return [[Position alloc] initWithIdentifier:@"Central Defender Offensive" staminaRate:0.1 keeperRate:0 playmakingRate:0.1 scorerRate:0 - passingRate:0.2 wingerRate:0 defenderRate:0.6 setPiecesRate:0]; - } - - + (Position*) positionWingback { - return [[Position alloc] initWithIdentifier:@"Wingback" staminaRate:0.1 keeperRate:0 playmakingRate:0 scorerRate:0 - passingRate:0.1 wingerRate:0.2 defenderRate:0.6 setPiecesRate:0]; - } - + (Position*) positionWingbackTowardsMiddle{ - return [[Position alloc] initWithIdentifier:@"Wingback Towards Middle" staminaRate:0.1 keeperRate:0 playmakingRate:0 scorerRate:0 - passingRate:0.08 wingerRate:0.17 defenderRate:0.65 setPiecesRate:0]; - } - + (Position*) positionWingbackOffensive{ - return [[Position alloc] initWithIdentifier:@"Wingback Offensive" staminaRate:0.1 keeperRate:0 playmakingRate:0.1 scorerRate:0 - passingRate:0.2 wingerRate:0.25 defenderRate:0.35 setPiecesRate:0]; - } - + (Position*) positionWingbackDefensive{ - return [[Position alloc] initWithIdentifier:@"Wingback Defensive" staminaRate:0.05 keeperRate:0 playmakingRate:0 scorerRate:0 - passingRate:0.05 wingerRate:0.1 defenderRate:0.8 setPiecesRate:0]; - } - + (Position*) positionInnerMidfield { - return [[Position alloc] initWithIdentifier:@"Inner Midfield" staminaRate:0.25 keeperRate:0 playmakingRate:0.5 scorerRate:0 - passingRate:0.15 wingerRate:0 defenderRate:0.1 setPiecesRate:0]; - } - + (Position*) positionInnerMidfieldTowardsWing { - return [[Position alloc] initWithIdentifier:@"Inner Midfield Towards Wing" staminaRate:0.2 keeperRate:0 playmakingRate:0.35 scorerRate:0 - passingRate:0.15 wingerRate:0.2 defenderRate:0.1 setPiecesRate:0]; - } - + (Position*) positionInnerMidfieldOffensive { - return [[Position alloc] initWithIdentifier:@"Inner Midfield Offensive" staminaRate:0.2 keeperRate:0 playmakingRate:0.5 scorerRate:0 - passingRate:0.25 wingerRate:0 defenderRate:0.05 setPiecesRate:0]; - } - + (Position*) positionInnerMidfieldDefensive { - return [[Position alloc] initWithIdentifier:@"Inner Midfield Defensive" staminaRate:0.15 keeperRate:0 playmakingRate:0.5 scorerRate:0 - passingRate:0.15 wingerRate:0 defenderRate:0.2 setPiecesRate:0]; - } - - - + (Position*) positionWinger { - return [[Position alloc] initWithIdentifier:@"Winger" staminaRate:0.15 keeperRate:0 playmakingRate:0.25 scorerRate:0 - passingRate:0.05 wingerRate:0.5 defenderRate:0.05 setPiecesRate:0]; - } - - + (Position*) positionWingerTowardsMiddle { - return [[Position alloc] initWithIdentifier:@"Winger Towards Middle" staminaRate:0.15 keeperRate:0 playmakingRate:0.3 scorerRate:0 - passingRate:0.1 wingerRate:0.35 defenderRate:0.1 setPiecesRate:0]; - } - - + (Position*) positionWingerOffensive { - return [[Position alloc] initWithIdentifier:@"Winger Offensive" staminaRate:0.15 keeperRate:0 playmakingRate:0.15 scorerRate:0 - passingRate:0.1 wingerRate:0.6 defenderRate:0 setPiecesRate:0]; - } - - + (Position*) positionWingerDefensive { - return [[Position alloc] initWithIdentifier:@"Winger Defensive" staminaRate:0.1 keeperRate:0 playmakingRate:0.2 scorerRate:0 - passingRate:0.1 wingerRate:0.35 defenderRate:0.25 setPiecesRate:0]; - } - - + (Position*) positionForward { - return [[Position alloc] initWithIdentifier:@"Forward" staminaRate:0.1 keeperRate:0 playmakingRate:0 scorerRate:0.6 - passingRate:0.3 wingerRate:0 defenderRate:0 setPiecesRate:0]; - } - - + (Position*) positionForwardDefensive { - return [[Position alloc] initWithIdentifier:@"Forward Defensive" staminaRate:0.1 keeperRate:0 playmakingRate:0.13 scorerRate:0.45 - passingRate:0.32 wingerRate:0 defenderRate:0 setPiecesRate:0]; - } - */ -(Position*) initFromUserDefaults: (NSString*) newIdentifier { --- 52,55 ---- *************** *** 144,147 **** --- 71,75 ---- scorerRate = [[values objectAtIndex:8] doubleValue]; setPiecesRate = [[values objectAtIndex:9] doubleValue]; + [self updateTotal]; return self; } *************** *** 166,169 **** --- 94,98 ---- playerFormRate = newPlayerFormRate; experienceRate = newExperienceRate; + [self updateTotal]; return self; } *************** *** 184,187 **** --- 113,117 ---- defenderRate = newDefenderRate; setPiecesRate = newSetPiecesRate; + [self updateTotal]; return self; } *************** *** 192,230 **** - (double) playerFormRate { return playerFormRate; } - (double) experienceRate { return experienceRate; } ! - (double)staminaRate { ! return staminaRate; } ! - (double)keeperRate { ! return keeperRate; } ! - (double)playmakingRate { ! return playmakingRate; } ! - (double)passingRate { ! return passingRate; } ! - (double)wingerRate { ! return wingerRate; } ! - (double)defenderRate { ! return defenderRate; } ! - (double)scorerRate { ! return scorerRate; } ! - (double)setPiecesRate { ! return setPiecesRate; } --- 122,200 ---- - (double) playerFormRate { return playerFormRate; } + - (void) setPlayerFormRate: (double) newPlayerFormRate { + playerFormRate = newPlayerFormRate; + } - (double) experienceRate { return experienceRate; } + - (void) setExperienceRate: (double) newExperienceRate { + experienceRate = newExperienceRate; + } ! - (double) staminaRate { return staminaRate; } ! - (void) setStaminaRate: (double) newStaminaRate { ! staminaRate = newStaminaRate; ! [self updateTotal]; } ! ! - (double) keeperRate { return keeperRate; } ! - (void) setKeeperRate: (double) newKeeperRate { ! keeperRate = newKeeperRate; ! [self updateTotal]; } ! ! - (double) playmakingRate { return playmakingRate; } ! - (void) setPlaymakingRate: (double) newPlaymakingRate { ! playmakingRate = newPlaymakingRate; ! [self updateTotal]; } ! ! - (double) passingRate { return passingRate; } ! - (void) setPassingRate: (double) newPassingRate { ! passingRate = newPassingRate; ! [self updateTotal]; } ! ! - (double) wingerRate { return wingerRate; } ! - (void) setWingerRate: (double) newWingerRate { ! wingerRate = newWingerRate; ! [self updateTotal]; } ! ! - (double) defenderRate { return defenderRate; } ! - (void) setDefenderRate: (double) newDefenderRate { ! defenderRate = newDefenderRate; ! [self updateTotal]; } ! ! - (double) scorerRate { return scorerRate; } ! - (void) setScorerRate: (double) newScorerRate { ! scorerRate = newScorerRate; ! [self updateTotal]; } ! ! - (double) setPiecesRate { return setPiecesRate; } ! - (void) setSetPiecesRate: (double) newSetPiecesRate { ! setPiecesRate = newSetPiecesRate; ! [self updateTotal]; ! } ! ! ! - (double) total { return total; } ! - (void) setTotal: (double) newTotal { ! total = newTotal; ! } ! ! ! -(void) updateTotal { ! [self setTotal: staminaRate + keeperRate +playmakingRate + passingRate + wingerRate + defenderRate + scorerRate + setPiecesRate]; } *************** *** 261,264 **** --- 231,240 ---- } + -(Position*) copyWithZone: (NSZone*) zone { + return [[Position alloc] initWithIdentifier:[identifier copy] playerFormRate:playerFormRate experienceRate:experienceRate + staminaRate:staminaRate keeperRate:keeperRate playmakingRate:playmakingRate scorerRate:scorerRate + passingRate:passingRate wingerRate:wingerRate defenderRate:defenderRate setPiecesRate:setPiecesRate]; + } + +(Position*) positionWithIdentifier: (NSString*) positionsIdentifier { *************** *** 331,369 **** NSArray *keys = [Position positionsIdentifiers]; NSArray *objects = [[NSArray alloc] initWithObjects: ! [[Position alloc] initWithIdentifier:@"Keeper" staminaRate:0 keeperRate:1 playmakingRate:0 scorerRate:0 passingRate:0 wingerRate:0 defenderRate:0 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Central Defender" staminaRate:0.1 keeperRate:0 playmakingRate:0.02 scorerRate:0 passingRate:0.15 wingerRate:0 defenderRate:0.75 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Central Defender Towards Wing" staminaRate:0.1 keeperRate:0 playmakingRate:0 scorerRate:0 passingRate:0.1 wingerRate:0.15 defenderRate:0.65 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Central Defender Offensive" staminaRate:0.1 keeperRate:0 playmakingRate:0.1 scorerRate:0 passingRate:0.2 wingerRate:0 defenderRate:0.6 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Wingback" staminaRate:0.1 keeperRate:0 playmakingRate:0 scorerRate:0 passingRate:0.1 wingerRate:0.2 defenderRate:0.6 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Wingback Towards Middle" staminaRate:0.1 keeperRate:0 playmakingRate:0 scorerRate:0 passingRate:0.08 wingerRate:0.17 defenderRate:0.65 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Wingback Offensive" staminaRate:0.1 keeperRate:0 playmakingRate:0.1 scorerRate:0 passingRate:0.2 wingerRate:0.25 defenderRate:0.35 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Wingback Defensive" staminaRate:0.05 keeperRate:0 playmakingRate:0 scorerRate:0 passingRate:0.05 wingerRate:0.1 defenderRate:0.8 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Inner Midfield" staminaRate:0.25 keeperRate:0 playmakingRate:0.5 scorerRate:0 passingRate:0.15 wingerRate:0 defenderRate:0.1 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Inner Midfield Towards Wing" staminaRate:0.2 keeperRate:0 playmakingRate:0.35 scorerRate:0 passingRate:0.15 wingerRate:0.2 defenderRate:0.1 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Inner Midfield Offensive" staminaRate:0.2 keeperRate:0 playmakingRate:0.5 scorerRate:0 passingRate:0.25 wingerRate:0 defenderRate:0.05 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Inner Midfield Defensive" staminaRate:0.15 keeperRate:0 playmakingRate:0.5 scorerRate:0 passingRate:0.15 wingerRate:0 defenderRate:0.2 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Winger" staminaRate:0.15 keeperRate:0 playmakingRate:0.25 scorerRate:0 passingRate:0.05 wingerRate:0.5 defenderRate:0.05 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Winger Towards Middle" staminaRate:0.15 keeperRate:0 playmakingRate:0.3 scorerRate:0 passingRate:0.1 wingerRate:0.35 defenderRate:0.1 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Winger Offensive" staminaRate:0.15 keeperRate:0 playmakingRate:0.15 scorerRate:0 passingRate:0.1 wingerRate:0.6 defenderRate:0 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Winger Defensive" staminaRate:0.1 keeperRate:0 playmakingRate:0.2 scorerRate:0 passingRate:0.1 wingerRate:0.35 defenderRate:0.25 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Forward" staminaRate:0.1 keeperRate:0 playmakingRate:0 scorerRate:0.6 passingRate:0.3 wingerRate:0 defenderRate:0 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Forward Defensive" staminaRate:0.1 keeperRate:0 playmakingRate:0.13 scorerRate:0.45 passingRate:0.32 wingerRate:0 defenderRate:0 setPiecesRate:0], nil]; --- 307,345 ---- NSArray *keys = [Position positionsIdentifiers]; NSArray *objects = [[NSArray alloc] initWithObjects: ! [[Position alloc] initWithIdentifier:@"Keeper" playerFormRate: 0.6 experienceRate: 0.35 staminaRate:0 keeperRate:1 playmakingRate:0 scorerRate:0 passingRate:0 wingerRate:0 defenderRate:0 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Central Defender" playerFormRate: 0.6 experienceRate: 0.35 staminaRate:0.1 keeperRate:0 playmakingRate:0.02 scorerRate:0 passingRate:0.15 wingerRate:0 defenderRate:0.75 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Central Defender Towards Wing" playerFormRate: 0.6 experienceRate: 0.35 staminaRate:0.1 keeperRate:0 playmakingRate:0 scorerRate:0 passingRate:0.1 wingerRate:0.15 defenderRate:0.65 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Central Defender Offensive" playerFormRate: 0.6 experienceRate: 0.35 staminaRate:0.1 keeperRate:0 playmakingRate:0.1 scorerRate:0 passingRate:0.2 wingerRate:0 defenderRate:0.6 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Wingback" playerFormRate: 0.6 experienceRate: 0.35 staminaRate:0.1 keeperRate:0 playmakingRate:0 scorerRate:0 passingRate:0.1 wingerRate:0.2 defenderRate:0.6 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Wingback Towards Middle" playerFormRate: 0.6 experienceRate: 0.35 staminaRate:0.1 keeperRate:0 playmakingRate:0 scorerRate:0 passingRate:0.08 wingerRate:0.17 defenderRate:0.65 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Wingback Offensive" playerFormRate: 0.6 experienceRate: 0.35 staminaRate:0.1 keeperRate:0 playmakingRate:0.1 scorerRate:0 passingRate:0.2 wingerRate:0.25 defenderRate:0.35 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Wingback Defensive" playerFormRate: 0.6 experienceRate: 0.35 staminaRate:0.05 keeperRate:0 playmakingRate:0 scorerRate:0 passingRate:0.05 wingerRate:0.1 defenderRate:0.8 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Inner Midfield" playerFormRate: 0.6 experienceRate: 0.35 staminaRate:0.25 keeperRate:0 playmakingRate:0.5 scorerRate:0 passingRate:0.15 wingerRate:0 defenderRate:0.1 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Inner Midfield Towards Wing" playerFormRate: 0.6 experienceRate: 0.35 staminaRate:0.2 keeperRate:0 playmakingRate:0.35 scorerRate:0 passingRate:0.15 wingerRate:0.2 defenderRate:0.1 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Inner Midfield Offensive" playerFormRate: 0.6 experienceRate: 0.35 staminaRate:0.2 keeperRate:0 playmakingRate:0.5 scorerRate:0 passingRate:0.25 wingerRate:0 defenderRate:0.05 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Inner Midfield Defensive" playerFormRate: 0.6 experienceRate: 0.35 staminaRate:0.15 keeperRate:0 playmakingRate:0.5 scorerRate:0 passingRate:0.15 wingerRate:0 defenderRate:0.2 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Winger" playerFormRate: 0.6 experienceRate: 0.35 staminaRate:0.15 keeperRate:0 playmakingRate:0.25 scorerRate:0 passingRate:0.05 wingerRate:0.5 defenderRate:0.05 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Winger Towards Middle" playerFormRate: 0.6 experienceRate: 0.35 staminaRate:0.15 keeperRate:0 playmakingRate:0.3 scorerRate:0 passingRate:0.1 wingerRate:0.35 defenderRate:0.1 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Winger Offensive" playerFormRate: 0.6 experienceRate: 0.35 staminaRate:0.15 keeperRate:0 playmakingRate:0.15 scorerRate:0 passingRate:0.1 wingerRate:0.6 defenderRate:0 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Winger Defensive" playerFormRate: 0.6 experienceRate: 0.35 staminaRate:0.1 keeperRate:0 playmakingRate:0.2 scorerRate:0 passingRate:0.1 wingerRate:0.35 defenderRate:0.25 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Forward" playerFormRate: 0.6 experienceRate: 0.35 staminaRate:0.1 keeperRate:0 playmakingRate:0 scorerRate:0.6 passingRate:0.3 wingerRate:0 defenderRate:0 setPiecesRate:0], ! [[Position alloc] initWithIdentifier:@"Forward Defensive" playerFormRate: 0.6 experienceRate: 0.35 staminaRate:0.1 keeperRate:0 playmakingRate:0.13 scorerRate:0.45 passingRate:0.32 wingerRate:0 defenderRate:0 setPiecesRate:0], nil]; *************** *** 372,375 **** --- 348,363 ---- } + + (void) setPosition: (Position*) position { + [positionsDictionary setObject: position forKey:[position identifier]]; + } + + + + savePositionsToUserDefaults { + NSEnumerator *en = [positionsDictionary objectEnumerator]; + Position *current; + while(current = [en nextObject]) { + [current saveToUserDefaults]; + } + } - (void)dealloc { [identifier release]; Index: FormulasViewController.h =================================================================== RCS file: /cvsroot/macattrick/macattrick/FormulasViewController.h,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** FormulasViewController.h 20 Jan 2005 20:46:00 -0000 1.1 --- FormulasViewController.h 6 Feb 2005 19:36:17 -0000 1.2 *************** *** 29,38 **** #import <Cocoa/Cocoa.h> ! @interface FormulasViewController : NSObject { IBOutlet NSView *formulasView; } - (NSView *) formulasView; @end --- 29,49 ---- #import <Cocoa/Cocoa.h> ! #import "Position.h" @interface FormulasViewController : NSObject { + Position *keeper; + IBOutlet NSTextField *keeperTotal; IBOutlet NSView *formulasView; } + - (NSView *) formulasView; + -(void) cancel; + -(void) ok; + + + -(IBAction) update; + + - (Position *) keeper; + - (void) setKeeper: (Position *) newKeeper; @end Index: HattrickOrg.m =================================================================== RCS file: /cvsroot/macattrick/macattrick/HattrickOrg.m,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** HattrickOrg.m 22 Dec 2004 18:47:28 -0000 1.16 --- HattrickOrg.m 6 Feb 2005 19:36:18 -0000 1.17 *************** *** 105,108 **** --- 105,109 ---- } + - (void) logout { NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; Index: Position.h =================================================================== RCS file: /cvsroot/macattrick/macattrick/Position.h,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** Position.h 24 Jan 2005 20:18:29 -0000 1.6 --- Position.h 6 Feb 2005 19:36:18 -0000 1.7 *************** *** 42,46 **** double scorerRate; double setPiecesRate; ! } --- 42,46 ---- double scorerRate; double setPiecesRate; ! double total; } *************** *** 76,79 **** --- 76,80 ---- - (double)scorerRate; - (double)setPiecesRate; + - (double) total; -(BOOL) isEqual:(id) anObject; *************** *** 81,111 **** -(void) saveToUserDefaults; +(Position*) positionWithIdentifier: (NSString*) positionsIdentifier; - +(Position*) defaultPositionWithIdentifier: (NSString*) positionIdentifier; - + (NSArray*) positionsIdentifiers; ! /* ! + (Position*) positionKeeper; ! + (Position*) positionCentralDefender; ! + (Position*) positionCentralDefenderTowardsWing; ! + (Position*) positionCentralDefenderOffensive; ! + (Position*) positionWingback; ! + (Position*) positionWingbackTowardsMiddle; ! + (Position*) positionWingbackOffensive; ! + (Position*) positionWingbackDefensive; ! + (Position*) positionInnerMidfield; ! + (Position*) positionInnerMidfieldTowardsWing; ! + (Position*) positionInnerMidfieldOffensive; ! + (Position*) positionInnerMidfieldDefensive; ! + (Position*) positionWinger; ! + (Position*) positionWingerTowardsMiddle; ! + (Position*) positionWingerOffensive; ! + (Position*) positionWingerDefensive; ! + (Position*) positionForward; ! + (Position*) positionForwardDefensive; ! + (NSArray*) possiblePositions; ! */ @end --- 82,95 ---- -(void) saveToUserDefaults; + // class methods + +(Position*) positionWithIdentifier: (NSString*) positionsIdentifier; ! +(Position*) defaultPositionWithIdentifier: (NSString*) positionIdentifier; + + (NSArray*) positionsIdentifiers; + + (void) setPosition: (Position*) position; + + savePositionsToUserDefaults; @end Index: MainController.m =================================================================== RCS file: /cvsroot/macattrick/macattrick/MainController.m,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** MainController.m 16 Jan 2005 18:04:00 -0000 1.13 --- MainController.m 6 Feb 2005 19:36:18 -0000 1.14 *************** *** 38,42 **** #import "AggressivenessTransformer.h" #import "SkillToListIndexTransformer.h" ! static MainController *mainController; --- 38,42 ---- #import "AggressivenessTransformer.h" #import "SkillToListIndexTransformer.h" ! #import "PercentageTransformer.h" static MainController *mainController; *************** *** 166,169 **** --- 166,170 ---- [NSValueTransformer setValueTransformer:[[[AgreeabilityTransformer alloc] init] autorelease] forName:@"AgreeabilityTransformer"]; [NSValueTransformer setValueTransformer:[[[SkillToListIndexTransformer alloc] init] autorelease] forName:@"SkillToListIndexTransformer"]; + [NSValueTransformer setValueTransformer:[[[PercentageTransformer alloc] init] autorelease] forName:@"PercentageTransformer"]; } Index: Player.m =================================================================== RCS file: /cvsroot/macattrick/macattrick/Player.m,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** Player.m 15 Jan 2005 17:39:40 -0000 1.19 --- Player.m 6 Feb 2005 19:36:18 -0000 1.20 *************** *** 357,364 **** - (double) calculatePositionValue: (Position*) position { ! return (((playerForm * 0.075 + 0.4) * (staminaSkill * [position staminaRate] + keeperSkill * [position keeperRate] + playmakerSkill * [position playmakingRate] + scorerSkill * [position scorerRate] + passingSkill * [position passingRate] + wingerSkill * [position wingerRate] ! + defenderSkill * [position defenderRate] + setPiecesSkill * [position setPiecesRate])) + log10(experience) * 0.7); } --- 357,365 ---- - (double) calculatePositionValue: (Position*) position { ! //(playerForm * 0.075 + 0.4) ! return (((playerForm * [position playerFormRate] * 0.125 + 0.4) * (staminaSkill * [position staminaRate] + keeperSkill * [position keeperRate] + playmakerSkill * [position playmakingRate] + scorerSkill * [position scorerRate] + passingSkill * [position passingRate] + wingerSkill * [position wingerRate] ! + defenderSkill * [position defenderRate] + setPiecesSkill * [position setPiecesRate])) + log10(experience) * [position experienceRate] * 2); } Index: PreferencesController.m =================================================================== RCS file: /cvsroot/macattrick/macattrick/PreferencesController.m,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** PreferencesController.m 20 Jan 2005 20:46:01 -0000 1.3 --- PreferencesController.m 6 Feb 2005 19:36:19 -0000 1.4 *************** *** 31,42 **** @implementation PreferencesController ! - (IBAction)cancel:(id)sender ! { [self close]; } ! - (IBAction)ok:(id)sender ! { [userDefaultsController save:self]; [self close]; } --- 31,42 ---- @implementation PreferencesController ! - (IBAction)cancel:(id)sender{ ! [formulasViewController cancel]; [self close]; } ! - (IBAction)ok:(id)sender { [userDefaultsController save:self]; + [formulasViewController ok]; [self close]; } Index: FormulasViewController.m =================================================================== RCS file: /cvsroot/macattrick/macattrick/FormulasViewController.m,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** FormulasViewController.m 20 Jan 2005 20:46:01 -0000 1.1 --- FormulasViewController.m 6 Feb 2005 19:36:18 -0000 1.2 *************** *** 29,32 **** --- 29,37 ---- #import "FormulasViewController.h" + #import "Position.h" + + @interface FormulasViewController (Private) + - (void) loadPositions; + @end *************** *** 41,45 **** --- 46,60 ---- - (NSView *) formulasView { return formulasView; } + - (void) loadPositions { + [self setKeeper: [[Position positionWithIdentifier:@"Keeper"] copy]]; + } + -(void) cancel { + [self loadPositions]; + } + -(void) ok { + [Position setPosition: keeper]; + [Position savePositionsToUserDefaults]; + } - (void) dealloc { *************** *** 48,51 **** --- 63,80 ---- } + -(void) awakeFromNib { + [self loadPositions]; + } + + + + - (Position *) keeper { return keeper; } + - (void) setKeeper: (Position *) newKeeper { + [newKeeper retain]; + [keeper release]; + keeper = newKeeper; + } + + @end |