From eada5e222aa1e6ea840ebeb754676e89bef4cdd7 Mon Sep 17 00:00:00 2001 From: Joonas Rikkonen Date: Wed, 27 Mar 2019 13:52:38 +0200 Subject: [PATCH] (4e7f7d0a7) Merge branch 'dev' of https://github.com/Regalis11/Barotrauma-development into dev --- .../BarotraumaClient/Source/Screens/SubEditorScreen.cs | 3 +++ .../BarotraumaShared/Source/Characters/CharacterInfo.cs | 5 +++++ .../BarotraumaShared/Source/Events/Missions/Mission.cs | 7 ++++++- .../Source/Items/Components/ItemComponent.cs | 1 - .../Source/Items/Components/Power/PowerContainer.cs | 6 +++--- 5 files changed, 17 insertions(+), 5 deletions(-) diff --git a/Barotrauma/BarotraumaClient/Source/Screens/SubEditorScreen.cs b/Barotrauma/BarotraumaClient/Source/Screens/SubEditorScreen.cs index 25cbbc9d4..fb95c2152 100644 --- a/Barotrauma/BarotraumaClient/Source/Screens/SubEditorScreen.cs +++ b/Barotrauma/BarotraumaClient/Source/Screens/SubEditorScreen.cs @@ -564,6 +564,9 @@ namespace Barotrauma MapEntityPrefab.Selected = null; + saveFrame = null; + loadFrame = null; + MapEntity.DeselectAll(); MapEntity.SelectionGroups.Clear(); diff --git a/Barotrauma/BarotraumaShared/Source/Characters/CharacterInfo.cs b/Barotrauma/BarotraumaShared/Source/Characters/CharacterInfo.cs index c5aee6f70..aeae1644d 100644 --- a/Barotrauma/BarotraumaShared/Source/Characters/CharacterInfo.cs +++ b/Barotrauma/BarotraumaShared/Source/Characters/CharacterInfo.cs @@ -804,6 +804,11 @@ namespace Barotrauma var newItem = Item.Load(itemElement, inventory.Owner.Submarine, createNetworkEvent: true); if (newItem == null) { continue; } + if (!MathUtils.NearlyEqual(newItem.Condition, newItem.MaxCondition)) + { + GameMain.NetworkMember.CreateEntityEvent(newItem, new object[] { NetEntityEvent.Type.Status }); + } + int[] slotIndices = itemElement.GetAttributeIntArray("i", new int[] { 0 }); if (!slotIndices.Any()) { diff --git a/Barotrauma/BarotraumaShared/Source/Events/Missions/Mission.cs b/Barotrauma/BarotraumaShared/Source/Events/Missions/Mission.cs index d82b66631..e8f5e87fd 100644 --- a/Barotrauma/BarotraumaShared/Source/Events/Missions/Mission.cs +++ b/Barotrauma/BarotraumaShared/Source/Events/Missions/Mission.cs @@ -118,8 +118,13 @@ namespace Barotrauma { allowedMissions.RemoveAll(m => !m.IsAllowed(locations[0], locations[1])); } + + if (allowedMissions.Count == 0) + { + return null; + } - int probabilitySum = allowedMissions.Sum(m => m.Commonness); + int probabilitySum = allowedMissions.Sum(m => m.Commonness); int randomNumber = rand.NextInt32() % probabilitySum; foreach (MissionPrefab missionPrefab in allowedMissions) { diff --git a/Barotrauma/BarotraumaShared/Source/Items/Components/ItemComponent.cs b/Barotrauma/BarotraumaShared/Source/Items/Components/ItemComponent.cs index 9b9b78066..28638ff15 100644 --- a/Barotrauma/BarotraumaShared/Source/Items/Components/ItemComponent.cs +++ b/Barotrauma/BarotraumaShared/Source/Items/Components/ItemComponent.cs @@ -534,7 +534,6 @@ namespace Barotrauma.Items.Components GameAnalyticsManager.AddErrorEventOnce("ItemComponent.DegreeOfSuccess:CharacterNull", GameAnalyticsSDK.Net.EGAErrorSeverity.Error, errorMsg); return 0.0f; } - float average = skillSuccessSum / requiredSkills.Count; float skillSuccessSum = 0.0f; for (int i = 0; i < requiredSkills.Count; i++) diff --git a/Barotrauma/BarotraumaShared/Source/Items/Components/Power/PowerContainer.cs b/Barotrauma/BarotraumaShared/Source/Items/Components/Power/PowerContainer.cs index 0aacaceb9..b5d448e79 100644 --- a/Barotrauma/BarotraumaShared/Source/Items/Components/Power/PowerContainer.cs +++ b/Barotrauma/BarotraumaShared/Source/Items/Components/Power/PowerContainer.cs @@ -209,9 +209,9 @@ namespace Barotrauma.Items.Components Charge -= CurrPowerOutput / 3600.0f; } - item.SendSignal(0, Charge.ToString(), "charge", null); - item.SendSignal(0, ((Charge / capacity) * 100).ToString(), "charge_%", null); - item.SendSignal(0, ((RechargeSpeed / maxRechargeSpeed) * 100).ToString(), "charge_rate", null); + item.SendSignal(0, ((int)Charge).ToString(), "charge", null); + item.SendSignal(0, ((int)((Charge / capacity) * 100)).ToString(), "charge_%", null); + item.SendSignal(0, ((int)((RechargeSpeed / maxRechargeSpeed) * 100)).ToString(), "charge_rate", null); foreach (Pair connected in directlyConnected) {