inlined packet deserialization
parent
33ef93f4a6
commit
581ea0d92e
|
@ -98,34 +98,5 @@ namespace OpenSim.Framework.Types
|
|||
|
||||
return primShape;
|
||||
}
|
||||
|
||||
public static PrimitiveBaseShape FromAddPacket(ObjectAddPacket addPacket)
|
||||
{
|
||||
PrimitiveBaseShape pShape = new PrimitiveBaseShape();
|
||||
|
||||
pShape.PCode = addPacket.ObjectData.PCode;
|
||||
pShape.PathBegin = addPacket.ObjectData.PathBegin;
|
||||
pShape.PathEnd = addPacket.ObjectData.PathEnd;
|
||||
pShape.PathScaleX = addPacket.ObjectData.PathScaleX;
|
||||
pShape.PathScaleY = addPacket.ObjectData.PathScaleY;
|
||||
pShape.PathShearX = addPacket.ObjectData.PathShearX;
|
||||
pShape.PathShearY = addPacket.ObjectData.PathShearY;
|
||||
pShape.PathSkew = addPacket.ObjectData.PathSkew;
|
||||
pShape.ProfileBegin = addPacket.ObjectData.ProfileBegin;
|
||||
pShape.ProfileEnd = addPacket.ObjectData.ProfileEnd;
|
||||
pShape.Scale = addPacket.ObjectData.Scale;
|
||||
pShape.PathCurve = addPacket.ObjectData.PathCurve;
|
||||
pShape.ProfileCurve = addPacket.ObjectData.ProfileCurve;
|
||||
pShape.ProfileHollow = addPacket.ObjectData.ProfileHollow;
|
||||
pShape.PathRadiusOffset = addPacket.ObjectData.PathRadiusOffset;
|
||||
pShape.PathRevolutions = addPacket.ObjectData.PathRevolutions;
|
||||
pShape.PathTaperX = addPacket.ObjectData.PathTaperX;
|
||||
pShape.PathTaperY = addPacket.ObjectData.PathTaperY;
|
||||
pShape.PathTwist = addPacket.ObjectData.PathTwist;
|
||||
pShape.PathTwistBegin = addPacket.ObjectData.PathTwistBegin;
|
||||
LLObject.TextureEntry ntex = new LLObject.TextureEntry(new LLUUID("00000000-0000-0000-9999-000000000005"));
|
||||
pShape.TextureEntry = ntex.ToBytes();
|
||||
return pShape;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -217,19 +217,43 @@ namespace OpenSim.Region.ClientStack
|
|||
case PacketType.ObjectAdd:
|
||||
if (OnAddPrim != null)
|
||||
{
|
||||
ObjectAddPacket packet = (ObjectAddPacket) Pack ;
|
||||
PrimitiveBaseShape primShape = PrimitiveBaseShape.FromAddPacket( packet );
|
||||
ObjectAddPacket addPacket = (ObjectAddPacket) Pack ;
|
||||
|
||||
OnAddPrim(this.AgentId, packet.ObjectData.RayEnd, primShape );
|
||||
PrimitiveBaseShape shape = new PrimitiveBaseShape();
|
||||
|
||||
shape.PCode = addPacket.ObjectData.PCode;
|
||||
shape.PathBegin = addPacket.ObjectData.PathBegin;
|
||||
shape.PathEnd = addPacket.ObjectData.PathEnd;
|
||||
shape.PathScaleX = addPacket.ObjectData.PathScaleX;
|
||||
shape.PathScaleY = addPacket.ObjectData.PathScaleY;
|
||||
shape.PathShearX = addPacket.ObjectData.PathShearX;
|
||||
shape.PathShearY = addPacket.ObjectData.PathShearY;
|
||||
shape.PathSkew = addPacket.ObjectData.PathSkew;
|
||||
shape.ProfileBegin = addPacket.ObjectData.ProfileBegin;
|
||||
shape.ProfileEnd = addPacket.ObjectData.ProfileEnd;
|
||||
shape.Scale = addPacket.ObjectData.Scale;
|
||||
shape.PathCurve = addPacket.ObjectData.PathCurve;
|
||||
shape.ProfileCurve = addPacket.ObjectData.ProfileCurve;
|
||||
shape.ProfileHollow = addPacket.ObjectData.ProfileHollow;
|
||||
shape.PathRadiusOffset = addPacket.ObjectData.PathRadiusOffset;
|
||||
shape.PathRevolutions = addPacket.ObjectData.PathRevolutions;
|
||||
shape.PathTaperX = addPacket.ObjectData.PathTaperX;
|
||||
shape.PathTaperY = addPacket.ObjectData.PathTaperY;
|
||||
shape.PathTwist = addPacket.ObjectData.PathTwist;
|
||||
shape.PathTwistBegin = addPacket.ObjectData.PathTwistBegin;
|
||||
LLObject.TextureEntry ntex = new LLObject.TextureEntry(new LLUUID("00000000-0000-0000-9999-000000000005"));
|
||||
shape.TextureEntry = ntex.ToBytes();
|
||||
|
||||
OnAddPrim(this.AgentId, addPacket.ObjectData.RayEnd, shape);
|
||||
}
|
||||
break;
|
||||
case PacketType.ObjectShape:
|
||||
ObjectShapePacket shape = (ObjectShapePacket)Pack;
|
||||
for (int i = 0; i < shape.ObjectData.Length; i++)
|
||||
ObjectShapePacket shapePacket = (ObjectShapePacket)Pack;
|
||||
for (int i = 0; i < shapePacket.ObjectData.Length; i++)
|
||||
{
|
||||
if (OnUpdatePrimShape != null)
|
||||
{
|
||||
OnUpdatePrimShape(shape.ObjectData[i].ObjectLocalID, shape.ObjectData[i]);
|
||||
OnUpdatePrimShape(shapePacket.ObjectData[i].ObjectLocalID, shapePacket.ObjectData[i]);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
|
Loading…
Reference in New Issue