diff --git a/Subsurface/Content/Items/Artifacts/artifact.png b/Subsurface/Content/Items/Artifacts/artifact.png index 929a58777..6b969ebc1 100644 Binary files a/Subsurface/Content/Items/Artifacts/artifact.png and b/Subsurface/Content/Items/Artifacts/artifact.png differ diff --git a/Subsurface/Content/Items/Artifacts/artifacts.xml b/Subsurface/Content/Items/Artifacts/artifacts.xml index a93a6d07d..c3f83105d 100644 --- a/Subsurface/Content/Items/Artifacts/artifacts.xml +++ b/Subsurface/Content/Items/Artifacts/artifacts.xml @@ -25,7 +25,7 @@ name="Thermal Artifact" pickdistance="150"> - + diff --git a/Subsurface/Content/Items/Tools/tools.xml b/Subsurface/Content/Items/Tools/tools.xml index 07a3b0dbf..903c590b1 100644 --- a/Subsurface/Content/Items/Tools/tools.xml +++ b/Subsurface/Content/Items/Tools/tools.xml @@ -199,6 +199,7 @@ holdangle="30" handle1="-10,0"/> + diff --git a/Subsurface/Content/Items/Weapons/explosives.xml b/Subsurface/Content/Items/Weapons/explosives.xml index e555532c6..7d2abb29a 100644 --- a/Subsurface/Content/Items/Weapons/explosives.xml +++ b/Subsurface/Content/Items/Weapons/explosives.xml @@ -110,7 +110,7 @@ spritecolor="1.0,1.0,1.0,1.0" Tags="smallitem,chem,medical" pickdistance="150" - impacttolerance="10"> + impacttolerance="7"> diff --git a/Subsurface/Source/GUI/GUITextBlock.cs b/Subsurface/Source/GUI/GUITextBlock.cs index 088c87ca8..be26a2489 100644 --- a/Subsurface/Source/GUI/GUITextBlock.cs +++ b/Subsurface/Source/GUI/GUITextBlock.cs @@ -17,6 +17,8 @@ namespace Barotrauma protected Color textColor; + private string wrappedText; + public delegate string TextGetterHandler(); public TextGetterHandler TextGetter; @@ -40,6 +42,7 @@ namespace Barotrauma set { text = value; + wrappedText = value; SetTextPos(); } } @@ -159,21 +162,16 @@ namespace Barotrauma { if (text==null) return; + wrappedText = text; + Vector2 size = MeasureText(text); if (Wrap && rect.Width>0) { - //text = text.Replace("\n"," "); - text = ToolBox.WrapText(text, rect.Width - padding.X - padding.Z, Font); + wrappedText = ToolBox.WrapText(text, rect.Width - padding.X - padding.Z, Font); - Vector2 newSize = MeasureText(text); + Vector2 newSize = MeasureText(wrappedText); - //Rectangle newRect = rect; - - //newRect.Width += (int)(newSize.X-size.X); - //newRect.Height += (int)(newSize.Y - size.Y); - - //Rect = newRect; size = newSize; } @@ -204,9 +202,9 @@ namespace Barotrauma textPos.X = (int)textPos.X; textPos.Y = (int)textPos.Y; - if (text.Contains("\n")) + if (wrappedText.Contains("\n")) { - string[] lines = text.Split('\n'); + string[] lines = wrappedText.Split('\n'); Vector2 lastLineSize = MeasureText(lines[lines.Length-1]); caretPos = new Vector2(rect.X + lastLineSize.X, rect.Y + size.Y - lastLineSize.Y) + textPos - origin; } @@ -256,7 +254,7 @@ namespace Barotrauma if (!string.IsNullOrEmpty(text)) { spriteBatch.DrawString(Font, - text, + Wrap ? wrappedText : text, new Vector2(rect.X, rect.Y) + textPos + offset, textColor * (textColor.A / 255.0f), 0.0f, origin, 1.0f,