* Partial implementation of RezScript
* Ported LSL to C# conversion code from OpenSim. Big thank you to all of the OpenSim contributors
* Moved Simian scripting code to a new folder

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2518 52acb1d6-8a22-11de-b505-999d5b087335
This commit is contained in:
John Hurliman
2009-03-20 00:19:32 +00:00
parent b8d7cdc027
commit 47c6034f9c
22 changed files with 31382 additions and 235 deletions

View File

@@ -169,6 +169,7 @@ namespace Simian
string[] clothing = Directory.GetFiles(path, "*.clothing", SearchOption.TopDirectoryOnly);
string[] bodyparts = Directory.GetFiles(path, "*.bodypart", SearchOption.TopDirectoryOnly);
string[] sounds = Directory.GetFiles(path, "*.ogg", SearchOption.TopDirectoryOnly);
string[] scripts = Directory.GetFiles(path, "*.lsl", SearchOption.TopDirectoryOnly);
for (int i = 0; i < textures.Length; i++)
{
@@ -201,6 +202,14 @@ namespace Simian
asset.Temporary = true;
StoreAsset(asset);
}
for (int i = 0; i < scripts.Length; i++)
{
UUID assetID = ParseUUIDFromFilename(scripts[i]);
Asset asset = new AssetScriptText(assetID, File.ReadAllBytes(scripts[i]));
asset.Temporary = true;
StoreAsset(asset);
}
}
catch (Exception ex)
{

View File

@@ -247,11 +247,11 @@ namespace Simian
#region Object Interfaces
public void ObjectAddOrUpdate(object sender, SimulationObject obj, UUID ownerID, int scriptStartParam, PrimFlags creatorFlags, UpdateFlags updateFlags)
public void ObjectAddOrUpdate(object sender, SimulationObject obj, UUID ownerID, PrimFlags creatorFlags, UpdateFlags updateFlags)
{
if (OnObjectAddOrUpdate != null)
{
OnObjectAddOrUpdate(sender, obj, ownerID, scriptStartParam, creatorFlags, updateFlags);
OnObjectAddOrUpdate(sender, obj, ownerID, creatorFlags, updateFlags);
}
#region Initialize new objects
@@ -493,7 +493,7 @@ namespace Simian
obj.Prim = prim;
// Inform clients
ObjectAddOrUpdate(this, obj, obj.Prim.OwnerID, 0, PrimFlags.None, UpdateFlags.FullUpdate);
ObjectAddOrUpdate(this, obj, obj.Prim.OwnerID, PrimFlags.None, UpdateFlags.FullUpdate);
}
else
{
@@ -518,7 +518,7 @@ namespace Simian
obj.Prim = prim;
// Inform clients
ObjectAddOrUpdate(this, obj, obj.Prim.OwnerID, 0, PrimFlags.None, UpdateFlags.FullUpdate);
ObjectAddOrUpdate(this, obj, obj.Prim.OwnerID, PrimFlags.None, UpdateFlags.FullUpdate);
}
else
{
@@ -1223,7 +1223,7 @@ namespace Simian
void CompleteAgentMovementHandler(Packet packet, Agent agent)
{
// Add this avatar as an object in the scene
ObjectAddOrUpdate(this, agent.Avatar, agent.Avatar.Prim.OwnerID, 0, PrimFlags.None, UpdateFlags.FullUpdate);
ObjectAddOrUpdate(this, agent.Avatar, agent.Avatar.Prim.OwnerID, PrimFlags.None, UpdateFlags.FullUpdate);
// Send a response back to the client
AgentMovementCompletePacket complete = new AgentMovementCompletePacket();