Files
libremetaverse/Programs/Simian/Interfaces/ISceneProvider.cs
John Hurliman 1e9ee1f5b6 Simian:
* Moved water height to ISceneProvider
* Removed + 3m hack for prim placement
* Added ParcelPropertiesUpdate handler. Media textures are working now

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2235 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-22 16:33:42 +00:00

42 lines
2.1 KiB
C#

using System;
using OpenMetaverse;
namespace Simian
{
public delegate void ObjectAddCallback(object sender, Agent creator, SimulationObject obj, PrimFlags creatorFlags);
public delegate void ObjectRemoveCallback(object sender, SimulationObject obj);
public delegate void ObjectTransformCallback(object sender, SimulationObject obj,
Vector3 position, Quaternion rotation, Vector3 velocity, Vector3 acceleration,
Vector3 angularVelocity, Vector3 scale);
public delegate void ObjectFlagsCallback(object sender, SimulationObject obj, PrimFlags flags);
public delegate void ObjectModifyCallback(object sender, SimulationObject obj,
Primitive.ConstructionData data);
// TODO: Convert terrain to a patch-based system
public delegate void TerrainUpdatedCallback(object sender);
public interface ISceneProvider
{
event ObjectAddCallback OnObjectAdd;
event ObjectRemoveCallback OnObjectRemove;
event ObjectTransformCallback OnObjectTransform;
event ObjectFlagsCallback OnObjectFlags;
event ObjectModifyCallback OnObjectModify;
event TerrainUpdatedCallback OnTerrainUpdated;
// TODO: Convert to a patch-based system, and expose terrain editing
// through functions instead of a property
float[] Heightmap { get; set; }
float WaterHeight { get; }
bool ObjectAdd(object sender, Agent creator, SimulationObject obj, PrimFlags creatorFlags);
bool ObjectRemove(object sender, SimulationObject obj);
void ObjectTransform(object sender, SimulationObject obj, Vector3 position,
Quaternion rotation, Vector3 velocity, Vector3 acceleration,
Vector3 angularVelocity, Vector3 scale);
void ObjectFlags(object sender, SimulationObject obj, PrimFlags flags);
void ObjectModify(object sender, SimulationObject obj, Primitive.ConstructionData data);
bool TryGetObject(uint localID, out SimulationObject obj);
bool TryGetObject(UUID id, out SimulationObject obj);
}
}