diff options
Implements llGetInventoryPermMask()
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs')
-rw-r--r-- | OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs b/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs index f66bfe4..499445a 100644 --- a/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs +++ b/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs | |||
@@ -4113,10 +4113,30 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4113 | } | 4113 | } |
4114 | } | 4114 | } |
4115 | 4115 | ||
4116 | public void llGetInventoryPermMask(string item, int mask) | 4116 | public int llGetInventoryPermMask(string item, int mask) |
4117 | { | 4117 | { |
4118 | m_host.AddScriptLPS(1); | 4118 | m_host.AddScriptLPS(1); |
4119 | NotImplemented("llGetInventoryPermMask"); | 4119 | foreach (KeyValuePair<LLUUID, TaskInventoryItem> inv in m_host.TaskInventory) |
4120 | { | ||
4121 | if (inv.Value.Name == item) | ||
4122 | { | ||
4123 | switch (mask) | ||
4124 | { | ||
4125 | case 0: | ||
4126 | return (int)inv.Value.BaseMask; | ||
4127 | case 1: | ||
4128 | return (int)inv.Value.OwnerMask; | ||
4129 | case 2: | ||
4130 | return (int)inv.Value.GroupMask; | ||
4131 | case 3: | ||
4132 | return (int)inv.Value.EveryoneMask; | ||
4133 | case 4: | ||
4134 | return (int)inv.Value.NextOwnerMask; | ||
4135 | } | ||
4136 | } | ||
4137 | } | ||
4138 | return -1; | ||
4139 | //NotImplemented("llGetInventoryPermMask"); | ||
4120 | } | 4140 | } |
4121 | 4141 | ||
4122 | public void llSetInventoryPermMask(string item, int mask, int value) | 4142 | public void llSetInventoryPermMask(string item, int mask, int value) |