mirror of
https://github.com/opensim/opensim.git
synced 2026-08-01 06:06:06 +08:00
This update has good news and bad news, first the bad.
* This update breaks inter-region communications, sorry. * You will need to run prebuild. Next, the good; * This update solves the unexpected binary element when Linux simulators inform windows simulators and vice versa. So Linux Simulators and Windows simulators are 100% compatible again. * This update introduces an Integer in the prim crossing method to tell the receiving simulator which XML method to use to load the prim that crossed the border. If the receiving prim doesn't support the method, the prim crossing fails and no prims are lost. That being said, it's best to update all your simulators to this revision at once.
This commit is contained in:
@@ -158,6 +158,7 @@ namespace OpenSim.Region.ClientStack
|
||||
private UpdateShape handlerUpdatePrimShape = null; //null;
|
||||
private ObjectExtraParams handlerUpdateExtraParams = null; //OnUpdateExtraParams;
|
||||
private ObjectDuplicate handlerObjectDuplicate = null;
|
||||
private ObjectDuplicateOnRay handlerObjectDuplicateOnRay = null;
|
||||
private ObjectSelect handlerObjectSelect = null;
|
||||
private ObjectDeselect handlerObjectDeselect = null;
|
||||
private UpdatePrimFlags handlerUpdatePrimFlags = null; //OnUpdatePrimFlags;
|
||||
@@ -675,6 +676,7 @@ namespace OpenSim.Region.ClientStack
|
||||
public event UpdateVector OnGrabObject;
|
||||
public event ObjectSelect OnDeGrabObject;
|
||||
public event ObjectDuplicate OnObjectDuplicate;
|
||||
public event ObjectDuplicateOnRay OnObjectDuplicateOnRay;
|
||||
public event MoveObject OnGrabUpdate;
|
||||
public event AddNewPrim OnAddPrim;
|
||||
public event RequestGodlikePowers OnRequestGodlikePowers;
|
||||
@@ -3590,7 +3592,26 @@ namespace OpenSim.Region.ClientStack
|
||||
// That means multiple object perms may be updated in a single packet.
|
||||
|
||||
break;
|
||||
case PacketType.ObjectDuplicateOnRay:
|
||||
ObjectDuplicateOnRayPacket dupeOnRay = (ObjectDuplicateOnRayPacket)Pack;
|
||||
|
||||
handlerObjectDuplicateOnRay = null;
|
||||
|
||||
|
||||
for (int i = 0; i < dupeOnRay.ObjectData.Length; i++)
|
||||
{
|
||||
handlerObjectDuplicateOnRay = OnObjectDuplicateOnRay;
|
||||
if (handlerObjectDuplicateOnRay != null)
|
||||
{
|
||||
handlerObjectDuplicateOnRay(dupeOnRay.ObjectData[i].ObjectLocalID, dupeOnRay.AgentData.DuplicateFlags,
|
||||
dupeOnRay.AgentData.AgentID, dupeOnRay.AgentData.GroupID, dupeOnRay.AgentData.RayTargetID, dupeOnRay.AgentData.RayEnd,
|
||||
dupeOnRay.AgentData.RayStart, dupeOnRay.AgentData.BypassRaycast, dupeOnRay.AgentData.RayEndIsIntersection,
|
||||
dupeOnRay.AgentData.CopyCenters, dupeOnRay.AgentData.CopyRotates);
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
break;
|
||||
case PacketType.RequestObjectPropertiesFamily:
|
||||
//This powers the little tooltip that appears when you move your mouse over an object
|
||||
RequestObjectPropertiesFamilyPacket packToolTip = (RequestObjectPropertiesFamilyPacket)Pack;
|
||||
|
||||
Reference in New Issue
Block a user