diff options
Add llRegionSayTo
llRegionSayTo(key target, integer channel, string messasge)
Allows messages to be sent region-wide
to a particular prim.
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs')
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 27 |
1 files changed, 21 insertions, 6 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index c84afee..25d7ad9 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||
@@ -843,6 +843,27 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
843 | wComm.DeliverMessage(ChatTypeEnum.Region, channelID, m_host.Name, m_host.UUID, text); | 843 | wComm.DeliverMessage(ChatTypeEnum.Region, channelID, m_host.Name, m_host.UUID, text); |
844 | } | 844 | } |
845 | 845 | ||
846 | public void llRegionSayTo(string target, int channel, string msg) | ||
847 | { | ||
848 | if (channel == 0) | ||
849 | { | ||
850 | LSLError("Cannot use llRegionSay() on channel 0"); | ||
851 | return; | ||
852 | } | ||
853 | |||
854 | if (msg.Length > 1023) | ||
855 | msg = msg.Substring(0, 1023); | ||
856 | |||
857 | m_host.AddScriptLPS(1); | ||
858 | |||
859 | UUID TargetID; | ||
860 | UUID.TryParse(target, out TargetID); | ||
861 | |||
862 | IWorldComm wComm = m_ScriptEngine.World.RequestModuleInterface<IWorldComm>(); | ||
863 | if (wComm != null) | ||
864 | wComm.DeliverMessageTo(TargetID, channel, m_host.Name, m_host.UUID, msg); | ||
865 | } | ||
866 | |||
846 | public LSL_Integer llListen(int channelID, string name, string ID, string msg) | 867 | public LSL_Integer llListen(int channelID, string name, string ID, string msg) |
847 | { | 868 | { |
848 | m_host.AddScriptLPS(1); | 869 | m_host.AddScriptLPS(1); |
@@ -10486,12 +10507,6 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
10486 | NotImplemented("llGetUsedMemory"); | 10507 | NotImplemented("llGetUsedMemory"); |
10487 | } | 10508 | } |
10488 | 10509 | ||
10489 | public void llRegionSayTo(LSL_Key target, LSL_Integer channel, LSL_String msg) | ||
10490 | { | ||
10491 | m_host.AddScriptLPS(1); | ||
10492 | NotImplemented("llRegionSayTo"); | ||
10493 | } | ||
10494 | |||
10495 | public void llScriptProfiler(LSL_Integer flags) | 10510 | public void llScriptProfiler(LSL_Integer flags) |
10496 | { | 10511 | { |
10497 | m_host.AddScriptLPS(1); | 10512 | m_host.AddScriptLPS(1); |