private ChallengeManager() { challengeSaveData = new Dictionary <String, ChallengeSaveData>(); lastKnownChallengeLevel = ChallengeLevel.Easy; easyChallenges = new List <IChallenge>(); mediumChallenges = new List <IChallenge>(); hardChallenges = new List <IChallenge>(); crazyChallenges = new List <IChallenge>(); impossibleChallenges = new List <IChallenge>(); AddChallenge(new Score1000(), ChallengeLevel.Easy); AddChallenge(new DestroyTiles25(), ChallengeLevel.Easy); AddChallenge(new SurviveLevels5(), ChallengeLevel.Easy); AddChallenge(new FireLasers2(), ChallengeLevel.Easy); AddChallenge(new FireNukes1(), ChallengeLevel.Easy); AddChallenge(new Score3000(), ChallengeLevel.Medium); AddChallenge(new DestroyTiles100(), ChallengeLevel.Medium); AddChallenge(new SurviveLevels10(), ChallengeLevel.Medium); AddChallenge(new CapTiles20(), ChallengeLevel.Medium); AddChallenge(new FireNukes3(), ChallengeLevel.Medium); AddChallenge(new Score5000(), ChallengeLevel.Hard); AddChallenge(new DestroyTilesWithLaser50(), ChallengeLevel.Hard); AddChallenge(new DestroyTilesWithNuke50(), ChallengeLevel.Hard); AddChallenge(new CapMultipliers(), ChallengeLevel.Hard); AddChallenge(new CompleteCap10(), ChallengeLevel.Hard); AddChallenge(new Score15000(), ChallengeLevel.Crazy); AddChallenge(new DestroyTiles200(), ChallengeLevel.Crazy); AddChallenge(new SurviveLevels10Hard(), ChallengeLevel.Crazy); AddChallenge(new CompleteCap25(), ChallengeLevel.Crazy); AddChallenge(new FireNukes7(), ChallengeLevel.Crazy); AddChallenge(new Score100000(), ChallengeLevel.Impossible); AddChallenge(new DestroyTiles500(), ChallengeLevel.Impossible); AddChallenge(new FireNukeDuringBT(), ChallengeLevel.Impossible); AddChallenge(new SurviveMinutes10(), ChallengeLevel.Impossible); AddChallenge(new FireNukes15(), ChallengeLevel.Impossible); }
public List <IChallenge> GetChallenges(ChallengeLevel level) { if (level == ChallengeLevel.Easy) { return(easyChallenges); } else if (level == ChallengeLevel.Medium) { return(mediumChallenges); } else if (level == ChallengeLevel.Hard) { return(hardChallenges); } else if (level == ChallengeLevel.Crazy) { return(crazyChallenges); } else { return(impossibleChallenges); } }
public void AddChallenge(IChallenge challenge, ChallengeLevel level) { if (level == ChallengeLevel.Easy) { easyChallenges.Add(challenge); } else if (level == ChallengeLevel.Medium) { mediumChallenges.Add(challenge); } else if (level == ChallengeLevel.Hard) { hardChallenges.Add(challenge); } else if (level == ChallengeLevel.Crazy) { crazyChallenges.Add(challenge); } else { impossibleChallenges.Add(challenge); } }
public Challenge(CFGBlock block) : this() { mName = block.Value; mID = Convert.ToInt32(GetProperty(block, "Id", mID)); mSmallDesc = (string)GetProperty(block, "SmallDesc", String.Empty); mDesc = (string)GetProperty(block, "Desc", String.Empty); mReqOrangePegs = Convert.ToInt32(GetProperty(block, "NumOrange", 0)); mReqScore = Convert.ToInt32(GetProperty(block, "ScoreReq", 0)); mReqStyleScore = Convert.ToInt32(GetProperty(block, "StyleScoreReq", 0)); mReqUniqueStyleShots = Convert.ToInt32(GetProperty(block, "UniqueStyleShotsReq", 0)); mReqClearLevel = ((string)GetProperty(block, "ClearLevel", "false") == "true"); mCharacter = (string)GetProperty(block, "Characters", String.Empty); mBalls = Convert.ToInt32(GetProperty(block, "Balls", 0)); //Powerups CFGProperty[] cfgps = block.GetProperties("Powerups"); string[] ppsv = new string[0]; if (cfgps.Length > 0) { ppsv = cfgps[0].Values.ToArray(); } foreach (string p in ppsv) { string pv = p.Replace(" ", ""); pv = p.Replace("\t", ""); string[] args = pv.Split('='); if (args.Length != 2) { continue; } string powerupName = args[0]; int powerupCount = Convert.ToInt32(args[1]); SetPowerup(powerupName, powerupCount); } mScoreReset = ((string)GetProperty(block, "ScoreReset", "false") == "true"); mNoFreeballs = ((string)GetProperty(block, "NoFreeballs", "false") == "true"); mNoGreenPegs = ((string)GetProperty(block, "NoGreens", "false") == "true"); mNoForceWin = ((string)GetProperty(block, "NoForceWin", "false") == "true"); mFreeballBucketCovered = ((string)GetProperty(block, "FreeballCovered", "false") == "true"); mNoEndOnWin = ((string)GetProperty(block, "NoEndOnWin", "false") == "true"); mGravityMod = Convert.ToSingle(GetProperty(block, "GravityMod", 0.0f)); mProjectileSpeedMod = Convert.ToSingle(GetProperty(block, "ProjSpeedMod", 0.0f)); CFGProperty plevels = block.GetFirstProperty("Levels"); if (plevels != null) { foreach (string v in plevels.Values) { ChallengeLevel level = new ChallengeLevel(); level.Level = v; mLevels.Add(level); } } }
public NewDirector(Game game, ChallengeLevel initial_Difficulty) : base(game) { var_Last_Sample = TIME_BETWEEN_SAMPLES; var_Previous_Player_Details = new List<PlayerStatistics>(); var_Current_Player_Details = new PlayerStatistics(); var_Initial_Difficulty = initial_Difficulty; var_Game_Time_Remaining = (100 * (10 - ((int)initial_Difficulty / DIFFICULTY_DIVISOR))); game.Components.Add(this); }
public Challenge(CFGBlock block) : this() { mName = block.Value; mID = Convert.ToInt32(GetProperty(block, "Id", mID)); mSmallDesc = (string)GetProperty(block, "SmallDesc", String.Empty); mDesc = (string)GetProperty(block, "Desc", String.Empty); mReqOrangePegs = Convert.ToInt32(GetProperty(block, "NumOrange", 0)); mReqScore = Convert.ToInt32(GetProperty(block, "ScoreReq", 0)); mReqStyleScore = Convert.ToInt32(GetProperty(block, "StyleScoreReq", 0)); mReqUniqueStyleShots = Convert.ToInt32(GetProperty(block, "UniqueStyleShotsReq", 0)); mReqClearLevel = ((string)GetProperty(block, "ClearLevel", "false") == "true"); mCharacter = (string)GetProperty(block, "Characters", String.Empty); mBalls = Convert.ToInt32(GetProperty(block, "Balls", 0)); //Powerups CFGProperty[] cfgps = block.GetProperties("Powerups"); string[] ppsv = new string[0]; if (cfgps.Length > 0) ppsv = cfgps[0].Values.ToArray(); foreach (string p in ppsv) { string pv = p.Replace(" ", ""); pv = p.Replace("\t", ""); string[] args = pv.Split('='); if (args.Length != 2) continue; string powerupName = args[0]; int powerupCount = Convert.ToInt32(args[1]); SetPowerup(powerupName, powerupCount); } mScoreReset = ((string)GetProperty(block, "ScoreReset", "false") == "true"); mNoFreeballs = ((string)GetProperty(block, "NoFreeballs", "false") == "true"); mNoGreenPegs = ((string)GetProperty(block, "NoGreens", "false") == "true"); mNoForceWin = ((string)GetProperty(block, "NoForceWin", "false") == "true"); mFreeballBucketCovered = ((string)GetProperty(block, "FreeballCovered", "false") == "true"); mNoEndOnWin = ((string)GetProperty(block, "NoEndOnWin", "false") == "true"); mGravityMod = Convert.ToSingle(GetProperty(block, "GravityMod", 0.0f)); mProjectileSpeedMod = Convert.ToSingle(GetProperty(block, "ProjSpeedMod", 0.0f)); CFGProperty plevels = block.GetFirstProperty("Levels"); foreach (string v in plevels.Values) { ChallengeLevel level = new ChallengeLevel(); level.Level = v; mLevels.Add(level); } }