diff --git a/OpenSim/Tools/pCampBot/Behaviours/AbstractBehaviour.cs b/OpenSim/Tools/pCampBot/Behaviours/AbstractBehaviour.cs
index 9a9371d050..66d5542844 100644
--- a/OpenSim/Tools/pCampBot/Behaviours/AbstractBehaviour.cs
+++ b/OpenSim/Tools/pCampBot/Behaviours/AbstractBehaviour.cs
@@ -35,6 +35,11 @@ namespace pCampBot
{
public class AbstractBehaviour : IBehaviour
{
+ ///
+ /// Abbreviated name of this behaviour.
+ ///
+ public string AbbreviatedName { get; protected set; }
+
public string Name { get; protected set; }
public Bot Bot { get; protected set; }
diff --git a/OpenSim/Tools/pCampBot/Behaviours/CrossBehaviour.cs b/OpenSim/Tools/pCampBot/Behaviours/CrossBehaviour.cs
index 1e01c64034..4d806fcc67 100644
--- a/OpenSim/Tools/pCampBot/Behaviours/CrossBehaviour.cs
+++ b/OpenSim/Tools/pCampBot/Behaviours/CrossBehaviour.cs
@@ -47,7 +47,11 @@ namespace pCampBot
public const int m_regionCrossingTimeout = 1000 * 60;
- public CrossBehaviour() { Name = "Cross"; }
+ public CrossBehaviour()
+ {
+ AbbreviatedName = "c";
+ Name = "Cross";
+ }
public override void Action()
{
diff --git a/OpenSim/Tools/pCampBot/Behaviours/GrabbingBehaviour.cs b/OpenSim/Tools/pCampBot/Behaviours/GrabbingBehaviour.cs
index 66a336a0c6..6acc27d42f 100644
--- a/OpenSim/Tools/pCampBot/Behaviours/GrabbingBehaviour.cs
+++ b/OpenSim/Tools/pCampBot/Behaviours/GrabbingBehaviour.cs
@@ -41,7 +41,11 @@ namespace pCampBot
///
public class GrabbingBehaviour : AbstractBehaviour
{
- public GrabbingBehaviour() { Name = "Grabbing"; }
+ public GrabbingBehaviour()
+ {
+ AbbreviatedName = "g";
+ Name = "Grabbing";
+ }
public override void Action()
{
diff --git a/OpenSim/Tools/pCampBot/Behaviours/NoneBehaviour.cs b/OpenSim/Tools/pCampBot/Behaviours/NoneBehaviour.cs
index 9cf8a54594..9a3075c5c4 100644
--- a/OpenSim/Tools/pCampBot/Behaviours/NoneBehaviour.cs
+++ b/OpenSim/Tools/pCampBot/Behaviours/NoneBehaviour.cs
@@ -38,6 +38,10 @@ namespace pCampBot
///
public class NoneBehaviour : AbstractBehaviour
{
- public NoneBehaviour() { Name = "None"; }
+ public NoneBehaviour()
+ {
+ AbbreviatedName = "n";
+ Name = "None";
+ }
}
}
\ No newline at end of file
diff --git a/OpenSim/Tools/pCampBot/Behaviours/PhysicsBehaviour.cs b/OpenSim/Tools/pCampBot/Behaviours/PhysicsBehaviour.cs
index daa7485bed..47b4d46108 100644
--- a/OpenSim/Tools/pCampBot/Behaviours/PhysicsBehaviour.cs
+++ b/OpenSim/Tools/pCampBot/Behaviours/PhysicsBehaviour.cs
@@ -46,6 +46,7 @@ namespace pCampBot
public PhysicsBehaviour()
{
+ AbbreviatedName = "p";
Name = "Physics";
talkarray = readexcuses();
}
diff --git a/OpenSim/Tools/pCampBot/Behaviours/TeleportBehaviour.cs b/OpenSim/Tools/pCampBot/Behaviours/TeleportBehaviour.cs
index fbb4e961d8..5f7edda2f8 100644
--- a/OpenSim/Tools/pCampBot/Behaviours/TeleportBehaviour.cs
+++ b/OpenSim/Tools/pCampBot/Behaviours/TeleportBehaviour.cs
@@ -42,7 +42,11 @@ namespace pCampBot
{
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
- public TeleportBehaviour() { Name = "Teleport"; }
+ public TeleportBehaviour()
+ {
+ AbbreviatedName = "t";
+ Name = "Teleport";
+ }
public override void Action()
{
diff --git a/OpenSim/Tools/pCampBot/BotManager.cs b/OpenSim/Tools/pCampBot/BotManager.cs
index 5c3835bd14..35a24d111c 100644
--- a/OpenSim/Tools/pCampBot/BotManager.cs
+++ b/OpenSim/Tools/pCampBot/BotManager.cs
@@ -572,10 +572,11 @@ namespace pCampBot
private void HandleShowBotsStatus(string module, string[] cmd)
{
ConsoleDisplayTable cdt = new ConsoleDisplayTable();
- cdt.AddColumn("Name", 30);
- cdt.AddColumn("Region", 30);
- cdt.AddColumn("Status", 14);
- cdt.AddColumn("Connections", 11);
+ cdt.AddColumn("Name", 24);
+ cdt.AddColumn("Region", 24);
+ cdt.AddColumn("Status", 13);
+ cdt.AddColumn("Conns", 5);
+ cdt.AddColumn("Behaviours", 20);
Dictionary totals = new Dictionary();
foreach (object o in Enum.GetValues(typeof(ConnectionState)))
@@ -583,13 +584,17 @@ namespace pCampBot
lock (m_bots)
{
- foreach (Bot pb in m_bots)
+ foreach (Bot bot in m_bots)
{
- Simulator currentSim = pb.Client.Network.CurrentSim;
- totals[pb.ConnectionState]++;
+ Simulator currentSim = bot.Client.Network.CurrentSim;
+ totals[bot.ConnectionState]++;
cdt.AddRow(
- pb.Name, currentSim != null ? currentSim.Name : "(none)", pb.ConnectionState, pb.SimulatorsCount);
+ bot.Name,
+ currentSim != null ? currentSim.Name : "(none)",
+ bot.ConnectionState,
+ bot.SimulatorsCount,
+ string.Join(",", bot.Behaviours.ConvertAll(behaviour => behaviour.AbbreviatedName)));
}
}
@@ -645,6 +650,7 @@ namespace pCampBot
MainConsole.Instance.Output("Settings");
ConsoleDisplayList statusCdl = new ConsoleDisplayList();
+ statusCdl.AddRow("Behaviours", string.Join(", ", bot.Behaviours.ConvertAll(b => b.Name)));
GridClient botClient = bot.Client;
statusCdl.AddRow("SEND_AGENT_UPDATES", botClient.Settings.SEND_AGENT_UPDATES);
diff --git a/OpenSim/Tools/pCampBot/Interfaces/IBehaviour.cs b/OpenSim/Tools/pCampBot/Interfaces/IBehaviour.cs
index 9c984be82e..f8a661badd 100644
--- a/OpenSim/Tools/pCampBot/Interfaces/IBehaviour.cs
+++ b/OpenSim/Tools/pCampBot/Interfaces/IBehaviour.cs
@@ -31,6 +31,11 @@ namespace pCampBot.Interfaces
{
public interface IBehaviour
{
+ ///
+ /// Abbreviated name of this behaviour.
+ ///
+ string AbbreviatedName { get; }
+
///
/// Name of this behaviour.
///