summary refs log tree commit diff stats
path: root/Classes/ClassicGameMode.m
diff options
context:
space:
mode:
Diffstat (limited to 'Classes/ClassicGameMode.m')
-rwxr-xr-xClasses/ClassicGameMode.m42
1 files changed, 26 insertions, 16 deletions
diff --git a/Classes/ClassicGameMode.m b/Classes/ClassicGameMode.m index 306c1d1..9356fea 100755 --- a/Classes/ClassicGameMode.m +++ b/Classes/ClassicGameMode.m
@@ -10,8 +10,6 @@
10#import "FallingObject.h" 10#import "FallingObject.h"
11#import "GameOverScene.h" 11#import "GameOverScene.h"
12#import "SimpleAudioEngine.h" 12#import "SimpleAudioEngine.h"
13#import "CCNotifications.h"
14#import "TestFlight.h"
15 13
16@implementation ClassicGameMode 14@implementation ClassicGameMode
17 15
@@ -22,6 +20,26 @@ typedef enum {
22 kRockObject 20 kRockObject
23} FallingObjects; 21} FallingObjects;
24 22
23static GameModeInfo* info;
24
25+ (GameModeInfo*)info
26{
27 if (info == nil)
28 {
29 info = [[GameModeInfo alloc] initWithName:@"Collect"
30 location:@"Paris"
31 numOfStars:3
32 imageFilename:[[NSBundle mainBundle] pathForResource:@"paris" ofType:@"png"]
33 unlocked:NO
34 unlockCondition:@"Beat the tutorial!"
35 gameClass:[ClassicGameMode class]
36 globalHighscoreKey:@"Classic"
37 starsToUnlock:0];
38 }
39
40 return info;
41}
42
25- (void)tick:(ccTime)dt 43- (void)tick:(ccTime)dt
26{ 44{
27 int lastScore = score; 45 int lastScore = score;
@@ -32,7 +50,7 @@ typedef enum {
32 { 50 {
33 [self unscheduleAllSelectors]; 51 [self unscheduleAllSelectors];
34 52
35 [[CCDirector sharedDirector] replaceScene:[CCTransitionSlideInT transitionWithDuration:1.5f scene:[GameOverScene sceneWithScore:score gameMode:@"Collect"]]]; 53 [[CCDirector sharedDirector] replaceScene:[CCTransitionSlideInT transitionWithDuration:1.5f scene:[GameOverScene sceneWithScore:score gameMode:[ClassicGameMode info]]]];
36 } else if (score > lastScore) 54 } else if (score > lastScore)
37 { 55 {
38 if ((lastScore < 6500) && (score >= 6500)) 56 if ((lastScore < 6500) && (score >= 6500))
@@ -45,24 +63,14 @@ typedef enum {
45 [self unschedule:@selector(randomlyAddObject:)]; 63 [self unschedule:@selector(randomlyAddObject:)];
46 [self schedule:@selector(randomlyAddObject:) interval:0.7f]; 64 [self schedule:@selector(randomlyAddObject:) interval:0.7f];
47 addSpeed = 0.7f; 65 addSpeed = 0.7f;
48 } else if ((lastScore < 3000) && (score >= 3000))
49 {
50 NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults];
51
52 if (![defaults boolForKey:@"unlockedJumpMode"])
53 {
54 [[CCNotifications sharedManager] addWithTitle:@"Jump" message:@"You've unlocked a new game mode!" image:@"venice.png"];
55
56 [defaults setBool:YES forKey:@"unlockedJumpMode"];
57 [defaults synchronize];
58
59 [TestFlight passCheckpoint:@"Unlocked Jump Mode"];
60 }
61 } else if ((lastScore < 2500) && (score >= 2500)) 66 } else if ((lastScore < 2500) && (score >= 2500))
62 { 67 {
63 [self unschedule:@selector(randomlyAddObject:)]; 68 [self unschedule:@selector(randomlyAddObject:)];
64 [self schedule:@selector(randomlyAddObject:) interval:0.8f]; 69 [self schedule:@selector(randomlyAddObject:) interval:0.8f];
65 addSpeed = 0.8f; 70 addSpeed = 0.8f;
71 } else if ((lastScore < 2000) && (score >= 2000))
72 {
73 [[ClassicGameMode info] setStar:1 withMessage:@"Get 2000 points"];
66 } else if ((lastScore < 1500) && (score >= 1500)) 74 } else if ((lastScore < 1500) && (score >= 1500))
67 { 75 {
68 [self unschedule:@selector(randomlyAddObject:)]; 76 [self unschedule:@selector(randomlyAddObject:)];
@@ -73,6 +81,8 @@ typedef enum {
73 [self unschedule:@selector(randomlyAddObject:)]; 81 [self unschedule:@selector(randomlyAddObject:)];
74 [self schedule:@selector(randomlyAddObject:) interval:1.0f]; 82 [self schedule:@selector(randomlyAddObject:) interval:1.0f];
75 addSpeed = 1.0f; 83 addSpeed = 1.0f;
84
85 [[ClassicGameMode info] setStar:0 withMessage:@"Get 500 points"];
76 } else if ((lastScore < 150) && (score >= 150)) 86 } else if ((lastScore < 150) && (score >= 150))
77 { 87 {
78 [self unschedule:@selector(randomlyAddObject:)]; 88 [self unschedule:@selector(randomlyAddObject:)];