2007-04-28 20:54:02 +00:00
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Text;
|
2008-07-21 21:12:59 +00:00
|
|
|
using OpenMetaverse;
|
|
|
|
|
using OpenMetaverse.Packets;
|
2007-04-28 20:54:02 +00:00
|
|
|
|
2008-07-21 21:12:59 +00:00
|
|
|
namespace OpenMetaverse.TestClient
|
2007-04-28 20:54:02 +00:00
|
|
|
{
|
|
|
|
|
public class WhoCommand: Command
|
|
|
|
|
{
|
|
|
|
|
public WhoCommand(TestClient testClient)
|
|
|
|
|
{
|
|
|
|
|
Name = "who";
|
|
|
|
|
Description = "Lists seen avatars.";
|
2008-07-25 08:55:36 +00:00
|
|
|
Category = CommandCategory.Other;
|
2007-04-28 20:54:02 +00:00
|
|
|
}
|
|
|
|
|
|
2008-07-25 05:15:05 +00:00
|
|
|
public override string Execute(string[] args, UUID fromAgentID)
|
2007-04-28 20:54:02 +00:00
|
|
|
{
|
|
|
|
|
StringBuilder result = new StringBuilder();
|
2007-08-20 09:26:21 +00:00
|
|
|
|
|
|
|
|
lock (Client.Network.Simulators)
|
|
|
|
|
{
|
|
|
|
|
for (int i = 0; i < Client.Network.Simulators.Count; i++)
|
|
|
|
|
{
|
2008-01-03 21:55:49 +00:00
|
|
|
Client.Network.Simulators[i].ObjectsAvatars.ForEach(
|
2007-08-29 08:55:53 +00:00
|
|
|
delegate(Avatar av)
|
2007-08-20 09:26:21 +00:00
|
|
|
{
|
|
|
|
|
result.AppendLine();
|
2007-08-29 08:55:53 +00:00
|
|
|
result.AppendFormat("{0} (Group: {1}, Location: {2}/{3}, UUID: {4})", av.Name,
|
|
|
|
|
av.GroupName, (av.CurrentSim != null ? av.CurrentSim.Name : String.Empty),
|
2007-11-30 13:15:31 +00:00
|
|
|
av.Position, av.ID.ToString());
|
2007-08-20 09:26:21 +00:00
|
|
|
}
|
2007-08-29 08:55:53 +00:00
|
|
|
);
|
2007-08-20 09:26:21 +00:00
|
|
|
}
|
|
|
|
|
}
|
2007-04-28 20:54:02 +00:00
|
|
|
|
|
|
|
|
return result.ToString();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|