Esempio n. 1
0
        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);
        }
Esempio n. 2
0
 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);
     }
 }
Esempio n. 3
0
 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);
     }
 }
Esempio n. 4
0
        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);
        }
Esempio n. 6
0
		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);
			}
		}