OpenSim.Region.Framework.Scenes.Scene.RezObject C# (CSharp) Method

RezObject() public method

Rez an object into the scene from a prim's inventory.
public RezObject ( SceneObjectPart sourcePart, TaskInventoryItem item, Vector3 pos, Quaternion rot, Vector3 vel, int param ) : SceneObjectGroup
sourcePart SceneObjectPart
item TaskInventoryItem
pos Vector3
rot Quaternion
vel Vector3
param int
return SceneObjectGroup
        public virtual SceneObjectGroup RezObject(
            SceneObjectPart sourcePart, TaskInventoryItem item,
            Vector3 pos, Quaternion rot, Vector3 vel, int param)
        {
            if (null == item)
                return null;
            
            SceneObjectGroup group = sourcePart.Inventory.GetRezReadySceneObject(item);
            
            if (null == group)
                return null;
            
            if (!Permissions.CanRezObject(group.PrimCount, item.OwnerID, pos))
                return null;

            if (!Permissions.BypassPermissions())
            {
                if ((item.CurrentPermissions & (uint)PermissionMask.Copy) == 0)
                    sourcePart.Inventory.RemoveInventoryItem(item.ItemID);
            }
                        
            AddNewSceneObject(group, true, pos, rot, vel);
            
            // We can only call this after adding the scene object, since the scene object references the scene
            // to find out if scripts should be activated at all.
            group.CreateScriptInstances(param, true, DefaultScriptEngine, 3);
            
            group.ScheduleGroupForFullUpdate();
        
            return group;
        }

Same methods

Scene::RezObject ( IClientAPI remoteClient, UUID itemID, Vector3 RayEnd, Vector3 RayStart, UUID RayTargetID, byte BypassRayCast, bool RayEndIsIntersection, bool RezSelected, bool RemoveItem, UUID fromTaskID ) : void
Scene