From 964cad39cd7373a320516914cbcb0c4207ed4e64 Mon Sep 17 00:00:00 2001 From: Starla Insigna Date: Fri, 4 Jan 2013 12:40:49 -0500 Subject: Added third star to Collect and added failsafe for GameModeInfo's init in case numOfStars is over 3 --- Classes/ClassicGameMode.m | 5 ++++- Classes/GameModeInfo.m | 5 +++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/Classes/ClassicGameMode.m b/Classes/ClassicGameMode.m index 00bf049..e9085f2 100755 --- a/Classes/ClassicGameMode.m +++ b/Classes/ClassicGameMode.m @@ -51,7 +51,10 @@ static GameModeInfo* info; [[CCDirector sharedDirector] replaceScene:[CCTransitionSlideInT transitionWithDuration:1.5f scene:[GameOverScene sceneWithScore:score gameMode:[ClassicGameMode info]]]]; } else if (score > lastScore) { - if ((lastScore < 6500) && (score >= 6500)) + if ((lastScore < 10000) && (score >= 10000)) + { + [[ClassicGameMode info] setStar:2 withMessage:@"Get 10000 points"]; + } else if ((lastScore < 6500) && (score >= 6500)) { [self unschedule:@selector(randomlyAddObject:)]; [self schedule:@selector(randomlyAddObject:) interval:0.6f]; diff --git a/Classes/GameModeInfo.m b/Classes/GameModeInfo.m index 08b95e5..91543fa 100644 --- a/Classes/GameModeInfo.m +++ b/Classes/GameModeInfo.m @@ -34,6 +34,11 @@ unlocked = m_unlocked; } + if (numOfStars > 3) + { + @throw [NSException exceptionWithName:NSInvalidArgumentException reason:@"There does not exist support for more than three stars in a game mode." userInfo:nil]; + } + stars = (BOOL*) calloc(numOfStars, sizeof(BOOL)); for (int i=0; i