From 7545e8efecbae987673e826332bd3ae91bf61664 Mon Sep 17 00:00:00 2001 From: Joonas Rikkonen Date: Fri, 3 May 2019 13:52:32 +0300 Subject: [PATCH] (6fc1d03cd) Fixed humpback waypoints, removed extra door --- .../Source/Characters/Animation/Ragdoll.cs | 26 ++ .../Source/GameSession/CrewManager.cs | 247 +++--------------- .../Source/Screens/CampaignSetupUI.cs | 2 + .../Source/Items/Components/Door.cs | 37 +-- .../Components/Signal/CustomInterface.cs | 2 +- .../BarotraumaShared/Submarines/Humpback.sub | Bin 26043 -> 26114 bytes 6 files changed, 79 insertions(+), 235 deletions(-) diff --git a/Barotrauma/BarotraumaClient/Source/Characters/Animation/Ragdoll.cs b/Barotrauma/BarotraumaClient/Source/Characters/Animation/Ragdoll.cs index 8f9276859..bcf133b30 100644 --- a/Barotrauma/BarotraumaClient/Source/Characters/Animation/Ragdoll.cs +++ b/Barotrauma/BarotraumaClient/Source/Characters/Animation/Ragdoll.cs @@ -152,6 +152,32 @@ namespace Barotrauma } + if (character.MemLocalState.Count > 120) character.MemLocalState.RemoveRange(0, character.MemLocalState.Count - 120); + character.MemState.Clear(); + } + } + + partial void ImpactProjSpecific(float impact, Body body) + { + float volume = MathHelper.Clamp(impact - 3.0f, 0.5f, 1.0f); + + if (body.UserData is Limb limb && character.Stun <= 0f) + { + if (impact > 3.0f) { PlayImpactSound(limb); } + } + else if (body.UserData is Limb || body == Collider.FarseerBody) + { + if (!character.IsRemotePlayer && impact > ImpactTolerance) + { + SoundPlayer.PlayDamageSound("LimbBlunt", strongestImpact, Collider); + } + } + if (Character.Controlled == character) + { + GameMain.GameScreen.Cam.Shake = Math.Min(Math.Max(strongestImpact, GameMain.GameScreen.Cam.Shake), 3.0f); + } + } + if (character.MemState.Count < 1) return; overrideTargetMovement = Vector2.Zero; diff --git a/Barotrauma/BarotraumaClient/Source/GameSession/CrewManager.cs b/Barotrauma/BarotraumaClient/Source/GameSession/CrewManager.cs index 8ec9ebd84..0289f5e3d 100644 --- a/Barotrauma/BarotraumaClient/Source/GameSession/CrewManager.cs +++ b/Barotrauma/BarotraumaClient/Source/GameSession/CrewManager.cs @@ -74,17 +74,12 @@ namespace Barotrauma public CrewManager(XElement element, bool isSinglePlayer) : this(isSinglePlayer) { - if (GameMain.Client != null) + if (!isSinglePlayer) { - //let the server create random conversations in MP + DebugConsole.ThrowError("Cannot add messages to single player chat box in multiplayer mode!\n" + Environment.StackTrace); return; } - List availableSpeakers = Character.CharacterList.FindAll(c => - c.AIController is HumanAIController && - !c.IsDead && - c.SpeechImpediment <= 100.0f); - pendingConversationLines.AddRange(NPCConversation.CreateRandom(availableSpeakers)); - } + if (string.IsNullOrEmpty(text)) { return; } var characterInfo = new CharacterInfo(subElement); characterInfos.Add(characterInfo); @@ -95,6 +90,7 @@ namespace Barotrauma break; } } + ChatBox.AddMessage(ChatMessage.Create(senderName, text, messageType, sender)); } partial void InitProjectSpecific() @@ -242,24 +238,27 @@ namespace Barotrauma public IEnumerable GetCharacters() { - if (characterInfos.Contains(characterInfo)) - { - DebugConsole.ThrowError("Tried to add the same character info to CrewManager twice.\n" + Environment.StackTrace); - return; - } + if (character?.Inventory == null) return null; - characterInfos.Add(characterInfo); + var radioItem = character.Inventory.Items.FirstOrDefault(it => it != null && it.GetComponent() != null); + if (radioItem == null) return null; + if (requireEquipped && !character.HasEquippedItem(radioItem)) return null; + + return radioItem.GetComponent(); } public IEnumerable GetCharacterInfos() { - if (character == null) + if (GameMain.Client != null) { - DebugConsole.ThrowError("Tried to remove a null character from CrewManager.\n" + Environment.StackTrace); + //let the server create random conversations in MP return; } - characters.Remove(character); - if (removeInfo) characterInfos.Remove(character.Info); + List availableSpeakers = Character.CharacterList.FindAll(c => + c.AIController is HumanAIController && + !c.IsDead && + c.SpeechImpediment <= 100.0f); + pendingConversationLines.AddRange(NPCConversation.CreateRandom(availableSpeakers)); } public void AddCharacter(Character character) @@ -633,183 +632,9 @@ namespace Barotrauma { characterListBox.BarScroll = roundedPos; } - var characterArea = new GUIButton(new RectTransform(new Point(characterInfoWidth, frame.Rect.Height), frame.RectTransform, Anchor.CenterLeft), style: "GUITextBox") - { - UserData = character, - Color = frame.Color, - SelectedColor = frame.SelectedColor, - HoverColor = frame.HoverColor, - ToolTip = characterToolTip - }; - - var soundIcon = new GUIImage(new RectTransform(new Point((int)(characterArea.Rect.Height * 0.5f)), characterArea.RectTransform, Anchor.CenterRight) { AbsoluteOffset = new Point(5, 0) }, - "GUISoundIcon") - { - UserData = "soundicon", - CanBeFocused = false, - Visible = true - }; - soundIcon.Color = new Color(soundIcon.Color, 0.0f); - new GUIImage(new RectTransform(new Point((int)(characterArea.Rect.Height * 0.5f)), characterArea.RectTransform, Anchor.CenterRight) { AbsoluteOffset = new Point(5, 0) }, - "GUISoundIconDisabled") - { - UserData = "soundicondisabled", - CanBeFocused = true, - Visible = false - }; - - if (isSinglePlayer) - { - characterArea.OnClicked = CharacterClicked; - } - else - { - characterArea.CanBeFocused = false; - characterArea.CanBeSelected = false; - } - - var characterImage = new GUICustomComponent(new RectTransform(new Point(characterArea.Rect.Height), characterArea.RectTransform, Anchor.CenterLeft), - onDraw: (sb, component) => character.Info.DrawIcon(sb, component.Rect.Center.ToVector2(), targetAreaSize: component.Rect.Size.ToVector2())) - { - CanBeFocused = false, - HoverColor = Color.White, - SelectedColor = Color.White, - ToolTip = characterToolTip - }; - - var characterName = new GUITextBlock(new RectTransform(new Point(characterArea.Rect.Width - characterImage.Rect.Width - soundIcon.Rect.Width - 10, characterArea.Rect.Height), - characterArea.RectTransform, Anchor.CenterRight) { AbsoluteOffset = new Point(soundIcon.Rect.Width + 10, 0) }, - character.Name, textColor: frame.Color, font: GUI.SmallFont, wrap: true) - { - Color = frame.Color, - HoverColor = Color.Transparent, - SelectedColor = Color.Transparent, - CanBeFocused = false, - ToolTip = characterToolTip, - AutoScale = true - }; - - //---------------- order buttons ---------------- - - var orderButtonFrame = new GUILayoutGroup(new RectTransform(new Point(100, frame.Rect.Height), frame.RectTransform) - { AbsoluteOffset = new Point(characterInfoWidth + spacing, 0) }, - isHorizontal: true, childAnchor: Anchor.CenterLeft) - { - AbsoluteSpacing = (int)(10 * GUI.Scale), - UserData = "orderbuttons", - CanBeFocused = false - }; - - //listbox for holding the orders inappropriate for this character - //(so we can easily toggle their visibility) - var wrongOrderList = new GUIListBox(new RectTransform(new Point(50, orderButtonFrame.Rect.Height), orderButtonFrame.RectTransform), isHorizontal: true, style: null) - { - ScrollBarEnabled = false, - ScrollBarVisible = false, - Enabled = false, - Spacing = spacing, - ClampMouseRectToParent = false - }; - wrongOrderList.Content.ClampMouseRectToParent = false; - - for (int i = 0; i < orders.Count; i++) - { - var order = orders[i]; - if (order.TargetAllCharacters) continue; - - RectTransform btnParent = (i >= correctOrderCount + neutralOrderCount) ? - wrongOrderList.Content.RectTransform : - orderButtonFrame.RectTransform; - - var btn = new GUIButton(new RectTransform(new Point(iconSize, iconSize), btnParent, Anchor.CenterLeft), - style: null) - { - UserData = order - }; - - new GUIFrame(new RectTransform(new Vector2(1.5f), btn.RectTransform, Anchor.Center), "OuterGlow") - { - Color = Color.Lerp(order.Color, frame.Color, 0.5f) * 0.8f, - HoverColor = Color.Lerp(order.Color, frame.Color, 0.5f) * 1.0f, - PressedColor = Color.Lerp(order.Color, frame.Color, 0.5f) * 0.6f, - UserData = "selected", - CanBeFocused = false, - Visible = false - }; - - var img = new GUIImage(new RectTransform(Vector2.One, btn.RectTransform), order.Prefab.SymbolSprite); - img.Scale = iconSize / (float)img.SourceRect.Width; - img.Color = Color.Lerp(order.Color, frame.Color, 0.5f); - img.ToolTip = order.Name; - img.HoverColor = Color.Lerp(img.Color, Color.White, 0.5f); - - btn.OnClicked += (GUIButton button, object userData) => - { - if (Character.Controlled == null || Character.Controlled.SpeechImpediment >= 100.0f) return false; - - if (btn.GetChildByUserData("selected").Visible) - { - SetCharacterOrder(character, Order.PrefabList.Find(o => o.AITag == "dismissed"), null, Character.Controlled); - } - else - { - if (order.ItemComponentType != null || order.ItemIdentifiers.Length > 0 || order.Options.Length > 1) - { - CreateOrderTargetFrame(button, character, order); - } - else - { - SetCharacterOrder(character, order, null, Character.Controlled); - } - } - return true; - }; - btn.UserData = order; - btn.ToolTip = order.Name; - - //divider between different groups of orders - if (i == correctOrderCount - 1 || i == correctOrderCount + neutralOrderCount - 1) - { - //TODO: divider sprite - new GUIFrame(new RectTransform(new Point(8, iconSize), orderButtonFrame.RectTransform), style: "GUIButton"); - } - } - - var toggleWrongOrderBtn = new GUIButton(new RectTransform(new Point((int)(30 * GUI.Scale), wrongOrderList.Rect.Height), wrongOrderList.Content.RectTransform), - "", style: "UIToggleButton") - { - UserData = "togglewrongorder", - CanBeFocused = false - }; - - wrongOrderList.RectTransform.NonScaledSize = new Point( - wrongOrderList.Content.Children.Sum(c => c.Rect.Width + wrongOrderList.Spacing), - wrongOrderList.RectTransform.NonScaledSize.Y); - wrongOrderList.RectTransform.SetAsLastChild(); - - new GUIFrame(new RectTransform(new Point( - wrongOrderList.Rect.Width - toggleWrongOrderBtn.Rect.Width - wrongOrderList.Spacing * 2, - wrongOrderList.Rect.Height), wrongOrderList.Content.RectTransform), - style: null) - { - CanBeFocused = false - }; - - //scale to fit the content - orderButtonFrame.RectTransform.NonScaledSize = new Point( - orderButtonFrame.Children.Sum(c => c.Rect.Width + orderButtonFrame.AbsoluteSpacing), - orderButtonFrame.RectTransform.NonScaledSize.Y); - - frame.RectTransform.NonScaledSize = new Point( - characterInfoWidth + spacing + (orderButtonFrame.Rect.Width - wrongOrderList.Rect.Width), - frame.RectTransform.NonScaledSize.Y); - - characterListBox.RectTransform.NonScaledSize = new Point( - characterListBox.Content.Children.Max(c => c.Rect.Width) + wrongOrderList.Rect.Width, - characterListBox.RectTransform.NonScaledSize.Y); - characterListBox.Content.RectTransform.NonScaledSize = characterListBox.RectTransform.NonScaledSize; - characterListBox.UpdateScrollBarSize(); - return frame; + soundIcon.Visible = !muted && !mutedLocally; + soundIconDisabled.Visible = muted || mutedLocally; + soundIconDisabled.ToolTip = TextManager.Get(mutedLocally ? "MutedLocally" : "MutedGlobally"); } private IEnumerable KillCharacterAnim(GUIComponent component) @@ -953,12 +778,6 @@ namespace Barotrauma } return; } - List availableSpeakers = Character.CharacterList.FindAll(c => - c.AIController is HumanAIController && - !c.IsDead && - c.SpeechImpediment <= 100.0f); - pendingConversationLines.AddRange(NPCConversation.CreateRandom(availableSpeakers)); - } character.SetOrder(order, option, orderGiver, speak: orderGiver != character); if (IsSinglePlayer) @@ -1016,23 +835,19 @@ namespace Barotrauma } } } - - character.SetOrder(order, option, orderGiver, speak: orderGiver != character); - if (IsSinglePlayer) + //only one target (or an order with no particular targets), just show options + else { - orderGiver?.Speak( - order.GetChatMessage(character.Name, orderGiver.CurrentHull?.DisplayName, givingOrderToSelf: character == orderGiver, orderOption: option), null); - } - else if (orderGiver != null) - { - OrderChatMessage msg = new OrderChatMessage(order, option, order.TargetItemComponent?.Item, character, orderGiver); - if (GameMain.Client != null) + orderTargetFrame = new GUILayoutGroup(new RectTransform(new Vector2(0.2f + order.Options.Length * 0.1f, 0.18f), GUI.Canvas) + { AbsoluteOffset = new Point(orderButton.Rect.Center.X, orderButton.Rect.Bottom) }, + isHorizontal: true, childAnchor: Anchor.BottomLeft) { - GameMain.Client.SendChatMessage(msg); - } - } - DisplayCharacterOrder(character, order); - } + UserData = character, + Stretch = true + }; + //line connecting the order button to the option buttons + //TODO: sprite + new GUIFrame(new RectTransform(new Vector2(0.5f, 1.0f), orderTargetFrame.RectTransform), style: null); /// /// Create the UI panel that's used to select the target and options for a given order diff --git a/Barotrauma/BarotraumaClient/Source/Screens/CampaignSetupUI.cs b/Barotrauma/BarotraumaClient/Source/Screens/CampaignSetupUI.cs index 7bcc380ff..c050ab2a9 100644 --- a/Barotrauma/BarotraumaClient/Source/Screens/CampaignSetupUI.cs +++ b/Barotrauma/BarotraumaClient/Source/Screens/CampaignSetupUI.cs @@ -98,6 +98,8 @@ namespace Barotrauma private GUILayoutGroup subPreviewContainer; + private GUILayoutGroup subPreviewContainer; + private GUIButton loadGameButton; public Action StartNewGame; diff --git a/Barotrauma/BarotraumaShared/Source/Items/Components/Door.cs b/Barotrauma/BarotraumaShared/Source/Items/Components/Door.cs index be373b5d8..973b7e655 100644 --- a/Barotrauma/BarotraumaShared/Source/Items/Components/Door.cs +++ b/Barotrauma/BarotraumaShared/Source/Items/Components/Door.cs @@ -219,6 +219,8 @@ namespace Barotrauma.Items.Components private bool hasValidIdCard; public override bool HasRequiredItems(Character character, bool addMessage, string msg = null) { + if (item.Condition <= RepairThreshold) return true; //For repairing + var idCard = character.Inventory.FindItemByIdentifier("idcard"); hasValidIdCard = requiredItems.Any(ri => ri.Value.Any(r => r.MatchesItem(idCard))); Msg = requiredItems.None() || hasValidIdCard ? "ItemMsgOpen" : "ItemMsgForceOpenCrowbar"; @@ -227,7 +229,7 @@ namespace Barotrauma.Items.Components { msg = msg ?? (HasIntegratedButtons ? accessDeniedTxt : cannotOpenText); } - if (item.Condition <= RepairThreshold) { return true; } + //this is a bit pointless atm because if canBePicked is false it won't allow you to do Pick() anyway, however it's still good for future-proofing. return requiredItems.Any() ? base.HasRequiredItems(character, addMessage, msg) : canBePicked; } @@ -242,7 +244,7 @@ namespace Barotrauma.Items.Components public override bool OnPicked(Character picker) { - if (item.Condition <= RepairThreshold) { return true; } + if (item.Condition <= RepairThreshold) return true; //repairs if (requiredItems.Any() && !hasValidIdCard) { ForceOpen(ActionType.OnPicked); @@ -260,24 +262,23 @@ namespace Barotrauma.Items.Components public override bool Select(Character character) { - if (!isBroken) + //can only be selected if the item is broken + if (item.Condition <= RepairThreshold) return true; //repairs + bool hasRequiredItems = HasRequiredItems(character, false); + if (requiredItems.None() || hasRequiredItems && hasValidIdCard) { - bool hasRequiredItems = HasRequiredItems(character, false); - if (requiredItems.None() || hasRequiredItems && hasValidIdCard) - { - float originalPickingTime = PickingTime; - PickingTime = 0; - ForceOpen(ActionType.OnUse); - PickingTime = originalPickingTime; - } - else if (hasRequiredItems) - { -#if CLIENT - GUI.AddMessage(accessDeniedTxt, Color.Red); -#endif - } + float originalPickingTime = PickingTime; + PickingTime = 0; + ForceOpen(ActionType.OnUse); + PickingTime = originalPickingTime; } - return item.Condition <= RepairThreshold; + else if (hasRequiredItems) + { +#if CLIENT + GUI.AddMessage(accessDeniedTxt, Color.Red); +#endif + } + return false; } public override void Update(float deltaTime, Camera cam) diff --git a/Barotrauma/BarotraumaShared/Source/Items/Components/Signal/CustomInterface.cs b/Barotrauma/BarotraumaShared/Source/Items/Components/Signal/CustomInterface.cs index c521952de..88db99115 100644 --- a/Barotrauma/BarotraumaShared/Source/Items/Components/Signal/CustomInterface.cs +++ b/Barotrauma/BarotraumaShared/Source/Items/Components/Signal/CustomInterface.cs @@ -125,7 +125,7 @@ namespace Barotrauma.Items.Components for (int i = 0; i < labels.Length; i++) { labels[i] = i < newLabels.Length ? newLabels[i] : customInterfaceElementList[i].Label; - customInterfaceElementList[i].Label = TextManager.Get(labels[i], returnNull: true) ?? labels[i]; + customInterfaceElementList[i].Label = labels[i]; } UpdateLabelsProjSpecific(); } diff --git a/Barotrauma/BarotraumaShared/Submarines/Humpback.sub b/Barotrauma/BarotraumaShared/Submarines/Humpback.sub index ffccb56735afbea06212b3e10826427e3c2ea31b..f55e072c42894d01d7c15c49b97c6760712359a6 100644 GIT binary patch literal 26114 zcmXuqV|3@v`#12~wr$(C?S5)^Yiw=X?bdF$wryKm+qT=g-{1e-c|A!cd6Jw=&NVad z5Jo`({kMSuU3S?z?@QD(y!enl2{Q5QU8RAqKgRZ7-p16fU*2v!;<>f*kKn!+gOU(O zjG*O%CRSa&K4xmWQv;Dm#en zEW15x-X7F&7FyM3nKryH(dl`AABD}iW^9tLp4f5ZR_$G^pUBn&DDDj(jv1{#D)2rH zzPl7Oug49J{bKC)4^L>MF$!I}+H=igs0EgxV3?6OC<)=%W=ez=>{c6Pga_bx2DKDbkP8)&!?bx z0J1Tch-ded=+yJ~cMqpDx|`1 zr{(U$3wpeq>77h>r0(KmG-1;n%T&2}UM^<&5_i;z)t;md><6FLNEk3Qk}r=a=U4>3)QQ+ z`>!k>tU6m34d{F~d?Cxh%fgr7X*%8kzlv8|u=(^?(r(5~l#*;FFiRQ$+FT}P7UqZd zauyTs9v`;QGp>hUKCSW?_p5s~rfcm}R!%+buA2yw6t{Q;LB}AV3FvpgfBam-!H3!n zf{22Ler=K8FR}UfD}=}bgY3+*|JMDY91&a@!@F{U_KbYa7^(nc1P=tA^p-w$Sh)h? zi~rU0q!%{1ic*aj`SO`5SkJz3m-gr#FwUW@(^`BRofMH?DD=dV@T7J99WC2;_(jcu-{tWAI~rt414ocd7Fyb+8~5K0eO- zj9Cur2-;49MB1ZNOR|EP$w}z~=2WH`hReTThUM?6^zmza`;F*!3!L&P0PG`^Ew=yq zY+rrP`#Q~;?q-#bS&b?%K

~0<&lS;7Qm4>fL2mJarp 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 M|dyQk?? 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 c{1NGVZ0zieZ&;$f?|KQ$x|05kY4aZDe`Tcj!T