aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Framework/IClientAPI.cs
diff options
context:
space:
mode:
authorMW2007-12-01 14:20:37 +0000
committerMW2007-12-01 14:20:37 +0000
commit27f182ac54ffee16da730b2053480944f9ca5412 (patch)
tree86b7188f3d05afd3753d833a2000827a623e0b55 /OpenSim/Framework/IClientAPI.cs
parentset svn:eol-style (diff)
downloadopensim-SC-27f182ac54ffee16da730b2053480944f9ca5412.zip
opensim-SC-27f182ac54ffee16da730b2053480944f9ca5412.tar.gz
opensim-SC-27f182ac54ffee16da730b2053480944f9ca5412.tar.bz2
opensim-SC-27f182ac54ffee16da730b2053480944f9ca5412.tar.xz
Part 1 of a commit. This revision will not compile, part 2 will be added in a couple of minutes that should fix that.
Some work towards persisting Avatar Appearance (what is being worn). Added OnAvatarNowWearing event to IClientAPI that is triggered by AgentIsNowWearing packets. stub code to subscribe to this event in AvatarFactoryModule. Todo: code needs to be added to AvatarFactoryModule to save the uuids to a database and then read them back when that modules TryGetIntialAvatarAppearance() method is called. Done some changes to Scene to make it easier to subclass it: including changed some private fields to protected and made some methods virtual.
Diffstat (limited to 'OpenSim/Framework/IClientAPI.cs')
-rw-r--r--OpenSim/Framework/IClientAPI.cs38
1 files changed, 32 insertions, 6 deletions
diff --git a/OpenSim/Framework/IClientAPI.cs b/OpenSim/Framework/IClientAPI.cs
index 1427516..ae46d8e 100644
--- a/OpenSim/Framework/IClientAPI.cs
+++ b/OpenSim/Framework/IClientAPI.cs
@@ -57,7 +57,7 @@ namespace OpenSim.Framework
57 public enum ThrottleOutPacketType : int 57 public enum ThrottleOutPacketType : int
58 { 58 {
59 Resend = 0, 59 Resend = 0,
60 Land = 1, 60 Land = 1,
61 Wind = 2, 61 Wind = 2,
62 Cloud = 3, 62 Cloud = 3,
63 Task = 4, 63 Task = 4,
@@ -172,8 +172,33 @@ namespace OpenSim.Framework
172 } 172 }
173 } 173 }
174 174
175 public class AvatarWearingArgs : EventArgs
176 {
177 private List<Wearable> m_nowWearing = new List<Wearable>();
178
179 public List<Wearable> NowWearing
180 {
181 get { return m_nowWearing; }
182 set { m_nowWearing = value; }
183 }
184
185 public class Wearable
186 {
187 public LLUUID ItemID = new LLUUID("00000000-0000-0000-0000-000000000000");
188 public byte Type = 0;
189
190 public Wearable(LLUUID itemId, byte type)
191 {
192 ItemID = itemId;
193 Type = type;
194 }
195 }
196 }
197
175 public delegate void TextureRequest(Object sender, TextureRequestArgs e); 198 public delegate void TextureRequest(Object sender, TextureRequestArgs e);
176 199
200 public delegate void AvatarNowWearing(Object sender, AvatarWearingArgs e);
201
177 public delegate void ImprovedInstantMessage( 202 public delegate void ImprovedInstantMessage(
178 LLUUID fromAgentID, LLUUID fromAgentSession, LLUUID toAgentID, LLUUID imSessionID, uint timestamp, 203 LLUUID fromAgentID, LLUUID fromAgentSession, LLUUID toAgentID, LLUUID imSessionID, uint timestamp,
179 string fromAgentName, string message, byte dialog); // Cut down from full list 204 string fromAgentName, string message, byte dialog); // Cut down from full list
@@ -187,7 +212,7 @@ namespace OpenSim.Framework
187 public delegate void StartAnim(IClientAPI remoteClient, LLUUID animID, int seq); 212 public delegate void StartAnim(IClientAPI remoteClient, LLUUID animID, int seq);
188 213
189 public delegate void LinkObjects(uint parent, List<uint> children); 214 public delegate void LinkObjects(uint parent, List<uint> children);
190 215
191 public delegate void DelinkObjects(List<uint> primIds); 216 public delegate void DelinkObjects(List<uint> primIds);
192 217
193 public delegate void RequestMapBlocks(IClientAPI remoteClient, int minX, int minY, int maxX, int maxY); 218 public delegate void RequestMapBlocks(IClientAPI remoteClient, int minX, int minY, int maxX, int maxY);
@@ -200,7 +225,7 @@ namespace OpenSim.Framework
200 public delegate void DisconnectUser(); 225 public delegate void DisconnectUser();
201 226
202 public delegate void RequestAvatarProperties(IClientAPI remoteClient, LLUUID avatarID); 227 public delegate void RequestAvatarProperties(IClientAPI remoteClient, LLUUID avatarID);
203 public delegate void SetAlwaysRun (IClientAPI remoteClient, bool SetAlwaysRun); 228 public delegate void SetAlwaysRun(IClientAPI remoteClient, bool SetAlwaysRun);
204 229
205 public delegate void GenericCall2(); 230 public delegate void GenericCall2();
206 231
@@ -217,7 +242,7 @@ namespace OpenSim.Framework
217 242
218 public delegate void ObjectSelect(uint localID, IClientAPI remoteClient); 243 public delegate void ObjectSelect(uint localID, IClientAPI remoteClient);
219 244
220 public delegate void RequestObjectPropertiesFamily(IClientAPI remoteClient,LLUUID AgentID, uint RequestFlags, LLUUID TaskID); 245 public delegate void RequestObjectPropertiesFamily(IClientAPI remoteClient, LLUUID AgentID, uint RequestFlags, LLUUID TaskID);
221 246
222 public delegate void ObjectDeselect(uint localID, IClientAPI remoteClient); 247 public delegate void ObjectDeselect(uint localID, IClientAPI remoteClient);
223 248
@@ -268,7 +293,7 @@ namespace OpenSim.Framework
268 public delegate void AddNewPrim(LLUUID ownerID, LLVector3 pos, LLQuaternion rot, PrimitiveBaseShape shape); 293 public delegate void AddNewPrim(LLUUID ownerID, LLVector3 pos, LLQuaternion rot, PrimitiveBaseShape shape);
269 294
270 public delegate void RequestGodlikePowers(LLUUID AgentID, LLUUID SessionID, LLUUID token, IClientAPI remote_client); 295 public delegate void RequestGodlikePowers(LLUUID AgentID, LLUUID SessionID, LLUUID token, IClientAPI remote_client);
271 296
272 public delegate void GodKickUser(LLUUID GodAgentID, LLUUID GodSessionID, LLUUID AgentID, uint kickflags, byte[] reason); 297 public delegate void GodKickUser(LLUUID GodAgentID, LLUUID GodSessionID, LLUUID AgentID, uint kickflags, byte[] reason);
273 298
274 public delegate void CreateInventoryFolder( 299 public delegate void CreateInventoryFolder(
@@ -314,6 +339,7 @@ namespace OpenSim.Framework
314 event RezObject OnRezObject; 339 event RezObject OnRezObject;
315 event ModifyTerrain OnModifyTerrain; 340 event ModifyTerrain OnModifyTerrain;
316 event SetAppearance OnSetAppearance; 341 event SetAppearance OnSetAppearance;
342 event AvatarNowWearing OnAvatarNowWearing;
317 event StartAnim OnStartAnim; 343 event StartAnim OnStartAnim;
318 event LinkObjects OnLinkObjects; 344 event LinkObjects OnLinkObjects;
319 event DelinkObjects OnDelinkObjects; 345 event DelinkObjects OnDelinkObjects;
@@ -447,7 +473,7 @@ namespace OpenSim.Framework
447 void SendPrimTerseUpdate(ulong regionHandle, ushort timeDilation, uint localID, LLVector3 position, 473 void SendPrimTerseUpdate(ulong regionHandle, ushort timeDilation, uint localID, LLVector3 position,
448 LLQuaternion rotation); 474 LLQuaternion rotation);
449 void SendPrimTerseUpdate(ulong regionHandle, ushort timeDilation, uint localID, LLVector3 position, 475 void SendPrimTerseUpdate(ulong regionHandle, ushort timeDilation, uint localID, LLVector3 position,
450 LLQuaternion rotation,LLVector3 velocity, LLVector3 rotationalvelocity); 476 LLQuaternion rotation, LLVector3 velocity, LLVector3 rotationalvelocity);
451 477
452 void SendInventoryFolderDetails(LLUUID ownerID, LLUUID folderID, List<InventoryItemBase> items, int subFoldersCount); 478 void SendInventoryFolderDetails(LLUUID ownerID, LLUUID folderID, List<InventoryItemBase> items, int subFoldersCount);
453 void SendInventoryItemDetails(LLUUID ownerID, InventoryItemBase item); 479 void SendInventoryItemDetails(LLUUID ownerID, InventoryItemBase item);