diff options
allows the texture of the created/sent primitive to be set.
Diffstat (limited to '')
-rw-r--r-- | OpenSim/OpenSim.RegionServer/ClientView.API.cs | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/OpenSim/OpenSim.RegionServer/ClientView.API.cs b/OpenSim/OpenSim.RegionServer/ClientView.API.cs index 94d8cbd..09ba266 100644 --- a/OpenSim/OpenSim.RegionServer/ClientView.API.cs +++ b/OpenSim/OpenSim.RegionServer/ClientView.API.cs | |||
@@ -421,11 +421,11 @@ namespace OpenSim | |||
421 | /// </summary> | 421 | /// </summary> |
422 | /// <param name="primData"></param> | 422 | /// <param name="primData"></param> |
423 | /// <param name="pos"></param> | 423 | /// <param name="pos"></param> |
424 | public void SendPrimitiveToClient( PrimData primData, LLVector3 pos) | 424 | public void SendPrimitiveToClient( PrimData primData, LLVector3 pos, LLUUID textureID) |
425 | { | 425 | { |
426 | ObjectUpdatePacket outPacket = new ObjectUpdatePacket(); | 426 | ObjectUpdatePacket outPacket = new ObjectUpdatePacket(); |
427 | outPacket.ObjectData = new ObjectUpdatePacket.ObjectDataBlock[1]; | 427 | outPacket.ObjectData = new ObjectUpdatePacket.ObjectDataBlock[1]; |
428 | outPacket.ObjectData[0] = this.CreatePrimUpdateBlock(primData); | 428 | outPacket.ObjectData[0] = this.CreatePrimUpdateBlock(primData, textureID); |
429 | byte[] pb = pos.GetBytes(); | 429 | byte[] pb = pos.GetBytes(); |
430 | Array.Copy(pb, 0, outPacket.ObjectData[0].ObjectData, 0, pb.Length); | 430 | Array.Copy(pb, 0, outPacket.ObjectData[0].ObjectData, 0, pb.Length); |
431 | 431 | ||
@@ -437,10 +437,10 @@ namespace OpenSim | |||
437 | /// </summary> | 437 | /// </summary> |
438 | /// <param name="primData"></param> | 438 | /// <param name="primData"></param> |
439 | /// <returns></returns> | 439 | /// <returns></returns> |
440 | protected ObjectUpdatePacket.ObjectDataBlock CreatePrimUpdateBlock(PrimData primData) | 440 | protected ObjectUpdatePacket.ObjectDataBlock CreatePrimUpdateBlock(PrimData primData, LLUUID textureID) |
441 | { | 441 | { |
442 | ObjectUpdatePacket.ObjectDataBlock objupdate = new ObjectUpdatePacket.ObjectDataBlock(); | 442 | ObjectUpdatePacket.ObjectDataBlock objupdate = new ObjectUpdatePacket.ObjectDataBlock(); |
443 | this.SetDefaultPrimPacketValues(objupdate); | 443 | this.SetDefaultPrimPacketValues(objupdate, textureID); |
444 | objupdate.UpdateFlags = 32 + 65536 + 131072 + 256 + 4 + 8 + 2048 + 524288 + 268435456; | 444 | objupdate.UpdateFlags = 32 + 65536 + 131072 + 256 + 4 + 8 + 2048 + 524288 + 268435456; |
445 | this.SetPrimPacketShapeData(objupdate, primData); | 445 | this.SetPrimPacketShapeData(objupdate, primData); |
446 | 446 | ||
@@ -451,7 +451,7 @@ namespace OpenSim | |||
451 | /// Set some default values in a ObjectUpdatePacket | 451 | /// Set some default values in a ObjectUpdatePacket |
452 | /// </summary> | 452 | /// </summary> |
453 | /// <param name="objdata"></param> | 453 | /// <param name="objdata"></param> |
454 | protected void SetDefaultPrimPacketValues(ObjectUpdatePacket.ObjectDataBlock objdata) | 454 | protected void SetDefaultPrimPacketValues(ObjectUpdatePacket.ObjectDataBlock objdata, LLUUID textureID) |
455 | { | 455 | { |
456 | objdata.PSBlock = new byte[0]; | 456 | objdata.PSBlock = new byte[0]; |
457 | objdata.ExtraParams = new byte[1]; | 457 | objdata.ExtraParams = new byte[1]; |
@@ -464,7 +464,7 @@ namespace OpenSim | |||
464 | objdata.Material = 3; | 464 | objdata.Material = 3; |
465 | objdata.TextureAnim = new byte[0]; | 465 | objdata.TextureAnim = new byte[0]; |
466 | objdata.Sound = LLUUID.Zero; | 466 | objdata.Sound = LLUUID.Zero; |
467 | LLObject.TextureEntry ntex = new LLObject.TextureEntry(new LLUUID("00000000-0000-0000-5005-000000000005")); | 467 | LLObject.TextureEntry ntex = new LLObject.TextureEntry(textureID); |
468 | objdata.TextureEntry = ntex.ToBytes(); | 468 | objdata.TextureEntry = ntex.ToBytes(); |
469 | objdata.State = 0; | 469 | objdata.State = 0; |
470 | objdata.Data = new byte[0]; | 470 | objdata.Data = new byte[0]; |