private bool PrepareSceneForConnection(UUID sessionId, UUID secureSessionId, UUID sceneId, UserAccount account, out string reason) { Scene scene = m_scenes[sceneId]; AgentCircuitData agent = new AgentCircuitData(); agent.AgentID = account.PrincipalID; agent.firstname = account.FirstName; agent.lastname = account.LastName; agent.SessionID = sessionId; agent.SecureSessionID = secureSessionId; agent.circuitcode = sessionId.CRC(); agent.BaseFolder = UUID.Zero; agent.InventoryFolder = UUID.Zero; agent.startpos = new Vector3(0, 0, 0); // TODO Fill in region start position agent.CapsPath = "http://localhost/"; AvatarData avatar = scene.AvatarService.GetAvatar(account.PrincipalID); if (avatar != null) { agent.Appearance = avatar.ToAvatarAppearance(account.PrincipalID); } if (agent.Appearance == null) { m_log.WarnFormat("[INTER]: Appearance not found for {0} {1}. Creating default.", agent.firstname, agent.lastname); agent.Appearance = new AvatarAppearance(); } return(scene.NewUserConnection(agent, 0, out reason)); }
public AvatarAppearance GetAppearance(UUID userID) { AvatarData avatar = GetAvatar(userID); if (avatar == null) { return(null); } return(avatar.ToAvatarAppearance(userID)); }
public AvatarAppearance GetAppearance(UUID principalID) { AvatarData avatar = GetAvatar(principalID); if (avatar == null || avatar.Data.Count == 0) { return(null); } return(avatar.ToAvatarAppearance(principalID)); }
public virtual AvatarAppearance GetAppearance(UUID userID) { MainConsole.Instance.Info("[AvatarServiceConnector] GetAppearance"); AvatarData avatar = GetAvatar(userID); if (avatar == null) { return(null); } return(avatar.ToAvatarAppearance(userID)); }
object EventManager_OnGenericEvent(string FunctionName, object parameters) { if (FunctionName == "SetAppearance") { object[] p = (object[])parameters; UUID avatarID = (UUID)p[0]; AvatarData avatarData = (AvatarData)p[1]; AvatarAppearance app = avatarData.ToAvatarAppearance(avatarID); CheckForBannedViewer(avatarID, app.Texture); } return(null); }
public bool TryGetAvatarAppearance(UUID avatarId, out AvatarAppearance appearance) { AvatarData avatar = m_scene.AvatarService.GetAvatar(avatarId); //if ((profile != null) && (profile.RootFolder != null)) if (avatar != null) { appearance = avatar.ToAvatarAppearance(avatarId); return(true); } m_log.ErrorFormat("[APPEARANCE]: Appearance not found for {0}, creating default", avatarId); appearance = CreateDefault(avatarId); return(false); }
private AvatarAppearance GetAppearance(UUID target, Scene scene) { if (m_appearanceCache.ContainsKey(target)) { return(m_appearanceCache[target]); } AvatarData adata = scene.AvatarService.GetAvatar(target); if (adata != null) { AvatarAppearance x = adata.ToAvatarAppearance(target); m_appearanceCache.Add(target, x); return(x); } return(new AvatarAppearance()); }
public bool SetAvatar(UUID principalID, AvatarData avatar) { object remoteValue = DoRemote(principalID, avatar); if (remoteValue != null || m_doRemoteOnly) { return(remoteValue == null ? false : (bool)remoteValue); } m_registry.RequestModuleInterface <ISimulationBase>().EventManager.FireGenericEventHandler("SetAppearance", new object[2] { principalID, avatar }); RemoveOldBaked(principalID, avatar); avatar = FixWearables(principalID, avatar.ToAvatarAppearance(principalID)); return(m_Database.Store(principalID, avatar)); }
private AgentCircuitData MakeAgent(GridRegion region, UserAccount account, AvatarData avatar, UUID session, UUID secureSession, uint circuit, Vector3 position, string viewer) { AgentCircuitData aCircuit = new AgentCircuitData(); aCircuit.AgentID = account.PrincipalID; if (avatar != null) { aCircuit.Appearance = avatar.ToAvatarAppearance(account.PrincipalID); } else { aCircuit.Appearance = new AvatarAppearance(account.PrincipalID); } //aCircuit.BaseFolder = irrelevant aCircuit.CapsPath = CapsUtil.GetRandomCapsObjectPath(); aCircuit.child = false; // the first login agent is root aCircuit.ChildrenCapSeeds = new Dictionary <ulong, string>(); aCircuit.circuitcode = circuit; aCircuit.firstname = account.FirstName; //aCircuit.InventoryFolder = irrelevant aCircuit.lastname = account.LastName; aCircuit.SecureSessionID = secureSession; aCircuit.SessionID = session; aCircuit.startpos = position; aCircuit.Viewer = viewer; SetServiceURLs(aCircuit, account); return(aCircuit); //m_UserAgentService.LoginAgentToGrid(aCircuit, GatekeeperServiceConnector, region, out reason); //if (simConnector.CreateAgent(region, aCircuit, 0, out reason)) // return aCircuit; //return null; }
public AvatarAppearance GetAppearance(UUID principalID) { AvatarData avatar = GetAvatar(principalID); return(avatar.ToAvatarAppearance()); }
// <summary> // </summary> // <param name=""></param> public bool SetAvatar(UUID userID, AvatarData avatar) { m_log.Debug("[SIMIAN AVATAR CONNECTOR]: SetAvatar called for " + userID); if (avatar.AvatarType == 1) // LLAvatar { AvatarAppearance appearance = avatar.ToAvatarAppearance(); OSDMap map = new OSDMap(); map["Height"] = OSD.FromReal(appearance.AvatarHeight); map["BodyItem"] = appearance.Wearables[AvatarWearable.BODY][0].ItemID.ToString(); map["EyesItem"] = appearance.Wearables[AvatarWearable.EYES][0].ItemID.ToString(); map["GlovesItem"] = appearance.Wearables[AvatarWearable.GLOVES][0].ItemID.ToString(); map["HairItem"] = appearance.Wearables[AvatarWearable.HAIR][0].ItemID.ToString(); map["JacketItem"] = appearance.Wearables[AvatarWearable.JACKET][0].ItemID.ToString(); map["PantsItem"] = appearance.Wearables[AvatarWearable.PANTS][0].ItemID.ToString(); map["ShirtItem"] = appearance.Wearables[AvatarWearable.SHIRT][0].ItemID.ToString(); map["ShoesItem"] = appearance.Wearables[AvatarWearable.SHOES][0].ItemID.ToString(); map["SkinItem"] = appearance.Wearables[AvatarWearable.SKIN][0].ItemID.ToString(); map["SkirtItem"] = appearance.Wearables[AvatarWearable.SKIRT][0].ItemID.ToString(); map["SocksItem"] = appearance.Wearables[AvatarWearable.SOCKS][0].ItemID.ToString(); map["UnderPantsItem"] = appearance.Wearables[AvatarWearable.UNDERPANTS][0].ItemID.ToString(); map["UnderShirtItem"] = appearance.Wearables[AvatarWearable.UNDERSHIRT][0].ItemID.ToString(); map["BodyAsset"] = appearance.Wearables[AvatarWearable.BODY][0].AssetID.ToString(); map["EyesAsset"] = appearance.Wearables[AvatarWearable.EYES][0].AssetID.ToString(); map["GlovesAsset"] = appearance.Wearables[AvatarWearable.GLOVES][0].AssetID.ToString(); map["HairAsset"] = appearance.Wearables[AvatarWearable.HAIR][0].AssetID.ToString(); map["JacketAsset"] = appearance.Wearables[AvatarWearable.JACKET][0].AssetID.ToString(); map["PantsAsset"] = appearance.Wearables[AvatarWearable.PANTS][0].AssetID.ToString(); map["ShirtAsset"] = appearance.Wearables[AvatarWearable.SHIRT][0].AssetID.ToString(); map["ShoesAsset"] = appearance.Wearables[AvatarWearable.SHOES][0].AssetID.ToString(); map["SkinAsset"] = appearance.Wearables[AvatarWearable.SKIN][0].AssetID.ToString(); map["SkirtAsset"] = appearance.Wearables[AvatarWearable.SKIRT][0].AssetID.ToString(); map["SocksAsset"] = appearance.Wearables[AvatarWearable.SOCKS][0].AssetID.ToString(); map["UnderPantsAsset"] = appearance.Wearables[AvatarWearable.UNDERPANTS][0].AssetID.ToString(); map["UnderShirtAsset"] = appearance.Wearables[AvatarWearable.UNDERSHIRT][0].AssetID.ToString(); OSDMap items = new OSDMap(); foreach (KeyValuePair <string, string> kvp in avatar.Data) { if (kvp.Key.StartsWith("_ap_")) { items.Add(kvp.Key, OSD.FromString(kvp.Value)); } } NameValueCollection requestArgs = new NameValueCollection { { "RequestMethod", "AddUserData" }, { "UserID", userID.ToString() }, { "LLAppearance", OSDParser.SerializeJsonString(map) }, { "LLAttachments", OSDParser.SerializeJsonString(items) } }; OSDMap response = SimianGrid.PostToService(m_serverUrl, requestArgs); bool success = response["Success"].AsBoolean(); if (!success) { m_log.Warn("[SIMIAN AVATAR CONNECTOR]: Failed saving appearance for " + userID + ": " + response["Message"].AsString()); } return(success); } else { m_log.Error("[SIMIAN AVATAR CONNECTOR]: Can't save appearance for " + userID + ". Unhandled avatar type " + avatar.AvatarType); return(false); } }
public AvatarAppearance GetAppearance(UUID userID) { AvatarData avatar = GetAvatar(userID); return(avatar.ToAvatarAppearance()); }