Files
libremetaverse/Programs/examples/TestClient/Commands/Inventory/BalanceCommand.cs
2025-01-13 07:44:05 -06:00

35 lines
1010 B
C#

using System;
namespace OpenMetaverse.TestClient
{
public class BalanceCommand: Command
{
public BalanceCommand(TestClient testClient)
{
Name = "balance";
Description = "Shows the amount of L$.";
Category = CommandCategory.Other;
}
public override string Execute(string[] args, UUID fromAgentID)
{
System.Threading.AutoResetEvent waitBalance = new System.Threading.AutoResetEvent(false);
void balance(object sender, BalanceEventArgs e)
{
waitBalance.Set();
}
Client.Self.MoneyBalance += balance;
Client.Self.RequestBalance();
string result = "Timeout waiting for balance reply";
if (waitBalance.WaitOne(TimeSpan.FromSeconds(10), false))
{
result = Client + " has L$: " + Client.Self.Balance;
}
Client.Self.MoneyBalance -= balance;
return result;
}
}
}