* Implements retrieving child primitives via World.Objects[id] (MRM)
* Optimizes SceneGraph - fetches on primitives via "GetGroupByPrim" wont search the entire list if the primitive is infact the root. (Core) * Updates Test MRM.0.6.5-rc1
parent
73ab6bd455
commit
1b56fff7c8
|
@ -860,6 +860,9 @@ namespace OpenSim.Region.Framework.Scenes
|
|||
/// <returns>null if no scene object group containing that prim is found</returns>
|
||||
private SceneObjectGroup GetGroupByPrim(uint localID)
|
||||
{
|
||||
if (Entities.ContainsKey(localID))
|
||||
return Entities[localID] as SceneObjectGroup;
|
||||
|
||||
//m_log.DebugFormat("Entered GetGroupByPrim with localID {0}", localID);
|
||||
List<EntityBase> EntityList = GetEntities();
|
||||
foreach (EntityBase ent in EntityList)
|
||||
|
|
|
@ -53,10 +53,7 @@ namespace OpenSim.Region.OptionalModules.Scripting.Minimodule
|
|||
/// <returns></returns>
|
||||
private SceneObjectPart GetSOP()
|
||||
{
|
||||
if (m_rootScene.Entities.ContainsKey(m_localID))
|
||||
return ((SceneObjectGroup) m_rootScene.Entities[m_localID]).RootPart;
|
||||
|
||||
return null;
|
||||
return m_rootScene.GetSceneObjectPart(m_localID);
|
||||
}
|
||||
|
||||
#region OnTouch
|
||||
|
|
|
@ -33,7 +33,18 @@ namespace OpenSim
|
|||
{
|
||||
public override void Start()
|
||||
{
|
||||
Host.Console.Info("Hello World!");
|
||||
// Say Hello
|
||||
Host.Object.Say("Hello, Avatar!");
|
||||
|
||||
// Register ourselves to listen
|
||||
// for touch events.
|
||||
Host.Object.OnTouch += OnTouched;
|
||||
}
|
||||
|
||||
// This is our touch event handler
|
||||
void OnTouched(IObject sender, TouchEventArgs e)
|
||||
{
|
||||
Host.Object.Say("Touched.");
|
||||
}
|
||||
|
||||
public override void Stop()
|
||||
|
|
Loading…
Reference in New Issue