From 674b521fdd24f10964cc4f256486eca6fd6c2cc9 Mon Sep 17 00:00:00 2001 From: Justin Clark-Casey (justincc) Date: Wed, 9 Nov 2011 20:21:48 +0000 Subject: In pCampBot, don't try and pull down Primitive faces or sculpts set to null --- OpenSim/Tools/pCampBot/Bot.cs | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/OpenSim/Tools/pCampBot/Bot.cs b/OpenSim/Tools/pCampBot/Bot.cs index 1b30766..669c99b 100644 --- a/OpenSim/Tools/pCampBot/Bot.cs +++ b/OpenSim/Tools/pCampBot/Bot.cs @@ -447,17 +447,20 @@ namespace pCampBot for (int i = 0; i < prim.Textures.FaceTextures.Length; i++) { - UUID textureID = prim.Textures.FaceTextures[i].TextureID; + Primitive.TextureEntryFace face = prim.Textures.FaceTextures[i]; - if (textureID != UUID.Zero) - GetTexture(textureID); + if (face != null) + { + UUID textureID = prim.Textures.FaceTextures[i].TextureID; + + if (textureID != UUID.Zero) + GetTexture(textureID); + } } } - if (prim.Sculpt.SculptTexture != UUID.Zero) - { + if (prim.Sculpt != null && prim.Sculpt.SculptTexture != UUID.Zero) GetTexture(prim.Sculpt.SculptTexture); - } } } -- cgit v1.1 From bbab7b6b4d1053d62037e7e05c37f9cb607db4da Mon Sep 17 00:00:00 2001 From: Justin Clark-Casey (justincc) Date: Wed, 9 Nov 2011 21:22:54 +0000 Subject: Use IsConnected status to determine whether all pCampBots have disconnected, rather than maintaining a separate count Checking IsConnected is more reliable. --- OpenSim/Tools/pCampBot/Bot.cs | 22 ++++++++++++++-------- OpenSim/Tools/pCampBot/BotManager.cs | 16 ++++++++-------- 2 files changed, 22 insertions(+), 16 deletions(-) diff --git a/OpenSim/Tools/pCampBot/Bot.cs b/OpenSim/Tools/pCampBot/Bot.cs index 669c99b..7f941a4 100644 --- a/OpenSim/Tools/pCampBot/Bot.cs +++ b/OpenSim/Tools/pCampBot/Bot.cs @@ -222,7 +222,7 @@ namespace pCampBot } else { - MainConsole.Instance.OutputFormat( + m_log.ErrorFormat( "{0} {1} cannot login: {2}", FirstName, LastName, Client.Network.LoginMessage); if (OnDisconnected != null) @@ -266,12 +266,12 @@ namespace pCampBot } else { - MainConsole.Instance.Output(String.Format("Failed to decode {0} asset {1}", asset.AssetType, asset.AssetID)); + m_log.WarnFormat("Failed to decode {0} asset {1}", asset.AssetType, asset.AssetID); } } catch (Exception e) { - MainConsole.Instance.Output(String.Format("Exception: {0}",e.ToString())); + m_log.ErrorFormat("Exception: {0}{1}", e.Message, e.StackTrace); } } } @@ -305,7 +305,7 @@ namespace pCampBot if (wear == "yes") { //TODO: Implement random outfit picking - MainConsole.Instance.Output("Picks a random outfit. Not yet implemented."); + m_log.DebugFormat("Picks a random outfit. Not yet implemented."); } else if (wear != "save") saveDir = "MyAppearance/" + wear; @@ -334,7 +334,9 @@ namespace pCampBot listwearables.Add(item); } else - MainConsole.Instance.Output(String.Format("Failed to create item {0}",item.Name)); + { + m_log.WarnFormat("Failed to create item {0}", item.Name); + } } ); } @@ -356,7 +358,9 @@ namespace pCampBot listwearables.Add(item); } else - MainConsole.Instance.Output(String.Format("Failed to create item {0}",item.Name)); + { + m_log.WarnFormat("Failed to create item {0}", item.Name); + } } ); } @@ -364,10 +368,12 @@ namespace pCampBot Thread.Sleep(1000); if (listwearables == null || listwearables.Count == 0) - MainConsole.Instance.Output("Nothing to send on this folder!"); + { + m_log.DebugFormat("Nothing to send on this folder!"); + } else { - MainConsole.Instance.Output(String.Format("Sending {0} wearables...",listwearables.Count)); + m_log.DebugFormat("Sending {0} wearables...", listwearables.Count); Client.Appearance.WearOutfit(listwearables, false); } } diff --git a/OpenSim/Tools/pCampBot/BotManager.cs b/OpenSim/Tools/pCampBot/BotManager.cs index 704770a..c4c6f8f 100644 --- a/OpenSim/Tools/pCampBot/BotManager.cs +++ b/OpenSim/Tools/pCampBot/BotManager.cs @@ -51,7 +51,6 @@ namespace pCampBot protected CommandConsole m_console; protected List m_lBot; protected Random somthing = new Random(Environment.TickCount); - protected int numbots = 0; public IConfig Config { get; private set; } /// @@ -200,16 +199,17 @@ namespace pCampBot { case EventType.CONNECTED: m_log.Info("[" + callbot.FirstName + " " + callbot.LastName + "]: Connected"); - numbots++; -// m_log.InfoFormat("NUMBOTS {0}", numbots); break; case EventType.DISCONNECTED: m_log.Info("[" + callbot.FirstName + " " + callbot.LastName + "]: Disconnected"); - numbots--; -// m_log.InfoFormat("NUMBOTS {0}", numbots); - if (numbots <= 0) - Environment.Exit(0); - break; + + lock (m_lBot) + { + if (m_lBot.TrueForAll(b => !b.IsConnected)) + Environment.Exit(0); + + break; + } } } -- cgit v1.1 From 4f6915bad5940a52c18c8c77e2989b6030d921d7 Mon Sep 17 00:00:00 2001 From: Justin Clark-Casey (justincc) Date: Wed, 9 Nov 2011 21:49:08 +0000 Subject: minor: Correct misleading method doc on SOG.UpdateRootRotation() --- OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs index 339cf0f..e3a564e 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs @@ -2894,7 +2894,7 @@ namespace OpenSim.Region.Framework.Scenes } /// - /// Update the entire rotation of the group. + /// Update the rotation of just the root prim of a linkset. /// /// public void UpdateRootRotation(Quaternion rot) -- cgit v1.1 From 37583063eebb021784ce3b7d5aec75608c0cc27a Mon Sep 17 00:00:00 2001 From: GuduleLapointe Date: Fri, 28 Oct 2011 23:58:14 +0200 Subject: Allow custom setting for the console prompt Signed-off-by: BlueWall --- OpenSim/Region/Application/OpenSim.cs | 5 +++-- bin/OpenSim.ini.example | 5 +++++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/OpenSim/Region/Application/OpenSim.cs b/OpenSim/Region/Application/OpenSim.cs index 60c130f..52b19ea 100644 --- a/OpenSim/Region/Application/OpenSim.cs +++ b/OpenSim/Region/Application/OpenSim.cs @@ -56,6 +56,7 @@ namespace OpenSim protected bool m_gui = false; protected string m_consoleType = "local"; protected uint m_consolePort = 0; + protected string m_custom_prompt; private string m_timedScript = "disabled"; private Timer m_scriptTimer; @@ -108,6 +109,7 @@ namespace OpenSim Util.FireAndForgetMethod = asyncCallMethod; stpMaxThreads = startupConfig.GetInt("MaxPoolThreads", 15); + m_custom_prompt = startupConfig.GetString("custom_prompt", "Region"); } if (Util.FireAndForgetMethod == FireAndForgetMethod.SmartThreadPool) @@ -828,10 +830,9 @@ namespace OpenSim { MainConsole.Instance.Output("Usage: change region "); } - string regionName = (m_sceneManager.CurrentScene == null ? "root" : m_sceneManager.CurrentScene.RegionInfo.RegionName); MainConsole.Instance.Output(String.Format("Currently selected region is {0}", regionName)); - m_console.DefaultPrompt = String.Format("Region ({0}) ", regionName); + m_console.DefaultPrompt = String.Format("{0} ({1}) ", m_custom_prompt, regionName); m_console.ConsoleScene = m_sceneManager.CurrentScene; } diff --git a/bin/OpenSim.ini.example b/bin/OpenSim.ini.example index e71fb05..c5205db 100755 --- a/bin/OpenSim.ini.example +++ b/bin/OpenSim.ini.example @@ -230,6 +230,11 @@ ;; by scripts have changed. ; DeleteScriptsOnStartup = true + ;; Custom prompt + ;; This value replaces the word "Region" in console prompt + ;; (usualy "Region (regionName) # " + ;; Useful only if you have to monitor serveral servers + ; custom_prompt = "MyServer1" [SMTP] ;; The SMTP server enabled the email module to send email to external -- cgit v1.1 From ce4560bf8f040a5021446189193d66bc1d24d589 Mon Sep 17 00:00:00 2001 From: BlueWall Date: Thu, 10 Nov 2011 07:26:16 -0500 Subject: Add GuduleLapointe to list of contributors Thanks for the patches! --- CONTRIBUTORS.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/CONTRIBUTORS.txt b/CONTRIBUTORS.txt index 7a25d3f..961ab9f 100644 --- a/CONTRIBUTORS.txt +++ b/CONTRIBUTORS.txt @@ -83,6 +83,7 @@ what it is today. * Gerhard * Godfrey * Grumly57 +* GuduleLapointe * Ewe Loon * Fly-Man * Flyte Xevious -- cgit v1.1 From f31a58bd999db3d333da42c4fb15e35e989d9717 Mon Sep 17 00:00:00 2001 From: Justin Clark-Casey (justincc) Date: Thu, 10 Nov 2011 19:40:45 +0000 Subject: Remove unused index parameter from BotManager.startupBot(). Rename startupBot() => StartBot() --- OpenSim/Tools/pCampBot/BotManager.cs | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/OpenSim/Tools/pCampBot/BotManager.cs b/OpenSim/Tools/pCampBot/BotManager.cs index c4c6f8f..c77e144 100644 --- a/OpenSim/Tools/pCampBot/BotManager.cs +++ b/OpenSim/Tools/pCampBot/BotManager.cs @@ -136,7 +136,7 @@ namespace pCampBot if (behaviourSwitches.Contains("g")) behaviours.Add(new GrabbingBehaviour()); - startupBot(i, this, behaviours, firstName, lastName, password, loginUri); + StartBot(this, behaviours, firstName, lastName, password, loginUri); } } @@ -156,22 +156,21 @@ namespace pCampBot // int newlen = len + botcount; // for (int i = len; i < newlen; i++) // { -// startupBot(i, Config); +// startupBot(Config); // } // } /// /// This starts up the bot and stores the thread for the bot in the thread array /// - /// The position in the thread array to stick the bot's thread /// /// Behaviours for this bot to perform. /// First name /// Last name /// Password /// Login URI - public void startupBot( - int pos, BotManager bm, List behaviours, + public void StartBot( + BotManager bm, List behaviours, string firstName, string lastName, string password, string loginUri) { Bot pb = new Bot(bm, behaviours, firstName, lastName, password, loginUri); -- cgit v1.1 From 9cba179dff66f7def8f68334893c6db9a65a613e Mon Sep 17 00:00:00 2001 From: Justin Clark-Casey (justincc) Date: Thu, 10 Nov 2011 20:03:36 +0000 Subject: launch pCampbot shutdown console comand asynchronously --- OpenSim/Tools/pCampBot/BotManager.cs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/OpenSim/Tools/pCampBot/BotManager.cs b/OpenSim/Tools/pCampBot/BotManager.cs index c77e144..f5dd5e0 100644 --- a/OpenSim/Tools/pCampBot/BotManager.cs +++ b/OpenSim/Tools/pCampBot/BotManager.cs @@ -233,8 +233,11 @@ namespace pCampBot private void HandleShutdown(string module, string[] cmd) { - m_log.Warn("[BOTMANAGER]: Shutting down bots"); - doBotShutdown(); + Util.FireAndForget(o => + { + m_log.Warn("[BOTMANAGER]: Shutting down bots"); + doBotShutdown(); + }); } private void HandleShowStatus(string module, string[] cmd) -- cgit v1.1 From 48d2300b8a762f6fba1e6741c69e975b358bbc36 Mon Sep 17 00:00:00 2001 From: Melanie Date: Thu, 10 Nov 2011 20:26:14 +0100 Subject: Fix misaligned sit animation on scripted sit caused by the default sit animation being run after the scripted one. --- OpenSim/Region/Framework/Scenes/ScenePresence.cs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index 99be46d..fc5141f 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs @@ -2013,8 +2013,6 @@ namespace OpenSim.Region.Framework.Scenes sitOrientation = avSitOrientation; autopilot = false; } - part.ParentGroup.TriggerScriptChangedEvent(Changed.LINK); - pos = part.AbsolutePosition + offset; //if (Math.Abs(part.AbsolutePosition.Z - AbsolutePosition.Z) > 1) //{ @@ -2060,6 +2058,12 @@ namespace OpenSim.Region.Framework.Scenes m_sitAtAutoTarget = autopilot; if (!autopilot) HandleAgentSit(remoteClient, UUID); + + // Moved here to avoid a race with default sit anim + // The script event needs to be raised after the default sit anim is set. + if (part != null) + part.ParentGroup.TriggerScriptChangedEvent(Changed.LINK); + } // public void HandleAgentRequestSit(IClientAPI remoteClient, UUID agentID, UUID targetID, Vector3 offset, string sitAnimation) -- cgit v1.1 From b990914ec4f945f986e9f1386260b32fae8a42ed Mon Sep 17 00:00:00 2001 From: Justin Clark-Casey (justincc) Date: Thu, 10 Nov 2011 21:04:12 +0000 Subject: convert tabs from commit 3758306 to spaces --- OpenSim/Region/Application/OpenSim.cs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/OpenSim/Region/Application/OpenSim.cs b/OpenSim/Region/Application/OpenSim.cs index 52b19ea..9fe284f 100644 --- a/OpenSim/Region/Application/OpenSim.cs +++ b/OpenSim/Region/Application/OpenSim.cs @@ -56,7 +56,7 @@ namespace OpenSim protected bool m_gui = false; protected string m_consoleType = "local"; protected uint m_consolePort = 0; - protected string m_custom_prompt; + protected string m_custom_prompt; private string m_timedScript = "disabled"; private Timer m_scriptTimer; @@ -86,7 +86,9 @@ namespace OpenSim if (networkConfig != null) m_consolePort = (uint)networkConfig.GetInt("console_port", 0); + m_timedScript = startupConfig.GetString("timer_Script", "disabled"); + if (m_logFileAppender != null) { if (m_logFileAppender is log4net.Appender.FileAppender) @@ -109,7 +111,7 @@ namespace OpenSim Util.FireAndForgetMethod = asyncCallMethod; stpMaxThreads = startupConfig.GetInt("MaxPoolThreads", 15); - m_custom_prompt = startupConfig.GetString("custom_prompt", "Region"); + m_custom_prompt = startupConfig.GetString("custom_prompt", "Region"); } if (Util.FireAndForgetMethod == FireAndForgetMethod.SmartThreadPool) @@ -830,9 +832,10 @@ namespace OpenSim { MainConsole.Instance.Output("Usage: change region "); } + string regionName = (m_sceneManager.CurrentScene == null ? "root" : m_sceneManager.CurrentScene.RegionInfo.RegionName); MainConsole.Instance.Output(String.Format("Currently selected region is {0}", regionName)); - m_console.DefaultPrompt = String.Format("{0} ({1}) ", m_custom_prompt, regionName); + m_console.DefaultPrompt = String.Format("{0} ({1}) ", m_custom_prompt, regionName); m_console.ConsoleScene = m_sceneManager.CurrentScene; } -- cgit v1.1