aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs')
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs41
1 files changed, 40 insertions, 1 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
index 7fc7337..893fda1 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
@@ -2539,6 +2539,11 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
2539 2539
2540 public void osNpcSay(LSL_Key npc, string message) 2540 public void osNpcSay(LSL_Key npc, string message)
2541 { 2541 {
2542 osNpcSay(npc, 0, message);
2543 }
2544
2545 public void osNpcSay(LSL_Key npc, int channel, string message)
2546 {
2542 CheckThreatLevel(ThreatLevel.High, "osNpcSay"); 2547 CheckThreatLevel(ThreatLevel.High, "osNpcSay");
2543 m_host.AddScriptLPS(1); 2548 m_host.AddScriptLPS(1);
2544 2549
@@ -2550,7 +2555,24 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
2550 if (!module.CheckPermissions(npcId, m_host.OwnerID)) 2555 if (!module.CheckPermissions(npcId, m_host.OwnerID))
2551 return; 2556 return;
2552 2557
2553 module.Say(npcId, World, message); 2558 module.Say(npcId, World, message, channel);
2559 }
2560 }
2561
2562 public void osNpcShout(LSL_Key npc, int channel, string message)
2563 {
2564 CheckThreatLevel(ThreatLevel.High, "osNpcShout");
2565 m_host.AddScriptLPS(1);
2566
2567 INPCModule module = World.RequestModuleInterface<INPCModule>();
2568 if (module != null)
2569 {
2570 UUID npcId = new UUID(npc.m_string);
2571
2572 if (!module.CheckPermissions(npcId, m_host.OwnerID))
2573 return;
2574
2575 module.Shout(npcId, World, message, channel);
2554 } 2576 }
2555 } 2577 }
2556 2578
@@ -2635,6 +2657,23 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
2635 } 2657 }
2636 } 2658 }
2637 2659
2660 public void osNpcWhisper(LSL_Key npc, int channel, string message)
2661 {
2662 CheckThreatLevel(ThreatLevel.High, "osNpcWhisper");
2663 m_host.AddScriptLPS(1);
2664
2665 INPCModule module = World.RequestModuleInterface<INPCModule>();
2666 if (module != null)
2667 {
2668 UUID npcId = new UUID(npc.m_string);
2669
2670 if (!module.CheckPermissions(npcId, m_host.OwnerID))
2671 return;
2672
2673 module.Whisper(npcId, World, message, channel);
2674 }
2675 }
2676
2638 /// <summary> 2677 /// <summary>
2639 /// Save the current appearance of the script owner permanently to the named notecard. 2678 /// Save the current appearance of the script owner permanently to the named notecard.
2640 /// </summary> 2679 /// </summary>