static void Main(string[] args) { // Create the RobocodeEngine RobocodeEngine engine = new RobocodeEngine("C:\\robocode"); // Run from C:\Robocode // Add battle event handlers engine.BattleCompleted += new BattleCompletedEventHandler(BattleCompleted); engine.BattleMessage += new BattleMessageEventHandler(BattleMessage); engine.BattleError += new BattleErrorEventHandler(BattleError); // Show the Robocode battle view engine.Visible = true; // Disable log messages from Robocode RobocodeEngine.LogMessagesEnabled = false; // Setup the battle specification int numberOfRounds = 5; BattlefieldSpecification battlefield = new BattlefieldSpecification(800, 600); // 800x600 RobotSpecification[] selectedRobots = engine.GetLocalRepository("sample.RamFire,sample.Corners"); BattleSpecification battleSpec = new BattleSpecification(numberOfRounds, battlefield, selectedRobots); // Run our specified battle and let it run till it is over engine.RunBattle(battleSpec, true /* wait till the battle is over */); // Cleanup our RobocodeEngine engine.Close(); }
public void TestFixtureTearDown() { Console.WriteLine("TestFixtureTearDown Started"); if (_robocode != null) { Console.WriteLine("TestFixtureTearDown Unsubscribing"); _robocode.BattleCompleted -= _robocode_BattleCompleted; _robocode.BattleError -= _robocode_BattleError; _robocode.BattleMessage -= _robocode_BattleMessage; Console.WriteLine("TestFixtureTearDown Closing Robocode Instance"); _robocode.Close(); _robocode = null; } Console.WriteLine("TestFixtureTearDown Generating score report"); TestCaseFactory.GenerateScoreReport(); Console.WriteLine("TestFixtureTearDown Done"); }
public void Run(RobocodeEngineParams engineParams) { _engine = new RobocodeEngine(Utility.RobocodeDir); // Event handlers _engine.BattleCompleted += BattleCompleted; _engine.BattleMessage += BattleMessage; _engine.BattleError += BattleError; // Setup _engine.Visible = true; var battlefieldSize = new BattlefieldSpecification(engineParams.Resolution.Width, engineParams.Resolution.Height); var selectedRobots = _engine.GetLocalRepository(engineParams.RobotNames); var battleSpec = new BattleSpecification(engineParams.NumRounds, engineParams.InactivityTime, engineParams.GunCoolingRate, engineParams.HideNames, battlefieldSize, selectedRobots); // Run battle _engine.RunBattle(battleSpec, true); }
public void TestFixtureSetUp() { Console.WriteLine("TestFixtureSetUp Started"); if (_robocode == null) { Console.WriteLine("TestFixtureSetUp Creating Robocode Instance"); _robocode = new RobocodeEngine(@"C:\robocode"); Assert.IsNotNull(_robocode); #if DEBUG var mn = Environment.MachineName.ToUpper(); var visibility = new Dictionary <string, bool> { { "ANDREWDESKTOP", true }, { "ANDREWLAPTOP", true }, { "LDSWKS0920", false } }; _robocode.Visible = visibility[mn]; #else _robocode.Visible = false; #endif Console.WriteLine("TestFixtureSetUp Subscribing"); _robocode.BattleCompleted += _robocode_BattleCompleted; _robocode.BattleError += _robocode_BattleError; _robocode.BattleMessage += _robocode_BattleMessage; } bool x = TestCaseFactory.CheckForUnfinishedBusiness(); if (x) { // ???? } Console.WriteLine("TestFixtureSetUp Done"); }