Helps if I save the file before submitting

This commit is contained in:
Madpeter 2020-04-26 01:46:27 +01:00
parent 5338733ed0
commit 47246eb189

View file

@ -5,58 +5,34 @@ using System.Text;
namespace BSB.Commands.CMD_Parcel
{
class ParcelReturnObjects : CoreCommand
class ParcelReturnTargeted : CoreCommand
{
public override string Helpfile { get { return "Returns all object from the current parcel to their owners"; } }
public override void Callback(string[] args, EventArgs e)
{
ParcelObjectOwnersReplyEventArgs ObjectOwners = (ParcelObjectOwnersReplyEventArgs)e;
List<UUID> owner_uuids = new List<UUID>();
foreach(ParcelManager.ParcelPrimOwners owner in ObjectOwners.PrimOwners)
{
owner_uuids.Add(owner.OwnerID);
}
if (owner_uuids.Count > 0)
{
int localid = bot.GetClient.Parcels.GetParcelLocalID(bot.GetClient.Network.CurrentSim, bot.GetClient.Self.SimPosition);
Parcel p = bot.GetClient.Network.CurrentSim.Parcels[localid];
if(parcel_static.has_parcel_perm(p,bot) == true)
{
bot.GetClient.Parcels.ReturnObjects(bot.GetClient.Network.CurrentSim, localid, ObjectReturnType.None, owner_uuids);
base.Callback(args, e, true);
}
else
{
base.Callback(args, e, false);
}
}
else
{
base.Callback(args, e, false);
}
}
public override string[] ArgTypes { get { return new[] { "Avatar" }; } }
public override string[] ArgHints { get { return new[] { "Avatar [UUID or Firstname Lastname]" }; } }
public override int MinArgs { get { return 1; } }
public override string Helpfile { get { return "Returns all objects from the current parcel for the selected avatar"; } }
public override bool CallFunction(string[] args)
{
if (base.CallFunction(args) == true)
{
if (UUID.TryParse(args[0], out UUID objectUUID) == true)
if (UUID.TryParse(args[0], out UUID avatarUUID) == true)
{
int localid = bot.GetClient.Parcels.GetParcelLocalID(bot.GetClient.Network.CurrentSim, bot.GetClient.Self.SimPosition);
if (bot.CreateAwaitEventReply("parcelobjectowners", this, args) == true)
Parcel p = bot.GetClient.Network.CurrentSim.Parcels[localid];
if (parcel_static.has_parcel_perm(p, bot) == true)
{
bot.GetClient.Parcels.RequestObjectOwners(bot.GetClient.Network.CurrentSim, localid);
bot.GetClient.Parcels.ReturnObjects(bot.GetClient.Network.CurrentSim, localid, ObjectReturnType.None, new List<UUID>() { avatarUUID });
return true;
}
else
{
return Failed("Unable to await reply");
return Failed("Parcel perm check failed");
}
}
else
{
return Failed("Invaild object UUID");
return Failed("Invaild avatar UUID");
}
}
return false;