diff --git a/Barotrauma/BarotraumaClient/LinuxClient.csproj b/Barotrauma/BarotraumaClient/LinuxClient.csproj index f0d80d9ee..411dec235 100644 --- a/Barotrauma/BarotraumaClient/LinuxClient.csproj +++ b/Barotrauma/BarotraumaClient/LinuxClient.csproj @@ -192,6 +192,9 @@ PreserveNewest + + PreserveNewest + PreserveNewest diff --git a/Barotrauma/BarotraumaClient/Properties/AssemblyInfo.cs b/Barotrauma/BarotraumaClient/Properties/AssemblyInfo.cs index 5e2918897..b67af8559 100644 --- a/Barotrauma/BarotraumaClient/Properties/AssemblyInfo.cs +++ b/Barotrauma/BarotraumaClient/Properties/AssemblyInfo.cs @@ -31,5 +31,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("0.8.10.0")] -[assembly: AssemblyFileVersion("0.8.10.0")] +[assembly: AssemblyVersion("0.8.9.10")] +[assembly: AssemblyFileVersion("0.8.9.10")] diff --git a/Barotrauma/BarotraumaClient/Source/Fonts/ScalableFont.cs b/Barotrauma/BarotraumaClient/Source/Fonts/ScalableFont.cs index 7a63b7cb6..132950a07 100644 --- a/Barotrauma/BarotraumaClient/Source/Fonts/ScalableFont.cs +++ b/Barotrauma/BarotraumaClient/Source/Fonts/ScalableFont.cs @@ -279,7 +279,7 @@ namespace Barotrauma if (text[i] == '\n') { currentLineX = 0.0f; - retVal.Y += baseHeight * 1.8f; + retVal.Y += baseHeight * 18 / 10; continue; } uint charIndex = text[i]; diff --git a/Barotrauma/BarotraumaClient/Source/GUI/GUIMessageBox.cs b/Barotrauma/BarotraumaClient/Source/GUI/GUIMessageBox.cs index 0c091c992..ec9c026e6 100644 --- a/Barotrauma/BarotraumaClient/Source/GUI/GUIMessageBox.cs +++ b/Barotrauma/BarotraumaClient/Source/GUI/GUIMessageBox.cs @@ -41,22 +41,33 @@ namespace Barotrauma InnerFrame = new GUIFrame(new RectTransform(new Point(width, height), RectTransform, Anchor.Center) { IsFixedSize = false }, style: null); GUI.Style.Apply(InnerFrame, "", this); + InnerFrame = new GUIFrame(new RectTransform(new Point(width, height), RectTransform, Anchor.Center) { IsFixedSize = false }, style: null); + GUI.Style.Apply(InnerFrame, "", this); + Content = new GUILayoutGroup(new RectTransform(new Vector2(0.9f, 0.85f), InnerFrame.RectTransform, Anchor.Center)) { AbsoluteSpacing = 5 }; Tag = tag; - + + if (height == 0) + { + string wrappedText = ToolBox.WrapText(text, Content.Rect.Width, GUI.Font); + string[] lines = wrappedText.Split('\n'); + foreach (string line in lines) + { + height += (int)GUI.Font.MeasureString(line).Y; + } + height += string.IsNullOrWhiteSpace(headerText) ? 220 : 220 - headerHeight; + } + InnerFrame.RectTransform.NonScaledSize = new Point(InnerFrame.Rect.Width, height); + Header = new GUITextBlock(new RectTransform(new Vector2(1.0f, 0.0f), Content.RectTransform), headerText, textAlignment: Alignment.Center, wrap: true); - GUI.Style.Apply(Header, "", this); - Header.RectTransform.MinSize = new Point(0, Header.Rect.Height); + GUI.Style.Apply(Header, "", this); - if (!string.IsNullOrWhiteSpace(text)) + if (height == 0) { Text = new GUITextBlock(new RectTransform(new Vector2(1.0f, 0.0f), Content.RectTransform), text, textAlignment: textAlignment, wrap: true); GUI.Style.Apply(Text, "", this); - Text.RectTransform.NonScaledSize = Text.RectTransform.MinSize = Text.RectTransform.MaxSize = - new Point(Text.Rect.Width, Text.Rect.Height); - Text.RectTransform.IsFixedSize = true; } var buttonContainer = new GUILayoutGroup(new RectTransform(new Vector2(1.0f, 0.15f), Content.RectTransform, Anchor.BottomCenter, maxSize: new Point(1000, 50)), @@ -65,22 +76,7 @@ namespace Barotrauma AbsoluteSpacing = 5, IgnoreLayoutGroups = true }; - buttonContainer.RectTransform.NonScaledSize = buttonContainer.RectTransform.MinSize = buttonContainer.RectTransform.MaxSize = - new Point(buttonContainer.Rect.Width, (int)(30 * GUI.Scale)); - buttonContainer.RectTransform.IsFixedSize = true; - - if (height == 0) - { - height += Header.Rect.Height + Content.AbsoluteSpacing; - height += (Text == null ? 0 : Text.Rect.Height) + Content.AbsoluteSpacing; - height += buttonContainer.Rect.Height; - - InnerFrame.RectTransform.NonScaledSize = - new Point(InnerFrame.Rect.Width, (int)Math.Max(height / Content.RectTransform.RelativeSize.Y, height + 50)); - Content.RectTransform.NonScaledSize = - new Point(Content.Rect.Width, height); - } - + Buttons = new List(buttons.Length); for (int i = 0; i < buttons.Length; i++) { diff --git a/Barotrauma/BarotraumaClient/Source/GameMain.cs b/Barotrauma/BarotraumaClient/Source/GameMain.cs index b2e3fa53a..98c572132 100644 --- a/Barotrauma/BarotraumaClient/Source/GameMain.cs +++ b/Barotrauma/BarotraumaClient/Source/GameMain.cs @@ -717,7 +717,7 @@ namespace Barotrauma PerformanceCounter.DrawTimeGraph.Update(sw.ElapsedTicks / (float)TimeSpan.TicksPerMillisecond); } - public void ShowCampaignDisclaimer(Action onContinue) + public void ShowCampaignDisclaimer() { var msgBox = new GUIMessageBox(TextManager.Get("CampaignDisclaimerTitle"), TextManager.Get("CampaignDisclaimerText"), new string[] { TextManager.Get("CampaignRoadMapTitle"), TextManager.Get("OK") }); @@ -726,15 +726,13 @@ namespace Barotrauma { var roadMap = new GUIMessageBox(TextManager.Get("CampaignRoadMapTitle"), TextManager.Get("CampaignRoadMapText"), new string[] { TextManager.Get("Back"), TextManager.Get("OK") }); + roadMap.Buttons[0].OnClicked = (_, __) => { ShowCampaignDisclaimer(); return true; }; roadMap.Buttons[0].OnClicked += roadMap.Close; - roadMap.Buttons[0].OnClicked += (_, __) => { ShowCampaignDisclaimer(onContinue); return true; }; roadMap.Buttons[1].OnClicked += roadMap.Close; - roadMap.Buttons[1].OnClicked += (_, __) => { onContinue?.Invoke(); return true; }; return true; }; msgBox.Buttons[0].OnClicked += msgBox.Close; msgBox.Buttons[1].OnClicked += msgBox.Close; - msgBox.Buttons[1].OnClicked += (_, __) => { onContinue?.Invoke(); return true; }; Config.CampaignDisclaimerShown = true; Config.SaveNewPlayerConfig(); @@ -744,13 +742,12 @@ namespace Barotrauma { var msgBox = new GUIMessageBox(TextManager.Get("EditorDisclaimerTitle"), TextManager.Get("EditorDisclaimerText")); var linkHolder = new GUILayoutGroup(new RectTransform(new Vector2(1.0f, 0.25f), msgBox.Content.RectTransform)) { Stretch = true, RelativeSpacing = 0.025f }; - linkHolder.RectTransform.MaxSize = new Point(int.MaxValue, linkHolder.Rect.Height); List> links = new List>() - { - new Pair(TextManager.Get("EditorDisclaimerWikiLink"),TextManager.Get("EditorDisclaimerWikiUrl")), - new Pair(TextManager.Get("EditorDisclaimerDiscordLink"),TextManager.Get("EditorDisclaimerDiscordUrl")), - new Pair(TextManager.Get("EditorDisclaimerForumLink"),TextManager.Get("EditorDisclaimerForumUrl")), - }; + { + new Pair(TextManager.Get("EditorDisclaimerWikiLink"),TextManager.Get("EditorDisclaimerWikiUrl")), + new Pair(TextManager.Get("EditorDisclaimerDiscordLink"),TextManager.Get("EditorDisclaimerDiscordUrl")), + new Pair(TextManager.Get("EditorDisclaimerForumLink"),TextManager.Get("EditorDisclaimerForumUrl")), + }; foreach (var link in links) { new GUIButton(new RectTransform(new Vector2(1.0f, 0.2f), linkHolder.RectTransform), link.First, style: "MainMenuGUIButton", textAlignment: Alignment.Left) @@ -770,6 +767,19 @@ namespace Barotrauma Config.SaveNewPlayerConfig(); } + // ToDo: Move texts/links to localization, when possible. + public void ShowBugReporter() + { + var msgBox = new GUIMessageBox("", ""); + var linkHolder = new GUILayoutGroup(new RectTransform(new Vector2(1.0f, 0.5f), msgBox.Content.RectTransform)) { Stretch = true, RelativeSpacing = 0.05f }; + + msgBox.Text.RectTransform.MaxSize = new Point(int.MaxValue, msgBox.Text.Rect.Height); + linkHolder.RectTransform.MaxSize = new Point(int.MaxValue, linkHolder.Rect.Height); + msgBox.RectTransform.MinSize = new Point(0, msgBox.Rect.Height + linkHolder.Rect.Height + msgBox.Buttons.First().Rect.Height * 8); + Config.EditorDisclaimerShown = true; + Config.SaveNewPlayerConfig(); + } + // ToDo: Move texts/links to localization, when possible. public void ShowBugReporter() { diff --git a/Barotrauma/BarotraumaClient/Source/GameSession/GameModes/Tutorials/Tutorial.cs b/Barotrauma/BarotraumaClient/Source/GameSession/GameModes/Tutorials/Tutorial.cs index 0eb1d1d0c..73e202639 100644 --- a/Barotrauma/BarotraumaClient/Source/GameSession/GameModes/Tutorials/Tutorial.cs +++ b/Barotrauma/BarotraumaClient/Source/GameSession/GameModes/Tutorials/Tutorial.cs @@ -382,12 +382,14 @@ namespace Barotrauma.Tutorials }; string objectiveText = TextManager.ParseInputTypes(objectiveTranslated); - int yOffset = (int)((GUI.ObjectiveNameFont.MeasureString(objectiveText).Y / 2f + 5)); + int yOffset = (int)((GUI.ObjectiveNameFont.MeasureString(objectiveText).Y / 2f + 5) * GUI.Scale); segment.LinkedTitle = new GUITextBlock(new RectTransform(new Point((int)GUI.ObjectiveNameFont.MeasureString(objectiveText).X, yOffset), segment.ReplayButton.RectTransform, Anchor.CenterRight, Pivot.BottomRight) { AbsoluteOffset = new Point((int)(-10 * GUI.Scale), 0) }, objectiveText, textColor: Color.White, font: GUI.ObjectiveTitleFont, textAlignment: Alignment.CenterRight); segment.LinkedText = new GUITextBlock(new RectTransform(new Point(replayButtonSize.X, yOffset), segment.ReplayButton.RectTransform, Anchor.Center, Pivot.TopCenter) { AbsoluteOffset = new Point((int)(10 * GUI.Scale), 0) }, TextManager.ParseInputTypes(segment.Objective), textColor: new Color(4, 180, 108), font: GUI.ObjectiveNameFont, textAlignment: Alignment.CenterRight); - + + segment.LinkedTitle.TextScale = segment.LinkedText.TextScale = GUI.Scale; + segment.LinkedTitle.Color = segment.LinkedTitle.HoverColor = segment.LinkedTitle.PressedColor = segment.LinkedTitle.SelectedColor = Color.Transparent; segment.LinkedText.Color = segment.LinkedText.HoverColor = segment.LinkedText.PressedColor = segment.LinkedText.SelectedColor = Color.Transparent; segment.ReplayButton.Color = segment.ReplayButton.HoverColor = segment.ReplayButton.PressedColor = segment.ReplayButton.SelectedColor = Color.Transparent; @@ -482,10 +484,11 @@ namespace Barotrauma.Tutorials protected GUIComponent CreateInfoFrame(string title, string text, int width = 300, int height = 80, string anchorStr = "", bool hasButton = false, Action callback = null, Action showVideo = null) { if (hasButton) height += 60; - - string wrappedText = ToolBox.WrapText(text, width, GUI.Font); - height += (int)(GUI.Font.MeasureString(wrappedText).Y + 50); + float textScale = GUI.Scale; + string wrappedText = ToolBox.WrapText(text, width, GUI.Font, textScale); + + height += (int)(GUI.Font.MeasureString(wrappedText).Y * textScale + 50); if (title.Length > 0) { height += 35; @@ -506,18 +509,17 @@ namespace Barotrauma.Tutorials var infoContent = new GUILayoutGroup(new RectTransform(new Vector2(0.9f, 0.8f), infoBlock.RectTransform, Anchor.Center)) { Stretch = true, - AbsoluteSpacing = 5 + RelativeSpacing = 0.02f }; if (title.Length > 0) { - var titleBlock = new GUITextBlock(new RectTransform(new Vector2(1.0f, 0.0f), infoContent.RectTransform), + var titleBlock = new GUITextBlock(new RectTransform(new Vector2(1.0f, 0.3f), infoContent.RectTransform), title, font: GUI.VideoTitleFont, textAlignment: Alignment.Center, textColor: new Color(253, 174, 0)); - titleBlock.RectTransform.IsFixedSize = true; + titleBlock.TextScale = textScale; } - var textBlock = new GUITextBlock(new RectTransform(new Vector2(1.0f, 0.0f), infoContent.RectTransform), text, wrap: true); - textBlock.RectTransform.IsFixedSize = true; + var textBlock = new GUITextBlock(new RectTransform(new Vector2(1.0f, 1.0f), infoContent.RectTransform), text, wrap: true); infoBoxClosedCallback = callback; @@ -528,7 +530,6 @@ namespace Barotrauma.Tutorials Stretch = true, RelativeSpacing = 0.1f }; - buttonContainer.RectTransform.IsFixedSize = true; if (showVideo != null) { @@ -550,8 +551,6 @@ namespace Barotrauma.Tutorials }; } - infoBlock.RectTransform.NonScaledSize = new Point(infoBlock.Rect.Width, (int)(infoContent.Children.Sum(c => c.Rect.Height + infoContent.AbsoluteSpacing) / infoContent.RectTransform.RelativeSize.Y)); - GUI.PlayUISound(GUISoundType.UIMessage); return background; diff --git a/Barotrauma/BarotraumaClient/Source/Map/ItemAssemblyPrefab.cs b/Barotrauma/BarotraumaClient/Source/Map/ItemAssemblyPrefab.cs index 02184babd..7c8bfc1e6 100644 --- a/Barotrauma/BarotraumaClient/Source/Map/ItemAssemblyPrefab.cs +++ b/Barotrauma/BarotraumaClient/Source/Map/ItemAssemblyPrefab.cs @@ -22,7 +22,7 @@ namespace Barotrauma drawRect = new Rectangle( (int)(drawRect.X * scale) + drawArea.Center.X, -((int)((drawRect.Y - drawRect.Height) * scale) + drawArea.Center.Y), (int)(drawRect.Width * scale), (int)(drawRect.Height * scale)); - entity.First.DrawPlacing(spriteBatch, drawRect, entity.First.Scale * scale); + entity.First.DrawPlacing(spriteBatch, drawRect, scale); } } @@ -34,7 +34,7 @@ namespace Barotrauma { Rectangle drawRect = entity.Second; drawRect.Location += Submarine.MouseToWorldGrid(cam, Submarine.MainSub).ToPoint(); - entity.First.DrawPlacing(spriteBatch, drawRect, entity.First.Scale); + entity.First.DrawPlacing(spriteBatch, drawRect); } } diff --git a/Barotrauma/BarotraumaClient/Source/Screens/MainMenuScreen.cs b/Barotrauma/BarotraumaClient/Source/Screens/MainMenuScreen.cs index 94bb1bd2c..72130eaf9 100644 --- a/Barotrauma/BarotraumaClient/Source/Screens/MainMenuScreen.cs +++ b/Barotrauma/BarotraumaClient/Source/Screens/MainMenuScreen.cs @@ -397,12 +397,6 @@ namespace Barotrauma switch (selectedTab) { case Tab.NewGame: - if (!GameMain.Config.CampaignDisclaimerShown) - { - selectedTab = 0; - GameMain.Instance.ShowCampaignDisclaimer(() => { SelectTab(null, Tab.NewGame); }); - return true; - } campaignSetupUI.CreateDefaultSaveName(); campaignSetupUI.RandomizeSeed(); campaignSetupUI.UpdateSubList(Submarine.SavedSubmarines); @@ -421,12 +415,6 @@ namespace Barotrauma case Tab.HostServer: break; case Tab.Tutorials: - if (!GameMain.Config.CampaignDisclaimerShown) - { - selectedTab = 0; - GameMain.Instance.ShowCampaignDisclaimer(() => { SelectTab(null, Tab.Tutorials); }); - return true; - } UpdateTutorialList(); break; case Tab.CharacterEditor: diff --git a/Barotrauma/BarotraumaClient/libvlc.so b/Barotrauma/BarotraumaClient/libvlc.so new file mode 100644 index 000000000..220fee7d3 Binary files /dev/null and b/Barotrauma/BarotraumaClient/libvlc.so differ diff --git a/Barotrauma/BarotraumaServer/Properties/AssemblyInfo.cs b/Barotrauma/BarotraumaServer/Properties/AssemblyInfo.cs index 1c7c140ff..bbde03313 100644 --- a/Barotrauma/BarotraumaServer/Properties/AssemblyInfo.cs +++ b/Barotrauma/BarotraumaServer/Properties/AssemblyInfo.cs @@ -31,5 +31,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("0.8.10.0")] -[assembly: AssemblyFileVersion("0.8.10.0")] +[assembly: AssemblyVersion("0.8.9.10")] +[assembly: AssemblyFileVersion("0.8.9.10")] diff --git a/Barotrauma/BarotraumaShared/Data/ContentPackages/Vanilla 0.9.xml b/Barotrauma/BarotraumaShared/Data/ContentPackages/Vanilla 0.9.xml index 6cb28c845..c5985f21c 100644 --- a/Barotrauma/BarotraumaShared/Data/ContentPackages/Vanilla 0.9.xml +++ b/Barotrauma/BarotraumaShared/Data/ContentPackages/Vanilla 0.9.xml @@ -74,11 +74,14 @@ + + + diff --git a/Barotrauma/BarotraumaShared/SharedContent.projitems b/Barotrauma/BarotraumaShared/SharedContent.projitems index 0cfdcd61a..3bb1ba556 100644 --- a/Barotrauma/BarotraumaShared/SharedContent.projitems +++ b/Barotrauma/BarotraumaShared/SharedContent.projitems @@ -3332,7 +3332,7 @@ Never - Never + PreserveNewest PreserveNewest diff --git a/Barotrauma/BarotraumaShared/Source/Characters/AI/IndoorsSteeringManager.cs b/Barotrauma/BarotraumaShared/Source/Characters/AI/IndoorsSteeringManager.cs index e264c0f05..2d3de2875 100644 --- a/Barotrauma/BarotraumaShared/Source/Characters/AI/IndoorsSteeringManager.cs +++ b/Barotrauma/BarotraumaShared/Source/Characters/AI/IndoorsSteeringManager.cs @@ -224,7 +224,7 @@ namespace Barotrauma } //only humanoids can climb ladders - if (!character.AnimController.InWater && character.AnimController is HumanoidAnimController && IsNextLadderSameAsCurrent) + if (character.AnimController is HumanoidAnimController && IsNextLadderSameAsCurrent) { if (character.SelectedConstruction != currentPath.CurrentNode.Ladders.Item && currentPath.CurrentNode.Ladders.Item.IsInsideTrigger(character.WorldPosition)) @@ -234,7 +234,7 @@ namespace Barotrauma } var collider = character.AnimController.Collider; - if (character.IsClimbing && !character.AnimController.InWater) + if (character.IsClimbing) { Vector2 diff = currentPath.CurrentNode.SimPosition - pos; bool nextLadderSameAsCurrent = IsNextLadderSameAsCurrent; @@ -278,12 +278,6 @@ namespace Barotrauma } else if (character.AnimController.InWater) { - // If the character is underwater, we don't need the ladders anymore - if (character.IsClimbing) - { - character.AnimController.Anim = AnimController.Animation.None; - character.SelectedConstruction = null; - } if (Vector2.DistanceSquared(pos, currentPath.CurrentNode.SimPosition) < MathUtils.Pow(collider.radius * 3, 2)) { currentPath.SkipToNextNode(); diff --git a/Barotrauma/BarotraumaShared/Source/Items/Components/Holdable/RepairTool.cs b/Barotrauma/BarotraumaShared/Source/Items/Components/Holdable/RepairTool.cs index 188d307c5..38953e28a 100644 --- a/Barotrauma/BarotraumaShared/Source/Items/Components/Holdable/RepairTool.cs +++ b/Barotrauma/BarotraumaShared/Source/Items/Components/Holdable/RepairTool.cs @@ -293,35 +293,10 @@ namespace Barotrauma.Items.Components //steer closer if almost in range if (dist > Range) { - Vector2 standPos = new Vector2(Math.Sign(-fromItemToLeak.X), Math.Sign(-fromItemToLeak.Y)) / 2; - if (!character.AnimController.InWater) - { - if (leak.IsHorizontal) - { - standPos.X *= 2; - standPos.Y = 0; - } - else - { - standPos.X = 0; - } - } - if (character.AIController.SteeringManager is IndoorsSteeringManager indoorSteering) - { - if (indoorSteering.CurrentPath != null && !indoorSteering.IsPathDirty && indoorSteering.CurrentPath.Unreachable) - { - Vector2 dir = Vector2.Normalize(standPos - character.WorldPosition); - character.AIController.SteeringManager.SteeringManual(deltaTime, dir / 2); - } - else - { - character.AIController.SteeringManager.SteeringSeek(standPos); - } - } - else - { - character.AIController.SteeringManager.SteeringSeek(standPos); - } + Vector2 standPos = leak.IsHorizontal ? new Vector2(Math.Sign(-fromItemToLeak.X), 0.0f) : new Vector2(0.0f, Math.Sign(-fromItemToLeak.Y) * 0.5f); + standPos = leak.WorldPosition + standPos * Range; + Vector2 dir = Vector2.Normalize(standPos - character.WorldPosition); + character.AIController.SteeringManager.SteeringManual(deltaTime, dir / 2); } else { @@ -330,29 +305,30 @@ namespace Barotrauma.Items.Components // Too close -> steer away character.AIController.SteeringManager.SteeringManual(deltaTime, Vector2.Normalize(character.SimPosition - leak.SimPosition) / 2); } - else if (dist <= Range) - { - // In range - character.AIController.SteeringManager.Reset(); - } else { - return false; + character.AIController.SteeringManager.Reset(); } } + sinTime += deltaTime; character.CursorPosition = leak.Position + VectorExtensions.Forward(Item.body.TransformedRotation + (float)Math.Sin(sinTime), dist); if (item.RequireAimToUse) { character.SetInput(InputType.Aim, false, true); } + // Press the trigger only when the tool is approximately facing the target. - var angle = VectorExtensions.Angle(VectorExtensions.Forward(item.body.TransformedRotation), fromItemToLeak); - if (angle < MathHelper.PiOver4) + // If the character is climbing, ignore the check, because we cannot aim while climbing. + if (VectorExtensions.Angle(VectorExtensions.Forward(item.body.TransformedRotation), fromItemToLeak) < MathHelper.PiOver4) { character.SetInput(InputType.Shoot, false, true); Use(deltaTime, character); } + else + { + sinTime -= deltaTime * 2; + } bool leakFixed = (leak.Open <= 0.0f || leak.Removed) && (leak.ConnectedWall == null || leak.ConnectedWall.Sections.Average(s => s.damage) < 1); diff --git a/Barotrauma/BarotraumaShared/Submarines/Dugong.sub b/Barotrauma/BarotraumaShared/Submarines/Dugong.sub index cce7eff49..a745d1cf6 100644 Binary files a/Barotrauma/BarotraumaShared/Submarines/Dugong.sub and b/Barotrauma/BarotraumaShared/Submarines/Dugong.sub differ diff --git a/Barotrauma/BarotraumaShared/Submarines/Humpback.sub b/Barotrauma/BarotraumaShared/Submarines/Humpback.sub index 028008485..c57bc40b9 100644 Binary files a/Barotrauma/BarotraumaShared/Submarines/Humpback.sub and b/Barotrauma/BarotraumaShared/Submarines/Humpback.sub differ diff --git a/Barotrauma/BarotraumaShared/Submarines/Orca.sub b/Barotrauma/BarotraumaShared/Submarines/Orca.sub index 75badce72..1884e59b0 100644 Binary files a/Barotrauma/BarotraumaShared/Submarines/Orca.sub and b/Barotrauma/BarotraumaShared/Submarines/Orca.sub differ diff --git a/Barotrauma/BarotraumaShared/Submarines/Typhon.sub b/Barotrauma/BarotraumaShared/Submarines/Typhon.sub index a689efd8d..b43126315 100644 Binary files a/Barotrauma/BarotraumaShared/Submarines/Typhon.sub and b/Barotrauma/BarotraumaShared/Submarines/Typhon.sub differ diff --git a/Barotrauma/BarotraumaShared/changelog.txt b/Barotrauma/BarotraumaShared/changelog.txt index beb985789..a8830200b 100644 --- a/Barotrauma/BarotraumaShared/changelog.txt +++ b/Barotrauma/BarotraumaShared/changelog.txt @@ -1,62 +1,3 @@ ---------------------------------------------------------------------------------------------------------- -v0.8.10.0 ---------------------------------------------------------------------------------------------------------- - -Additions and changes: -- Completely remade tutorials (separate tutorial for each job). -- Added a door and hatch variants with integrated buttons. -- New outpost graphics. -- Added swarm behavior to crawlers. -- Added a new mission where you have to kill a swarm of crawlers. -- Numerous crew AI improvements. -- Balanced item deterioration values. -- Mineral sprites change when collected from the environment. -- Added an option to disable directional voice chat. -- Added automatic submarine repair option to the campaign. -- Added "all" tab to the entity list in the submarine editor. -- Hide the crew area, chat box and server buttons when operating a turret or searchlight. -- Doors can be repaired with a wrench. -- Some new lamp variants. -- Display a progress bar when welding doors shut. -- Items that don't give any materials when deconstructed cannot be deconstructed. -- Added a console command that resets selected items and structures to prefab values ("resetselected"). -- Option to toggle structure drop shadows and edit the position of the shadow in the sub editor. -- Minor physics optimizations. -- Disable background music & ambience in the character editor. -- More pronounced limping animation when a character's legs are injured. -- The inventory slots next to the character portrait (ID card, uniform, etc) can be hidden. -- Some new sound effects and background music. -- All walls can be scaled in the submarine editor. -- Structure damage is visualized when using debugdraw. -- Improved font scaling on different resolutions. -- Added Steam overlay support to Workshop. -- Server list shows which servers have voice chat enabled. -- Show a message box notifying respawning traitors that they're no longer a traitor. -- Added a search bar to the store menu. -- Added search bars to sub lists in campaign setup UI and sub editor. - -Bugfixes: -- Don't allow rewiring and deattaching an item at the same time (happened when interacting with an item -while holding both a screwdriver and a wrench). -- Fixed bots being unable to complete almost any task in the multiplayer due to a bug that caused -them to interpret the sub as another crew's submarine. -- When spawning multiple monsters at the same time, spread them around a bit to prevent the players -from getting attacked by a ball of overlapping crawlers. -- Fixed huge lag spikes when a character tries to escape from an enemy but can't find a path away from it. -- Fixed file transfer progress bars not being visible in the server lobby. -- Fixed crashing when attempting to start a mission round with mission type set to None. -- Fixed ElectricalDischarger electricity effect staying visible if the item breaks or the component -is deactivated from outside (e.g. via a StatusEffect or the parent component). -- Fixed specular maps being rendered on top of characters when outside the sub. -- Fixed excessively bright lights around sonar flora and lava vents. -- Fixes to item collider sizes. -- Fixed inability to scroll through long texts in the sub editor's textboxes. -- Fixed clients not being able to see other characters in spectator if they've died far away from the sub. -- Fixed non-latin characters not being displayed correctly in Workshop item texts. -- Don't prevent selecting items in the sub editor when the cursor is on a wire node, because it makes it -very difficult (or impossible) to select small items in the wiring mode. -- Fixed crashing when attempting to use the "spawnitem" command when a round is not running. - --------------------------------------------------------------------------------------------------------- v0.8.9.10 ---------------------------------------------------------------------------------------------------------