Universe.Modules.Selection.SelectionModule.RequestPrim C# (CSharp) Метод

RequestPrim() защищенный Метод

Invoked when the client requests a prim.
protected RequestPrim ( uint primLocalID, byte cacheMissType, IClientAPI remoteClient ) : void
primLocalID uint
cacheMissType byte /// 0 => full object (viewer doesn't have it) /// 1 => CRC mismatch only ///
remoteClient IClientAPI
Результат void
        protected void RequestPrim(uint primLocalID, byte cacheMissType, IClientAPI remoteClient)
        {
            IEntity entity;
            if (remoteClient.Scene.Entities.TryGetChildPrimParent(primLocalID, out entity))
            {
                if (entity is ISceneEntity)
                {
                    IScenePresence SP = remoteClient.Scene.GetScenePresence(remoteClient.AgentId);
                    //We send a forced because we MUST send a full update, as the client doesn't have this prim
                    ((ISceneEntity) entity).ScheduleGroupUpdateToAvatar(SP, PrimUpdateFlags.ForcedFullUpdate);
                    IObjectCache cache = remoteClient.Scene.RequestModuleInterface<IObjectCache>();
                    if (cache != null)
                        cache.RemoveObject(remoteClient.AgentId, entity.LocalId, cacheMissType);
                    MainConsole.Instance.WarnFormat("[ObjectCache]: Avatar didn't have {0}, miss type {1}, CRC {2}",
                                                    primLocalID,
                                                    cacheMissType, ((ISceneEntity) entity).RootChild.CRC);
                }
            }
        }