Files
libremetaverse/Programs/examples/TestClient/Commands/Inventory/ScriptCommand.cs

39 lines
1.1 KiB
C#
Raw Normal View History

using System;
using System.IO;
using OpenMetaverse;
namespace OpenMetaverse.TestClient
{
public class ScriptCommand : Command
{
public ScriptCommand(TestClient testClient)
{
Name = "script";
Description = "Reads TestClient commands from a file. One command per line, arguments separated by spaces. Usage: script [filename]";
Category = CommandCategory.TestClient;
}
public override string Execute(string[] args, UUID fromAgentID)
{
if (args.Length != 1)
return "Usage: script [filename]";
// Load the file
string[] lines;
try { lines = File.ReadAllLines(args[0]); }
catch (Exception e) { return e.Message; }
// Execute all of the commands
2021-07-25 11:10:52 -05:00
foreach (var l in lines)
{
2021-07-25 11:10:52 -05:00
string line = l.Trim();
if (line.Length > 0)
ClientManager.Instance.DoCommandAll(line, UUID.Zero);
}
return "Finished executing " + lines.Length + " commands";
}
}
}