2007-04-28 20:54:02 +00:00
|
|
|
using System;
|
2025-05-27 14:16:03 -05:00
|
|
|
using System.Linq;
|
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 SetMasterKeyCommand : Command
|
|
|
|
|
{
|
|
|
|
|
public DateTime Created = DateTime.Now;
|
|
|
|
|
|
|
|
|
|
public SetMasterKeyCommand(TestClient testClient)
|
|
|
|
|
{
|
|
|
|
|
Name = "setMasterKey";
|
|
|
|
|
Description = "Sets the key of the master user. The master user can IM to run commands.";
|
2008-07-25 08:55:36 +00:00
|
|
|
Category = CommandCategory.TestClient;
|
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
|
|
|
{
|
2008-07-25 05:15:05 +00:00
|
|
|
Client.MasterKey = UUID.Parse(args[0]);
|
2007-04-28 20:54:02 +00:00
|
|
|
|
2007-08-20 09:26:21 +00:00
|
|
|
lock (Client.Network.Simulators)
|
2007-04-28 20:54:02 +00:00
|
|
|
{
|
2025-05-27 14:16:03 -05:00
|
|
|
foreach (var master in Client.Network.Simulators
|
|
|
|
|
.Select(sim => sim.ObjectsAvatars.FirstOrDefault(
|
|
|
|
|
kvp => kvp.Value.ID == Client.MasterKey))
|
|
|
|
|
.Where(master => master.Value != null))
|
2007-04-28 20:54:02 +00:00
|
|
|
{
|
2025-05-27 14:16:03 -05:00
|
|
|
Client.Self.InstantMessage(master.Value.ID,
|
|
|
|
|
"You are now my master. IM me with \"help\" for a command list.");
|
|
|
|
|
break;
|
2007-04-28 20:54:02 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2022-02-25 19:38:11 -06:00
|
|
|
return "Master set to " + Client.MasterKey;
|
2007-04-28 20:54:02 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|