diff options
Diffstat (limited to 'OpenSim')
-rw-r--r-- | OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs | 27 |
1 files changed, 21 insertions, 6 deletions
diff --git a/OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs b/OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs index 9a61702..a895ee1 100644 --- a/OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs +++ b/OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs | |||
@@ -44,6 +44,20 @@ namespace OpenSim.Region.OptionalModules.World.NPC | |||
44 | { | 44 | { |
45 | public bool SenseAsAgent { get; set; } | 45 | public bool SenseAsAgent { get; set; } |
46 | 46 | ||
47 | public delegate void ChatToNPC( | ||
48 | string message, byte type, Vector3 fromPos, string fromName, | ||
49 | UUID fromAgentID, UUID ownerID, byte source, byte audible); | ||
50 | |||
51 | /// <summary> | ||
52 | /// Fired when the NPC receives a chat message. | ||
53 | /// </summary> | ||
54 | public event ChatToNPC OnChatToNPC; | ||
55 | |||
56 | /// <summary> | ||
57 | /// Fired when the NPC receives an instant message. | ||
58 | /// </summary> | ||
59 | public event Action<GridInstantMessage> OnInstantMessageToNPC; | ||
60 | |||
47 | private readonly string m_firstname; | 61 | private readonly string m_firstname; |
48 | private readonly string m_lastname; | 62 | private readonly string m_lastname; |
49 | private readonly Vector3 m_startPos; | 63 | private readonly Vector3 m_startPos; |
@@ -614,17 +628,18 @@ namespace OpenSim.Region.OptionalModules.World.NPC | |||
614 | string message, byte type, Vector3 fromPos, string fromName, | 628 | string message, byte type, Vector3 fromPos, string fromName, |
615 | UUID fromAgentID, UUID ownerID, byte source, byte audible) | 629 | UUID fromAgentID, UUID ownerID, byte source, byte audible) |
616 | { | 630 | { |
617 | } | 631 | ChatToNPC ctn = OnChatToNPC; |
618 | 632 | ||
619 | public virtual void SendChatMessage( | 633 | if (ctn != null) |
620 | byte[] message, byte type, Vector3 fromPos, string fromName, | 634 | ctn(message, type, fromPos, fromName, fromAgentID, ownerID, source, audible); |
621 | UUID fromAgentID, UUID ownerID, byte source, byte audible) | ||
622 | { | ||
623 | } | 635 | } |
624 | 636 | ||
625 | public void SendInstantMessage(GridInstantMessage im) | 637 | public void SendInstantMessage(GridInstantMessage im) |
626 | { | 638 | { |
627 | 639 | Action<GridInstantMessage> oimtn = OnInstantMessageToNPC; | |
640 | |||
641 | if (oimtn != null) | ||
642 | oimtn(im); | ||
628 | } | 643 | } |
629 | 644 | ||
630 | public void SendGenericMessage(string method, UUID invoice, List<string> message) | 645 | public void SendGenericMessage(string method, UUID invoice, List<string> message) |