aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim.RegionServer/SimClient.cs
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--OpenSim.RegionServer/SimClient.cs48
1 files changed, 36 insertions, 12 deletions
diff --git a/OpenSim.RegionServer/SimClient.cs b/OpenSim.RegionServer/SimClient.cs
index c5108ac..856909c 100644
--- a/OpenSim.RegionServer/SimClient.cs
+++ b/OpenSim.RegionServer/SimClient.cs
@@ -642,6 +642,7 @@ namespace OpenSim
642 } 642 }
643 } 643 }
644 break; 644 break;
645
645 } 646 }
646 } 647 }
647 } 648 }
@@ -1077,20 +1078,43 @@ namespace OpenSim
1077 1078
1078 private void CreateInventoryItem(CreateInventoryItemPacket packet) 1079 private void CreateInventoryItem(CreateInventoryItemPacket packet)
1079 { 1080 {
1080 if (packet.InventoryBlock.Type == 7) 1081 if (!(packet.InventoryBlock.Type == 3 || packet.InventoryBlock.Type == 7))
1082 {
1083 System.Console.WriteLine("Attempted to create " + Util.FieldToString(packet.InventoryBlock.Name) + " in inventory. Unsupported type");
1084 return;
1085 }
1086
1087 //lets try this out with creating a notecard
1088 AssetBase asset = new AssetBase();
1089
1090 asset.Name = Util.FieldToString(packet.InventoryBlock.Name);
1091 asset.Description = Util.FieldToString(packet.InventoryBlock.Description);
1092 asset.InvType = packet.InventoryBlock.InvType;
1093 asset.Type = packet.InventoryBlock.Type;
1094 asset.FullID = LLUUID.Random();
1095
1096 switch (packet.InventoryBlock.Type)
1081 { 1097 {
1082 //lets try this out with creating a notecard 1098 case 7: // Notecard
1083 AssetBase asset = new AssetBase(); 1099 asset.Data = new byte[0];
1084 asset.Name = Util.FieldToString(packet.InventoryBlock.Name); 1100 break;
1085 asset.Description = Util.FieldToString(packet.InventoryBlock.Description); 1101
1086 asset.InvType = packet.InventoryBlock.InvType; 1102 case 3: // Landmark
1087 asset.Type = packet.InventoryBlock.Type; 1103 String content;
1088 asset.FullID = LLUUID.Random(); 1104 content = "Landmark version 2\n";
1089 asset.Data = new byte[0]; 1105 content += "region_id " + m_regionData.SimUUID + "\n";
1090 1106 String strPos = String.Format("%.2f %.2f %.2f>",
1091 m_assetCache.AddAsset(asset); 1107 this.ClientAvatar.Pos.X,
1092 m_inventoryCache.AddNewInventoryItem(this, packet.InventoryBlock.FolderID, asset); 1108 this.ClientAvatar.Pos.Y,
1109 this.ClientAvatar.Pos.Z);
1110 content += "local_pos " + strPos + "\n";
1111 asset.Data = (new System.Text.ASCIIEncoding()).GetBytes(content);
1112 break;
1113 default:
1114 break;
1093 } 1115 }
1116 m_assetCache.AddAsset(asset);
1117 m_inventoryCache.AddNewInventoryItem(this, packet.InventoryBlock.FolderID, asset);
1094 } 1118 }
1095 } 1119 }
1096} 1120}