* Fixed References in Prebuild so the project compiles

* Added Friends List methods to IUserData interface
* Created Stub friendslist Database Methods
This commit is contained in:
Teravus Ovares
2007-12-30 23:29:44 +00:00
parent 5b8620d82f
commit 57a1132585
9 changed files with 230 additions and 4 deletions

View File

@@ -27,24 +27,61 @@
*/
using Nini.Config;
using System;
using System.Collections;
using System.Collections.Generic;
using OpenSim.Framework;
using OpenSim.Framework.Console;
using OpenSim.Region.Environment.Interfaces;
using OpenSim.Region.Environment.Scenes;
using libsecondlife;
using libsecondlife.Packets;
namespace OpenSim.Region.Environment.Modules
{
public class FriendsModule : IRegionModule
{
private Scene m_scene;
private List<Scene> m_scenes = new List<Scene>();
private LogBase m_log;
public void Initialise(Scene scene, IConfigSource config)
{
m_scene = scene;
m_log = MainLog.Instance;
if (!m_scenes.Contains(scene))
{
m_scenes.Add(scene);
scene.EventManager.OnNewClient += OnNewClient;
}
}
private void OnNewClient(IClientAPI client)
{
FormFriendship(client,new Guid("c43a67ab-b196-4d62-936c-b40369547dee"));
FormFriendship(client, new Guid("0a2f777b-f44c-4662-8b22-c90ae038a3e6"));
}
public void PostInitialise()
{
}
private void FormFriendship(IClientAPI client, Guid friend)
{
foreach (Scene scene in m_scenes)
{
if (scene.Entities.ContainsKey(client.AgentId) && scene.Entities[client.AgentId] is ScenePresence)
{
OnlineNotificationPacket ONPack = new OnlineNotificationPacket();
OnlineNotificationPacket.AgentBlockBlock[] AgentBlock = new OnlineNotificationPacket.AgentBlockBlock[1];
AgentBlock[0] = new OnlineNotificationPacket.AgentBlockBlock();
AgentBlock[0].AgentID = new LLUUID(friend);
ONPack.AgentBlock = AgentBlock;
client.OutPacket(ONPack,ThrottleOutPacketType.Task);
}
}
}
public void Close()
{
}
@@ -56,7 +93,7 @@ namespace OpenSim.Region.Environment.Modules
public bool IsSharedModule
{
get { return false; }
get { return true; }
}
}
}