public void AddPlayerTest() { Pug pug = new Pug(); pug.AddPlayer( player1, PlayerClass.Medic ); Assert.Contains( player1, pug.Players[PlayerClass.Medic] ); }
public void ReAddPlayerTest() { Pug pug = new Pug(); pug.AddPlayer( player1, PlayerClass.Medic ); pug.AddPlayer( player1, PlayerClass.Demo ); Assert.IsEmpty( pug.Players[PlayerClass.Medic] ); }
public void AddTooManyPlayersTest() { Pug pug = new Pug(); pug.AddPlayer( player1, PlayerClass.Medic ); pug.AddPlayer( player2, PlayerClass.Medic ); pug.AddPlayer( player3, PlayerClass.Medic ); Assert.That( pug.Players[PlayerClass.Medic].Count, Is.EqualTo( 2 ) ); }
public StatusCommand( Pug currentPug, IrcBot bot ) : base(currentPug, bot) { b_command = new Regex( @"^status", RegexOptions.Compiled | RegexOptions.IgnoreCase ); }
public AddCommand( Pug currentPug, IrcBot bot ) : base(currentPug, bot) { }
void irc_OnConnected( object sender, EventArgs e ) { IrcClient.Login( new string[] { @"TF2-PUG-Bot", @"TF2PugBot", @"TF2Pugs" }, @"TF2 PUG Bot", 0, @"TF2PUGBot" ); IrcClient.WriteLine( String.Format( "AUTHSERV AUTH {0} {1}", gameSurgeAuth, gameSurgeAuthPassword ) ); IrcClient.RfcJoin( Channel ); CurrentPug = new Pug(); UpdateTopic(); CurrentPug.OnPlayerAdded += new PlayerAddedOrRemovedHandler( CurrentPug_OnPlayerAdded ); CurrentPug.OnPlayerRemoved += new PlayerAddedOrRemovedHandler( CurrentPug_OnPlayerRemoved ); CurrentPug.OnPugFull += new PugFullHandler( CurrentPug_OnPugFull ); CurrentPug.OnPugStarted += new PugStartedHandler( CurrentPug_OnPugStarted ); CommandList = new List<Commands.PlayerCommand>(); CommandList.Add( new Commands.AddCommand( CurrentPug, this ) ); CommandList.Add( new Commands.RemoveCommand( CurrentPug, this ) ); CommandList.Add( new Commands.SkillCommand( CurrentPug, this ) ); CommandList.Add( new Commands.HelpCommand( CurrentPug, this ) ); CommandList.Add( new Commands.MumbleCommand( CurrentPug, this ) ); CommandList.Add( new Commands.TestCommand( CurrentPug, this ) ); CommandList.Add( new Commands.TopicCommand( CurrentPug, this ) ); CommandList.Add( new Commands.QuitCommand( CurrentPug, this ) ); CommandList.Add( new Commands.StatusCommand( CurrentPug, this ) ); CommandList.Add( new Commands.ServerCommand( CurrentPug, this ) ); CommandList.Add( new Commands.NextServerCommand( CurrentPug, this ) ); CommandList.Add( new Commands.MapCommand( CurrentPug, this ) ); CommandList.Add( new Commands.NextMapCommand( CurrentPug, this ) ); }
void CurrentPug_OnPugStarted( object sender, PugStartedEventsArgs e ) { IrcClient.SendMessage( SendType.Message, Channel, String.Format( "\x3\x32 BLU Team: {0} medic, {1} demo, {2} soldier, {3} soldier, {4} scout, {5} scout", new string[] { e.BluTeam.Players[PlayerClass.Medic][0].Name, e.BluTeam.Players[PlayerClass.Demo][0].Name, e.BluTeam.Players[PlayerClass.Soldier][0].Name, e.BluTeam.Players[PlayerClass.Soldier][1].Name, e.BluTeam.Players[PlayerClass.Scout][0].Name, e.BluTeam.Players[PlayerClass.Scout][1].Name } ) ); IrcClient.SendMessage( SendType.Message, Channel, String.Format( "\x3\x34 RED Team: {0} medic, {1} demo, {2} soldier, {3} soldier, {4} scout, {5} scout", new string[] { e.RedTeam.Players[PlayerClass.Medic][0].Name, e.RedTeam.Players[PlayerClass.Demo][0].Name, e.RedTeam.Players[PlayerClass.Soldier][0].Name, e.RedTeam.Players[PlayerClass.Soldier][1].Name, e.RedTeam.Players[PlayerClass.Scout][0].Name, e.RedTeam.Players[PlayerClass.Scout][1].Name } ) ); IrcClient.SendMessage( SendType.Message, Channel, String.Format( "PUG will be played on {0} on the map {1}", ((Pug)sender).Server.FriendlyName, ((Pug)sender).Map.FriendlyName ) ); CurrentPug = null; CurrentPug = new Pug(); UpdateTopic(); CurrentPug.OnPlayerAdded += new PlayerAddedOrRemovedHandler( CurrentPug_OnPlayerAdded ); CurrentPug.OnPlayerRemoved += new PlayerAddedOrRemovedHandler( CurrentPug_OnPlayerRemoved ); CurrentPug.OnPugFull += new PugFullHandler( CurrentPug_OnPugFull ); CurrentPug.OnPugStarted += new PugStartedHandler( CurrentPug_OnPugStarted ); // Eventually do something to clean this up: CommandList = new List<Commands.PlayerCommand>(); CommandList.Add( new Commands.AddCommand( CurrentPug, this ) ); CommandList.Add( new Commands.RemoveCommand( CurrentPug, this ) ); CommandList.Add( new Commands.SkillCommand( CurrentPug, this ) ); CommandList.Add( new Commands.HelpCommand( CurrentPug, this ) ); CommandList.Add( new Commands.MumbleCommand( CurrentPug, this ) ); CommandList.Add( new Commands.TestCommand( CurrentPug, this ) ); CommandList.Add( new Commands.TopicCommand( CurrentPug, this ) ); CommandList.Add( new Commands.QuitCommand( CurrentPug, this ) ); CommandList.Add( new Commands.StatusCommand( CurrentPug, this ) ); CommandList.Add( new Commands.ServerCommand( CurrentPug, this ) ); CommandList.Add( new Commands.NextServerCommand( CurrentPug, this ) ); CommandList.Add( new Commands.MapCommand( CurrentPug, this ) ); CommandList.Add( new Commands.NextMapCommand( CurrentPug, this ) ); }
public RemoveCommand( Pug currentPug, IrcBot bot ) : base(currentPug, bot) { }
public TestCommand( Pug currentPug, IrcBot bot ) : base(currentPug, bot) { b_command = new Regex( @"^test", RegexOptions.Compiled | RegexOptions.IgnoreCase ); }
public void StartTest() { Pug pug = new Pug(); pug.AddPlayer( player1, PlayerClass.Medic ); pug.AddPlayer( player2, PlayerClass.Medic ); pug.AddPlayer( player3, PlayerClass.Demo ); pug.AddPlayer( player4, PlayerClass.Demo ); pug.AddPlayer( player5, PlayerClass.Scout ); pug.AddPlayer( player6, PlayerClass.Scout ); pug.AddPlayer( player7, PlayerClass.Scout ); pug.AddPlayer( player8, PlayerClass.Scout ); pug.AddPlayer( player9, PlayerClass.Soldier ); pug.AddPlayer( player10, PlayerClass.Soldier ); pug.AddPlayer( player11, PlayerClass.Soldier ); pug.AddPlayer( player12, PlayerClass.Soldier ); PugStartedHandler anonDelegate = delegate( object sender, PugStartedEventsArgs data ) { Assert.IsFalse( (player1 == data.RedTeam.Players[PlayerClass.Medic][0]) && (player3 == data.RedTeam.Players[PlayerClass.Demo][0]), @"Teams are not balanced." ); Assert.IsFalse( (player1 == data.BluTeam.Players[PlayerClass.Medic][0]) && (player3 == data.BluTeam.Players[PlayerClass.Demo][0]), @"Teams are not balanced." ); }; pug.OnPugStarted += anonDelegate; pug.Start( map, server ); pug.OnPugStarted -= anonDelegate; }
public void PugStartWithNotEnoughPlayersTest() { Pug pug = new Pug(); pug.AddPlayer( player1, PlayerClass.Medic ); pug.Start( map, server ); }
public HelpCommand( Pug currentPug, IrcBot bot ) : base(currentPug, bot) { b_command = new Regex( @"^help|^man", RegexOptions.Compiled | RegexOptions.IgnoreCase ); }
public MumbleCommand( Pug currentPug, IrcBot bot ) : base(currentPug, bot) { b_command = new Regex( @"^mumble|^vent", RegexOptions.Compiled | RegexOptions.IgnoreCase ); }
public PlayerCommand( Pug currentPug, IrcBot bot ) { this.CurrentPug = currentPug; this.IrcBot = bot; }