Commit Graph

2109 Commits

Author SHA1 Message Date
Jeff Ames
40fd37f95a Refactored animation handling in ScenePresence. Now maintains a list of current animations.
* Fixes weirdness when typing and sitting at the same time
* Should fix bug #32 (getting stuck in edit appearance pose)
* Crouchwalk and possibly jump may need more looking into
2007-12-10 15:08:44 +00:00
MW
611327e104 more work on texture downloading.
Refractored the TextureDownloadModule (but currently to make debugging easier, it is running as a non shared module, so this results in a instance of this module being created for each region (and a extra thread per region), this will be changed back soon.
Removed the old texture handling/sending code from AssetCache.
A few other small changes/fixes.
2007-12-10 13:27:23 +00:00
Jeff Ames
af6eb67999 saved OpenSim source code from the giant rampaging unterminated copyright notice of doom 2007-12-10 05:25:16 +00:00
Jeff Ames
e278d07220 refactored ChatModule a bit.
misc cleanup and code convention fixes.
2007-12-10 02:29:42 +00:00
Teravus Ovares
e595f82489 * Hooked up the GridComm event ChildDataUpdate to the scene.
* Added List<RegionInfo> m_neighbours to Scene 
* Hooked up the OnRegionUp event to m_neighbours list 
* Modified RegionInfo to have a bool commFailTF value so that we can skip neighbors that fail.  (when the region comes up, this gets reset to false and the region will try again.
* Added SetChildAgentThrottle(byte[]) to IClientAPI 
* Several other insignificant changes related to passing child pertanant agent data from sim to sim.
2007-12-10 00:46:56 +00:00
Teravus Ovares
1074e5adc8 * Added more info to ChildAgentDataUpdate
* Added (at sdauge's suggestion) byte[] GetThrottlesPacked(float multiplier)
2007-12-09 18:05:08 +00:00
Sean Dague
cace0e055c change PacketQueue to take the byte[] throttle instead
of the Packet to set the throttles
2007-12-09 14:47:18 +00:00
Jeff Ames
65b9fa9a5f added more packet handling stubs 2007-12-09 00:07:03 +00:00
Brian McBee
383eccc543 hackish code to allow emptying of trash. This really should be done on the inventory server, and not from the region.
Also: it appeared to work the first try, so I have probably done something horribly wrong.
2007-12-08 20:41:37 +00:00
Brian McBee
beca2373e1 Allow moving, deleting, and restoring objects in inventory.
Note: only tested in grid mode, and emptying trash is still not implemented.
2007-12-08 19:13:10 +00:00
MW
87b337ebf9 Enabled the TextureDownloadModule, so that hopefully I might get some feedback, as to if it makes the texture problem better or worse. As I plan/hope to work on texture/asset downloading this weekend. 2007-12-07 22:47:11 +00:00
Sean Dague
0aa982c252 move to PacketQueue for throttling. This has been tested with a couple
of people, but is enough of a change that more should try it out.  This
removes 500 lines from ClientView.cs in the process.
2007-12-07 21:30:01 +00:00
Sean Dague
4221ec23f9 further screwing around with the PacketQueue data structure.
Nearly time to replace a chunk of ClientView with this.
2007-12-07 19:13:35 +00:00
Adam Johnson
3d938f76b7 Updates to LibSL revision 1498. Thanks Johan! 2007-12-07 08:54:31 +00:00
Teravus Ovares
57f666497b * Added hacked support for 'anyone can move' and 'anyone can copy'.
* BACKUP YOUR PRIM BEFORE UPDATING TO THIS and then double check the prim permissions after applying it with a different avatar (then the master avatar or the prim owner avatar).
* Also, beware that any objects created under the old permission scheme may react oddly.  They may automatically allow anyone to modify them, (which you'll then have to un-set).  
* It's hacked support because when 'anyone can move is set', any avatar can modify the prim (texture, shape, scale, etc)
2007-12-07 07:42:03 +00:00
Sean Dague
9326ee425b added a lock to prevent multiple Timer popping races
on the packet queues.
2007-12-06 21:59:31 +00:00
Sean Dague
1ad83bcf1b reversing the r2599 patch, as this started causing CreateThread errors for
me on Mono 1.2.4, which led to client crashes.  I think the Timer.Stop() 
wasn't doing what was desired on Mono.  The Queue refactoring should address
the readability issues lbsa71 was working on as soon as I get the merge together.
2007-12-06 20:13:02 +00:00
Jeff Ames
73599c0f25 removed obsolete Verbose() function 2007-12-06 18:17:44 +00:00
lbsa71
395637acdd * now the throttle timer is stopped whilst processing Queue so that it won't fire twice
* started to refactored throttling method
* some code convention refactorings
2007-12-06 14:08:22 +00:00
Adam Frisby
9e5f7fb415 * Removed lots of scurrilous uses of ASCII/UTF8.GetBytes for making packet strings. BAD PROGRAMMER BAD. Use Helpers.StringToField instead. >_> 2007-12-06 06:36:49 +00:00
Jeff Ames
4bde56457f removed some duplicate hard-coded port numbers. changed ports to uint. 2007-12-06 01:41:41 +00:00
Teravus Ovares
bb824eadee * Refactored Permissions into ScenePresence as requested by MW
* Un-hackerized generating the client_flags 
* Now handling the ObjectPermissions Update packet 
* Warning: Backup your prim before updating.  If you fail to do so and something goes wrong then, All Yr prim are belong to us!
2007-12-05 06:44:32 +00:00
Jeff Ames
f195725db4 keeping opensim safe for children -- made some namespace references less explicit 2007-12-04 22:14:53 +00:00
Jeff Ames
54c070608e made log messages for known unhandled packet types shorter and yellower. added handler stubs. 2007-12-04 21:44:10 +00:00
Sean Dague
2adcdd3d15 minor refactor so that I can now grok what happens for outgoing packets 2007-12-04 20:20:15 +00:00
Adam Frisby
91c1e8a734 * Fixed a whole bunch of console messages. 2007-12-04 10:13:13 +00:00
Adam Frisby
be7ae3dd3e * Removed 12 compiler warnings. 2007-12-04 08:18:09 +00:00
Sean Dague
14d0a2ac74 further encapsulation of function in PacketQueue and PacketThrottle 2007-12-03 21:47:28 +00:00
Sean Dague
8f58a9a107 From Justin Casey (IBM)
While exploring what it would take to get the 'new script' button working,
I encountered the fact, some way down in the rabbit hole, that if a user
renamed an item in their inventory and logged out (without a restart of
the simulator), on log in the new name was not preserved.

As far as I can see, this was because any updates which didn't occur
inside a transaction were ignored by opensim.  This patch pays attention
to those changes.  It generates a new asset when an item is updated and
changes the user's inventory properties appropriately.  I believe this
behaviour is in line with the copy-on-write semantics used in the Second
Life protocol - perhaps it could be optimized if we knew for sure that the
only copy of the object was in the user's inventory.

This also means that if you rename an item (e.g. a script) before you drag
it into an object's inventory, the inventory will receive the item's most
recent name and description.
2007-12-03 20:06:01 +00:00
Sean Dague
c29105aa3e This is a simple patch which just renames an IClientAPI method to
SendInventoryItemCreateUpdate() in order to reflect the actual packet it
sends (UpdateCreateInventoryItem).

From Justin Casey (IBM)
2007-12-03 17:24:27 +00:00
MW
27f182ac54 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.
2007-12-01 14:20:37 +00:00
Sean Dague
e36ddb0e8c mod packetqueue to use the throttle class container 2007-11-30 21:51:13 +00:00
Sean Dague
174a3d2ca1 the packet throttle stuff is duped enough that a
seperate container for this probably makes the limits easier to
understand
2007-11-30 21:29:21 +00:00
Sean Dague
9c07a98831 starting to fill out PacketQueue, refactoring as I go. This
doesn't link into the rest of the code yet, and won't until it
is complete.
2007-11-30 21:09:49 +00:00
Sean Dague
b167507e32 Patch for mantis 0000015: Textures don't display in the object
properties window

From Justin Casey (IBM)
2007-11-30 20:16:40 +00:00
Teravus Ovares
31cec30aa0 * Extended our semi-stupid implementation of in world object permissions to show a user's client that it can't edit a prim if it doesn't have permission.
* Permissions is due for a big revamp. The current way it's done is a hack at best.
2007-11-30 04:54:15 +00:00
Sean Dague
641e541967 add a few more parens to make sure that throttling condition
is really happening the way we want it to.
2007-11-29 16:32:19 +00:00
lbsa71
7704bb6f63 * Fixed neighbour range bug
* Various refactorings
2007-11-29 15:27:57 +00:00
Teravus Ovares
4bd38fc65a * Thanks to _SomeOne_, Server side permissions on object editing. Be aware, that if you're editing an object on your client that you're not allowed to, it'll appear that it's moving to you, but won't actually be moving on the sim. 2007-11-29 15:24:31 +00:00
Sean Dague
40dc1ac3b0 I believe this turns throttling back on. I had expected
that the Queue would come in by reference, but it didn't
appear to be.
2007-11-28 18:39:07 +00:00
Sean Dague
5fb81ab881 merged ClientView into a non partial class. Will
make it easier to start breaking this up into 
more discreet functional classes
2007-11-28 13:33:57 +00:00
MW
ac77c50ba9 Moved the m_sceneGridService.RegisterRegion(RegionInfo); call out of LoadWorldMap and into its own public method (which is called during region creation). We shouldn't have things like that in methods like LoadWorldMap as some regions might not being having a worldmap loaded via the LoadWorldMap method (like in custom applications).
Deleted the CreateTerrainTextureInitial Method which was a 99% duplicate of CreateTerrainTexture, with just a bool field setting difference. That bool is now passed to CreateTerrainTexture as a param.
2007-11-28 12:36:09 +00:00
Sean Dague
f3895c1e01 build ThrottleCheck function to clear up bits of the throttle
code.

Fix typo on throttling Task packets incorrectly
2007-11-27 21:27:32 +00:00
Sean Dague
f4e91bc7d9 moved out nested class to it's own file 2007-11-27 20:50:45 +00:00
Sean Dague
cebdd069f4 some variable renames to help me read the throttle code 2007-11-27 20:37:17 +00:00
Brian McBee
35472b3666 Added new configuration item to User Server: X and Y of region to send user to if their logon region is down. Known good region, sort of. 2007-11-25 21:21:44 +00:00
Teravus Ovares
d263a044b1 * Added the ability to restart your individual sims from within them using the estate tools.
* The sims properly restart, however they don't yet notify the existing avatars that they are up.  To see the sim again, you'll need to log-out and back in until I can figure out how to get the proper data to the sims and to the avatar so they reconnect again.
2007-11-25 04:52:14 +00:00
Teravus Ovares
944b118c62 * Added a way for the Region master user to kick individual users from their sim with a custom message. Their client says, "You've been logged off of secondlife, <Your custom message here> and logs them off.
* Added a way for the Region master user to kick *ALL* users from *ALL* their regions in the estate with a custom message.
2007-11-24 03:28:42 +00:00
Teravus Ovares
52714c339e * Hanling RequestGodlikePowers. On Request.. sends the sim owner's client the appropriate messages to make it think it's got god status. Will be used for finding more unimplemented packets.... 2007-11-24 01:38:36 +00:00
Teravus Ovares
d7ec786244 * Added a nice 'The Region is going down.' message to the user when the sim owner issues 'shutdown' on the console. 2007-11-24 00:19:48 +00:00