aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Tools
diff options
context:
space:
mode:
authorMelanie2013-08-13 22:53:47 +0100
committerMelanie2013-08-13 22:53:47 +0100
commit4a6eff1ee83f88a188936a1a0d4a2c55924ef1c6 (patch)
tree245e7c3257c8c6c29356ba5c1eb61ae50a127226 /OpenSim/Tools
parentMerge branch 'master' into careminster (diff)
parentminor: Eliminate one of the duplicate 'have's in the HG message telling the u... (diff)
downloadopensim-SC-4a6eff1ee83f88a188936a1a0d4a2c55924ef1c6.zip
opensim-SC-4a6eff1ee83f88a188936a1a0d4a2c55924ef1c6.tar.gz
opensim-SC-4a6eff1ee83f88a188936a1a0d4a2c55924ef1c6.tar.bz2
opensim-SC-4a6eff1ee83f88a188936a1a0d4a2c55924ef1c6.tar.xz
Merge branch 'master' into careminster
Diffstat (limited to 'OpenSim/Tools')
-rw-r--r--OpenSim/Tools/pCampBot/Behaviours/NoneBehaviour.cs43
-rw-r--r--OpenSim/Tools/pCampBot/BotManager.cs30
-rw-r--r--OpenSim/Tools/pCampBot/pCampBot.cs7
3 files changed, 70 insertions, 10 deletions
diff --git a/OpenSim/Tools/pCampBot/Behaviours/NoneBehaviour.cs b/OpenSim/Tools/pCampBot/Behaviours/NoneBehaviour.cs
new file mode 100644
index 0000000..9cf8a54
--- /dev/null
+++ b/OpenSim/Tools/pCampBot/Behaviours/NoneBehaviour.cs
@@ -0,0 +1,43 @@
1/*
2 * Copyright (c) Contributors, http://opensimulator.org/
3 * See CONTRIBUTORS.TXT for a full list of copyright holders.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * * Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 * * Neither the name of the OpenSimulator Project nor the
13 * names of its contributors may be used to endorse or promote products
14 * derived from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
17 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
28using OpenMetaverse;
29using System;
30using System.Collections.Generic;
31using System.Linq;
32using pCampBot.Interfaces;
33
34namespace pCampBot
35{
36 /// <summary>
37 /// Do nothing
38 /// </summary>
39 public class NoneBehaviour : AbstractBehaviour
40 {
41 public NoneBehaviour() { Name = "None"; }
42 }
43} \ No newline at end of file
diff --git a/OpenSim/Tools/pCampBot/BotManager.cs b/OpenSim/Tools/pCampBot/BotManager.cs
index d615b3f..74bd36a 100644
--- a/OpenSim/Tools/pCampBot/BotManager.cs
+++ b/OpenSim/Tools/pCampBot/BotManager.cs
@@ -177,18 +177,21 @@ namespace pCampBot
177 // We must give each bot its own list of instantiated behaviours since they store state. 177 // We must give each bot its own list of instantiated behaviours since they store state.
178 List<IBehaviour> behaviours = new List<IBehaviour>(); 178 List<IBehaviour> behaviours = new List<IBehaviour>();
179 179
180 // Hard-coded for now 180 // Hard-coded for now
181 if (behaviourSwitches.Contains("p")) 181 if (behaviourSwitches.Contains("c"))
182 behaviours.Add(new PhysicsBehaviour()); 182 behaviours.Add(new CrossBehaviour());
183 183
184 if (behaviourSwitches.Contains("g")) 184 if (behaviourSwitches.Contains("g"))
185 behaviours.Add(new GrabbingBehaviour()); 185 behaviours.Add(new GrabbingBehaviour());
186
187 if (behaviourSwitches.Contains("n"))
188 behaviours.Add(new NoneBehaviour());
189
190 if (behaviourSwitches.Contains("p"))
191 behaviours.Add(new PhysicsBehaviour());
186 192
187 if (behaviourSwitches.Contains("t")) 193 if (behaviourSwitches.Contains("t"))
188 behaviours.Add(new TeleportBehaviour()); 194 behaviours.Add(new TeleportBehaviour());
189
190 if (behaviourSwitches.Contains("c"))
191 behaviours.Add(new CrossBehaviour());
192 195
193 StartBot(this, behaviours, firstName, lastName, password, loginUri); 196 StartBot(this, behaviours, firstName, lastName, password, loginUri);
194 } 197 }
@@ -327,17 +330,30 @@ namespace pCampBot
327 string outputFormat = "{0,-30} {1, -30} {2,-14}"; 330 string outputFormat = "{0,-30} {1, -30} {2,-14}";
328 MainConsole.Instance.OutputFormat(outputFormat, "Name", "Region", "Status"); 331 MainConsole.Instance.OutputFormat(outputFormat, "Name", "Region", "Status");
329 332
333 Dictionary<ConnectionState, int> totals = new Dictionary<ConnectionState, int>();
334 foreach (object o in Enum.GetValues(typeof(ConnectionState)))
335 totals[(ConnectionState)o] = 0;
336
330 lock (m_lBot) 337 lock (m_lBot)
331 { 338 {
332 foreach (Bot pb in m_lBot) 339 foreach (Bot pb in m_lBot)
333 { 340 {
334 Simulator currentSim = pb.Client.Network.CurrentSim; 341 Simulator currentSim = pb.Client.Network.CurrentSim;
342 totals[pb.ConnectionState]++;
335 343
336 MainConsole.Instance.OutputFormat( 344 MainConsole.Instance.OutputFormat(
337 outputFormat, 345 outputFormat,
338 pb.Name, currentSim != null ? currentSim.Name : "(none)", pb.ConnectionState); 346 pb.Name, currentSim != null ? currentSim.Name : "(none)", pb.ConnectionState);
339 } 347 }
340 } 348 }
349
350 ConsoleDisplayList cdl = new ConsoleDisplayList();
351
352 foreach (KeyValuePair<ConnectionState, int> kvp in totals)
353 cdl.AddRow(kvp.Key, kvp.Value);
354
355
356 MainConsole.Instance.OutputFormat("\n{0}", cdl.ToString());
341 } 357 }
342 358
343 /* 359 /*
diff --git a/OpenSim/Tools/pCampBot/pCampBot.cs b/OpenSim/Tools/pCampBot/pCampBot.cs
index 9e82577..2707a49 100644
--- a/OpenSim/Tools/pCampBot/pCampBot.cs
+++ b/OpenSim/Tools/pCampBot/pCampBot.cs
@@ -123,9 +123,10 @@ namespace pCampBot
123 " -password password for the bots\n" + 123 " -password password for the bots\n" +
124 " -b, behaviours behaviours for bots. Comma separated, e.g. p,g. Default is p\n" + 124 " -b, behaviours behaviours for bots. Comma separated, e.g. p,g. Default is p\n" +
125 " current options are:\n" + 125 " current options are:\n" +
126 " p (physics)\n" + 126 " p (physics - bots constantly move and jump around)\n" +
127 " g (grab)\n" + 127 " g (grab - bots randomly click prims whether set clickable or not)\n" +
128 " t (teleport)\n" + 128 " n (none - bots do nothing)\n" +
129 " t (teleport - bots regularly teleport between regions on the grid)\n" +
129// " c (cross)" + 130// " c (cross)" +
130 " -wear set appearance folder to load from (default: no)\n" + 131 " -wear set appearance folder to load from (default: no)\n" +
131 " -h, -help show this message"); 132 " -h, -help show this message");