From 5b6afeafbc249ba88dcc20d1fbc98ce12418b21b Mon Sep 17 00:00:00 2001 From: gareth Date: Tue, 8 May 2007 00:10:04 +0000 Subject: Brought in TestClient code for teh fork --- ExportBot/Commands/TouchCommand.cs | 55 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 ExportBot/Commands/TouchCommand.cs (limited to 'ExportBot/Commands/TouchCommand.cs') diff --git a/ExportBot/Commands/TouchCommand.cs b/ExportBot/Commands/TouchCommand.cs new file mode 100644 index 0000000..4103d21 --- /dev/null +++ b/ExportBot/Commands/TouchCommand.cs @@ -0,0 +1,55 @@ +using System; +using System.Collections.Generic; +using System.Text; +using libsecondlife; +using libsecondlife.Packets; + +namespace libsecondlife.TestClient +{ + public class TouchCommand: Command + { + public TouchCommand(TestClient testClient) + { + Name = "touch"; + Description = "Attempt to touch a prim with specified UUID"; + } + + public override string Execute(string[] args, LLUUID fromAgentID) + { + Primitive target = null; + + lock (Client.SimPrims) + { + if (Client.SimPrims.ContainsKey(Client.Network.CurrentSim)) + { + foreach (Primitive p in Client.SimPrims[Client.Network.CurrentSim].Values) + { + if (args.Length == 0) + return "You must specify a UUID of the prim."; + + try + { + if (p.ID == args[0]) + target = p; + } + catch + { + // handle exception + return "Sorry, I don't think " + args[0] + " is a valid UUID. I'm unable to touch it."; + } + } + } + } + + if (target != null) + { + Client.Self.Touch(target.LocalID); + return "Touched prim " + target.ID + "."; + } + else + { + return "Couldn't find that prim."; + } + } + } +} \ No newline at end of file -- cgit v1.1