From 6942eaed5b3d8065ebf01dc465e905ca456c0fa4 Mon Sep 17 00:00:00 2001
From: Charles Krinke
Date: Mon, 29 Jun 2009 21:47:47 +0000
Subject: Thank you kindly, Snowdrop, for a patch that solves: The current API
for MRM is quite sparse, this patch supplies basic support for accessing the
task inventory of object.
---
.../Scripting/Minimodule/Interfaces/IAvatar.cs | 8 +++++++-
.../Scripting/Minimodule/Interfaces/IInventoryItem.cs | 16 ++++++++++++++++
.../Scripting/Minimodule/Interfaces/IObject.cs | 4 ++++
3 files changed, 27 insertions(+), 1 deletion(-)
create mode 100644 OpenSim/Region/OptionalModules/Scripting/Minimodule/Interfaces/IInventoryItem.cs
(limited to 'OpenSim/Region/OptionalModules/Scripting/Minimodule/Interfaces')
diff --git a/OpenSim/Region/OptionalModules/Scripting/Minimodule/Interfaces/IAvatar.cs b/OpenSim/Region/OptionalModules/Scripting/Minimodule/Interfaces/IAvatar.cs
index 51ba36c..3345988 100644
--- a/OpenSim/Region/OptionalModules/Scripting/Minimodule/Interfaces/IAvatar.cs
+++ b/OpenSim/Region/OptionalModules/Scripting/Minimodule/Interfaces/IAvatar.cs
@@ -50,6 +50,12 @@ namespace OpenSim.Region.OptionalModules.Scripting.Minimodule
////
/// Array of worn attachments, empty but not null, if no attachments are worn
///
- IAvatarAttachment[] Attachments { get; }
+
+ IAvatarAttachment[] Attachments { get; }
+
+ ///
+ /// Request to open an url clientside
+ ///
+ void LoadUrl(IObject sender, string message, string url);
}
}
diff --git a/OpenSim/Region/OptionalModules/Scripting/Minimodule/Interfaces/IInventoryItem.cs b/OpenSim/Region/OptionalModules/Scripting/Minimodule/Interfaces/IInventoryItem.cs
new file mode 100644
index 0000000..7490dda
--- /dev/null
+++ b/OpenSim/Region/OptionalModules/Scripting/Minimodule/Interfaces/IInventoryItem.cs
@@ -0,0 +1,16 @@
+using System;
+using OpenMetaverse;
+
+namespace OpenSim.Region.OptionalModules.Scripting.Minimodule
+{
+
+ ///
+ /// This implements the methods needed to operate on individual inventory items.
+ ///
+ public interface IInventoryItem
+ {
+ int Type { get; }
+ UUID AssetID { get; }
+ T RetreiveAsset() where T : OpenMetaverse.Asset, new();
+ }
+}
diff --git a/OpenSim/Region/OptionalModules/Scripting/Minimodule/Interfaces/IObject.cs b/OpenSim/Region/OptionalModules/Scripting/Minimodule/Interfaces/IObject.cs
index dd9cc29..1be3b71 100644
--- a/OpenSim/Region/OptionalModules/Scripting/Minimodule/Interfaces/IObject.cs
+++ b/OpenSim/Region/OptionalModules/Scripting/Minimodule/Interfaces/IObject.cs
@@ -179,6 +179,10 @@ namespace OpenSim.Region.OptionalModules.Scripting.Minimodule
/// The message to send to the user
void Say(string msg);
+ ////
+ /// Grants access to the objects inventory
+ ///
+ IObjectInventory Inventory { get; }
}
public enum PhysicsMaterial
--
cgit v1.1