Bug in Teleport fixed -- Appearance was missing from AgentCircuitData.
							parent
							
								
									7356860b48
								
							
						
					
					
						commit
						4de82891a9
					
				| 
						 | 
				
			
			@ -157,28 +157,34 @@ namespace OpenSim.Framework
 | 
			
		|||
            args["start_pos"] = OSD.FromString(startpos.ToString());
 | 
			
		||||
            args["appearance_serial"] = OSD.FromInteger(Appearance.Serial);
 | 
			
		||||
 | 
			
		||||
            // We might not pass this in all cases...
 | 
			
		||||
            if ((Appearance.Wearables != null) && (Appearance.Wearables.Length > 0))
 | 
			
		||||
            if (Appearance != null)
 | 
			
		||||
            {
 | 
			
		||||
                OSDArray wears = new OSDArray(Appearance.Wearables.Length);
 | 
			
		||||
                foreach (AvatarWearable awear in Appearance.Wearables)
 | 
			
		||||
                //System.Console.WriteLine("XXX Before packing Wearables");
 | 
			
		||||
                if ((Appearance.Wearables != null) && (Appearance.Wearables.Length > 0))
 | 
			
		||||
                {
 | 
			
		||||
                    wears.Add(OSD.FromUUID(awear.ItemID));
 | 
			
		||||
                    wears.Add(OSD.FromUUID(awear.AssetID));
 | 
			
		||||
                    OSDArray wears = new OSDArray(Appearance.Wearables.Length * 2);
 | 
			
		||||
                    foreach (AvatarWearable awear in Appearance.Wearables)
 | 
			
		||||
                    {
 | 
			
		||||
                        wears.Add(OSD.FromUUID(awear.ItemID));
 | 
			
		||||
                        wears.Add(OSD.FromUUID(awear.AssetID));
 | 
			
		||||
                        //System.Console.WriteLine("XXX ItemID=" + awear.ItemID + " assetID=" + awear.AssetID);
 | 
			
		||||
                    }
 | 
			
		||||
                    args["wearables"] = wears;
 | 
			
		||||
                }
 | 
			
		||||
                args["wearables"] = wears;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
           Dictionary<int, UUID[]> attachments = Appearance.GetAttachmentDictionary();
 | 
			
		||||
           if ((attachments != null) && (attachments.Count > 0))
 | 
			
		||||
            {
 | 
			
		||||
                OSDArray attachs = new OSDArray(attachments.Count);
 | 
			
		||||
                foreach (KeyValuePair<int, UUID[]> kvp in attachments)
 | 
			
		||||
                //System.Console.WriteLine("XXX Before packing Attachments");
 | 
			
		||||
                Dictionary<int, UUID[]> attachments = Appearance.GetAttachmentDictionary();
 | 
			
		||||
                if ((attachments != null) && (attachments.Count > 0))
 | 
			
		||||
                {
 | 
			
		||||
                    AttachmentData adata = new AttachmentData(kvp.Key, kvp.Value[0], kvp.Value[1]);
 | 
			
		||||
                    attachs.Add(adata.PackUpdateMessage());
 | 
			
		||||
                    OSDArray attachs = new OSDArray(attachments.Count);
 | 
			
		||||
                    foreach (KeyValuePair<int, UUID[]> kvp in attachments)
 | 
			
		||||
                    {
 | 
			
		||||
                        AttachmentData adata = new AttachmentData(kvp.Key, kvp.Value[0], kvp.Value[1]);
 | 
			
		||||
                        attachs.Add(adata.PackUpdateMessage());
 | 
			
		||||
                        //System.Console.WriteLine("XXX att.pt=" + kvp.Key + "; itemID=" + kvp.Value[0] + "; assetID=" + kvp.Value[1]);
 | 
			
		||||
                    }
 | 
			
		||||
                    args["attachments"] = attachs;
 | 
			
		||||
                }
 | 
			
		||||
                args["attachments"] = attachs;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            return args;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -189,6 +189,8 @@ namespace OpenSim.Region.Framework.Scenes.Hypergrid
 | 
			
		|||
                        agentCircuit.InventoryFolder = UUID.Zero;
 | 
			
		||||
                        agentCircuit.startpos = position;
 | 
			
		||||
                        agentCircuit.child = true;
 | 
			
		||||
                        agentCircuit.Appearance = avatar.Appearance;
 | 
			
		||||
 | 
			
		||||
                        if (Util.IsOutsideView(oldRegionX, newRegionX, oldRegionY, newRegionY))
 | 
			
		||||
                        {
 | 
			
		||||
                            // brand new agent, let's create a new caps seed
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -803,6 +803,7 @@ namespace OpenSim.Region.Framework.Scenes
 | 
			
		|||
                        agentCircuit.InventoryFolder = UUID.Zero;
 | 
			
		||||
                        agentCircuit.startpos = position;
 | 
			
		||||
                        agentCircuit.child = true;
 | 
			
		||||
                        agentCircuit.Appearance = avatar.Appearance;
 | 
			
		||||
                        
 | 
			
		||||
                        if (Util.IsOutsideView(oldRegionX, newRegionX, oldRegionY, newRegionY))
 | 
			
		||||
                        {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue