示例#1
0
 /// <summary>
 /// Overload: Offer friendship to an avatar.
 /// </summary>
 /// <param name="agentID">System ID of the avatar you are offering friendship to</param>
 public void OfferFriendship(UUID agentID)
 {
     OfferFriendship(agentID, "Do ya wanna be my buddy?");
 }
示例#2
0
 /// <summary>
 /// Construct a new instance of the FriendshipOfferedEventArgs class
 /// </summary>
 /// <param name="agentID">The ID of the agent requesting friendship</param>
 /// <param name="agentName">The name of the agent requesting friendship</param>
 /// <param name="imSessionID">The ID of the session, used in accepting or declining the
 /// friendship offer</param>
 public FriendshipOfferedEventArgs(UUID agentID, string agentName, UUID imSessionID)
 {
     this.m_AgentID   = agentID;
     this.m_AgentName = agentName;
     this.m_SessionID = imSessionID;
 }
示例#3
0
 /// <summary>
 /// Construct a new instance of the FrindshipTerminatedEventArgs class
 /// </summary>
 /// <param name="agentID">The ID of the friend who terminated the friendship with us</param>
 /// <param name="agentName">The name of the friend who terminated the friendship with us</param>
 public FriendshipTerminatedEventArgs(UUID agentID, string agentName)
 {
     this.m_AgentID   = agentID;
     this.m_AgentName = agentName;
 }
示例#4
0
 public void SendTaskInventory(OpenMetaverse.UUID taskID, short serial, byte[] fileName)
 {
 }
示例#5
0
 public InventoryNode GetNodeFor(UUID uuid)
 {
     return(Items[uuid]);
 }
示例#6
0
 public void AddGroupRole(UUID group, UUID role)
 {
     AddGroup(group);
 }
示例#7
0
 public void SendInventoryItemDetails(OpenMetaverse.UUID ownerID, InventoryItemBase item)
 {
 }
示例#8
0
 public void SendParcelDwellReply(int localID, OpenMetaverse.UUID parcelID, float dwell)
 {
 }
示例#9
0
 public void SendChangeUserRights(OpenMetaverse.UUID agent, OpenMetaverse.UUID agentRelated, int relatedRights)
 {
 }
示例#10
0
 public void SendPickInfoReply(OpenMetaverse.UUID pickID, OpenMetaverse.UUID creatorID, bool topPick, OpenMetaverse.UUID parcelID, string name, string desc, OpenMetaverse.UUID snapshotID, string user, string originalName, string simName, OpenMetaverse.Vector3 posGlobal, int sortOrder, bool enabled)
 {
 }
示例#11
0
 public void SendAvatarClassifiedReply(OpenMetaverse.UUID targetID, Dictionary <OpenMetaverse.UUID, string> classifieds)
 {
 }
示例#12
0
 public void SendAvatarPicksReply(OpenMetaverse.UUID targetID, Dictionary <OpenMetaverse.UUID, string> picks)
 {
 }
示例#13
0
 public void SendAvatarNotesReply(OpenMetaverse.UUID targetID, string text)
 {
 }
示例#14
0
 public void SendAgentDropGroup(OpenMetaverse.UUID groupID)
 {
 }
示例#15
0
        private CogbotEvent AnimEvent(UUID uuid, SimEventType status, int serial)
        {
            SimAsset a = SimAssetStore.FindOrCreateAsset(uuid, AssetType.Animation);

            string headingString;
            switch (status)
            {
                case SimEventType.Start:
                    {
                        headingString = "eventOccursAt";
                        break;
                    }
                case SimEventType.Stop:
                    {
                        headingString = "toLocation";
                        break;
                    }
                default:
                    {
                        headingString = "eventOccursAt";
                        break;
                    }
            }
            object m = a.GetMeaning();
            CogbotEvent oe = CreateAEvent(status, "OnAnim", SimEventType.ANIM | SimEventType.REGIONAL,
                                      WorldObjects.ToParameter("doneBy", this),
                                      WorldObjects.ToParameter("isa", a),
                                      WorldObjects.ToParameter(headingString, GetHeading()));
            oe.Serial = serial;
            if (m != null) oe.AddParam("isa", m);
            return oe;
        }
示例#16
0
 public void SendTextBoxRequest(string message, int chatChannel, string objectname, OpenMetaverse.UUID ownerID, string firstName, string lastName, OpenMetaverse.UUID objectId)
 {
 }
示例#17
0
 public bool InGroup(UUID uuid)
 {
     if (CogbotHelpers.IsNullOrZero(uuid)) return false;
     if (GroupRoles != null) if (GroupRoles.ContainsKey(uuid)) return true;
     var ag = AvatarGroups;
     return ag != null && ag.Contains(uuid);
 }
示例#18
0
 public void FreezeMe(uint flags, OpenMetaverse.UUID whoKey, string who)
 {
 }
示例#19
0
 public void SendClassifiedInfoReply(OpenMetaverse.UUID classifiedID, OpenMetaverse.UUID creatorID, uint creationDate, uint expirationDate, uint category, string name, string description, OpenMetaverse.UUID parcelID, uint parentEstate, OpenMetaverse.UUID snapshotID, string simName, OpenMetaverse.Vector3 globalPos, string parcelName, byte classifiedFlags, int price)
 {
 }
示例#20
0
 public void SendTelehubInfo(OpenMetaverse.Vector3 TelehubPos, OpenMetaverse.Quaternion TelehubRot, List <OpenMetaverse.Vector3> SpawnPoint, OpenMetaverse.UUID ObjectID, string nameT)
 {
 }
示例#21
0
 public void SendRemoveInventoryItem(OpenMetaverse.UUID itemID)
 {
 }
示例#22
0
 public void SendMoneyBalance(OpenMetaverse.UUID transaction, bool success, string description, int balance, OpenMetaverse.Packets.MoneyBalanceReplyPacket.TransactionInfoBlock transInfo)
 {
 }
        private void OnTextureDownloadFinished(string textureEntityName, bool hasTransparancy)
        {
            m_log.Log(LogLevel.DRENDERDETAIL, "OnTextureDownloadFinished {0}", textureEntityName);
            EntityName entName = new EntityName(textureEntityName);
            OMV.UUID id = new OMV.UUID(entName.ExtractEntityFromEntityName());

            TextureInfo info;
            lock (Textures) {
            if (!Textures.TryGetValue(id, out info)) {
                // The id of zero will say that the mipmaps need to be generated before the texture is used
                m_log.Log(LogLevel.DRENDERDETAIL, "Adding TextureInfo for {0}:{1}", entName.Name, id.ToString());
                info.Alpha = hasTransparancy;
            }
            }
        }
示例#24
0
 public void SendAnimations(OpenMetaverse.UUID[] animID, int[] seqs, OpenMetaverse.UUID sourceAgentId, OpenMetaverse.UUID[] objectIDs)
 {
 }
示例#25
0
 /// <summary>
 /// Used to find out if Inventory contains the InventoryObject
 /// specified by <code>uuid</code>.
 /// </summary>
 /// <param name="uuid">The UUID to check.</param>
 /// <returns>true if inventory contains uuid, false otherwise</returns>
 public bool Contains(UUID uuid)
 {
     return(Items.ContainsKey(uuid));
 }
示例#26
0
 public void SendChatMessage(string message, byte type, OpenMetaverse.Vector3 fromPos, string fromName, OpenMetaverse.UUID fromAgentID, OpenMetaverse.UUID ownerID, byte source, byte audible)
 {
 }
示例#27
0
 /// <summary>
 /// Construct a new instance of the FriendShipResponseEventArgs class
 /// </summary>
 /// <param name="agentID">The ID of the agent we requested a friendship with</param>
 /// <param name="agentName">The name of the agent we requested a friendship with</param>
 /// <param name="accepted">true if the agent accepted our friendship offer</param>
 public FriendshipResponseEventArgs(UUID agentID, string agentName, bool accepted)
 {
     this.m_AgentID   = agentID;
     this.m_AgentName = agentName;
     this.m_Accepted  = accepted;
 }
示例#28
0
 public void SendPayPrice(OpenMetaverse.UUID objectID, int[] payPrice)
 {
 }
示例#29
0
 /// <summary>
 /// Construct a new instance of the FriendFoundReplyEventArgs class
 /// </summary>
 /// <param name="agentID">The ID of the agent we have requested location information for</param>
 /// <param name="regionHandle">The region handle where our friend is located</param>
 /// <param name="location">The simulator local position our friend is located</param>
 public FriendFoundReplyEventArgs(UUID agentID, ulong regionHandle, Vector3 location)
 {
     this.m_AgentID      = agentID;
     this.m_RegionHandle = regionHandle;
     this.m_Location     = location;
 }
示例#30
0
 public void SendAvatarData(ulong regionHandle, string firstName, string lastName, string grouptitle, OpenMetaverse.UUID avatarID, uint avatarLocalID,
                            OpenMetaverse.Vector3 Pos, byte[] textureEntry, uint parentID, OpenMetaverse.Quaternion rotation, OpenMetaverse.Vector4 collisionPlane,
                            OpenMetaverse.Vector3 velocity, bool immediate)
 {
 }
        public override void DoTextureLoad(EntityName textureEntityName, AssetType typ, DownloadFinishedCallback finishCall)
        {
            EntityNameLL textureEnt = new EntityNameLL(textureEntityName);
            string worldID = textureEnt.EntityPart;
            OMV.UUID binID = new OMV.UUID(worldID);

            if (m_basePath == null) return;

            // do we already have the file?
            string textureFilename = Path.Combine(CacheDirBase, textureEnt.CacheFilename);
            lock (FileSystemAccessLock) {
            if (File.Exists(textureFilename)) {
                m_log.Log(LogLevel.DTEXTUREDETAIL, "DoTextureLoad: Texture file already exists for " + worldID);
                bool hasTransparancy = CheckTextureFileForTransparancy(textureFilename);
                // make the callback happen on a new thread so things don't get tangled (caller getting the callback)
                Object[] finishCallParams = { finishCall, textureEntityName.Name, hasTransparancy };
                m_completionWork.DoLater(FinishCallDoLater, finishCallParams);
                // m_completionWork.DoLater(new FinishCallDoLater(finishCall, textureEntityName.Name, hasTransparancy));
            }
            else {
                bool sendRequest = false;
                lock (m_waiting) {
                    // if this is already being requested, don't waste our time
                    if (m_waiting.ContainsKey(binID)) {
                        m_log.Log(LogLevel.DTEXTUREDETAIL, "DoTextureLoad: Already waiting for " + worldID);
                    }
                    else {
                        WaitingInfo wi = new WaitingInfo(binID, finishCall);
                        wi.filename = textureFilename;
                        wi.type = typ;
                        m_waiting.Add(binID, wi);
                        sendRequest = true;
                    }
                }
                if (sendRequest) {
                    // this is here because RequestTexture might immediately call the callback
                    //   and we should be outside the lock
                    m_log.Log(LogLevel.DTEXTUREDETAIL, "DoTextureLoad: Requesting: " + textureEntityName);
                    // m_texturePipe.RequestTexture(binID, OMV.ImageType.Normal, 50f, 0, 0, OnACDownloadFinished, false);
                    // m_comm.GridClient.Assets.RequestImage(binID, OMV.ImageType.Normal, 101300f, 0, 0, OnACDownloadFinished, false);
                    // m_comm.GridClient.Assets.RequestImage(binID, OMV.ImageType.Normal, 50f, 0, 0, OnACDownloadFinished, false);
                    ThrottleTextureRequests(binID);
                }
            }
            }
            return;
        }
示例#32
0
 public void SendAvatarTerseUpdate(ulong regionHandle, ushort timeDilation, uint localID, OpenMetaverse.Vector3 position, OpenMetaverse.Vector3 velocity, OpenMetaverse.Vector3 acceleration, OpenMetaverse.Quaternion rotation, OpenMetaverse.UUID agentid, OpenMetaverse.Vector4 collisionPlane)
 {
 }
示例#33
0
 public SimAvatarImpl(UUID id, WorldObjects objectSystem, Simulator sim)
     : base(id, objectSystem, sim)
 {
     Affordances.ObjectType.SuperType.Add(SimTypeSystem.GetObjectType("Avatar"));
     _knownTypeUsages = new ListAsSet<SimTypeUsage>();
     WorldSystem.AddAvatar(this, id);
 }
示例#34
0
 public void AttachObject(uint localID, OpenMetaverse.Quaternion rotation, byte attachPoint, OpenMetaverse.UUID ownerID)
 {
 }
示例#35
0
 public void AddGroup(UUID groupID)
 {
     if (theAvatar != null)
     {
         List<UUID> agroups = theAvatar.Groups;
         if (agroups == null)
         {
             agroups = theAvatar.Groups = new List<UUID>();
         }
         if (!agroups.Contains(groupID)) agroups.Add(groupID);
     }
 }
示例#36
0
 public void SendInventoryFolderDetails(OpenMetaverse.UUID ownerID, InventoryFolderBase folder, List <InventoryItemBase> items, List <InventoryFolderBase> folders, bool fetchFolders, bool fetchItems)
 {
 }
示例#37
0
 public PermissionWho EffectivePermissionWho(UUID ownerID, UUID objectGroupID, bool groupOwned)
 {
     if (WorldSystem.AssumeOwner) return PermissionWho.Owner;
     if (ownerID == ID) return PermissionWho.Owner;
     if (!CogbotHelpers.IsNullOrZero(objectGroupID) && InGroup(objectGroupID))
     {
         if (groupOwned) return PermissionWho.Owner;
         return PermissionWho.Owner;
         return PermissionWho.Group;
     }
     return PermissionWho.Everyone;
 }
示例#38
0
 public void SendAvatarInterestsReply(OpenMetaverse.UUID avatarID, uint skillsMask, string skillsText, uint wantToMask, string wantToTask, string languagesText)
 {
 }