aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack
diff options
context:
space:
mode:
authorTeravus Ovares2008-04-27 20:10:28 +0000
committerTeravus Ovares2008-04-27 20:10:28 +0000
commit911e63765c7cea748b5ae2227f5c1d6ff131d329 (patch)
treef95eeffb4974a9b3f6ded4a46bdc240278a336b0 /OpenSim/Region/ClientStack
parentMinor svn, formatting cleanup. (diff)
downloadopensim-SC_OLD-911e63765c7cea748b5ae2227f5c1d6ff131d329.zip
opensim-SC_OLD-911e63765c7cea748b5ae2227f5c1d6ff131d329.tar.gz
opensim-SC_OLD-911e63765c7cea748b5ae2227f5c1d6ff131d329.tar.bz2
opensim-SC_OLD-911e63765c7cea748b5ae2227f5c1d6ff131d329.tar.xz
* Single Attachments now work from inventory. You can attach from inventory and detach from inventory.
* Detaching from right clicking in world, detaches to your inventory. * If you go up to a prim and attach it from in world, it appears in your inventory. * Attachment placement is saved when you detach them. * Choosing wear remembers your last attachment point from inventory. * Wrote a method to update an inventory item's asset and sends the updated inventory item to the Client * Wrote a recursive method to find the folder of a known existing inventory item. * Removed a block on physics object position on creation. This might crash a region or two, let us know via Mantis if your region crashes because of a physics out of bounds error. * Drop doesn't work. The menu item doesn't even come up. Don't know why :P.
Diffstat (limited to 'OpenSim/Region/ClientStack')
-rw-r--r--OpenSim/Region/ClientStack/ClientView.cs19
1 files changed, 18 insertions, 1 deletions
diff --git a/OpenSim/Region/ClientStack/ClientView.cs b/OpenSim/Region/ClientStack/ClientView.cs
index fb9d638..94de013 100644
--- a/OpenSim/Region/ClientStack/ClientView.cs
+++ b/OpenSim/Region/ClientStack/ClientView.cs
@@ -145,6 +145,7 @@ namespace OpenSim.Region.ClientStack
145 private SetAppearance handlerSetAppearance = null; //OnSetAppearance; 145 private SetAppearance handlerSetAppearance = null; //OnSetAppearance;
146 private AvatarNowWearing handlerAvatarNowWearing = null; //OnAvatarNowWearing; 146 private AvatarNowWearing handlerAvatarNowWearing = null; //OnAvatarNowWearing;
147 private RezSingleAttachmentFromInv handlerRezSingleAttachment = null; //OnRezSingleAttachmentFromInv; 147 private RezSingleAttachmentFromInv handlerRezSingleAttachment = null; //OnRezSingleAttachmentFromInv;
148 private UUIDNameRequest handlerDetachAttachmentIntoInv = null; // Detach attachment!
148 private ObjectAttach handlerObjectAttach = null; //OnObjectAttach; 149 private ObjectAttach handlerObjectAttach = null; //OnObjectAttach;
149 private SetAlwaysRun handlerSetAlwaysRun = null; //OnSetAlwaysRun; 150 private SetAlwaysRun handlerSetAlwaysRun = null; //OnSetAlwaysRun;
150 private GenericCall2 handlerCompleteMovementToRegion = null; //OnCompleteMovementToRegion; 151 private GenericCall2 handlerCompleteMovementToRegion = null; //OnCompleteMovementToRegion;
@@ -690,6 +691,7 @@ namespace OpenSim.Region.ClientStack
690 public event SetAppearance OnSetAppearance; 691 public event SetAppearance OnSetAppearance;
691 public event AvatarNowWearing OnAvatarNowWearing; 692 public event AvatarNowWearing OnAvatarNowWearing;
692 public event RezSingleAttachmentFromInv OnRezSingleAttachmentFromInv; 693 public event RezSingleAttachmentFromInv OnRezSingleAttachmentFromInv;
694 public event UUIDNameRequest OnDetachAttachmentIntoInv;
693 public event ObjectAttach OnObjectAttach; 695 public event ObjectAttach OnObjectAttach;
694 public event ObjectDeselect OnObjectDetach; 696 public event ObjectDeselect OnObjectDetach;
695 public event GenericCall2 OnCompleteMovementToRegion; 697 public event GenericCall2 OnCompleteMovementToRegion;
@@ -3442,6 +3444,18 @@ namespace OpenSim.Region.ClientStack
3442 } 3444 }
3443 3445
3444 break; 3446 break;
3447 case PacketType.DetachAttachmentIntoInv:
3448 handlerDetachAttachmentIntoInv = OnDetachAttachmentIntoInv;
3449 if (handlerDetachAttachmentIntoInv != null)
3450 {
3451 DetachAttachmentIntoInvPacket detachtoInv = (DetachAttachmentIntoInvPacket)Pack;
3452
3453 LLUUID itemID = detachtoInv.ObjectData.ItemID;
3454 LLUUID ATTACH_agentID = detachtoInv.ObjectData.AgentID;
3455
3456 handlerDetachAttachmentIntoInv(itemID, this);
3457 }
3458 break;
3445 case PacketType.ObjectAttach: 3459 case PacketType.ObjectAttach:
3446 if (OnObjectAttach != null) 3460 if (OnObjectAttach != null)
3447 { 3461 {
@@ -3451,7 +3465,10 @@ namespace OpenSim.Region.ClientStack
3451 3465
3452 if (handlerObjectAttach != null) 3466 if (handlerObjectAttach != null)
3453 { 3467 {
3454 handlerObjectAttach(this, att.ObjectData[0].ObjectLocalID, att.AgentData.AttachmentPoint, att.ObjectData[0].Rotation); 3468 if (att.ObjectData.Length > 0)
3469 {
3470 handlerObjectAttach(this, att.ObjectData[0].ObjectLocalID, att.AgentData.AttachmentPoint, att.ObjectData[0].Rotation);
3471 }
3455 } 3472 }
3456 } 3473 }
3457 3474